Foros del Web » Programación para mayores de 30 ;) » .NET »

Error con DTS CustomTask de Vb6 a vb.net

Estas en el tema de Error con DTS CustomTask de Vb6 a vb.net en el foro de .NET en Foros del Web. Estoy tratando de usar DTS (SErvicio de Transformacion de Datos) para exportar archivos de textos a una tabla desde Visual Studio.net a la base de ...
  #1 (permalink)  
Antiguo 25/03/2005, 13:42
 
Fecha de Ingreso: abril-2004
Ubicación: Morelos, México
Mensajes: 124
Antigüedad: 22 años, 5 meses
Puntos: 0
Pregunta Error con DTS CustomTask de Vb6 a vb.net

Estoy tratando de usar DTS (SErvicio de Transformacion de Datos) para exportar archivos de textos a una tabla desde Visual Studio.net a la base de datos en SQLServer2000.

Set oConnection = oPackage.Connections.New("SQLOLEDB")
Set oStep = oPackage.Steps.New
Set oTask = oPackage.Tasks.New("DTSBulkInsertTask")
Set oCustomTask = oTask.CustomTask
........


En Visual Basic 6.0 se tiene el siguiente codigo.... el cual funciona correctamente, sin embargo se debe emigrar dicho codigo a .net.
--------------------------------------
Código PHP:
Private Sub GenericTaskPackage()
Dim oConnection As DTS.Connection
Dim oStep 
As DTS.Step
Dim oTask 
As DTS.Task
Dim oCustomTask 
As DTS.BulkInsertTask 'TaskObject
Dim sDatabase As String
Dim sfilename As String
Dim sFileTitle As String

On Error GoTo PackageError

'
Create connections, step, tasks
Set oConnection 
= oPackage.Connections.New("SQLOLEDB")
Set oStep = oPackage.Steps.New
Set oTask = oPackage.Tasks.New("DTSBulkInsertTask")
Set oCustomTask = oTask.CustomTask

'Set up and database connections
SetConnections oPackage, oConnection

With oStep
  .Name = "GenericPkgStep"
  .ExecuteInMainThread = True
End With

sfilename = diaUno.FileName
sDatabase = cbbd.Text
sFileTitle = diaUno.FileTitle

'
Customize the Task Object
With oCustomTask
  
.Name = "GenericPkgTask"
  
.DataFile = sfilename

  
.ConnectionID = 1
  
.DestinationTableName = sDatabase & ".." & LCase(sDatabase) & "_" & amo & mesn 
  
'.FieldTerminator = "|"
  '
.RowTerminator = "\r\n"
End With

oStep
.TaskName = oCustomTask.Name

'Add the step
With oPackage
  .Steps.Add oStep
  .Tasks.Add oTask
  .FailOnError = True
End With

'
Run the package and release references.
oPackage.Execute

Clean up
Set oConnection 
= Nothing
Set oCustomTask 
= Nothing
Set oTask 
= Nothing
Set oStep 
= Nothing
oPackage
.UnInitialize

Exit Sub

PackageError
:
Dim sMsg    As String
  sMsg 
= "Package failed error: " & sErrorNumConv(Err.Number) & _
  vbCrLf 
& Err.Description & vbCrLf & sAccumStepErrors(oPackage)
  
MsgBox sMsg, vbExclamation, oPackage.Name
End Sub 
-----------------------------
La conversion del anterior codigo de vs 6.0 a .net es el siguiente (Codigo en Visual Basic .net):
Pero marca error al asignar referencias del uso de DTS con customTask
-----------------------------
Código PHP:
    Private Sub GenericTaskPackage()
        
Dim oConnection As DTS.Connection
        Dim oStep 
As DTS.Step
        Dim oTask 
As DTS.Task
        Dim oCustomTask 
As DTS.BulkInsertTask 'TaskObject
        Dim sDatabase As String
        Dim sfilename As String
        Dim sFileTitle As String
        Dim oprop As DTS.Properties



        On Error GoTo PackageError

        '
Create connections, step, tasks
        oConnection 
= oPackage.Connections.New("SQLOLEDB")
        
oStep = oPackage.Steps.New
[
COLOR=Sienna]        oTask = oPackage.Tasks.New("DTSBulkInsertTask")
        
oCustomTask = oTask.CustomTask[/COLOR]


        
'Set up and database connections
        '
UPGRADE_WARNING: No se puede resolver la propiedad predeterminada del objeto oPackage.Steps.Item. Haga clic aquí para obtener más información: 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1037"'
        
SetConnections(oPackage, oConnection)

        
With oTask
            
.Name = "DTSBulkInsertTask"
            
.Description = "Information checar"
        
End With

        With oStep
            
.Name = "GenericPkgStep"
            
.ExecuteInMainThread = True
        End With

        sfilename 
= diaUno.FileName
        sDatabase 
= cbbd.Text
        sFileTitle 
= diaUno.FileTitle



        
'Customize the Task Object
        With oCustomTask
            .Name = "GenericPkgTask"
            .DataFile = sfilename
            .ConnectionID = 1
            '
UPGRADE_WARNING: No se puede resolver la propiedad predeterminada del objeto mesn. Haga clic aquí para obtener más información: 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1037"'
            'UPGRADE_WARNING: No se puede resolver la propiedad predeterminada del objeto amo. Haga clic aquí para obtener más información: '
ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1037"'
            
.DestinationTableName = sDatabase & ".." & LCase(sDatabase) & "_" & amo & mesn 
            
'.FieldTerminator = "|"
            '
.RowTerminator = "\r\n"
        
End With

        oStep
.TaskName = oCustomTask.Name

        
'Add the step
        With oPackage
            .Steps.Add(oStep)
            .Tasks.Add(oTask)
            .FailOnError = True
        End With

        '
Run the package and release references.
        
oPackage.Execute()

        
'Clean up
        '
UPGRADE_NOTE: El objeto oConnection no se puede destruir hasta que no se realice la recolección de los elementos no utilizados. Haga clic aquí para obtener más información: 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"'
        
oConnection = Nothing
        
'UPGRADE_NOTE: El objeto oCustomTask no se puede destruir hasta que no se realice la recolección de los elementos no utilizados. Haga clic aquí para obtener más información: 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"'
        
oCustomTask = Nothing
        
'UPGRADE_NOTE: El objeto oTask no se puede destruir hasta que no se realice la recolección de los elementos no utilizados. Haga clic aquí para obtener más información: 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"'
        
oTask = Nothing
        
'UPGRADE_NOTE: El objeto oStep no se puede destruir hasta que no se realice la recolección de los elementos no utilizados. Haga clic aquí para obtener más información: 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1029"'
        
oStep = Nothing
        oPackage
.UnInitialize()

        Exit 
Sub

PackageError
:
        
Dim sMsg As String
        
'UPGRADE_WARNING: No se puede resolver la propiedad predeterminada del objeto oPackage.Steps.Item. Haga clic aquí para obtener más información: 'ms-help://MS.VSCC.2003/commoner/redir/redirect.htm?keyword="vbup1037"'
        
sMsg = "Package failed error: " & sErrorNumConv(Err.Number) & vbCrLf & Err.Description & vbCrLf & sAccumStepErrors(oPackage)
        
MsgBox(sMsg, MsgBoxStyle.Exclamation, oPackage.Name)
    
End Sub 
----------------------------
Una vez actualizado el codigo de Visual Basic 6.0 a Visual Basic .NET
Procedo a ejecutar la aplicacion en visual Basic .NET pero me envia el siguiente mensaje de error
----------------------------

"Package failed error: xD, 13
Error de QueryInterface para la interfaz DTS.CustomTask."

-------------------------------------------------
Que debo hacer para solucionar este problema???
-------------------------------------------------
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:24.