Solved

# Problems with DTS package execution using COM

Posted on 2006-07-18
925 Views
Hello Experts,

I have a DTS package on my SQL server.  The package reads a text file and imports it into an SQL database.  During the import one of the fields is assigned a value from my GlobalVariable (ActiveX script in DTS)  The package runs fine from Enterprise Manager, but when I try run it from ASP.NET  I get the following error:

Step Error Source: Microsoft Data Transformation Services (DTS) Data Pump
Step Error Description:The number of failing rows exceeds the maximum specified. (Microsoft Data Transformation Services (DTS) Data Pump (80020101): Error Code: 0
Error Source= Microsoft VBScript runtime error
Error Description: Invalid procedure call or argument: 'DTSDestination'

Error on Line 18
) (mscorlib (80004005): Missing parameter does not have a default value.
Parameter name: parameters)
Step Error code: 8004206A
Step Error Help File:sqldts80.hlp
Step Error Help Context ID:0

My code in ASP.NET is very simple, here it is.

Dim dtsPack As New DTS.Package
dtsPack.LoadFromSQLServer("int-vip-02", "warranty", "warranty", DTS.DTSSQLServerStorageFlags.DTSSQLStgFlag_Default, Nothing, Nothing, Nothing, "warranty_DCX_Claims_Import", Nothing)

Dim fileClaims As DTS.Connection
Dim fileVerbatims As DTS.Connection
fileClaims = dtsPack.Connections.Item("Claims_File")
fileVerbatims = dtsPack.Connections.Item("Verbatims_File")
fileClaims.DataSource = "\\int-vip-02\warranty$\DCX\DCX_INTERIORS_Claims.txt" fileVerbatims.DataSource = "\\int-vip-02\warranty$\DCX\DCX_INTERIORS_Verbatims.txt"

Dim varDivision As DTS.GlobalVariable
Dim varFRCode As DTS.GlobalVariable
varDivision = dtsPack.GlobalVariables.Item("Division")
varFRCode = dtsPack.GlobalVariables.Item("DCX_FR_Code")
varDivision.Value = "INTERIORS"
varFRCode.Value = "X"

dtsPack.Execute()

As you can tell, the DTS package reads the file names in no problem, when I comment out the GlobalVariable code everything works, but the GlobalVariables don't want to go further then the error message that I get.  The message shows up in the SQL log.

Thanks for any help to this.

0
Question by:tomasz_k
• 2

LVL 30

Expert Comment

ID: 17136606
Well my first suggestion would be to do it differently - use a stored procedure, but that may not be an option for you.

Are there any other bits of ActiveX code that use the DTSDestination function or is that the only one?

are the IIS and SQL Server on the same box? If not does it run OK from the IIS box? Possibly it doesn't have a required library installed.

It certainly is  strange error and my other suggestion would be to make sure all SP's are up to date.

0

Author Comment

ID: 17137739
The ActiveX function has about 6 destination columns, and they all are using DTSDestination.  5 of the columns get data from the import file, and they work fine, ony when I try to assign a GlobalVariable dynamically to my other DTSDestination the error occurs.  If I assign a GlobalVariable within ActiveX the DTS runs without any issues.  I'm thinking it's the way I call or assign the GlobalVariable in ASP.NET, but I'm not able to figure out what's wrong with it.
0

Author Comment

ID: 17138210
I have just solved my own problem.  Instead of trying to change the current GlobalVariables in DTS.  I deleted them, and assigned new variables in ASP.NET like so:

So far it's working no problem, but thanks anyway.
0

LVL 1

Accepted Solution

GhostMod earned 0 total points
ID: 17168285
Closed, 500 points refunded.

GhostMod
Community Support Moderator
0

## Featured Post

I recently went through the process of creating a Calendar Control of events with the basis of using a database to keep track of the dates that are selectable, one requirement was to have the selected date pop-up in a simple lightbox.  At first this…
ASP.Net to Oracle Connectivity Recently I had to develop an ASP.NET application connecting to an Oracle database.As I am doing it first time ,I had to solve several problems. This article will help to such developers  to develop an ASP.NET client…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.