I have the code to create DTS pacakge manually which is pretty old and depreciated from sql 2008 R2 onwards. Now i need to support for SQL express 2016.
Can any one help to migrate the code?below is the VB code
Function CreatePackage(ByRef inServer, _
ByRef inDB, _
ByRef strRecordType, _
ByRef oPackage, ByRef errMsg)
Dim rc
Dim inFullFileName
On Error Resume Next
NQExt.QTrace "<<ciscocm::createpackage>> Entry"
rc = RET_SUCCESS
inFullFileName = "dummy_file"
Set oPackage = CreateObject("DTS.Package2")
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = "Error: CreateObject DTS.Package2. ErrNo=0x"& Hex(Err.Number) & vbCrLf _
& ": " & Err.Description
End If
If (rc = RET_SUCCESS) Then
oPackage.Name = "DTSPackage_Import" & strRecordType
oPackage.Description = "Import " & strRecordType & " records."
oPackage.WriteCompletionStatusToNTEventLog = False
oPackage.FailOnError = False
oPackage.PackagePriorityClass = 2
oPackage.MaxConcurrentSteps = 4
oPackage.LineageOptions = 0
oPackage.UseTransaction = True
oPackage.TransactionIsolationLevel = 4096
oPackage.AutoCommitTransaction = True
oPackage.RepositoryMetadataOptions = 0
oPackage.UseOLEDBServiceComponents = True
oPackage.LogToSQLServer = False
oPackage.LogServerFlags = 0
oPackage.FailPackageOnLogFailure = False
oPackage.ExplicitGlobalVariables = False
oPackage.PackageType = 0
End If
If (rc = RET_SUCCESS) Then
rc = DoDefineConnection(oPackage, strRecordType, inFullFileName, _
inServer, inDB, errMsg)
End If
If (rc = RET_SUCCESS) Then
rc = DoDefineStep(oPackage, strRecordType, errMsg)
End If
If (rc = RET_SUCCESS) Then
rc = DoDefineTask(oPackage, strRecordType, inFullFileName, inDB, errMsg)
End If
If (Err.Number <> 0) Then
errMsg = "ErrNo=" & Err.Number & ": " & Err.Description
Err.Clear
End If
CreatePackage = rc
NQExt.QTrace "<<ciscocm::createpackage>> Exit"
End Function
Function DoDefineConnection(ByRef oPackage, _
ByRef strRecordType, _
ByRef inFullFileName, _
ByRef inServer, ByRef inDB, _
ByRef errMsg)
Dim rc
Dim oConnection
On Error Resume Next
NQExt.QTrace "<<ciscocm::dodefineconnection>> Entry"
rc = RET_SUCCESS
Set oConnection = oPackage.Connections.New("DTSFlatFile")
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = "Error: Creating connection DTSFlatFile. ErrNo=0x"& Hex(Err.Number) & vbCrLf _
& ": " & Err.Description
End If
If (rc = RET_SUCCESS) Then
oConnection.ConnectionProperties("Data Source").value = inFullFileName
oConnection.ConnectionProperties("Mode").value = 1
oConnection.ConnectionProperties("Row Delimiter").value = vbLf
oConnection.ConnectionProperties("File Format").value = 1
oConnection.ConnectionProperties("Column Delimiter").value = ","
oConnection.ConnectionProperties("File Type").value = 1
oConnection.ConnectionProperties("Skip Rows").value = 1
oConnection.ConnectionProperties("Text Qualifier").value = """"
oConnection.ConnectionProperties("First Row Column Name").value = True
oConnection.ConnectionProperties("Number of Column").value = 0
oConnection.ConnectionProperties("Max characters per delimited column").value = 8000
oConnection.Name = strRecordType & "Connection 1"
oConnection.ID = 1
oConnection.Reusable = True
oConnection.ConnectImmediate = False
oConnection.DataSource = inFullFileName
oConnection.ConnectionTimeout = 300
oConnection.UseTrustedConnection = False
oConnection.UseDSL = False
oPackage.Connections.Add oConnection
Set oConnection = Nothing
End If
If (rc = RET_SUCCESS) Then
Set oConnection = oPackage.Connections.New("SQLOLEDB")
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = "Error: Creating connections SQLOLEDB. ErrNo=0x"& Hex(Err.Number) & vbCrLf _
& ": " & Err.Description
End If
End If
If (rc = RET_SUCCESS) Then
oConnection.ConnectionProperties("Integrated Security").value = "SSPI"
oConnection.ConnectionProperties("Persist Security Info").value = True
oConnection.ConnectionProperties("Initial Catalog").value = inDB
oConnection.ConnectionProperties("Data Source").value = inServer
oConnection.ConnectionProperties("Application Name").value = "DTS Designer"
oConnection.Name = strRecordType & "Connection 2"
oConnection.ID = 2
oConnection.Reusable = True
oConnection.ConnectImmediate = False
oConnection.DataSource = inServer
oConnection.ConnectionTimeout = 300
oConnection.Catalog = inDB
oConnection.UseTrustedConnection = True
oConnection.UseDSL = False
oPackage.Connections.Add oConnection
Set oConnection = Nothing
End If
NQExt.QTrace "<<ciscocm::dodefineconnection>> Exit"
DoDefineConnection = rc
End Function
Function DoDefineStep(ByRef oPackage, ByRef strRecordType, ByRef errMsg)
Dim rc
Dim oStep
On Error Resume Next
rc = RET_SUCCESS
NQExt.QTrace "<<ciscocm::dodefinestep>> Entry"
If (rc = RET_SUCCESS) Then
Set oStep = oPackage.Steps.New
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = "Error: Creating package step. ErrNo=0x"& Hex(Err.Number) & vbCrLf _
& ": " & Err.Description
End If
End If
If (rc = RET_SUCCESS) Then
oStep.Name = "DTSStep_" & strRecordType & "DataPumpTask"
oStep.Description = strRecordType & " Transfer"
oStep.ExecutionStatus = DTSStepExecStat_Waiting
oStep.TaskName = "DTSTask_" & strRecordType & "DataPumpTask"
oStep.CommitSuccess = False
oStep.RollbackFailure = False
oStep.ScriptLanguage = "VBScript"
oStep.AddGlobalVariables = True
oStep.RelativePriority = 3
oStep.CloseConnection = False
oStep.ExecuteInMainThread = True
oStep.IsPackageDSORowset = False
oStep.JoinTransactionIfPresent = False
oStep.DisableStep = False
oStep.FailPackageOnError = False
oPackage.Steps.Add oStep
Set oStep = Nothing
End If
NQExt.QTrace "<<ciscocm::dodefinestep>> Exit"
DoDefineStep = rc
End Function
Function DoDefineTask(ByRef oPackage, ByRef strRecordType, ByRef inFullFileName, _
ByRef inDB, ByRef errMsg)
Dim rc
Dim oTask
Dim oLookup
Dim oCustomTask
NQExt.QTrace "<<ciscocm::dodefinetask>> Entry"
On Error Resume Next
rc = RET_SUCCESS
Set oTask = oPackage.Tasks.New("DTSDataPumpTask")
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = "Error: Creating DTSDataPumpTask. ErrNo=0x"& Hex(Err.Number) & vbCrLf _
& ": " & Err.Description
End If
If (rc = RET_SUCCESS) Then
oTask.Name = "DTSTask_" & strRecordType & "DataPumpTask"
Set oCustomTask = oTask.CustomTask
oCustomTask.Name = "DTSTask_" & strRecordType & "DataPumpTask"
oCustomTask.Description = strRecordType & " Transfer"
oCustomTask.SourceConnectionID = 1
oCustomTask.SourceObjectName = inFullFileName
oCustomTask.DestinationConnectionID = 2
oCustomTask.DestinationObjectName = "[" & inDB & "].[dbo].[" & "Stage" & strRecordType & "]"
oCustomTask.ProgressRowCount = 1000
oCustomTask.MaximumErrorCount = 0
oCustomTask.FetchBufferSize = 1
oCustomTask.UseFastLoad = True
oCustomTask.InsertCommitSize = 0
oCustomTask.ExceptionFileColumnDelimiter = "|"
oCustomTask.ExceptionFileRowDelimiter = vbCrLf
oCustomTask.AllowIdentityInserts = False
oCustomTask.FirstRow = 0
oCustomTask.LastRow = 0
oCustomTask.FastLoadOptions = 2
oCustomTask.ExceptionFileOptions = 1
oCustomTask.DataPumpOptions = 0
End If
If (StrComp(strRecordType, "CDR", vbTextCompare) = 0) Then
rc = DoDefineCDRCustomTransform(oCustomTask, errMsg)
Else
rc = DoDefineCMRCustomTransform(oCustomTask, errMsg)
End If
If (rc = RET_SUCCESS) Then
oPackage.Tasks.Add oTask
End If
Set oCustomTask = Nothing
Set oTask = Nothing
DoDefineTask = rc
NQExt.QTrace "<<ciscocm::dodefinetask>> Exit"
End Function
Function DoDefineCDRCustomTransform(ByRef oCustomTask, ByRef errMsg)
Dim rc
Dim oTransformation
Dim oTransProps
Dim oColumn
On Error Resume Next
NQExt.QTrace "<<ciscocm::dodefinecdrcustomtransform>> Entry"
rc = RET_SUCCESS
Set oTransformation = oCustomTask.Transformations.New("DTSPump.DataPumpTransformCopy")
oTransformation.Name = "CopyColumns"
oTransformation.TransformFlags = 63
oTransformation.ForceSourceBlobsBuffered = 0
oTransformation.ForceBlobsInMemory = False
oTransformation.InMemoryBlobSize = 1048576
oTransformation.TransformPhases = 4
Set oColumn = oTransformation.SourceColumns.New("pkid" , 1)
oColumn.Name = "pkid"
oColumn.Ordinal = 1
oColumn.Flags = 8
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = False
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("globalCallID_callManagerId" , 2)
oColumn.Name = "globalCallID_callManagerId"
oColumn.Ordinal = 2
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("globalCallID_callId" , 3)
oColumn.Name = "globalCallID_callId"
oColumn.Ordinal = 3
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origLegCallIdentifier" , 4)
oColumn.Name = "origLegCallIdentifier"
oColumn.Ordinal = 4
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("dateTimeOrigination" , 5)
oColumn.Name = "dateTimeOrigination"
oColumn.Ordinal = 5
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origNodeId" , 6)
oColumn.Name = "origNodeId"
oColumn.Ordinal = 6
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origSpan" , 7)
oColumn.Name = "origSpan"
oColumn.Ordinal = 7
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origIpAddr" , 8)
oColumn.Name = "origIpAddr"
oColumn.Ordinal = 8
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("callingPartyNumber" , 9)
oColumn.Name = "callingPartyNumber"
oColumn.Ordinal = 9
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origCause_value" , 10)
oColumn.Name = "origCause_value"
oColumn.Ordinal = 10
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origMediaTransportAddress_IP" , 11)
oColumn.Name = "origMediaTransportAddress_IP"
oColumn.Ordinal = 11
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origMediaTransportAddress_Port" , 12)
oColumn.Name = "origMediaTransportAddress_Port"
oColumn.Ordinal = 12
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origMediaCap_payloadCapability" , 13)
oColumn.Name = "origMediaCap_payloadCapability"
oColumn.Ordinal = 13
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origVideoTransportAddress_IP" , 14)
oColumn.Name = "origVideoTransportAddress_IP"
oColumn.Ordinal = 14
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origVideoTransportAddress_Port" , 15)
oColumn.Name = "origVideoTransportAddress_Port"
oColumn.Ordinal = 15
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destLegIdentifier" , 16)
oColumn.Name = "destLegIdentifier"
oColumn.Ordinal = 16
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destNodeId" , 17)
oColumn.Name = "destNodeId"
oColumn.Ordinal = 17
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destSpan" , 18)
oColumn.Name = "destSpan"
oColumn.Ordinal = 18
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destIpAddr" , 19)
oColumn.Name = "destIpAddr"
oColumn.Ordinal = 19
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("originalCalledPartyNumber" , 20)
oColumn.Name = "originalCalledPartyNumber"
oColumn.Ordinal = 20
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("finalCalledPartyNumber" , 21)
oColumn.Name = "finalCalledPartyNumber"
oColumn.Ordinal = 21
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destCause_value" , 22)
oColumn.Name = "destCause_value"
oColumn.Ordinal = 22
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destMediaTransportAddress_IP" , 23)
oColumn.Name = "destMediaTransportAddress_IP"
oColumn.Ordinal = 23
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destMediaTransportAddress_Port" , 24)
oColumn.Name = "destMediaTransportAddress_Port"
oColumn.Ordinal = 24
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destMediaCap_payloadCapability" , 25)
oColumn.Name = "destMediaCap_payloadCapability"
oColumn.Ordinal = 25
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destVideoTransportAddress_IP" , 26)
oColumn.Name = "destVideoTransportAddress_IP"
oColumn.Ordinal = 26
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destVideoTransportAddress_Port" , 27)
oColumn.Name = "destVideoTransportAddress_Port"
oColumn.Ordinal = 27
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("dateTimeConnect" , 28)
oColumn.Name = "dateTimeConnect"
oColumn.Ordinal = 28
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("dateTimeDisconnect" , 29)
oColumn.Name = "dateTimeDisconnect"
oColumn.Ordinal = 29
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("originalCalledPartyNumberPartition" , 30)
oColumn.Name = "originalCalledPartyNumberPartition"
oColumn.Ordinal = 30
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("callingPartyNumberPartition" , 31)
oColumn.Name = "callingPartyNumberPartition"
oColumn.Ordinal = 31
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("finalCalledPartyNumberPartition" , 32)
oColumn.Name = "finalCalledPartyNumberPartition"
oColumn.Ordinal = 32
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("duration" , 33)
oColumn.Name = "duration"
oColumn.Ordinal = 33
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("origDeviceName" , 34)
oColumn.Name = "origDeviceName"
oColumn.Ordinal = 34
oColumn.Flags = 104
oColumn.Size = 129
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destDeviceName" , 35)
oColumn.Name = "destDeviceName"
oColumn.Ordinal = 35
oColumn.Flags = 104
oColumn.Size = 129
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("destConversationId" , 36)
oColumn.Name = "destConversationId"
oColumn.Ordinal = 36
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("comment" , 37)
oColumn.Name = "comment"
oColumn.Ordinal = 37
oColumn.Flags = 104
oColumn.Size = 2048
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("authCodeDescription" , 38)
oColumn.Name = "authCodeDescription"
oColumn.Ordinal = 38
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("authorizationLevel" , 39)
oColumn.Name = "authorizationLevel"
oColumn.Ordinal = 39
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("clientMatterCode" , 40)
oColumn.Name = "clientMatterCode"
oColumn.Ordinal = 40
oColumn.Flags = 104
oColumn.Size = 32
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("pkid" , 1)
oColumn.Name = "pkid"
oColumn.Ordinal = 1
oColumn.Flags = 8
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = False
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("globalCallID_callManagerId" , 2)
oColumn.Name = "globalCallID_callManagerId"
oColumn.Ordinal = 2
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("globalCallID_callId" , 3)
oColumn.Name = "globalCallID_callId"
oColumn.Ordinal = 3
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("origLegCallIdentifier" , 4)
oColumn.Name = "origLegCallIdentifier"
oColumn.Ordinal = 4
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("dateTimeOrigination" , 5)
oColumn.Name = "dateTimeOrigination"
oColumn.Ordinal = 5
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("origNodeId" , 6)
oColumn.Name = "origNodeId"
oColumn.Ordinal = 6
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origSpan" , 7)
oColumn.Name = "origSpan"
oColumn.Ordinal = 7
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origIpAddr" , 8)
oColumn.Name = "origIpAddr"
oColumn.Ordinal = 8
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("callingPartyNumber" , 9)
oColumn.Name = "callingPartyNumber"
oColumn.Ordinal = 9
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origCause_value" , 10)
oColumn.Name = "origCause_value"
oColumn.Ordinal = 10
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origMediaTransportAddress_IP" , 11)
oColumn.Name = "origMediaTransportAddress_IP"
oColumn.Ordinal = 11
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origMediaTransportAddress_Port" , 12)
oColumn.Name = "origMediaTransportAddress_Port"
oColumn.Ordinal = 12
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origMediaCap_payloadCapability" , 13)
oColumn.Name = "origMediaCap_payloadCapability"
oColumn.Ordinal = 13
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origVideoTransportAddress_IP" , 14)
oColumn.Name = "origVideoTransportAddress_IP"
oColumn.Ordinal = 14
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origVideoTransportAddress_Port" , 15)
oColumn.Name = "origVideoTransportAddress_Port"
oColumn.Ordinal = 15
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destLegIdentifier" , 16)
oColumn.Name = "destLegIdentifier"
oColumn.Ordinal = 16
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destNodeId" , 17)
oColumn.Name = "destNodeId"
oColumn.Ordinal = 17
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destSpan" , 18)
oColumn.Name = "destSpan"
oColumn.Ordinal = 18
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destIpAddr" , 19)
oColumn.Name = "destIpAddr"
oColumn.Ordinal = 19
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("originalCalledPartyNumber" , 20)
oColumn.Name = "originalCalledPartyNumber"
oColumn.Ordinal = 20
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("finalCalledPartyNumber" , 21)
oColumn.Name = "finalCalledPartyNumber"
oColumn.Ordinal = 21
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destCause_value" , 22)
oColumn.Name = "destCause_value"
oColumn.Ordinal = 22
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destMediaTransportAddress_IP" , 23)
oColumn.Name = "destMediaTransportAddress_IP"
oColumn.Ordinal = 23
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destMediaTransportAddress_Port" , 24)
oColumn.Name = "destMediaTransportAddress_Port"
oColumn.Ordinal = 24
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destMediaCap_payloadCapability" , 25)
oColumn.Name = "destMediaCap_payloadCapability"
oColumn.Ordinal = 25
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destVideoTransportAddress_IP" , 26)
oColumn.Name = "destVideoTransportAddress_IP"
oColumn.Ordinal = 26
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destVideoTransportAddress_Port" , 27)
oColumn.Name = "destVideoTransportAddress_Port"
oColumn.Ordinal = 27
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("dateTimeConnect" , 28)
oColumn.Name = "dateTimeConnect"
oColumn.Ordinal = 28
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("dateTimeDisconnect" , 29)
oColumn.Name = "dateTimeDisconnect"
oColumn.Ordinal = 29
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("originalCalledPartyNumberPartition" , 30)
oColumn.Name = "originalCalledPartyNumberPartition"
oColumn.Ordinal = 30
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("callingPartyNumberPartition" , 31)
oColumn.Name = "callingPartyNumberPartition"
oColumn.Ordinal = 31
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("finalCalledPartyNumberPartition" , 32)
oColumn.Name = "finalCalledPartyNumberPartition"
oColumn.Ordinal = 32
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("duration" , 33)
oColumn.Name = "duration"
oColumn.Ordinal = 33
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("origDeviceName" , 34)
oColumn.Name = "origDeviceName"
oColumn.Ordinal = 34
oColumn.Flags = 104
oColumn.Size = 129
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destDeviceName" , 35)
oColumn.Name = "destDeviceName"
oColumn.Ordinal = 35
oColumn.Flags = 104
oColumn.Size = 129
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("destConversationId" , 36)
oColumn.Name = "destConversationId"
oColumn.Ordinal = 36
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("comment" , 37)
oColumn.Name = "comment"
oColumn.Ordinal = 37
oColumn.Flags = 104
oColumn.Size = 2048
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("authCodeDescription" , 38)
oColumn.Name = "authCodeDescription"
oColumn.Ordinal = 38
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("authorizationLevel" , 39)
oColumn.Name = "authorizationLevel"
oColumn.Ordinal = 39
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("clientMatterCode" , 40)
oColumn.Name = "clientMatterCode"
oColumn.Ordinal = 40
oColumn.Flags = 104
oColumn.Size = 32
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oTransProps = oTransformation.TransformServerProperties
Set oTransProps = Nothing
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = "Error: Creating Custom Transformation. ErrNo=0x"& Hex(Err.Number) & vbCrLf _
& Err.Description
End If
If (rc = RET_SUCCESS) Then
oCustomTask.Transformations.Add oTransformation
End If
Set oTransformation = Nothing
NQExt.QTrace "<<ciscocm::dodefinecdrcustomtransform>> Exit"
DoDefineCDRCustomTransform = rc
End Function
Function DoDefineCMRCustomTransform(ByRef oCustomTask, ByRef errMsg)
Dim rc
Dim oTransformation
Dim oTransProps
Dim oColumn
On Error Resume Next
NQExt.QTrace "<<ciscocm::dodefinecmrcustomtransform>> Entry"
rc = RET_SUCCESS
Set oTransformation = oCustomTask.Transformations.New("DTSPump.DataPumpTransformCopy")
oTransformation.Name = "CopyColumns"
oTransformation.TransformFlags = 63
oTransformation.ForceSourceBlobsBuffered = 0
oTransformation.ForceBlobsInMemory = False
oTransformation.InMemoryBlobSize = 1048576
oTransformation.TransformPhases = 4
Set oColumn = oTransformation.SourceColumns.New("pkid" , 1)
oColumn.Name = "pkid"
oColumn.Ordinal = 1
oColumn.Flags = 8
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = False
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("globalCallID_callManagerId" , 2)
oColumn.Name = "globalCallID_callManagerId"
oColumn.Ordinal = 2
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("globalCallID_callId" , 3)
oColumn.Name = "globalCallID_callId"
oColumn.Ordinal = 3
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("nodeId" , 4)
oColumn.Name = "nodeId"
oColumn.Ordinal = 4
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("directoryNum" , 5)
oColumn.Name = "directoryNum"
oColumn.Ordinal = 5
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("callIdentifier" , 6)
oColumn.Name = "callIdentifier"
oColumn.Ordinal = 6
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("dateTimeStamp" , 7)
oColumn.Name = "dateTimeStamp"
oColumn.Ordinal = 7
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("numberPacketsSent" , 8)
oColumn.Name = "numberPacketsSent"
oColumn.Ordinal = 8
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("numberPacketsReceived" , 9)
oColumn.Name = "numberPacketsReceived"
oColumn.Ordinal = 9
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("numberPacketsLost" , 10)
oColumn.Name = "numberPacketsLost"
oColumn.Ordinal = 10
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("jitter" , 11)
oColumn.Name = "jitter"
oColumn.Ordinal = 11
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("latency" , 12)
oColumn.Name = "latency"
oColumn.Ordinal = 12
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("directoryNumPartition" , 12)
oColumn.Name = "directoryNumPartition"
oColumn.Ordinal = 12
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("deviceName" , 12)
oColumn.Name = "deviceName"
oColumn.Ordinal = 12
oColumn.Flags = 104
oColumn.Size = 129
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.SourceColumns.New("varVQMetrics" , 15)
oColumn.Name = "varVQMetrics"
oColumn.Ordinal = 15
oColumn.Flags = 104
oColumn.Size = 600
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.SourceColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("pkid" , 1)
oColumn.Name = "pkid"
oColumn.Ordinal = 1
oColumn.Flags = 8
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = False
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("globalCallID_callManagerId" , 2)
oColumn.Name = "globalCallID_callManagerId"
oColumn.Ordinal = 2
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("globalCallID_callId" , 3)
oColumn.Name = "globalCallID_callId"
oColumn.Ordinal = 3
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("nodeId" , 4)
oColumn.Name = "nodeId"
oColumn.Ordinal = 4
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("directoryNum" , 5)
oColumn.Name = "directoryNum"
oColumn.Ordinal = 5
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("callIdentifier" , 6)
oColumn.Name = "callIdentifier"
oColumn.Ordinal = 6
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = oTransformation.DestinationColumns.New("dateTimeStamp" , 7)
oColumn.Name = "dateTimeStamp"
oColumn.Ordinal = 7
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("numberPacketsSent" , 8)
oColumn.Name = "numberPacketsSent"
oColumn.Ordinal = 8
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("numberPacketsReceived" , 9)
oColumn.Name = "numberPacketsReceived"
oColumn.Ordinal = 9
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("numberPacketsLost" , 10)
oColumn.Name = "numberPacketsLost"
oColumn.Ordinal = 10
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("jitter" , 11)
oColumn.Name = "jitter"
oColumn.Ordinal = 11
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("latency" , 12)
oColumn.Name = "latency"
oColumn.Ordinal = 12
oColumn.Flags = 104
oColumn.Size = 0
oColumn.DataType = 3
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("directoryNumPartition" , 13)
oColumn.Name = "directoryNumPartition"
oColumn.Ordinal = 13
oColumn.Flags = 104
oColumn.Size = 50
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("deviceName" , 14)
oColumn.Name = "deviceName"
oColumn.Ordinal = 14
oColumn.Flags = 104
oColumn.Size = 129
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oColumn = oTransformation.DestinationColumns.New("varVQMetrics" , 15)
oColumn.Name = "varVQMetrics"
oColumn.Ordinal = 15
oColumn.Flags = 104
oColumn.Size = 600
oColumn.DataType = 129
oColumn.Precision = 0
oColumn.NumericScale = 0
oColumn.Nullable = True
oTransformation.DestinationColumns.Add oColumn
Set oColumn = Nothing
Set oTransProps = oTransformation.TransformServerProperties
Set oTransProps = Nothing
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = "Error: Creating Custom Transformation. ErrNo=0x"& Hex(Err.Number) & vbCrLf _
& ": " & Err.Description
End If
If (rc = RET_SUCCESS) Then
oCustomTask.Transformations.Add oTransformation
End If
Set oTransformation = Nothing
NQExt.QTrace "<<ciscocm::dodefinecmrcustomtransform>> Exit"
DoDefineCMRCustomTransform = rc
End Function
Public Sub tracePackageError(oPackage, errMsg)
Dim oStep
On Error Resume Next
For Each oStep in oPackage.Steps
If (oStep.ExecutionResult = DTSStepExecResult_Failure) Then
errMsg = errMsg & oPackage.Steps(i).Name & " failed"
End If
Next
Set oStep = Nothing
End Sub
Function ExecutePackage(oPackage, strRecordType, strFileName, errMsg)
Dim rc
Dim i
Dim tempErrMsg
On Error Resume Next
rc = RET_SUCCESS
tempErrMsg = ""
Err.Clear
If (oPackage Is Nothing) Then
rc = RET_ERROR
errMsg = errMsg & strRecordType & " DTS Package not created"
End If
Dim oConection
Set oConection = oPackage.Connections(strRecordType & "Connection 1")
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = errMsg & "Error: ProcessCDRFile." & vbCrLf &_
"ErrNo=0x" & Hex(Err.Number) & ": " & Err.Description
Else
oConection.DataSource = strFileName
oConection.ConnectionProperties("Data Source").value = strFileName
End If
Dim oStep
Set oStep = oPackage.Steps("DTSStep_" & strRecordType & "DataPumpTask")
If (Err.Number <> 0) Then
rc = RET_ERROR
errMsg = errMsg & "Error setting Step ExecutionStatus. " & vbCrLf &_
"ErrNo=0x" & Hex(Err.Number) & ": " & Err.Description
Else
oStep.ExecutionStatus = DTSStepExecStat_Waiting
oStep.DisableStep = False
End If
If (rc = RET_SUCCESS) Then
oPackage.Execute
tracePackageError oPackage, tempErrMsg
End If
If (Err.Number <> 0) Or (StrComp(tempErrMsg, "", vbTextCompare) <> 0) Then
rc = RET_ERROR
tempErrMsg = "Error executing DTS package for file " & strFileName & vbCrLf &_
tempErrMsg & vbCrLf &_
"ErrNo=0x"& Hex(Err.Number) & ": " & vbCrLf & Err.Description
NQExt.QTrace tempErrMsg
End If
ExecutePackage = rc
End Function
What I have tried:
i searched to manually convert but am not finding any article to migrate