Я новичок в SSIS, поэтому любая помощь, предложения, советы и рекомендации будут высоко оценены. Спасибо.
СЦЕНАРИЙ
Я пытаюсь преобразовать пакет DTS в пакет служб SSIS. Мой пакет содержит задачу «Поток данных», которая перекачивает данные из соединения OLE DB в место назначения плоского файла.
ПРОБЛЕМА
Данные в плоском файле должны быть расположены определенным образом (например, интервал). Так как мне это сделать? Есть ли инструмент преобразования данных, который поможет мне достичь этого? Если это так, как это будет сделано?
КОД DTS (чтобы представить вещи в перспективе)
************* ***************** *********
Скрипт Visual Basic ActiveX
«*****************************************
DO WHILE NOT rsGetActivations.eof OR rsGetActivations.BOF
sLineItem = Space(10)
sLineItem = sLineItem & Space(10)
sLineItem = sLineItem & Space(10)
sLineItem = sLineItem & Replace(Space(8)," ","0")
sLineItem = sLineItem & Space(1)
sLineItem = sLineItem & Replace(Space(8)," ","0")
sLineItem = sLineItem & Replace(Space(3)," ","0")
sLineItem = sLineItem & Space(2)
sLineItem = sLineItem & rsGetActivations("Data_Date") & Space( 8 - Len( rsGetActivations("Data_Date") ) )
sLineItem = sLineItem & rsGetActivations("ID_Number") & Space( 16 - Len( rsGetActivations("ID_Number") ) )
sLineItem = sLineItem & Space(4)
sLineItem = sLineItem & rsGetActivations("Main_Name") & Space( 25 - Len( rsGetActivations("Main_Name") ) )
sLineItem = sLineItem & rsGetActivations("First_Name") & Space( 15 - Len( rsGetActivations("First_Name") ) )
sLineItem = sLineItem & rsGetActivations("Middle_Name") & Space( 15 - Len( rsGetActivations("Middle_Name") ) )
sLineItem = sLineItem & rsGetActivations("Third_Name") & Space( 15 - Len( rsGetActivations("Third_Name") ) )
sLineItem = sLineItem & rsGetActivations("DOB") & Space( 8 - Len( rsGetActivations("DOB") ) )
sLineItem = sLineItem & rsGetActivations("ID_Number") & Space( 13 - Len( rsGetActivations("ID_Number") ) )
sLineItem = sLineItem & rsGetActivations("Non_RSA_ID") & Space( 16 - Len( rsGetActivations("Non_RSA_ID") ) )
sLineItem = sLineItem & Space(15)
sLineItem = sLineItem & Space(15)
sLineItem = sLineItem & Space(15)
sLineItem = sLineItem & Space(15)
sLineItem = sLineItem & rsGetActivations("Gender") & Space( 1 - Len( rsGetActivations("Gender") ) )
sLineItem = sLineItem & Space(3)
sLineItem = sLineItem & Space(1)
sLineItem = sLineItem & Space(15)
sLineItem = sLineItem & Space(15)
sLineItem = sLineItem & Space(40)
sLineItem = sLineItem & "0"
sLineItem = sLineItem & rsGetActivations("Res_Line1") & Space( 30 - Len( rsGetActivations("Res_Line1") ) )
sLineItem = sLineItem & rsGetActivations("Res_Line2") & Space( 30 - Len( rsGetActivations("Res_Line2") ) )
sLineItem = sLineItem & rsGetActivations("Res_Line3") & Space( 30 - Len( rsGetActivations("Res_Line3") ) )
sLineItem = sLineItem & rsGetActivations("Res_Line4") & Space( 30 - Len( rsGetActivations("Res_Line4") ) )
sLineItem = sLineItem & rsGetActivations("Res_Postal") & Space( 6 - Len( rsGetActivations("Res_Postal") ) )
sLineItem = sLineItem & Space(1)
sLineItem = sLineItem & "00"
sLineItem = sLineItem & Space(1)
sLineItem = sLineItem & rsGetActivations("Post_Line1") & Space( 30 - Len( rsGetActivations("Post_Line1") ) )
sLineItem = sLineItem & rsGetActivations("Post_Line2") & Space( 30 - Len( rsGetActivations("Post_Line2") ) )
sLineItem = sLineItem & rsGetActivations("Post_Line3") & Space( 30 - Len( rsGetActivations("Post_Line3") ) )
sLineItem = sLineItem & rsGetActivations("Post_Line4") & Space( 30 - Len( rsGetActivations("Post_Line4") ) )
sLineItem = sLineItem & rsGetActivations("Post_Postal") & Space( 6 - Len( rsGetActivations("Post_Postal") ) )
sLineItem = sLineItem & Space(1)
sLineItem = sLineItem & "00"
sLineItem = sLineItem & rsGetActivations("Bank_Name") & Space( 20 - Len( rsGetActivations("Bank_Name") ) )
sLineItem = sLineItem & rsGetActivations("Bank_Branch") & Space( 20 - Len( rsGetActivations("Bank_Branch") ) )
sLineItem = sLineItem & Space( 6 - Len( rsGetActivations("Branch_No") ) ) & rsGetActivations("Branch_No")
sLineItem = sLineItem & Space( 15 - Len( rsGetActivations("Account_No") ) ) & rsGetActivations("Account_No")
sLineItem = sLineItem & rsGetActivations("Home_Code") & Space( 11 - Len( rsGetActivations("Home_Code") ) )
sLineItem = sLineItem & rsGetActivations("Home_Tel") & Space( 15 - Len( rsGetActivations("Home_Tel") ) )
sLineItem = sLineItem & rsGetActivations("Work_Code") & Space( 11 - Len( rsGetActivations("Work_Code") ) )
sLineItem = sLineItem & rsGetActivations("Work_Tel") & Space( 15 - Len( rsGetActivations("Work_Tel") ) )
sLineItem = sLineItem & rsGetActivations("Cell_No") & Space( 10 - Len( rsGetActivations("Cell_No") ) )
sLineItem = sLineItem & Space(35)
sLineItem = sLineItem & rsGetActivations("Occupation") & Space( 22 - Len( rsGetActivations("Occupation") ) )
sLineItem = sLineItem & rsGetActivations("Emp_Name") & Space( 35 - Len( rsGetActivations("Emp_Name") ) )
sLineItem = sLineItem & Space(2)
sLineItem = sLineItem & Space(6)
fExportFile.Write( sLineItem & sCRLF )
rsGetActivations.MoveNext
LOOP'//end WHILE NOT rsGetActivations.eof OR rsGetActivations.BOF