How can I create a source extension that reads a text file and returns a XML file? I would like to have an xml File as output, because the information is already normalized.
If I extend the class €œPipelineComponent€? I can just define IDTSExternalMetadataColumn90 as output. And I do not want to have columns. I would like to return a xml file
Everything I've read says that custom data flow components are built by inheriting from the Microsoft.SqlServer.Dts.Pipeline.PipelineComponent class.
But the stock components such as the Derived Column data flow transformation must each be implemented by their own class. So how do I base my custom components on those classes? The documentation for the PipelineComponent class doesn't list any such subclasses.
Can anyone provide any direction in extending existing SSIS components with a custom component, if it's possible at all. In some cases there are just slight bits of functionality missing that I think I could add in myself. But, I'm not much of a programmer and need a bit of help in the declaration of the component in my own custom component.
Hi All, I want to run 13 flat file sources in one Data Flow Task, is it possible to do so? I mean I have File1, File2, File3 .....File13 as a Flat file source, Thus i want to have a transformation component for each Flat file source (File1, File2 etc), is it possible to run all these in one Data Flow Task, would you suggest your best practices? Thank you for your advice and consideration.
I am adding two OLE DB Source components to my pipeline and giving them different names
(via the Sourcename variable) but like they are assuming default name and description i.e. OLE DB Source which is causing the following error message on opening the package that was generated.
The package contains two objects with the duplicate name of "component "OLE DB Source" (37)" and "component "OLE DB Source" (1)"
Here is how I am doing it, in the debugger the names in both instances seem to have set correctly based on the variable but when saved they are lost. What am I doing wrong here?
I am running Windows Server 2003 R2 Enterprise Edition SP 2
I have created an integration package in VS 2005 which extracts data from Access 2000 and imports it into a table on SQL server 2005 running on this server.
The package runs ok in Visual Studio 2005, but when i schedule it as a step in 2005 SQL Agent to execute as a SQL Server Integration package using SQL Agent Service Account it comes with the following error - I did a bit of research which suggests this is due to SQL 64 bit and Windows 64b bit, however I am running 32 bit !! also the sql server agent is a domain admin user...can you gurus please help ?
Microsoft (R) SQL Server Execute Package Utility Version 9.00.3042.00 for 32-bit Copyright (C) Microsoft Corp 1984-2005. All rights reserved. Started: 10:07:42 AM Error: 2007-10-31 10:09:13.85 Code: 0xC0202009 Source: Copy all Data to Reporting Prod Connection manager "Access Allocations.mdb" Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040154. An OLE DB record is available. Source: "Microsoft OLE DB Service Components" Hresult: 0x80040154 Description: "Class not registered". End Error Error: 2007-10-31 10:09:13.85 Code: 0xC020801C Source: 5_Copy vw_Allocations 5_Access Allocations [1] Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The AcquireConnection method call to the connection manager "Access Allocations.mdb" failed with error code 0xC0202009. There may be error messages posted before this with more information on why the AcquireConnection method call failed. End Error Error: 2007-10-31 10:09:13.85 Code: 0xC0047017 Source: 5_Copy vw_Allocations DTS.Pipeline Description: component "5_Access Allocations" (1) failed validation and returned error code 0xC020801C. End Error Error: 2007-10-31 10:09:13.85 Code: 0xC004700C Source: 5_Copy vw_Allocations DTS.Pipeline Description: One or more component failed validation. End Error Error: 2007-10-31 10:09:13.85 Code: 0xC0024107 Source: 5_Copy vw_Allocations Description: There were errors during task validation. End Error DTExec: The package execution returned DTSER_FAILURE (1). Started: 10:07:42 AM Finished: 10:09:13 AM Elapsed: 91.422 second
I'm finding that the standard components often just don't quite meet my needs, but would only need some fairly minor changes to save me and my team a lot of work (and produce more elegant solutions). So I was just wondering whether the source code was available for the standard components that come with SSIS, or if there is anyway to extend their functionality? Or do you just have to start form scratch?
In another thread Jamie Thomson very informatively said "The components in SSIS are deliberately atomic (i.e. they do something very specific) so that its easy to put them together to build something greater than the sum of the parts". Which does make a lot of sense. However, I've been finding that I end up having to create exactly the same "pattern" of combined transform components again and again in order to solve the same problem but in different dataflows (or even within the same dataflow). Cut-and-paste-tastic! In order to obtain real re-use, it seems to me like SSIS is crying out for an easy way to create new components by using composition - i.e. the ability to take commonly-used combinations of existing components and create new "super" components (without having to write Custom Transform Components in C#/VB.Net and handle everything in code).
Does anyone know if this sort of functionality is likely to make it into SSIS in the forseeable future?
Is there a way to add functions to SQL (other than stored proceedures) to emulate functions in other systems?
I would like to create a FOXPRO type OCCURS function:
Select * FROM Table1 WHERE OCCURS('Y', FLAGS) > 3
If FLAGS is a VARCHAR(7) and equals "YYYYNNN" then OCCURS would return 4 and the row would return. The database that I am
accessing has >165,000,000 rows and >500 columns per row so you see that I need all the speed I can get!
' ' This is a VB function which works. ' Can this be compiled into a DLL and ' somehow made available to SQL? ' Public Function OCCURS(expr1 As String, expr2 As String) As Integer Dim i As Integer Dim count As Integer For i = 1 To Len(expr2) count = count + Abs((Mid(expr2, i, 1) = expr1)) Next OCCURS = count End Function
Now I need to select users who fall into the categories with CatID 5, 1, 3. Also users can fall into more than one category.
The users should be sorted by the 1st the users who fall under 5, then users who fall under 1 and then the users who fall under 3 and then finally by the userID in the descending order.
SELECT userid, username FROM Users, User_Categories WHERE userid=user_catid AND user_catID IN (5, 1, 3) ORDER BY userid DESC;
How do I extend this to get the above needed result? Any help will be highly appreciated.
If anyone can help me extending the following query I'd be really grateful! :)
I have 4 tables, Product, RawProduct, RawProductPriceHistory and RawProductPromotionalHistory. The relationship is a Product can have multiple RawProducts (one for every retailer the product is stocked in), and the PriceHistory and PromotionalHistory tables keep track of when the RawProduct's price changes, and when it comes on or off of promotion.
I have the following SP to return prices for the given Product for the given Date.
I need to extend the SP so that it also returns details from the RawProductPromotionalHistory table if a PromotionalHistory entry occurs for the passed date (@Date). We determine whether a PromotionalHistory exists by whether the passed @Date >= RawProductPromotionalHistory.StartDateTime and @Date <= RawProductPromotionalHistory.EndDateTime. The EndDateTime can also be NULL - indicating an ongoing promotion.
Here is the schema of the RawProductPromotionalHistory table:
ALTER PROCEDURE [dbo].[GetProductPricesForDate] -- Add the parameters for the stored procedure here @Date datetime, @ProductId uniqueidentifier AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON;
-- Insert statements for procedure here SELECT ph.[DateTime], p.Name AS 'ProductName', ph.UnitPrice, rp.RawProductId, r.LogoFileName AS 'ShopLogoFileName', r.ShopId, r.Name as 'ShopName' FROM Shops r INNER JOIN RawProducts rp ON rp.[ShopId]=r.ShopId INNER JOIN Products p ON p.[ProductId] = rp.ProductId INNER JOIN RawProductPriceHistory ph ON ph.[RawProductId] = rp.RawProductId INNER JOIN (SELECT RawProductId,MAX([DateTime]) as maxdate FROM RawProductPriceHistory WHERE [DateTime]<=@Date GROUP BY RawProductId )temp ON ph.RawProductId=temp.RawProductId AND ph.[DateTime]=temp.maxdate WHERE p.ProductId = @ProductId GROUP BY ph.[DateTime], p.Name, r.Name, ph.UnitPrice, r.ShopId, rp.RawProductId, r.LogoFileName ORDER BY ph.UnitPrice DESC
END
If anyone can help me extend the query I'd be really grateful!
I am confused with this topic extentded ssis.What i am diong here is creating a pipeline component and i am trying to use this component and transfer data.
What is happening here is that i create it but i dont find it when i try to include this(component) in the toolbox ->Choose items.I find my project with in tools->Attach process.
Hi, I am trying to write a stored proc that would allow word proximity. I would like to define the proximity of the word so that I could ask for a word1 within 10 of word2.
I am wondering if I could get some suggestions on how to go about writing this? Should I put this in a stored proc? Should I just cursor through each row and then cursor through each word after word1?
Has anyone investigated extending any of the SSIS Container classes?
I have been looking into it because we'd like to add a set of standard logging calls on events, standard startup procedures, etc. on any package that we execute.
I've been looking into the Sequence Container, For-Each, etc. They are all sealed classes. I'm not sure why MS has sealed them.
We're currently thinking of implementing our own version of the Sequence Container -- we'd really like to be able to extend the functionality of a standard container class, but we don't want to have to implement the actual container class itself.
I need to write an add-in, that when installed it will add a virtual folder to the project tree (in which I can later add other stuff).
The problem is even more complicated since the project I want to extend is an SSIS project (SQL Server Integration Services), and it doesn't let you customize the project structure even from the project explorer itself (can't add folders).
We have requirement in Reports. When ever report is sent to file share using Reporting Services File Share extension than details of that file should be saved in database.
How can we achieve this functionality? What is the best possible way of achieving this?
I've had requests for a version of my product ViEmu, a VS.NET 2003-VS2005 add-in, which will work within SQL Server 2005 Management Studio. I had a look at the Mgmt Studio, and it seems to be a version of the VS2005 environment customized for the product. There is a registry hive along the line of the one in Visual Studio, but located in HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft SQL Server90ToolsShell.
I looked for any hint online, but it seems largely undocumented.
I tried plugging my software by writing the right 'Packages' and 'AutoloadPackages' keys, and running "SqlWb /setup", which seems to do something. Nothing happened afterwards, anyway, the DLL doesn't seem to be loaded into the process. I tried using the '/log' option, but an error message comes up (which doesn't describe the /setup option either).
Is there a way to load a VS package into SQL Server 2005 Mgmt Studio? Is this a problem with the PLK? Is it unsupported? Has anybody been successful in such a feat? Would it be ok if I hack some way, no matter how obscure? Is this deliberately turned off, as in the Express editions?
Best regards and thanks in advance,
- J ---------------------------------------------------- ViEmu - vi/vim emulation for Visual Studio
Is there a way to extend the number of rows that will be returned so that Reporting services doesn't display such a large number of pages for the users to page through? It would be easier for them to "wheel mouse" through a long page on the screen.
Anyone out there have any thoughts on how this might be accomplished?
I was wondering if anyone has extended the standard CDOSYS Mail Stored Procedure (SP) to allow it to send the results of a query as an attachment?
I have set up a SP for CDOSYS Mail as outlined in the following link: http://support.microsoft.com/default.aspx?id=kb;de;312839&sd=tech
Currently I am using the old SQL Mail (xp_SendMail). But due to the problems with losing the MAPI connection and other limitations, I have been forced to find another solution. Using SQL Mail, I was able to add a query parameter and attach the results of the query to the email. I need to have the same functionality in CDOSYS Mail
When data is imported from our legacy system, the same functions need to be applied to several columns on different tables. I want to build a kind of "Function Library", so that the functions I define can be re-used for columns in several packages.
The "Derived Column" transform seems ideal, if only I could add my list of user-defined functions to it. Basically I want to inherit from it, and add my own list of functions for the users to select.
Is this possible ?
What other approaches could I take to building about 30 re-usable functions?
I have a got a package with source as sql table which has got 50 columns. We are using only 10 columns out of this. Recently one column name has changed and thus throws error invalid mapping. When I open the source to do the changes noticed that all the colums are prselected now and also the datatypes got changed to default ( I had changed the datatypes as per my requirement while i developed). So now I had to select required columns from source and redo the datatype changes in advanced editor.Is there any option which doesnt disturb this settings and we just need to correct the mapping alone.Â
Hi, I want to transform an xml flow to an html flow. For this, I create an XmlDataDocument, I add on it, all that I want, and I store it in a file (in a dataflow task). After that, in an xml task, I set the input properties like that: Operation type: xslt SourceType: File connection Source: ras.xml
All works fine. But now, I want to use a variable to store my xml data. So, instead of storing my data in ras.xml, I store it in a variable like that:
Dim v As Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSVariables90 Me.VariableDispenser.LockOneForWrite("RAS", v) v("RAS").Value = doc.OuterXml v.Unlock()
and in the xml task, I set configuration like that:
But when I execute, I got this following exception:
Error: 0xC002F304 at Format HTML Mail, XML Task: An error occurred with the following error message: "Root element is missing.". Error: 0xC002928F at Format HTML Mail, XML Task: Property "New Source" has no source Xml text; Xml Text is either invalid, null or empty string.
Furthermore, when I want to debug it, in replacing the xml task, by a script task, I can see that in my RAS variable, I get the xml data which is well formed.
I was trying to load data using SSIS, Data Flow Task, OLE DB Source, source was a view to a OLE DB Destination (SQL Server). This view returns 420,591 rows from Query Analyzer in 21 seconds. Row length is 925. When I try to executed the Data Flow Task from SSIS, I had to stop the process after 30 minutes, because only 2,000 rows had been retrieved. I modified the view to retun top 440, 000 and reran. This time all 420, 591 rows were retrieved and written in 22 seconds. Next, I tried to use a TOP 100 Percent. Again, only 2,000 rows were return after 30 minutes. TempDB is on a separate SAN Raid group with 200 gig free, Databases on a separate drive with 200 gig free. Server has 13 gig of memory and no other processes were executing.
The only way I could populate the table was by using an Execute SQL Task and hard code an Insert into table selecting data from the view (35 seconds) from SSIS.
Have anyone else experience this or a similar issue? Anyone have a solutionexplanation?
I am having a huge xml file with nested section. i also have a xsd file for that xml. i have a destination table where the data from the xml should be loaded into. i am using the xml source transformation. But o get all the data i need to use multiple merje joins to get the data in a single row which i can insert into the destination.i was not quiet convinced with using so many joins.
so i tried using the script source transformation where i am using xml objects to get the node and dynamically construction the data row. and the output is then inserted into the destination. on comparing the two approach the one using the script source is working much faster than the xml source transformation.
i wanted to know is there any limitaion using the script source to parse through xml files. also i would like to know any other better way of getting the data from xml source without using the joins.
I have a job that contains a step to run a DTS task (DTSRUN /S.....etc.) via a batch file.
I can run either the DTSRUN command line, or the batch file that contains it just fine, but when I try to run the job, it reports success but does not actually do the work.
I dont get an error message. I am using the sa account to run the DTS task from the command line.
I know this must be a permissions issue. As I am working at a Defense contractor, I cannot get a domain admin account to run SQL Agent.
Can any one give me brief useful explanations or guide me to a usefulresource of what Development Tools component and Profiler are?Is there anything I should be aware of if I want to install ClientConnectivity component (don't want to overwrite anything)?Thank you in advance.
I am not sure why when the packages are run, the components dissapear. The only thing I see is the result in the output. So there is no visual on the tabs. Thanks
I was trying subscription, but an error occured: "Microsoft Server Management Studio is un able to accessreplication components because replication is not installed on this instance.
I went to change, located my setup exe, installed. but at the end, I get this message: No selected features can be installed or upgraded. Setup cannot proceed since no effective change is being made to the machine......
I downloaded the Express edition via MSDN download.
May somebody please help? What wrong did I do? What did I miss to do?