SSIS Package Load Failure and is missing Execute SQL Task in Toolbox

Also, BIDS closes after right-clicking the toolbox and selecting “Choose Items”.
I’ve tried several ways to fix these issues with no success.
I’m running SSIS/SSMS/SQL Server 2008 R2 (but not running an SQL instance on my PC) on a Windows XP with Service Pack 3 workstation. I get the following errors:
WHEN OPENING BIDS:
I get 2 errors titled “Package Load Failure”. They both reference ‘Visual Studio Explorers and Designers Package’ as being what failed to load. The first message references GUID 8D8529D3-625D-4496-8354-3DAD630ECC1B. The second references GUID AA612177-A69A-4391-B2F4-17F8A88F4BBA
. They both mention contacting the package vendor, but I haven’t got any Add-ins loaded so I’m not sure what that means exactly. They also both ask if I’d like to skip loading the package in the future.
ONCE BIDS IS OPEN:
No error messages appear here. There is no ‘Execute SQL Task’ in the toolbox for Control Flows. Also, if I attempt to open a project containing this object (Execute SQL Task), I get this error in a modal window:
TITLE: Microsoft Visual Studio
There were errors while the package was being loaded.
The package might be corrupted.
See the Error List for details.
BUTTONS:
OK
. . . and these errors in the Error List at the bottom of the IDE:
Error      1             
Error loading Package.dtsx: Failed to load task "Execute SQL Task", type "Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask.ExecuteSQLTask, Microsoft.SqlServer.SQLTask, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91". The contact information
for this task is "Execute SQL Task; Microsoft Corporation; Microsoft SQL Server 2008 R2; © 2007 Microsoft Corporation; All Rights Reserved;http://www.microsoft.com/sql/support/default.asp;1". 
        C:\Documents and Settings\848862.VCHS_NT_DOMAIN\My Documents\Visual Studio 2008\Projects\LearnSSIS\LearnSSIS\Package.dtsx   
1               
1             
Error      2             
Validation error. Execute SQL Task : The task has failed to load. The contact information for this task is "Execute SQL Task; Microsoft Corporation; Microsoft SQL Server 2008 R2; © 2007 Microsoft Corporation; All Rights Reserved;http://www.microsoft.com/sql/support/default.asp;1". 
        Package.dtsx    
0             
0             
Error      3             
Validation error. Execute SQL Task : There were errors during task validation. 
   Package.dtsx    
0             
0               
Finally, when I attempt to add the Execute SQL Task via the Tools menu, “Choose Toolbox Items” selection, I do get the tabbed box for adding things. However, they only come up after issuing this error:
The following assemblies are installed SDK assemblies but could not be shown in the customize toolbox dialog because they are missing one or more components. Please make sure that all necessary libraries are available:
Microsoft.SqlServer.SqlCEDest.dll
Microsoft.SqlServer.Management.CollectorTasks.dll
Microsoft.SqlServer.SQLTask.dll
System.Data.SqlServerCe.dll
Microsoft.Synchronization.Data.SqlServerCe.dll
(above dll repeated at bottom of message)
After this message, I have my choice of .NET Framework Compnents. When I select COM Components, those come up with no problem. The WPF Components tab generates the same dll error above. The Maintenance tab is empty. The SSIS Data Flow Items tab loads fine,
as does the SSIS Control Flow Items tab – but there’s no Execute SQL Task there either.
If you open the toolbox (on a new project, with a project loaded, or without a project loaded) and right-click, then select “Choose Items”, the entire application quickly closes. This “closing behavior” is the same thing you get if you attempt to add toolbox
items through either the Tools menu or the right-click method when you launch BIDS in SafeMode.
In an effort to fix this – I’ve rolled back the .NET Framework version to 3.0 and reinstalled back up to 4; I’ve uninstalled and reinstalled SQL Server 2008 R2 shared services as well as the entire application; I’ve cleared the .tbd files from my user profile;
and I’ve run several things from the command line (devenv.exe /resetuserdata, /setup, /resetskippkgs, etc.). Lastly – I’ve applied every Service Pack and update applicable to my PC (ok, it belongs to my employer – but no one here has been able to figure this
out either).
After having worked this for several days now and, I think, exhausting every available avenue from search engines – I turn to you. Please let me know if you can help. Also, I can provide any additional
files or information you may require.
CBS

try: Devenv.exe /ResetSettings
http://msdn.microsoft.com/en-us/library/ms241273(v=vs.80).aspx
Or try this (it's for 2005, but maybe it works for 2008 aswell):
http://geekswithblogs.net/cicorias/archive/2007/10/10/Restoring-Missing-Toolbox-Items-in-Visual-Studio-2005---just.aspx
or try
http://stackoverflow.com/questions/1268298/how-to-rebuild-the-visual-studio-toolbox
"You can also go into the folder "C:\Documents and Settings\\Local Settings\Application Data\Microsoft\VisualStudio\9.0" and delete the *.tbd files.  I have had to do this a couple times to get rid of duplicate items and when Reset Toolbox crashes
without warning"
Please mark the post as answered if it answers your question | My SSIS Blog:
http://microsoft-ssis.blogspot.com |
Twitter

Similar Messages

  • Dynamically change the db and server in execute sql task

    Pkg 2: Moves data from B_STG (Staging DB) to B_Det_STG (Staging DB)  ---- option1
    Pkg 3: Moves data from B_STG (Staging DB) to B_Det (PC DB)   ---- option2
    This part is duplicating in both the packages
    So they want me to merge both of them into in execute sql task and dynamically change between option1 and option2 depending on a pkg level variable.
    So, I create a pkg level variable called ExecutionVariable: 'ANALYSIS' or 'LOADING'
    If 'ANALYSIS' it needs to do option1 else option2.
    So, I ma trying to create a dynamic connection string in execute sql task.
    I change the connection property in execute sql task editor dynamically my giving the expression: @[User::ExecutionVariable] == "ANALYSIS"?  @[User::STAGINGDBConnectionString] :  @[User::PCDBConnectionString]
    which evaluates to : Data Source=AW-ETL-D1;Initial Catalog=Staging;Integrated Security=SSPI;Provider=sqloledb
    But when I run the sql task, its giving me an error: 
    ERROR:
    TITLE: Microsoft Visual Studio
    Nonfatal errors occurred while saving the package:
    Error at PC_DataLoad: The connection "Data Source=AW-ETL-D1;Initial Catalog=Staging;Integrated Security=SSPI;Provider=sqloledb" is not found. This error is thrown by Connections collection when the specific connection element is not found.
    Error at PC_DataLoad: The connection "Data Source=AW-ETL-D1;Initial Catalog=Staging;Integrated Security=SSPI;Provider=sqloledb" is not found. This error is thrown by Connections collection when the specific connection element is not found.
    Can u please help me.

    Hi ,
    Don't try to make the "Execute Sql" task as dynamic.
    Try to make OLEDB connection Manager as "Dynamic".
    Steps:
    1. Create OLE DB Connection pointing to any database then set expression to connection string variables like below.
    Provider=SQLNCLI10.1;Integrated Security=SSPI;Initial Catalog=YourDBname;Data Source=YourServerName.
    2. Make Delayed Validation property to "True".
    3. Set the created dynamic OLE DB connection to your Execute SQL task.
    4. Change the connection string variable accordingly before running the "Execute SQL" task.
    Hope it will help you.
    Regards,
    Nandhu

  • Why is the LookUp object in the Flow Task of my SSIS package going red (and not working) ? Sql Server 2008 R2

    I have been working with the Sql Server 2008 R2 SSIS Tutorial at
    https://msdn.microsoft.com/en-us/library/ms170419(v=sql.105).aspx
    --specifically -- Lesson 1.  I have been having some problems with this lesson where the source data from the samples download doesn’t exactly match the data described in the tutorial, and the tables in the tutorial are different from what
    is contained in AdventureWorksDW (tutorial refers to DimTime – AdventureWorksDW contains DimDate and no DimTime).  
    So, after futzing in BI with this tutorial  so that I can at least get it to run in Debug – it errors out on the 2<sup>nd</sup> LookUp object.
    Rather than looking for a fix to the problem(s) that I am having between the tutorial and the stuff I downloaded in the samples --
     I want “Adapt” the tutorial so I can use the stuff I downloaded and hopefully learn how to use SSIS with the elements (source data and tables) that are present on my workstation. 
    Here is a description of what is going on for me – which I really don’t understand what is going on in BI – based on the images below – like what columns (from what tables) are they associating to in the OleDB Destination? 
    Note:  the sql in the LookUps here is the sql that I copied from the tutorial. 
    I probably need to modify these sql statements – so -- the help I am requesting is to make the required modifications/changes
     so that I can adapt this tutorial with the stuff that’s on my workstation.
    I downloaded the samples and the AdventureWorksDW mdf for Sql Server 2008 R2. 
    It turns out that in the tutorial it wants me to select a DimTime table, but the version of the AdventureWorksDW db does not contain a DimTime table. 
    Instead, it contains a DimDate table.  So I tried adapting DimDate for the tutorial. 
    Additionally, the sample data file -- SampleCurrencyData.txt -- has slightly different data types than the types described in the tutorial, so I selected data types for the columns in the datasource text file that would work in BI would to
    connect column from source data file to the table.
    After finishing all the steps for Lesson 1 -- when I tried debugging the package – and it error'd out on  the 2<sup>nd</sup> Lookup object whichwent red.
      I edited the lookups and the sample Ole DB Destination to "ignore on fail” and I did all
     green but the FactCurrencyRate table is not being populated -- as described in the tutorial, so I reset the on error back to default (Fail on error option).   And based on this tutorial -- I believe FactCurrencyRate
    table is the table which is supposed to be populated with the data from SampleCurrencyData.txt?
    In the sample data file that downloaded with all the samples  I removed all the data from the text file except for 6 rows, so instead of the original 1100 or so rows, I have only 6 rows of data in the source data file (just to keep things
    simple for debugging for now).  I did not modify the data itself. 
    Here is what the (raw) data contained in SampleCurrencyData.txt looks like (from the samples that I downloaded from codeplex) – it’s supposed to be 4 columns of data – float, nvarchar, datetime, float:
    0.281690141       USD      
    6/26/2004 0:00  0.281713948
    0.281690141       USD      
    6/27/2004 0:00  0.281642539
    0.281690141       USD      
    6/28/2004 0:00  0.281761573
    0.283286119       USD      
    6/29/2004 0:00  0.283221933
    0.283286119       USD      
    6/30/2004 0:00  0.283358363
    0.281690141       USD      
    7/1/2004 0:00     0.281682206
    Below are images of my BI Layout for Lesson 1 from this tutorial -- the FlatFile and configurations for On Fail Error, A Flow task, the 2 LookUps (CurrencyKey and DataKey), the OleDB Destination configuration, the Design view of the associated tables and
    the Debug Run of Lesson 1, and the following error messages. My goal is to figure out what is going on in BI for this tutorial.
    Error: 0xC020901E at Extract Sample Currency Data, Lookup Datakey [51]: Row yielded no match during lookup.
    Error: 0xC0209029 at Extract Sample Currency Data, Lookup Datakey [51]: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. 
    The "component "Lookup Datakey" (51)" failed because error code 0xC020901E occurred, and the error row disposition on "output "Lookup Match Output" (53)" specifies failure on error. An error occurred on the specified
    object of the specified component.  There may be error messages posted before this with more information about the failure.
    Error: 0xC0047022 at Extract Sample Currency Data, SSIS.Pipeline: SSIS Error Code DTS_E_PROCESSINPUTFAILED. 
    The ProcessInput method on component "Lookup Datakey" (51) failed with error code 0xC0209029 while processing input "Lookup Input" (52). The identified component returned an error from the ProcessInput method. The error is specific
    to the component, but the error is fatal and will cause the Data Flow task to stop running. 
    There may be error messages posted before this with more information about the failure.
    --this is the flat file
     -- SampleCurrencyData.txt (which only contains 6 data rows for my purposes)
    --and here is where I assign the data types for the colums of -- SampleCurrencyData.txt
    This is the first LookUp Object -- LookUp Currency Key – The DB contains DimCurrency table. 
    I copied the sql from the tutorial here.
    I actually have a DimCurrency table in my copy of AdventureWorksDW. 
    Here’s the design view of DimCurrency and a sample of the data contained in DimCurrency and the On Fail configuration
    I actually have a DimCurrency table in my copy of AdventureWorksDW. 
    Here’s the design view of DimCurrency and a sample of the data contained in DimCurrency and the On Fail configuration
    --Here is what the data looks like in the DimCurrency table
    --2<sup>nd</sup> LookUp object  -- LookUp Data Key – this is the LookUp
     where BI errors out on Debug
    --it appears this lookup is referencing the DimDate table – which I DO have in the DB.
    --I can’t find the following sql in the tutorial, so I suppose BI added the sql (did it?)
    --Here's how I configured for On Error
    --Here is DimDate table in Design view
    --Here is a sample of the original data contained in DimData
    OleDB Destination
    --Here is where I get lost a bit – what is going on in the destination here?
    --Here's my On Error configuraino
    --and here is the FactCurrencyRate table
    --and here is a sample of the data contained in FactCurrencyRate
    Rich P

    Thank you for your reply.  I changed the error handling as you suggested on the 2nd lookup to redirect to unmatched rows.  Now I get all greet.  I don't have the conditional split as in your diagram.  But also, nothing appears to have
    happened in the DB.  Aren't the rows in my text file supposed to be added to the FactCurrencyRate table?
    How do I get a conditional split?
    Rich P
    OK, sorry I forgot to reply you back.
    Conditional Split was just dummy task. Ignore it.
    Manipulate the data in such way that you get matching records.
    Inside Source, for first 2 rows I put the dates which are available in DimDate.
    1.00010001,ARS,7/1/2005 0:00,0.99960016
    1.00010001,ARS,2/5/2006 0:00,1.001001001
    1.00020004,ARS,9/5/2001 0:00,0.99990001
    1.00020004,ARS,9/6/2001 0:00,1.00040016
    1.00050025,ARS,9/7/2001 0:00,0.99990001
    1.00050025,ARS,9/8/2001 0:00,1.001001001
    Then in OLE DB Destination, I loaded the rows to TestFactTable.
    (Now, you don't even need NO MATCH OUTPUT as there are matching records here)
    Cheers,
    Vaibhav Chaudhari
    [MCTS],
    [MCP]

  • Customized Execute SQL Task in SSIS

    Hi,
    I,m using Execute SQL Task in SSIS Package with these configuration ..
    But, If SQL Statement doesn't report any record mean Query is not returning any data then this Task will be failed.
    How can I assure that If there is no record is returning in query that " Execute SQL Task " should bot be executed .
    Also I If I can do the same thing through other methods in SSIS, Pls response .
    -Ashish

    Hi Ashish,
    The Execute SQL Task failed because you had set the ResultSet to “Single row”, however, the SQLStatement didn’t return any records. If you don’t want to execute this task when the query doesn’t return any records, you can use the following method:
    Create a String type variable RowCnt, add another Execute SQL Task prior to this task.
    In the new Execute SQL Task, input the SQLStatement as “Select Count(*) From Table”, set the ResultSet to “Single row”, and map the result set 0 to the variable RowCnt.
    Join the two tasks (green line), and edit the Precedence Constraint (Green line), and set the expression to “(DT_I4)@[User::RowCnt]>0”.
    Regards,
    Mike Yin
    TechNet Community Support

  • What is the difference between Execute SQL Task and OLE DB Command

    Besides the obvious, Execute SQL Task being used in Control Flow, and
    OLE DB Command being used in Data Flow what is the difference between the two? Is one supposed to use
    Execute SQL Task to produce a result set that then gets handed over to
    Data Flow and OLE DB Command ? Everything that I have seen on
    OLE DB Command is pretty much execution of a Stored Procedure with ? parameters. It seems as though I got to a point where I had to perform my data edits pretty much entirely in a Stored Procedure executed by
    OLE DB Command rather than trying to use the SSIS GUI for everything. I didn't really see in any of my Google searches out there that simply used
    OLE DB Command as a straight parameterized SQL against tables for editing and cleansing purposes and handling returns back from SQL Server for COUNT(*), etc..
    I know I have posted multiple forums out there regarding this issue but I cannot seem to get a straight answer and some solid direction. So for now, my
    Execute SQL Task gives me my editable result set and then control is handed off to
    Data Flow and ultimately to my Stored Procedure executed by an
    OLE DB Command  which pretty much does the chunking for me and performs my data edits and handles my record anomalies through SQL Server Table data stores accordingly or sets flags accordingly if the data passes.
    I welcome your thoughts and Thanks for your review and Thanks in advance for any replies and direction that anyone might provide.
     

    Hi ITBobbyP,
    OLE DB Command will always process data row by row, whereas Execute SQL task if you call a Stored Procedure it can process data in bulk. As you said, the biggest difference is that Execute SQL Task being used in Control Flow, and OLE DB Command being
    used in Data Flow. They are used in different places.
    Using Execute SQL Task, we can save the rowset returned from a query into a variable. The Execute SQL task can be used in combination with the Foreach Loop and For Loop containers to run multiple SQL statements. These containers implement repeating control
    flows in a package and they can run the Execute SQL task repeatedly. For example, using the Foreach Loop container, a package can enumerate files in a folder and run an Execute SQL task repeatedly to execute the SQL statement stored in each file. I think this
    is a big advantage for Execute SQL Task.
    As to OLE DB Command, we can easily run an SQL statement for each row transformation in a data flow, then directly insert the outputs to a destination.
    To sum up, there are many difference between those two components. We should make better choice based on our actual requirement.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • [Forum FAQ] How do I send multiple rows returned by Execute SQL Task as Email content in SQL Server Integration Services?

    Question:
    There is a scenario that users want to send multiple rows returned by Execute SQL Task as Email content to send to someone. With Execute SQL Task, the Full result set is used when the query returns multiple rows, it must map to a variable of the Object data
    type, then the return result is a rowset object, so we cannot directly send the result variable as Email content. Is there a way that we can extract the table row values that are stored in the Object variable as Email content to send to someone?
    Answer:
    To achieve this requirement, we can use a Foreach Loop container to extract the table row values that are stored in the Object variable into package variables, then use a Script Task to write the data stored in packages variables to a variable, and then set
    the variable as MessageSource in the Send Mail Task. 
    Add four variables in the package as below:
    Double-click the Execute SQL Task to open the Execute SQL Task Editor, then change the ResultSet property to “Full result set”. Assuming that the SQL Statement like below:
    SELECT   Category, CntRecords
    FROM         [table_name]
    In the Result Set pane, add a result like below (please note that we must use 0 as the result set name when the result set type is Full result set):
    Drag a Foreach Loop Container connects to the Execute SQL Task. 
    Double-click the Foreach Loop Container to open the Foreach Loop Editor, in the Collection tab, change the Enumerator to Foreach ADO Enumerator, then select User:result as ADO object source variable.
    Click the Variable Mappings pane, add two Variables as below:
    Drag a Script Task within the Foreach Loop Container.
    The C# code that can be used only in SSIS 2008 and above in Script Task as below:
    public void Main()
       // TODO: Add your code here
                Variables varCollection = null;
                string message = string.Empty;
                Dts.VariableDispenser.LockForWrite("User::Message");
                Dts.VariableDispenser.LockForWrite("User::Category");
                Dts.VariableDispenser.LockForWrite("User::CntRecords");     
                Dts.VariableDispenser.GetVariables(ref varCollection);
                //Format the query result with tab delimiters
                message = string.Format("{0}\t{1}\n",
                                            varCollection["User::Category"].Value,
                                            varCollection["User::CntRecords"].Value
               varCollection["User::Message"].Value = varCollection["User::Message"].Value + message;   
               Dts.TaskResult = (int)ScriptResults.Success;
    The VB code that can be used only in SSIS 2005 and above in Script Task as below, please note that in SSIS 2005, we should
    change PrecompileScriptIntoBinaryCode property to False and Run64BitRuntime property to False
    Public Sub Main()
            ' Add your code here
            Dim varCollection As Variables = Nothing
            Dim message As String = String.Empty
            Dts.VariableDispenser.LockForWrite("User::Message")
            Dts.VariableDispenser.LockForWrite("User::Category")
            Dts.VariableDispenser.LockForWrite("User::CntRecords")
            Dts.VariableDispenser.GetVariables(varCollection)
            'Format the query result with tab delimiters
            message = String.Format("{0}" & vbTab & "{1}" & vbLf, varCollection("User::Category").Value, varCollection("User::CntRecords").Value)
            varCollection("User::Message").Value = DirectCast(varCollection("User::Message").Value,String) + message
            Dts.TaskResult = ScriptResults.Success
    End Sub
    Drag Send Mail Task to Control Flow pane and connect it to Foreach Loop Container.
    Double-click the Send Mail Task to specify the appropriate settings, then in the Expressions tab, use the Message variable as the MessageSource Property as below:
    The final design surface like below:
    References:
    Result Sets in the Execute SQL Task
    Applies to:
    Integration Services 2005
    Integration Services 2008
    Integration Services 2008 R2
    Integration Services 2012
    Integration Services 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Thanks,
    Is this a supported scenario, or does it use unsupported features?
    For example, can we call exec [ReportServer].dbo.AddEvent @EventType='TimedSubscription', @EventData='b64ce7ec-d598-45cd-bbc2-ea202e0c129d'
    in a supported way?
    Thanks! Josh

  • Package Load Failure message in VS 2005 and Error: WIJ 20002

    After installing BusinessObjects Enterprise XI 3.1 .NET SDK when ever I open any project in VS 2005 I get the error message (the same happened on other system as well)
    Package Load Failure
    Package 'BusinessObjects.Enterprise.Vsip.BOEVsPackage, BOEVsPackage, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=... has failed to load properly (GUID = {...}). Please contact package vendor for assistance. Application restart is recommended, due to possible environment corruption. Would you like to disable loading this package in the future? You may use 'devenv /resetskippkgs' to re-enable package loading.
    I did try 'devenv /resetskippkgs' but still get this error. Any idea reagarding this.
    Next issue using the code sample provided in the site to create webi document by passing the universe id gives error message :
    "The Web Intelligence Java Report Panel cannot connect to the server. close the report panel and try to connect again or see your BO Administrator. (Error: WIJ 20002)."
    The Java version I have is 6 and I checked the Universe is not locked.
    Need help to identify the cause for both errors.

    Try the following as posted on another forum:
    Two solutions: 
    1.  -Go in to the Tools menu in .NET, and choose Import and Export Settings.
        - From the dialogue box, choose Reset All Settings and follow the steps
    2. If you have installed VS.NET to a drive other than the C drive, copy all files from the folder C:\Program Files\Microsoft Visual Studio 8\Common7\IDE to the same folder on the drive where .NET is installed, ie :
    D:\Program Files\Microsoft Visual Studio 8\Common7\IDE
    Regards,
    Jonathan

  • Execute SQl Task Error SSIS Package

    Hi all,
    I`m using for each loop container in my package to grab the file name from the source path. I have created 2 vairables
    FilePath and SourceFolder
    I`m using execute sql task inside the container and this is my query
    Insert into [dbo].[DCA_FF_TEST] (File_Name,File_Date) SELECT File_name = ?,
    File_Date = GetDate()
    Please not the Table I am trying to insert has more columns but at this stage I dont need them.
    When i execute the task I get an error
    [Execute SQL Task] Error: Executing the query "
    INSERT INTO   [dbo].[DCA_FF_TEST] ([File_Name],[F..." failed with the following error: "The statement has been terminated.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters
    not set correctly, or connection not established correctly.
    Can someone point me in the right direction? Am I missing anything?
    Resultset property Set to None
    Parameter Mapping: Variablename: FilePath , Direction: Input, datatype : Varchar, Parametername: 0, ParameterSize: 100.
    I`ve checked the connection as well it works.
    FM

    Did you try
    Insert into  [dbo].[DCA_FF_TEST] (File_Name,File_Date)
    SELECT ?, GetDate()
    Or
    Insert into  [dbo].[DCA_FF_TEST] (File_Name,File_Date) VALUES (?, GetDate())
    A Fan of SSIS, SSRS and SSAS

  • Combining package configuration and Execute SQL task at run time

    Hi everyone,
    I have an issue regarding setting values at run time
    I use package configuration to manage different enviroments scenarios (DEV, PROD):
    XML file to store the connections string of SSISConfigDB
    and the actual values of parameters in that SSISConfig DB tables Filtered by ConfigurationFilter column
    Now, one of my packages needs in addition setting at run time value of a flat file name
    i used an Execute SQL task - within the task i read into a variable the file name using command line
    then, the full path of Flat File Connection is set by expression concatenating the root folder and the variable
    the problem is that the variable stays empy! as if the Execute SQL task was never executed!
     Am i doing something incorrect? in the package configuration wizard the configured value are only XML file and the connection string of the DB.
    to summerize - how can i combine package configuration, default value, Execute SQL task and expression at runtime?

    1.EvaluateasExpression=TRUE (Full Path variable)
    2. Do you mean to invlole a ISNULL() function in the expression? if so, no
    3. Of course i recieve a valid value
    4. The Full path expression is evaluated to the root folder - without the portion of the file name
    here is the syntax in Execute SQL Task:
      truncate table OnErrorFlagTable
      Declare @Path varchar(128)
      Declare @FileName varchar(128) 
      Declare @SenderID varchar(5)
      Declare @INST_COD varchar(5)
      Declare @Flag int = 0
     Declare @FileType varchar(2)='01'
      Truncate table TraumaRecords
    Select @Path = 'C:\RootFolder\'
     --***Insert into Temp table the file so we can take his name***--
    Create Table #Tmp(Txt Varchar(Max))
    Insert Into #Tmp(Txt)
    Exec master..xp_cmdshell 'Dir *.txt C:\RootFolder\/b'
    select top 1 @Filename = Txt From #Tmp
    Where ISNUMERIC(substring(Txt,1,1))=1
    order by Txt desc
    Insert into OnErrorFlagTable
    Select 2,@FileName
    Select @FileName as TraumaFileName,@FileType as FileType
    Then, in ResultSet TraumaFileName and FileType are mapped
    Expression of @TraumaFlatfileFullPath is
    @[User::TraumaFlatfilePath]+ @[User::TraumaFlatFileName]
    where the variable @[User::TraumaFlatfilePath] is evaluated in variable window (default value)
    and it's value is C:\RootFolder\
    and @[User::TraumaFlatFileName] is the ResultSet of the ExecuteSQLTask
    and for some reason when executed in SSIS return null while in SSMS return the expected value
    Can you try making this into a procedure with required parameters and call it from SQL task to see if you get return value correctly? Use OUTPUT parameters for getting back required values
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • Package Load Failure VS 2008 Architect & 11.1.0.6.20

    I have a virtual machine running Windows Server 2003, IIS, and Visual Studio 2008 Team Architect.
    When I try to install "ODAC 11.1.0.6.20 with Oracle Developer Tools for Visual Studio" I get an error "Could not start the OracleMTSRecoveryService service on Local Computer. Error 1053: The service did not respond to the start or control request in a timely fassion." I hit "Ignore" and the installation completes.
    Then when I run Visual Studio and select "Run SQL*Plus Script" I get:
    Package Load Failure
    Package 'Oracle Develper Tools for Visual Studio .Net' has failed to load properly...
    I have uninstalled and reinstalled without the MTS Recovery Service and get the same error.
    Any suggestions on getting this to work?

    I started visual studio with logging turned on. Here are the results from the log file:
    <entry>
    <record>60</record>
    <time>2008/01/18 19:14:09.974</time>
    <type>Information</type>
    <source>Microsoft Visual Studio</source>
    <description>Entering function CVsPackageInfo::HrInstantiatePackage</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
    </entry>
    <entry>
    <record>61</record>
    <time>2008/01/18 19:14:11.026</time>
    <type>Warning</type>
    <source>Microsoft Visual Studio Appid Stub</source>
    <description>CheckPackageSignature failed; invalid Package Load Key</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
    </entry>
    <entry>
    <record>62</record>
    <time>2008/01/18 19:14:11.056</time>
    <type>Information</type>
    <source>Microsoft Visual Studio</source>
    <description>Begin package load [Oracle Developer Tools for Visual Studio .NET]</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
    </entry>
    <entry>
    <record>63</record>
    <time>2008/01/18 19:14:16.273</time>
    <type>Error</type>
    <source>Microsoft Visual Studio</source>
    <description>SetSite failed for package [Oracle Developer Tools for Visual Studio .NET]</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
    <hr>80004005 - E_FAIL</hr>
    </entry>
    <entry>
    <record>64</record>
    <time>2008/01/18 19:14:16.313</time>
    <type>Error</type>
    <source>Microsoft Visual Studio</source>
    <description>End package load [Oracle Developer Tools for Visual Studio .NET]</description>
    <guid>{D601BB95-E404-4A8E-9F24-5C1A462426CE}</guid>
    <hr>80004005 - E_FAIL</hr>
    </entry>

  • Package Load Failure, no beta versions of anything

    Hi,
    I get a "Package Load Failure" when starting VS2008. I've tried everything I can
    possibly think of, including reading about the problem in this forum, but nothing
    helps. The installation has installed five different asseblies correctly (as far as
    I can see) in the GAC, two for Oracle.DataAccess, and one each for the others.
    To avoid problems, I made completely fresh install of Windows Vista Ultimate, then
    I installed all security updates from MS, then VS 2008, then ODT 1110620. No betas
    has been installed at any point.
    I got one error message during install of ODT, "The request to star the service
    OracleMTSRecoveryService has timed out", but I dont think that should matter for
    this problem.
    Are there any other things to try to get ODT to work? I would appreciate any help I can get.
    The guid in the error message when staring VS 2008 is "D601BB95-E404-4A8E-9F24-5C1A462426CE".
    Regards,
    Carl

    Hi
    I run the 'gacutil /l | findstr Oracle' and that result seemed OK. I post the output here:
    Oracle.DataAccess, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
    Oracle.Management.Omo, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
    Oracle.VsDevTools, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
    Oracle.Web, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
    Policy.2.102.Oracle.DataAccess, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
    Policy.2.111.Oracle.DataAccess, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342, processorArchitecture=x86
    System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86
    Oracle.DataAccess, Version=1.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342
    Policy.1.102.Oracle.DataAccess, Version=1.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342
    Policy.1.111.Oracle.DataAccess, Version=1.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342
    Policy.10.1.Oracle.DataAccess, Version=1.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342
    Policy.10.2.Oracle.DataAccess, Version=1.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342
    Policy.9.2.Oracle.DataAccess, Version=1.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342
    It is by the way VS 2008 (not 2005), if that makes any difference. I did not try to reregister the assemblies since they seemed OK (but my path to them are a bit different not c:\Oracle\Product, but c:\Oracle\Developer\Product because Developer is the users username (default with Oracle installer), but I did the 'devenv /setup' but that did not help.
    regards
    Carl

  • SSIS: How to use one Variable as Input and Output Parameter in an Execute SQL Task

    Hello,
    i need your help,I'm working on this issue since yesterday and have no idea how to deal with it.
    As I already said in the tilte i want to start a stored procedure via a Execute SQL Task which has around 15 prameters. 10 of these should be used as input AND output value.
    As an example:
    i have three  Variable:
    var1    int        2
    var2    int     100
    var3    int     200
    the stroed procedure:
       sp_test
          @var1 int
          @var2 int output
          @var3 int output
       AS
       BEGIN
            SET @var2 = @var2 * @var1
            SET @var3 = @var3 + @var1
       END
    So in the Execute SQL Task i call the Stored Procedure as follwos:
        Exec sp_test  @var1 = ?, @var2 = ? output, @var3 = ? output
    (I use an OLE DB Connection)
    The parameter mapping is as follows:
    User::Var1        input                   numeric              0                 -1
    User::Var2        input/output         numeric              1                 -1
    User::Var3        input/output         numeric              2                 -1
    Now my problem. If i set  Var2 and Var3 as Input parameter the values are still the same after running the package. If i set them to a output value the are both Null because the procedure doesnt get any values.
    I already tried to list them a second time - like
        User::Var2        input                  numeric              1                 -1
        User::Var2        output                 numeric              1                 -1
    or i use a new variable
        User::Var2                  input                  numeric              1                 -1
        User::Var2Return        output                 numeric              1                 -1
    but i alwas get the error
    "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done."
    Has anybody an idea how I can solve this problem?
    Thanks a lot.
    Kind Regards,
    Alice

    Hi Alain,
    thx for your answer.
    I have around 15 procedures called one after the other to calculated and modify my values. Each procedure is responsible for an other but overlapping set of variables. So i thought it would be a good idea to call them one after the other with the needed variables via a execute sql task.
    So if i use a result set, how i get my stored procedure to return 10 values? I would have to use a Function instead of a procedure, wouldn't i?
    As if i have 15 procedures this would be a lot of work.
    But thanks a lot for the idea. I think an other idea would be to create one function which calls all stored procedures and returns all the calculated values as a result set, wouldn't it?.
    Kind Regards.
    Alice

  • Single XML configuration file for all the SSIS packages(including parent and child packages)

    Hi
    I have some 16 ssis packages. source Db and destination Db for these packages are common. I am calling these child packages in a master package.
    I want to use only one XML config file for this master.
    How do i use same for all child packages?
    and can i do it with parent package variable?

    I created a master package with a variable master, and in value i have entered the configuration file path.
    Hi vjp dinu,
    You should create variables in the parent package to pass values to variables in each child package rather than pass the file path of the XML Configurations file of the parent package.
    As Visakh mentioned, you can achieve your goal by creating corresponding variables in the parent package for each child package, and enable Package Configurations for the parent package so that you can control the values through the XML Configurations file
    for the variables of the parent package.
    Supposing there is a variable FilePath in child package 1, a variable ServerName in child package 2, then, we need to create two variables pFilePath, pServerName in the parent package. After configuring the Parent package variable in each child package (e.g.
    mapping pFilePath to FilePath, pServerName to ServerName), you can enable XML Configurations for the parent package, and expose the value property for both pFilePath and pServerName variables. In this way, you can modify the XML Configurations file of the
    parent package and the specified values will passed to the child packages.
    Reference:
    http://microsoft-ssis.blogspot.com/2011/06/passing-variables-from-parent-package.html 
    Regards,
    Mike Yin
    TechNet Community Support

  • Execute SQL task for Email ToLine using COALESCE and two variables

    Hello...
    I am converting an old DTS package to SSIS. The old package consist of mostly ActiveX Script so I am breaking it down into steps. Basically... I am retreving a set of records that need to be sent via email to multiple people.  In my package to create
    my ToLine for the Send Mail Task I am using several steps. Frist I am using:
    SELECT CASE
              WHEN EXISTS (  SELECT        users.User_EmailAddress
    FROM            dbo.Errors INNER JOIN
                             dbo.Users ON users.user_id = Errors.MonitorAuditor_User_Id
    WHERE        ([Audit_Id] = ?) AND ([ErrorCode_Id] = ?) ) THEN
                 1
              ELSE
                 0
           END AS ValidEventID
    I use this to see if there is any records to create my email string. This works fine.  After this I have a Script Task that splits my pipe in two. When no records exist (User::ValidEventID == 0) I am loging that event to a log. When records do exist
    I am using another Execute SQL task to create the actual ToLine:
    Declare @combinedString VARCHAR(max)
    SELECT      @combinedString = COALESCE(@combinedString + ', ', '') + Users.User_EmailAddress
    FROM            dbo.Errors INNER JOIN
                             dbo.Users ON users.user_id = Errors.MonitorAuditor_User_Id
    WHERE        ([Audit_Id] = ?) AND ([ErrorCode_Id] = ?)
    SELECT convert(varchar(4000),@combinedString) as StringValue
    I have my resultSet set to Single Row. I have two variables coming if for the Audit_Id and ErrorCode_Id. My Result Set is set to a Variable: User::EmailAddressString.
    Next it goes through a foreach loop to map to the ToLine email variable that I created named User:User_EmailAddress.
    Then I am using that in my Send Email Task.
    It all works fine when I hard code my variables into the COALESCE statement but as soon as I replace that with the ? that SSIS requires for variables I am getting the following error:
    [Execute SQL Task] Error: Executing the query "Declare @combinedString VARCHAR(max)
    SELECT      ..." failed with the following error: "Syntax error, permission violation, or other nonspecific error". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly,
    parameters not set correctly, or connection not established correctly.
    I have tried changing my resultset property, I have checked my paramenters and my connection. I don't understand why it works fine when I have my varaiables hard coded but not when I change them to the ?.
    Thanks in advance for you help in this matter.
    Reach for the unknown!

    Katherine... that did not work. 
    What I ended up doing was taking out the forloop all together. In my Execute SQL Task I changed the result set from single row to XML. I took out the  COALESCE statement and just went for something more basic:
    select users.User_EmailAddress + ';' as User_EmailAddress from Errors inner join users on users.user_id = Errors.MonitorAuditor_User_Id WHERE ([Audit_Id]  = ? AND [ErrorCode_Id] = ?)
    Currently I am just logging the string to a text file so I can see the results. In my text file the string is surrounded by <ROOT></ROOT>. So I will next I will work on triming that off the string and then populate my Send Mail Task.
    This is how I trimed off the <ROOT></ROOT>:
    Dts.Variables(
    "EmailAddressString").Value = Replace(Dts.Variables("EmailAddressString").Value,
    "<ROOT>",
    Dts.Variables(
    "EmailAddressString").Value = Replace(Dts.Variables("EmailAddressString").Value,
    ";</ROOT>",
    Thanks again everyone for the help!
    Reach for the unknown!

  • SSIS custom execute sql task : Failed with error

    I am developing a custom SSIS task for running sql task. But it fails with error - I'm trying to set the resultsetbinding to be used by next task in workflow.
    Error: 0xC0014054 at CustomSSISTask: Failed to lock variable "User::id" for read access with error 0xC0010001 "The variable cannot be found. This occurs when an attempt is made to retrieve a variable from the Variables collection on a container
    during execution of the package, and the variable is not there. The variable name may have changed or the variable is not being created.".
    Error: 0xC002F210 at CustomSSISTask, Execute SQL Task: Executing the query "SELECT id FROM sysobjects WHERE name = 'sysrowsets..." failed with the following error: "Failed to lock variable "User::id" for read access with error 0xC0010001
    "The variable cannot be found. This occurs when an attempt is made to retrieve a variable from the Variables collection on a container during execution of the package, and the variable is not there. The variable name may have changed or the variable is
    not being created.".
    ". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
    Warning: 0x80019002 at CustomSSISTask: SSIS Warning Code DTS_W_MAXIMUMERRORCOUNTREACHED.  The Execution method succeeded, but the number of errors raised (3) reached the maximum allowed (1); resulting in failure. This occurs when the number of errors reaches
    the number specified in MaximumErrorCount. Change the MaximumErrorCount or fix the errors.
    Task failed: CustomSSISTask
    Here is the code sample I'm trying , 
            public override DTSExecResult Execute(Connections connections, VariableDispenser variableDispenser,
                                                  IDTSComponentEvents componentEvents, IDTSLogging log, object transaction)
                MessageBox.Show("testing:");
                try
                    // Add the SQL Task
                    Package package = new Package();
                    package.Executables.Add("STOCK:SQLTask");
                    Microsoft.SqlServer.Dts.Runtime.Variable variable = package.Variables.Add("id", false, "User", 0);
                     // Get the task host wrapper
                    TaskHost taskHost = package.Executables[0] as TaskHost;
                    // Get the task object
                    ExecuteSQLTask task = taskHost.InnerObject as ExecuteSQLTask;
                    // Set core properties
                    task.Connection = connections[0].Name;
                    task.SqlStatementSource = "SELECT id FROM sysobjects WHERE name = 'sysrowsets'";
                    //task.SqlStatementSource =
                    //    "SELECT PersonID from [AmalgaSpeedTableData].[SpeedTable].[DimPerson] where PersonIntID  = '1'";
                    task.SqlStatementSourceType = SqlStatementSourceType.DirectInput;
                    // Add result set binding, map the id column to variable
                    IDTSResultBinding resultBinding = task.ResultSetBindings.Add();
                    //IDTSResultBinding resultBinding = task.ResultSetBindings.GetBinding(0);
                    resultBinding.ResultName = "variable";
                    resultBinding.DtsVariableName = variable.QualifiedName; //"User::id";
                    task.Execute(connections, variableDispenser, componentEvents, log, transaction);
                catch (Exception ex)
                    throw new ArgumentException(ex.Message);
                return DTSExecResult.Success;
    It doesnt throw any exception but custom task fails.
    Later I will be also using parametersetbindings to pass some input parameters to this task , since I'm stuck for out param - blocked moving ahead.
    Any help would be greatly appreciated.
    Thanks
    Sang

    Hi, could you check whether the following threads help:
    http://stackoverflow.com/questions/5787621/ssis-package-failed-to-locak-variable-for-read-access-with-error-0xc0010001
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/40ee7eff-5ec1-426f-a1a8-ab85b40b51aa/error-variable-can-not-be-found-while-executing-package-from-the-net-code?forum=sqlintegrationservices
    Regards, Leo

Maybe you are looking for

  • Template build in Dreamweaver CS5

    Have a client using Dreamweaver MX2004.  If I build site in Dreamweaver CS5 using editable templates will they be able to update content using Dreamweaver MX2004?

  • Is there a way to interactiv​ely select a worksheet from an Excel workbook in Labview?

    All of the examples that I can find only allow you to select a sheet by knowing it's index number or the exact name of the sheet.  I haven't been able to query or otherwise find out what sheets are in the workbook to allow the operator select one.

  • Missing .class ffiles MX7

    CFtree, etc java applets not working.. throw this error.. what files am I missing on my cf install? It works fine on my other CFMX7 install.. TIA, Mark Holm Java Plug-in 1.5.0_06 Using JRE version 1.5.0_06 Java HotSpot(TM) Client VM User home directo

  • CS 4 upgarade question

    I'm still running MX2004 products. Would like to buy the CS4 new Web Premium package. Some sites say buy the CS3 version now...and then I can get a free upgrade from Adobe to CS4 when it's shipping ? I can not find anything on the Adobe site to verif

  • Can we install OBIA with out Installing ODI ?

    Hi All, I am planning in installing OBIA 11.1.1.7 on the server. Can we install OBIA without installing ODIA