June 24, 2004 at 10:44 am
Hey everyone.
I have written a DTS package that reads an uploaded CSV file, builds a table to import the data too, and then proceeds to import the data from the CSV into the new table. Due to the nature of this packages use, it is very generic in order to handle ANY CSV file, containing ANY column structure. I have been able to get the package working pretty consistently so far, but have run into one very troublesome issue.
in production, the package will be executed via a stored procedure calling the 'xp_cmdshell' sproc. When I execute from the command line, the datapump task throws the following error:
Error: -2147352319 (80020101); Provider Error: 0 (0)
Error string: Error Code: 0
Error Source= Microsoft VBScript runtime error
Error Description: Object required: 'this'
Error on Line 6
Error source: Microsoft Data Transformation Services (DTS) Data Pump
Help file: sqldts80.hlp
Help context: 30631
the strange part to me is that when I am in the Package Designer and execute the package from there, everything works perfectly!
Has anyone run into this error before? Have any suggestions of how to solve this?
Any help would be greatly appreciated as I am just out of ideas.
Thanks in advance.
JD
June 24, 2004 at 10:51 am
Sounds very similar to the problem I had. See link to this site
http://qa.sqlservercentral.com/forums/shwmessage.aspx?forumid=19&messageid=120028#bm120824
It looks like a permisssions problem. When you run the package from designer it uses the sql account you are logged in as, but the xp... command probably uses another login.
Maybe one of the files required is not accessible by one of the logins. Hope this all least points you in the right direction.
June 24, 2004 at 12:47 pm
Jonathan,
Thanks for the help. I read through the thread and performed the actions on dcomcnfg...no luck. I still get an error telling me that the VB requires an object of "this".
Any other thoughts?
June 24, 2004 at 12:55 pm
In case this helps, this is the ActiveX script that is being used in my datapump.
'**********************************************************************
' Visual Basic Transformation Script
'************************************************************************
Function PreSourceMain()
'Declare Variables
dim currentColumn 'Contains the current column to transform
dim index 'index for looping through column headers
dim columnHeaders 'contains the headers used in this transformation
PreSourceMain = DTSTransformStat_OK
End Function
Function RowTransformMain()
columnHeaders = DTSGlobalVariables("ColumnHeaders")
'Loop through the columnHeaders and build the column string for the SQL statement
'*************************************************************
While InStr(columnHeaders, ",")
'Get the current index point of the Column Delimiter
index = InStr(columnHeaders, ",")
currentColumn = left(columnHeaders,index-1)
DTSDestination(currentColumn) = DTSSource(currentColumn)
'remove the parsed value from the list
columnHeaders = right(columnHeaders, Len(columnHeaders)-index)
WEnd
'Get the last column
'************************************************************
currentColumn = columnHeaders
DTSDestination(currentColumn) = DTSSource(currentColumn)
RowTransformMain = DTSTransformStat_OK
End Function
June 24, 2004 at 1:35 pm
I got it figured out. It was my error and now everything is working splendidly!!!
Thanks.
Viewing 5 posts - 1 through 4 (of 4 total)
You must be logged in to reply to this topic. Login to reply