Execute SQL Task Error: Resultset Property

Looking to find help on resolving the below noted error
Full Error Text: "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.
We are creating new packages in SQL2012 from older packages from SQL2008.  My package has several tasks, but 3 of the 18 are failing.  The first of which is the above noted error, from the following script - Any insight to resolving this error
would be most helpful.  Thanks in advance
NOTE:  ResultsetType = None
Regards,
Newbie SSIS
Task - UPDATE BUSINESS_GROUP_ORG INFO
 UPDATE SOLD_FROM ORGANIZATION_ID NAME
UPDATE ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG
  SET BUSINESS_GROUP_ID = APPS_HR_ALL_ORGANIZATION_UNITS.BUSINESS_GROUP_ID,
      ORG_ID_NAME = APPS_HR_ALL_ORGANIZATION_UNITS.NAME
  FROM APPS_HR_ALL_ORGANIZATION_UNITS
  WHERE
      ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG.SOLD_FROM_ORG_ID = APPS_HR_ALL_ORGANIZATION_UNITS.ORGANIZATION_ID
 UPDATE BUSINESS_GROUP_NAME
UPDATE ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG
  SET BUS_GROUP_NAME = APPS_HR_ALL_ORGANIZATION_UNITS.NAME
  FROM APPS_HR_ALL_ORGANIZATION_UNITS
  WHERE
      ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG.BUSINESS_GROUP_ID = APPS_HR_ALL_ORGANIZATION_UNITS.ORGANIZATION_ID
 UPDATE SHIP_FROM_ORGANIZATION_NAME
UPDATE ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG
  SET SHIP_FROM_ORG_NAME = APPS_HR_ALL_ORGANIZATION_UNITS.NAME
  FROM APPS_HR_ALL_ORGANIZATION_UNITS
  WHERE
      ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG.SHIP_FROM_ORG_ID = APPS_HR_ALL_ORGANIZATION_UNITS.ORGANIZATION_ID

Your UPDATE statement doesn't look right. In all the 3 UPDATE statements, you are Updating table
ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG but that table doesn't exist in the FROM clause i.e. the FROM clause has a different table
APPS_HR_ALL_ORGANIZATION_UNITS. Looks like you are missing a JOIN between those 2 tables.
Can you try this ?
UPDATE SOLD_FROM ORGANIZATION_ID NAME
UPDATE ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG
SET BUSINESS_GROUP_ID = APPS_HR_ALL_ORGANIZATION_UNITS.BUSINESS_GROUP_ID,
ORG_ID_NAME = APPS_HR_ALL_ORGANIZATION_UNITS.NAME
FROM APPS_HR_ALL_ORGANIZATION_UNITS
, ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG --I've only added this
WHERE
ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG.SOLD_FROM_ORG_ID = APPS_HR_ALL_ORGANIZATION_UNITS.ORGANIZATION_ID
UPDATE BUSINESS_GROUP_NAME
UPDATE ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG
SET BUS_GROUP_NAME = APPS_HR_ALL_ORGANIZATION_UNITS.NAME
FROM APPS_HR_ALL_ORGANIZATION_UNITS
, ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG --I've only added this
WHERE
ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG.BUSINESS_GROUP_ID = APPS_HR_ALL_ORGANIZATION_UNITS.ORGANIZATION_ID
UPDATE SHIP_FROM_ORGANIZATION_NAME
UPDATE ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG
SET SHIP_FROM_ORG_NAME = APPS_HR_ALL_ORGANIZATION_UNITS.NAME
FROM APPS_HR_ALL_ORGANIZATION_UNITS
, ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG --I've only added this
WHERE
ORA_C_OE_ORDER_LINES_ALL_ACTUALS_ADJUSTMENTS_STG.SHIP_FROM_ORG_ID = APPS_HR_ALL_ORGANIZATION_UNITS.ORGANIZATION_ID
Narsimha

Similar Messages

  • [Execute SQL Task] Error: Executing the query "DECLARE_@XMLA nvarchar(3000) ,__@DateSerial nvarch..." failed with the following error: "Incorrect syntax near '-'.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly,

    Hi
    DECLARE @XMLA nvarchar(3000)
    , @DateSerial nvarchar(35);
    -- Change date to format YYYYMMDDHHMMSS
    SET @DateSerial = CAST(GETDATE() AS DATE);
    --SELECT @DateSerial
    Set @XMLA = 
    N' <Batch xmlns="http://schemas.microsoft.com/analysis services/2003/engine">
     <ErrorConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2"
    xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200"
    xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200">
    <KeyErrorLimit>-1</KeyErrorLimit>
    <KeyNotFound>IgnoreError</KeyNotFound>
    <NullKeyNotAllowed>IgnoreError</NullKeyNotAllowed>
     </ErrorConfiguration>
     <Parallel>
    <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2"
    xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200"
    xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300">
     <Object>
     <DatabaseID>MultidimensionalProject5</DatabaseID>
     <CubeID>giri</CubeID>
     <MeasureGroupID>Fact Internet Sales</MeasureGroupID>
     </Object>
     <Type>ProcessFull</Type>
     <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
     </Process>
      </Parallel>
    </Batch>';
    EXEC (@XMLA) At SHALL-PCAdventureWorksDw ;
     iam executive the    query when iam getting below error.
      [Execute SQL Task] Error: Executing the query "DECLARE
    @XMLA nvarchar(3000)
    , @DateSerial nvarch..." failed with the following error: "Incorrect syntax near '-'.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set
    correctly, or connection not established correctly. 
     how to solve this error;
     please help me

    What are you trying to do? What sort of data source is  SHALL-PCAdventureWorksDw?
    When you use EXEC() AT, I would execpt to see an SQL string to be passed to EXEC(), but you are passing an XML string????
    If you explain why you think this would work in the first place, maybe we can help you.
    Erland Sommarskog, SQL Server MVP, [email protected]

  • HELP: SSIS 2012 - Execute SQL Task with resultset to populate user variables produces DBNull error

    I am experiencing an unexplainable behavior with the Execute SQL Task control in SSIS 2012. The following is a description of how to simulate
    the issue I will attempt to describe:
    1. Create a package and add two variables User::varTest1 and User::varTest2 both of String type with default value of "Select GetDate()"
    for each, have shown this to not matter as the same behavior occurs when using a fixed string value or empty string value.
    2. Add a new Execute SQL Task to the control flow.
    3. Configure an OLE DB connection.
    4. Set SQLSourceType = "Direct Input"
    5. Set the ResultSet property of the task to "Single Row"
    6. In the ResultSet tab add two results as follows: 
    Result Name: returnvalue1, Variable Name: User::varTest1
    Result Name: returnvalue2, Variable Name: User::varTest2
    7. Set an expression for the SqlStatementSource property with a string value of "Select 'Test' returnvalue1, 'Testing' returnvalue2'"
    The idea is that the source would be dynamically set in order to run a t-sql statement which would have dynamic values for database name
    or object that would be created at runtime and then executed to set the user variable values from its resultset. Instead what occurs is that a DBNull error occurs.
    I am not sure if anyone else has experienced this behavior performing similiar actions with the Execute SQL Task or not. Any help would be
    appreciated. The exact message is as follows:
    [Execute SQL Task] Error: An error occurred while assigning a value to variable "varRestoreScript": "The type of the value
    (DBNull) being assigned to variable "User::varRestoreScript" differs from the current variable type (String). Variables may not change type during execution. Variable types are strict, except for variables of type Object.
    User::varRestoreScript is the first return value. And even with the a dummy select the same result occurs. I have narrowed the issue down
    to the T-SQL Statement structure itself. 
    The following works just fine within the execute sql task control as long as no resultset is configured for return:
    "Declare @dynamicSQL nvarchar(max)
    Select @dynamicSQL = name 
    From sys.databases 
    Where name = 'master'
    Select atest_var1=@dynamicSQL, atest_var2='static'"
    I have tried various iterations of the script above with no success. However, if I use the following derivative of it the task completes
    successfully and variables are set as expected.  This will not work for my scenario however as I need to dynamically build a string spanning multiple resultsets to build one of the variable values.
    "Select atest_var1=name, atest_var2='static'
    From sys.databases
    Where name = 'master'
    I have a sample package which can reproduce this issue using the above code.  You can get to that through the post on www.sqlservercentral.com/Forums/Topic1582670-364-1.aspx
    Scott

    Arthur,  the query when executed doesn't return a null value for the @dynamicSQL variable.  It returns "master" as a string value.  Even the following fails which implements that suggestion:
    Declare @dynamicSQL as nvarchar(max)
    Select @dynamicSQL = name
    From master.sys.databases 
    Where name = 'master' -- (or any other DB name)
    I believe I have found the cause of the issue.  It is datatype and size related.  The above script will properly set the variables in the resultset as long as you don't use nvarchar(max) or varchar(max).  This makes the maximum data size for
    a String variable 4000 characters whether unicode or non-unicode typed.

  • [Execute SQL Task] Error: Executing the query failed with error: "The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION."

    I have an package with source , data flow and destination to execute on begin and commit.
    in the below i have just used for questioning purpose with diagram removing my Data Flow task explaining my problem
    on execution, i get error as
    [Execute SQL Task] Error: Executing the query "COMMIT TRAN DimCompanyCode" failed with the following error: "The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION.". Possible failure reasons: Problems with the query, "ResultSet"
    property not set correctly, parameters not set correctly, or connection not established correctly.
    as mentioned , i have checked the ResultSet, parameters , connection establish.. all are fine.
    Kindly advice on what has to be done.
    ShanmugaRaj

    To avoid this error, the RetainSameConnection property should set to 'True' for the Connection Manager - Application_DB.
    Narsimha

  • Execute SQL Task Error

    I am using the following query in Execute SQL Task
    SELECT CASE(SELECT COUNT(*) FROM STG_APJ_APIW_DETAILS
    WHERE source_filename = ?
    AND lTRIM(RTRIM([BILLING DATE])) <> '') WHEN 0 THEN (SELECT CONVERT(VARCHAR(8), GETDATE(), 112) AS [YYYYMMDD])
    ELSE
    (SELECT TOP 1 [BILLING DATE] FROM STG_APJ_APIW_DETAILS
    WHERE source_filename = ?
    AND lTRIM(RTRIM([BILLING DATE])) <> '')
    END
    In parameter Mapping i have created two parameters and in result set i choose my variable.
    Result set property is Single Row.
    Following is the error message i received,
    [Execute SQL Task] Error: Executing the query "SELECT CASE(SELECT COUNT(*) FROM STG_APJ_APIW_DETA..." 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.
    Sarvan

    I cant see where you've named resultset. try like below to make sure resultset has the name used in resultset tab
    SELECT CASE(SELECT COUNT(*) FROM STG_APJ_APIW_DETAILS
    WHERE source_filename = ?
    AND lTRIM(RTRIM([BILLING DATE])) <> '') WHEN 0 THEN (SELECT CONVERT(VARCHAR(8), GETDATE(), 112))
    ELSE
    (SELECT TOP 1 [BILLING DATE] FROM STG_APJ_APIW_DETAILS
    WHERE source_filename = ?
    AND lTRIM(RTRIM([BILLING DATE])) <> '')
    END AS [Billing Date]
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • SSIS - Using Variables in Execute SQL Task Error

    The following query in my Execute SQL Task throws the following error when run - [Execute SQL Task] Error: Executing the query "SELECT @columnz = COALESCE(@columnz + ',[' + times..." failed with the following error: 
    "Must declare the scalar variable "@columnz".". Possible failure reasons: Problems with the query, 
    "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
    Query:
    drop table tmpNCPCNCDownstreamMaxUtilization3wks
    select node, max(utilization) as max_Utilization, DATE
    into tmpNCPCNCDownstreamMaxUtilization3wks
    from stage_ncpcncdownstream_temporal
    WHERE Date BETWEEN DATEADD(day, -20, GETDATE()) AND GETDATE() 
    group by node, date
    order by node
    go
    alter table tmpNCPCNCDownstreamMaxUtilization3wks add Timestamp varchar(50)
    go
    update tmpNCPCNCDownstreamMaxUtilization3wks
    set Timestamp = 'WeekOf_' + cast(left(Date, 11) as varchar)
    go
    --drop table tmpNCPCNC_DownstreamNodeUtilizationMaxPivot
    --go
    declare @columnz varchar (8000)
    go
    SELECT @columnz = COALESCE(@columnz + ',[' + timestamp + ']','[' + timestamp+ ']')
    FROM tmpNCPCNCDownstreamMaxUtilization3wks group by timestamp order by timestamp
    go
    --pivot contents in @columns
    declare @query varchar(8000)
    SET @query ='select * into tmpNCPCNC_DownstreamNodeUtilizationMaxPivot from 
    (select node, timestamp, Max_Utilization from tmpNCPCNCDownstreamMaxUtilization3wks)a
    pivot
    sum(max_Utilization) for timestamp in('+ @columnz +')
    )as p'
    execute (@query)
    --empty contents from NCPCNCDownstreamMaxUtilization3wks
    update tmpNCPCNCDownstreamMaxUtilization3wks
    set timestamp =''
    truncate table tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week
    --load to table to be joined to Node feature class
    insert into tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week
    (Node, TwoWeeksAgo, PreviousWeek, CurrentWeek)
    select * from tmpNCPCNC_DownstreamNodeUtilizationMaxPivot
    --calculate average utilization for all values in each record
    update tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week
    set average = (coalesce(twoweeksago, 0) + coalesce(previousweek, 0) + coalesce(currentweek, 0))/3
    from tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week
    Scott

    Issue is with variable @columnz.
    Scope of variables is only limited to the batch and if batch is over Variable is no more accessible.
    Reproduce Steps: 
    DECLARE @columnz int = 0
    Go --Scope of @columnz ends here
    SELECT @columnz -- Ends up with error
    So you have to remove GO keyword. I have commented 2 of them in below:
    DROP TABLE tmpNCPCNCDownstreamMaxUtilization3wks
    SELECT node
    ,max(utilization) AS max_Utilization
    ,DATE
    INTO tmpNCPCNCDownstreamMaxUtilization3wks
    FROM stage_ncpcncdownstream_temporal
    WHERE DATE BETWEEN DATEADD(day, - 20, GETDATE())
    AND GETDATE()
    GROUP BY node
    ,DATE
    ORDER BY node
    GO
    ALTER TABLE tmpNCPCNCDownstreamMaxUtilization3wks ADD TIMESTAMP VARCHAR(50)
    GO
    UPDATE tmpNCPCNCDownstreamMaxUtilization3wks
    SET TIMESTAMP = 'WeekOf_' + cast(left(DATE, 11) AS VARCHAR)
    GO
    --drop table tmpNCPCNC_DownstreamNodeUtilizationMaxPivot
    --go
    DECLARE @columnz VARCHAR(8000)
    --GO
    SELECT @columnz = COALESCE(@columnz + ',[' + TIMESTAMP + ']', '[' + TIMESTAMP + ']')
    FROM tmpNCPCNCDownstreamMaxUtilization3wks
    GROUP BY TIMESTAMP
    ORDER BY TIMESTAMP
    --GO
    --pivot contents in @columns
    DECLARE @query VARCHAR(8000)
    SET @query = 'select * into tmpNCPCNC_DownstreamNodeUtilizationMaxPivot from
    (select node, timestamp, Max_Utilization from tmpNCPCNCDownstreamMaxUtilization3wks)a
    pivot
    sum(max_Utilization) for timestamp in(' + @columnz + ')
    )as p'
    EXECUTE (@query)
    --empty contents from NCPCNCDownstreamMaxUtilization3wks
    UPDATE tmpNCPCNCDownstreamMaxUtilization3wks
    SET TIMESTAMP = ''
    TRUNCATE TABLE tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week
    --load to table to be joined to Node feature class
    INSERT INTO tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week (
    Node
    ,TwoWeeksAgo
    ,PreviousWeek
    ,CurrentWeek
    SELECT *
    FROM tmpNCPCNC_DownstreamNodeUtilizationMaxPivot
    --calculate average utilization for all values in each record
    UPDATE tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week
    SET average = (coalesce(twoweeksago, 0) + coalesce(previousweek, 0) + coalesce(currentweek, 0)) / 3
    FROM tmpNCPCNC_MaxDownstreamNodeUtilzationChart3Week
    -Vaibhav Chaudhari

  • 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

  • Execute SQL Task - FOR XML PATH query error

    I have the following query
    SELECT pl.Id,
    pl.StartTime,
    pl.EndTime,
    pl.PackageName,
    pl.Computer,
    pl.Operator,
    CASE WHEN (CHARINDEX('stack trace', pl.ErrorDescription) > 0) Then
        SUBSTRING(pl.ErrorDescription, 0, CHARINDEX('stack trace', pl.ErrorDescription))
        ELSE
        pl.ErrorDescription
        END as ErrorDescription
    ISNULL(ErrorFile,'') as ErrorFile,
    'Not Applicable' as SourceSystem
    FROM etl.PackageLog as pl
    WHERE pl.Processed = 0
    ORDER BY pl.StartTime, pl.PackageName
    FOR XML PATH('Row'), ROOT(N'FieldingCounts')
    in a Execute SQL Task and i get the following error:
    [Execute SQL Task] Error: Executing the query "SELECT pl.Id,
    pl.StartTime,
    pl.EndTime,
    pl.Package..." failed with the following error: "An invalid character was found in text content.
    ". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
    The query execute without problem in database and in the ssis package doens't run because of the column
    CASE WHEN (CHARINDEX('stack trace', pl.ErrorDescription) > 0) Then
        SUBSTRING(pl.ErrorDescription, 0, CHARINDEX('stack trace', pl.ErrorDescription))
        ELSE
        pl.ErrorDescription
        END as ErrorDescription
    Any help to overcome the problem?
    Thanks

    Hi,
    It looks like that you must be trying to set the result of the query to some variable from the Execute SQL Task. If yes, make sure that the target variable is of the correct data type where XML string  can fit into. Considering that in SSIS, we have
    some limit for XML strings.
    Please let me know if it doesn't help.
    Thanks,
    Nimit

  • Passing the same input parameter twise in execute sql task

    Hi All, I want to insert some values to 3 different tables in sql server. Execute sql task is used to populate three tables. Here is the sql statement.
    DECLARE @Dt AS DATE
    SET @Dt = ?
    INSERT INTO TABLE1 SELECT ?, COL2, COL3 FROM TABLE_A
    INSERT INTO TABLE2 SELECT ?, COL2, COL3 FROM TABLE_B
    Input parameter is mapped as follows :
    Variable name : User::EffectiveDate
    Direction : Input Data Type :
    Date Parameter name :0
    Parameter size :-1
    User::EffectiveDate is datetime variable.
    When the package is executed, it throws an error.
    [Execute SQL Task] Error: Executing the query " " failed with the following error: "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.". Possible failure reasons: Problems
    with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly. I am not sure what I am doing wrong here. If anyone could point me to the right direction, I really appreciate.
    Thanks
    shamen

    To expand on the other answers.
    Your SQL command
    DECLARE @Dt AS DATE
    SET @Dt = ?
    INSERT INTO TABLE1 SELECT ?, COL2, COL3 FROM TABLE_A
    INSERT INTO TABLE2 SELECT ?, COL2, COL3 FROM TABLE_B
    It using 3 input variables.  I assume you didn't pass 3 variables and you want @DT to be column 1 in each.  In that case you would use:
    DECLARE @Dt AS DATE
    SET @Dt = ?
    INSERT INTO TABLE1 SELECT @Dt, COL2, COL3 FROM TABLE_A
    INSERT INTO TABLE2 SELECT @Dt, COL2, COL3 FROM TABLE_B

  • Using Union in Execute SQL Task

    I am using the following SQL statement in an Excute SQL Task:
    declare @RespAreaSubAreaID int, @UserLevelID int, @SubmittedByUserID int, @RespAreaID int, @SubAreaID int
    Set @RespAreaSubAreaID = ?
    Set @SubmittedByUserID = ?
    Set @UserLevelID = ?
    set @RespAreaID = ?
    set @SubAreaID = ?
    select users.User_EmailAddress + ';' As CC
    from users inner join UserLevelsNotificationFrequencys on users.user_Id = UserLevelsNotificationFrequencys.User_id
    where UserLevelID = @UserLevelID and RespAreaSubAreaID = @RespAreaSubAreaID and (NotificationFrequencyID = 4 and users.user_id <> @SubmittedByUserID)
    union
    select users.User_EmailAddress + ',' As CC
    from users inner join UserLevelsNotificationFrequencys on users.user_Id = UserLevelsNotificationFrequencys.User_id
    where UserLevelID = @UserLevelID and RespAreaSubAreaID = @RespAreaSubAreaID and (NotificationFrequencyID = 1)
     I have my parameter mapped correctly. My results set is set to xml because I want it all in one string to use as a variable named User:CC. On the Result Set tab the result name is 0 and the variable name is User:CC. When I run my package I am getting
    the error below. Can I not do a union query in the execute SQL task? I tried to not declare anything and just map to each of the variables that I am passing in the order that they are needed but that didn't work either. Thanks in advance for your help in this
    matter.
     [Execute SQL Task] Error: Executing the query "declare @RespAreaSubAreaID int, @NotificationID
    in..." 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.
    Reach for the unknown!

    Thank you for your reply but I am not using the Data Flow. All my work is happening on the Control Flow. I am looping through a set of records and emailing them to the correct
    people. Setting my result set to XML worked for the To Line (See my earlier post Execute SQL task for Email ToLine using COALESCE and two variables) and now I am working on the CC line which is more complicated because it uses a union statement.
    Reach for the unknown!

  • Execute SQL Task Failing

    Hi there,
    I have this issue with my Execute SQL Task Failing. I am trying to execute a sp using an execute sql task. The execute statement is contained in a variable (exec [sp_name] par1, par2)  that I have declared at the package level. Now inside the exec sql
    tak, I am calling this variable. Now when I try to execute this task, it fails and I get the following:
    [Execute SQL Task] Error: Executing the query "EXEC CTL_ISRT_A 55,1" failed with the following error: "Could not find stored procedure 'CTL_ISRT_A'.". Possible failure reasons: Problems with the query, "ResultSet" property not
    set correctly, parameters not set correctly, or connection not established correctly.
    There is a stored procedure called "CTL_ISRT_A" in the db and I am able to execute it from SQL Server. This sp is inserting a new row in the table and it returns @@IDENTITY. 
    I tried setting the result set to a 'Single Row' and tried assigning the value to a variable but it didnt help. Could someone help me here?
    Thanks in advance

    return it as an output parameter 
    ie make sp like below
    ALTER PROCEDURE [devdba].[M_CTL_ISRT]
    @F_ID INT
    , @PR_IND BIT
    , @Debug bit = 0
    , @IDVal int = 0 OUTPUT
    AS
    BEGIN
    SET NOCOUNT ON
    DECLARE @ErrorMsg varchar(5000)
    DECLARE @USR_ID AS INT = 1;
    INSERT INTO TBL_D (F_ID, PR_IND, USR_ID,CRE_DT, LAST_MODD_USR_ID, LAST_MODD_DT)
    VALUES (@F_ID, @PR_IND, @USR_ID, GETDATE(), @USR_ID, GETDATE())
    SELECT @IDVal= @@IDENTITY
    END
    Then in execute sql task call it as 
    EXEC devdba].[M_CTL_ISRT] ?,?,0,? OUT
    then in parameter tab pass required variables and for last parameter make direction as Output and you'll get identify value stored in it.
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • Execute SQL Task fails when specific column names are mentioned in Excel Query

    Hi,
    I have a requirement for extracting Excel data with thespecific column order. So instead of using the below query,
    Select * From [Sheet1$A1:ZZ1]
    I use the below one,
    Select col1,
    col2,
    col91
    From [CRM$A1:ZZ1]
    So I have totally 91 columns.
    I don't face any issues when i use the before query. i.e. direct select * from sheet1
    But when i specify column names and do a select from the sheet it throws error as below,
    [Execute SQL Task] Error: Executing the query "Select
    [Col1] 
    From [Sheet1$..." failed with the following error: "No value given for one or more required parameters.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not
    set correctly, or connection not established correctly.
    I just need to retrieve the column name alone and not any of the values to it. So when i do simple select * it gives the column names in the order of what it is been with the excel. But i do want it to be sorted in alphabetically and to retrieve the column
    names. 
    I am not getting any proper solution for this for past 1 and a half days. May anyone of you please help me get it sorted? - Thank you!
    --------------------------- Radhai Krish | Golden Age is no more far | --------------------------

    Please use something like below:
    SELECT F1 AS Col1, F2 AS Col2, F3 AS Col3, ...
    FROM [Sheet1$A1:ZZ1]
    Cheers,
    Vaibhav Chaudhari
    [MCTS],
    [MCP]

  • 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!

  • How to use a parameter in an Execute SQL Tasks in SSDT executed against Netezza

    Good Evening,
    How can I pass a parameter in an Execute SQL Tasks in SSDT executed against Netezza?  Below are my settings and error message.
    [Execute SQL Task] Error: Executing the query ""TRUNCATE TABLE" ?"_POC..JOHN_TEST"" failed with the following error: "Syntax error or access violation". Possible failure reasons: Problems with the query, "ResultSet"
    property not set correctly, parameters not set correctly, or connection not established correctly.
    Thank you in advance for your assistance.
    Brett

    Hi Baloun,
    Based on my further research, just as you said, we cannot directly use table name as a variable.
    To fix this issue, we can change the SQL command in the SQLStatement property as below:
    declare @sql varchar(100)
    set @sql = 'TRUNCATE TABLE ' + ? +'_POC..JOHN_TEST'
    exec(@sql)
    go
    The Parameter Mapping pane use the former settings in your picture.
    Reference:
    http://www.bidn.com/blogs/kylewalker/ssis/2063/parameters-don-t-always-work-in-your-execute-sql-task
    If there are any other questions, please feel free to ask.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • Failed to create an IDataAdapter object. This provider may not be fully supported with the Execute SQL Task

    I executed a simple query inside an execute SQL task - 
    SELECT col1, col2
    from thetable
    where code = ?
    order by id asc
    Exec sql task - ADO.NET connection
    parameter "code" is an int32 in SSIS and int32 in parameter mapping of exec sql task.
    It works fine in SQL server, but in SSIS it causes the error - 
    [Execute SQL Task] Error: Executing the query "SELECT col1, col2
    from thet..." failed with the following error: "Failed to create an IDataAdapter object. This provider may not be fully supported with the Execute SQL Task. Error message 'Incorrect syntax near '?'.'.". Possible failure reasons: Problems with
    the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
    How do I fix this error ? 

    Thanks. I think it was sqlclient. I changed it to OLEDB to avoid that issue. Btw, what is this "provider" ?
    Hi blastoSO,
    To check which provider is used by the current ADO.NET Connection Manager, you can open the “Configure ADO.NET Connection Manager” window, and check the “Managed Provider” option of each Data connection.
    In an Execute SQL Task, if the managed provider is “System.Data.SqlClient”, we should use the rule for the ADO.NET connection type in the following table. If the managed provider is “System.Data.Oledb” or “System.Data.Odbc”, it actually uses the OLE DB provider
    or ODBC provider, so we should use the rule for the OLE DB or OBC rule in the following table:
    Reference:
    http://technet.microsoft.com/en-us/library/cc280502.aspx
    Regards,
    Mike Yin
    TechNet Community Support

Maybe you are looking for

  • Error message from Trend protection software about a dangerous page.

    Every time I open Firefox lately I get an warning from trend protection software that I'm tying to go to a dangerous page. The warning shows as I exiting Firefox. The address is always a very long string of characters.

  • Posting a goods Receipts by using 'BAPI_GOODSMVT_CREATE'

    Hi experts, For a Handling Unit number, im Posting a goods Receipts by using 'BAPI_GOODSMVT_CREATE' Im passing the below values to the BAPI, to create a Material document and transfer order. GOODSMVT_HEADER- PSTNG_DATE (System Date) GOODSMVT_HEADER -

  • Wierd problem with BlackBerry FLIP

    So last night I but my Pearl to charge. When the battery is to low the phone won't really trun on, but I needed to browse some e-mails. I turned on the phone but when I tried to use the browser it gave me an error stating that the radio antena is off

  • Disable / Turn off Thumbnail / Icon Preview in Finder?

    Can't find any new/recent posts to solve this issue. I want to disable/turn-off the little icon preview in finder. I have to access a lot of images on a server at work. Image files(jpeg, eps, tiff, psd, ai, ect) that are typically 50MB and higher. So

  • Re-wiring external cable from "junction box" to wa...

    Hi everyone, Newbie here. Some time ago I had my wood front door and frame replaced by a uPVC one. This has resulted in the telephone cable being revealed - it can no longer be hidden behind the door frame. It would be neater for the cable to be re-r