.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Register
 
Win Surprise Gifts!!!
Congratulations!!!


Top 5 Contributors of the Month
Easy Web
Imran Ghani
Post New Web Links

Script Component - Assigning value to a variable problem

Posted By:      Posted Date: October 14, 2010    Points: 0   Category :Sql Server
 

I have a Script Component and in it I want to assign a value from a row to a variable. I am iterating through a For Each Loop, so I am only getting 1 row at a time. I have a variable declared as ScriptedSaleID and the following code in my Input0_ProcessinputRow method:

Dim

 

myvars As IDTSVariables100

        'We lock the variable for writing. 1st parameter is the name of the variable
        VariableDispenser.LockOneForWrite("ScriptedSaleID", myvars)

        'Now we can write the value to the variable
        myvars(0).Value = Row.SaleID

        'Now we unlock the variables
        myvars.Unlock()

My problem is


View Complete Post


More Related Resource Links

Problem assigning a value to a variable in a Script Task

  
I've found loads of posts with the error I'm seeing: "The type of the value being assigned to variable [XXX] differs from the current variable type". However, I can't see anything that matches my scenario.  I'm simply trying to assign a value to a variable BEFORE passing the variable to an Execute SQL Task. I want to assign "true" or "false" to a Boolean variable called LogError, but as I got this error, I tried instead to assign 0 or 1 to it after converting it to an Int16 variable, but got the same result. I can see all manner of posts that make me wonder what I may have problems with next when I try to pass this variable to my stored proc that's expecting a BIT, but for now, I'd love SSIS to simply assign the value to the variable! Any ideas?

how to store the values in a object variable (package level scope) in a script component

  
I have declared a variable of object type with package level scope.  I want to assign values to this variable inside a script component.  My object should hold 5 columns in a row.  How to implement this ?

Error while trying to assign a value to a Read Write variable in SSIS package script component

  

Hi,

       I am trying to develop a SSIS package which will read the records from the flat file and insert them into a destination table. I have some validations written in script component. I have declared two Read Write variables with package level scope. when i try to assign a value to the variable in the script component and run the package, the package throws me an error "The collection of variables locked for read and write access is not available outside of PostExecute".

 

What should be done to over come the problem please help me on this regard 

 

Thanks

Madhavan.M


Cant see package level variable in script component

  
I am currently having a issue accessing a package level variable.

My package level variable is called RecordSet1 and type object.

I was able to use a Data Flow and populate the variable with data with a record set destination.

So, now I am writing a script component that makes a recordset as a source(I am new to ssis and I know this has performance issues, I am only doing this to get familiar with scripting cause my manager told me too) So I am not able to access any of the variables. My code is below. I am getting a error on this.Variables.RecordSet1. I looked all over online and unable to really find a solution. I know in script component, you can use the this.Variables.VariableName to access the variables but even my intellisense isn't showing anything.

Error 1 'Variables' does not contain a definition for 'RecordSet1' and no extension method 'RecordSet1' accepting a first argument of type 'Variables' could be found (are you missing a using directive or an assembly reference?) C:\Users\Dhinesh\AppData\Local\Temp\SSIS\ee6fc0aaa4f447e0b024451e97f51dec\main.cs 42 39 sc_95443d5e406b44d

TransactedTeceiveScope not persisting when assigning value to a variable

  
In a TransactedTeceiveScope I write to a DB table (via a custom activity SaveApprovalRequest using EF) and want to execute some other activities. With SaveApprovalRequest being the only acitivty workflow persistance works fine. As soon as I addionally assign a value to a variable the workflow no longer gets persisted. Why? I am using EF to write to a table in the same DB where . Below a minimal test case. With the assign activity the workflow does not persist. Without the assign activity the workflow does persist. <?xml version="1.0" encoding="utf-8" ?> <configuration> <system.diagnostics> <sources> <source name="System.ServiceModel" switchValue="Warning,ActivityTracing" propagateActivity="true"> <listeners> <add name="svcTraceFile" type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="X:\temp\Logs\ApprovalWorkflowTrace.svclog" traceOutputOptions="Timestamp"> <filter type="" /> </add> </listeners> </source> </sources> </system.diagnostics> <connectionStrings> <add name="approval" connectionString="Data Source=(local);Initial Catalog=Approv

Script Component HELP!

  
Hi Guys, I have some recordset in the data flow. CURRENT Column1 Column2 Column3 Column4 Column5 Column6 Dine In DISCOUNT 20100824 121618 1859 37 Dine In TAX 20100824 121618 1859 -15.8 Dine In TOTAL 20100824 121618 1859 6.77 Dine In TENDER 20100824 121618 1859 63.2 Dine In TAX 20100824 121618 1859 63.2 Dine In DISCOUNT 20100824 121618 1860 37 Dine In TAX 20100824 121618 1860 -15.8 Dine In TOTAL 20100824 121618 1860 6.77 Dine In TENDER 20100824 121618 1860 63.2 Dine In TAX 20100824 121618 1860 63.2 I want to rename the second "TAX" in Column2 with the value of "DELIVERY CHARGE" and i was thinking on how to do this using script component. TARGET Column1 Column2 Column3 Column4 Column5 Column6 Dine In DISCOUNT 20100824 121618 1859 37 Dine In TAX 20100824 121618 1859 -15.8 Dine In TOTAL 20100824 121618 1859 6.77 Dine In TENDER 20100824 121618 1859 63.2 Dine In DELIVERY CHARGE 20100824 121618 1859 63.2 Dine In DISCOUNT 20100824 121618 1860 37 Dine In TAX 20100824 121618 1860 -15.8 Dine In TOTAL 20100824 121618 1860 6.77 Dine In TENDER 20100824 121618 1860 63.2 Dine In DELIVERY CHARGE 20100824 121618 1860 63.2 Thanks in advance,

Script Component

  
Hi Guys,   I am newbie and never done coding in vb. script, I am using SSIS component for this. I am using below code to allow user to enter storeid and change file name inside the directory from filename.ajk to storeid_filename.ajk.   Example:  01012010.ajk 02012010.ajk 03012010.ajk Once the user enter the storeid all the files in that particular directory will change to like this automatically 192572_01012010.ajk 192572_02012010.ajk 192572_03012010.ajk Now all I want is to change the file name from 01012010 to 20100101. So once the user enter the storeid it has to change it to  192572_20100101.ajk 192572_201001012.ajk 192572_20100103.ajk     Please help me guys its a urgent help.       Public Sub Main() ' ' Add your code here         '         Dim InputFilePath As String         Dim StoreNo As String = InputBox("Enter Store No", "StoreNo")         InputFilePath = Dts.Variables("strInputFolder").Value         Dim strFileSize As String = ""           Dts.Variables("StoreNo").Value = StoreNo         Dim di As New IO.DirectoryInfo(InputFilePath)         Dim aryFi As IO.FileInfo

Question using Script Component

  
Hi Guys, I have this records on my dataflow.   Column1 Column2 Column3 ITEM 1 P ITEM 2 S ITEM 3 N ITEM 4 O ITEM 5 M ITEM 6 MC ITEM 7 MAO ITEM 8 MT ITEM 9 P ITEM 10 S ITEM 11 N ITEM 12 O ITEM 13 M ITEM 14 MC ITEM 15 MAO ITEM 16 MT    I want to add a new column that based on these condition. 1. If Column1 and Column3 is "S", "N", "O", "P" then Column4 value is  1 2. If Column1 and Column3 is "M" then Column4 values is 0 3. if Column1 is not "ITEM" then Column4 value is NULL 4. If Column1 and Column3 is "MC", "MAO" , "MT" then get the last column2 value place for Column4.  Column1 Column2 Column3 Column4 ITEM 1 P 1 ITEM 2 S 1 ITEM 3 N 1 ITEM 4 O 1 ITEM 5 M 5 ITEM 6 MC 5 ITEM 7 MAO 5 ITEM 8 MT 5 ITEM 9 P 1 ITEM 10 S 1 ITEM 11 N 1 ITEM 12 M 12 ITEM 13 O 1 ITEM 14 MC 1 ITEM 15 MAO 1 ITEM 16 MT 1  I have the following script to get some of the conditions, but im stuck in the last one with the "MC, MAO, MT" in Column3.  If Column1 = "ITEM" And Column3 = "S" Or Column3 = "N" Or Column3 = "O" Or Column3 = "P" Then             Column4 = "1" &

Error in Script component in the Data Flow Task

  
Hi, I need a small help. This is what i require. I need to generate a auto increment number using script component and assign it to target column. use db1 go create table src (name varchar(10) ) insert into src select 'A' union all select 'B' union all select 'C'   create table trg (id int, name varchar(10) ) while loading the trg table, i need to generate a auto increment number and then load it to target. Finally, my trg table data should look as follows id name 1  A 2  B 3  C This is what i have done inside the package. step1 : declared a global variable "tmp" of int32 step2 : created a connection manager pointing to "db1" database step3 : drag n drop data flow task step : inside the data flow task , i have the following        OLEDB Source  (select name from src)           |        Script Component (i have added a new Output column "v_id" of int datatype in INPUTS AND OUTPUTS page)           |        OLEDB Destination In the Script page in Script component , in ReadWriteVariables | User::tmp, I have chose Visual Basic 2008 and clicked the EDit script and inside the Editor this and inisde the below routine i have added only two

java script problem !

  
hi.i have this code : <asp:TextBox ID="TextBox1" runat="server" Width="92px"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="ok" Width="64px" /> <asp:CheckBoxList ID="CheckBoxList1" runat="server" RepeatDirection="Horizontal"> <asp:ListItem Value="1"></asp:ListItem> <asp:ListItem Value="2"></asp:ListItem> <asp:ListItem Value="3"></asp:ListItem> </asp:CheckBoxList> and in button i have this code : If TextBox1.Text.Contains("1").ToString Then CheckBoxList1.Items.Item(0).Selected = True Else CheckBoxList1.Items.Item(0).Selected = False End If If TextBox1.Text.Contains("2").ToString Then CheckBoxList1.Items.Item(1).Selected = True Else CheckBoxList1.Items.Item(1).Selected = False End If If TextBox1.Text.Contains("3").ToString Then CheckBoxList1.Items.Item(2).Selected = True Else CheckBoxList1.Items.Item(2).Selected = False End If how i can do this code with javascript instead of vb code ?

Problem with java script basic script constraint.

  
 hi my code isfunction checkValue(){ if(''==document.getElementById ('textbox1').value) { alert('Please enter a value'); } }   and i am calling it on a button click event but its not responding. html code:  <asp:Button ID="btnButton" runat="server" Text="Button" onclick="checkValue()"/>   please help.

Script Component Question

  
Hi Guys, I got this recordet from a flat file. C1 C2 ITM 0 ITM 0 ITM 0 ITM 0 TX 0 DC 0 TOT 1 TN 0 ITM 0 ITM 0 ITM 0 ITM 0 TX 0 DC 0 TOT 2 TN 0 The requirement is if C1 = TOT, then the C2 value remains the same. If C1 <> TOT then C2 value is equal to C1 = TOT value. C1 C2 ITM 1 ITM 1 ITM 1 ITM 1 TX 1 DC 1 TOT 1 TN 1 ITM 2 ITM 2 ITM 2 ITM 2 TX 2 DC 2 TOT 2 TN 2 The sorting is fix. TOT always come first before the TN. Can a script component do this and how? Thanks,

SSIS script component bugs at around 10k rows

  
I'm trying to load a dimension table from a tab delimited file to a parent-child table. I have made a script like this: public override void Input0_ProcessInputRow(Input0Buffer Row) { String level0 = null, level1 = null, level2 = null, level3 = null, level4 = null, level5 = null; while (!Row.EndOfRowset()) { if (Row.Description_IsNull || Row.Description == "") { if (!Row.NextRow()) break; continue; } if (!Row.Level0_IsNull) { Row.ID = Row.Level0; Row.ParentID = null; level0 = Row.Level0; Row.Description = Row.Description; } else if (!Row.Level1_IsNull) { Row.ID = Row.Level1; Row.ParentID = level0; level1 = Row.Level1; Row.Description = Row.Description; } else if (!Row.Level2_IsNull) { Row.ID = Row.Level2; Row.ParentID = level1; level2 = Row.Level2; Row.Description = Row.Description; } else if (!Row.Level3_IsNull) { Row.ID = Row.Level3; Row.ParentID = level2; level3 = Row.Level3; Row.Description = Row.Description; } else if (!Row.Level4_IsNull) { Row.ID = Row.Level4; Row.ParentID = level3; level4 = Row.Level4; Row.Description = Row.Description; } else if (!Row.Level5_IsNull) { Row.ID = Row.Level5; Row.ParentID = level4; level5

Script Component Help

  
Hi Guys, I have the following recordset in my dataflow.   Col1 Col2 Col3 Col4 Col5 Col6 Col7 Col8 Col9 Col10 Col11 Col12 Col13 Col14 Col15 Col16 Col17 Col18 Delivery       DELIVERY 1234567 1 Ewoks 0 0 0 0 0 0 0 0 0 0 0 0   Delivery       ITEM   20100804 111524 25 1 1 4001 5 1 5 1 0 JED SPAGHETTI 1 42   Delivery       TAX   20100804 111524 25 1 1 0 0 0 0 0 0 TAX 1 92.18   Delivery       TOTAL   20100804 111524 25 1 1 5 0 7 1 0 1 Delivery       1 489.5   Delivery       TENDER   20100804 111524 25 1 1 0 1 1 0 0 0 CASH 1 489.5   DELIVERY 6671775   Sari-Sari Store 0 0 0 0 0 0 0 0 0 0 0 0     DELIVERY 6671775   Sari-Sari Store 0 0 0 0 0 0 0 0 0 0 0 0     PaidOut-Refd KPP Dep PAIDOUT   20100804 104450 1304 1 -1 7 0 0 0 0 0 PaidOut-Refd KPP Dep 1 500     Conditions: If Col1 <> "DELIVERY" And Col2 = "DELIVERY" Then Col18 = Col3 + "," + Col4 Where Col2 = "TENDER" If Col1 = "DELIVERY" And Col2 = "DELIVERY" Then Col18 = Col3 + "," + Col4 Where Col2 = "TENDER" If Col1 in first row = "DEL

SQL Server 2008 Script Componant Error - [SSIS.Pipeline] Error: component "Script Comp Name" (48) fa

  
Hi All,   I am facing one strange issue in SSIS 2008. I have developed one SSIS package which is importing excel data into SQL Server 2008. This Package contains some Scirpt componants. This package is working fine on Windows XP machine but when I am trying to run on Windows 2003 server it gives me error "[SSIS.Pipeline] Error: component "SCR RDSTableRelation" (48) failed the post-execute phase and returned error code 0x80004002". Surprising thing is that if on windows server 2003server  if I drag a new script componat and paste the previous script code itself then it works fine. Even if I copy-paste the existing script componant and give source-destination connectino to this new script componant then also it works.

Problem setting variable/param in XSLT for XML control in .NET 4.0

  
I am using an XML control in VS2010 with .NET 4.0.I am trying to sort XML data into a table. I have a drop list with the sort key, and a button that is supposed to display the table with a new sort.Here is the code the button calls:</p><p></p><p style="text-align: left;" mce_style="text-align: left;"><font class="Apple-style-span" face="Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace"><span class="Apple-style-span" style="border-collapse: collapse; line-height: 13px;" mce_style="border-collapse: collapse; line-height: 13px;" mce_fixed="1"></span></font></p><p><font class="Apple-style-span" face="Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace"></font></p><p><font class="Apple-style-span" face="Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace"><div style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;" id="_mcePaste">private void PopulateXML( Xml MyXML)</div> <div style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: h

Script Component - Change One Row Input to Multiple Row Output

  
Hi All I am new to SSIS, and looking for help. I do not know if it is possible, but I like to try using the "Script Component" to change a input like this:   1234 1235 1236 ...   to and output like this:   1234, Value1 1235, Value2 1235, Value3 1235, Value4 1236, Value5 ...   Depending of the input value, 1 or more Rows are pushed out the Output, Like the value 1234 -> result in 1 Row in the output, where the value 1235 -> result in 3 rows in the output. Is this possible to do in a Script Component?? If it is how do you program such behavior? Do some good sources to learn SSIS exist out there?? I think it is not easy to find information. Peter Schwennesen
Categories: 
ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend