Ich arbeite an SSIS und ich habe die komplexe unstrukturierte TEXT-Datei, ich muss die Textdatei durch Erstellen von SSIS-Paketen analysieren und die erforderlichen Spalten erhalten Daten in der DataBase.Was ist der beste Weg, um die Textdatei zu analysieren und wie kann ich das Skript schreiben, um jede Zeile in dieser Textdatei zu lesen. Ich war auch verwirrt, ob ich jede Zeile der TEXT-Datei lesen kann, ohne ein Skript zu schreiben?Unstrukturierte Textdatei in SSIS analysieren und jede Zeile lesen, um die erforderlichen Daten zu erhalten
Erforderliche Spalten aus der Textdatei Daten DEVICEID, Datenwert und dataunits:
Hier ist der Text-Datei ist:
12/02/2015 09:47:44:745 SecureHARTPort version: 1.1.12.0.
12/02/2015 09:47:44:745 Connecting and initialing Session to
67.40.65.181 Port:5094 Tcp
12/02/2015 09:47:44:745 Tx: Message Header: Ver: 1, MsgType: 0, MsgId: 0
Status: 0x00
TranId: 1, Data ByteCount: 5
Data: 01 00 09 27 C0
12/02/2015 09:47:44:761 Rx: Message Header: Ver: 1, MsgType: 1, MsgId: 0
Status: 0x00
TranId: 1, Data ByteCount: 5
Data: 01 00 09 27 C0
12/02/2015 09:47:44:855 Tx: Message Header: Ver: 1, MsgType: 0, MsgId: 3
Status: 0x00
TranId: 2, Data ByteCount: 5
Data: 02 80 00 00 82
12/02/2015 09:47:44:855 Rx: Message Header: Ver: 1, MsgType: 1, MsgId: 3
Status: 0x00
TranId: 2, Data ByteCount: 29
Data: 06 80 00 18 00 50 FE 26 4E 05 07 05 02 0E 0C 0B 6A 64 05 04 00 01 50
00 26 00 26 84 8E
Rx Cmd=0, Rsp code=0x00, Device Status=0x50
Expansion Code=254
Expanded Device Type=9806
# Request Preambles=5
Universal Comand Revision Level=7
Transmitter HART Revision Level=5
Software Revision=2
Hardware Revision Level/Physical Signaling Code=14
Flags=0C
Device ID=748132
Minimum # Response Preambles=5
Max # of device variables=4
Configuration Change Counter=1
Extended Field Device Status=50
Manufacturer's ID=38
Private Label Distributor=38
Device Profile=132
12/02/2015 09:47:44:855 Tx: Message Header: Ver: 1, MsgType: 0, MsgId: 3
Status: 0x00
TranId: 3, Data ByteCount: 9
Data: 82 A6 4E 0B 6A 64 14 00 7B
12/02/2015 09:47:44:870 Rx: Message Header: Ver: 1, MsgType: 1, MsgId: 3
Status: 0x00
TranId: 3, Data ByteCount: 43
Data: 86 A6 4E 0B 6A 64 14 22 00 50 77 69 68 61 72 74 67 77 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0C
Rx Cmd=20, Rsp code=0x00, Device Status=0x50
Long Tag=wihartgw
12/02/2015 09:47:44:870 Tx: Message Header: Ver: 1, MsgType: 0, MsgId: 3
Status: 0x00
TranId: 4, Data ByteCount: 9
Data: 82 A6 4E 0B 6A 64 4A 00 25
12/02/2015 09:47:44:886 Rx: Message Header: Ver: 1, MsgType: 1, MsgId: 3
Status: 0x00
TranId: 4, Data ByteCount: 19
Data: 86 A6 4E 0B 6A 64 4A 0A 00 50 01 01 65 00 05 02 01 03 1B
Rx Cmd=74, Rsp code=0x00, Device Status=0x50
Max Num IO Cards=1
Max Num Channels per IO Card=1
Max Num Sub-Devices per Channel=101
Num Devices Detected=5
Max Num DR Supported=2
Master Mode for Comm=1
Retry Count for Sub-Device=3
Rx Cmd=9, Rsp code=0x00, Device Status=0x50
Extended Device Status=0
Slot0 Var Code=246
Slot0 Var Classification=0
Slot0 Var Units=251
Slot0 Var Value=4
Slot0 Var Status=C0
Slot1 Var Code=116
Slot1 Var Classification=209
Slot1 Var Units=70
Slot1 Var Value=0
Danke, aber ich brauche die Hilfe, wie das Skript zu schreiben, in die Skriptkomponente, um jede Zeile zu lesen, weil ich den harten Code nicht kenne. – a5656
@akhil Eine synchrone Skriptkomponente hat eine Methode namens InputBuffer0_ProcessInputRow, die in jeder Zeile aufgerufen wird. [Lesen Sie mehr in diesem MSDN-Artikel] (https://docs.microsoft.com/en-us/sql/integration-services/extending-packages-scripting-data-flow-script-component-types/creating-a-synchronous -transformation-with-the-script-Komponente), aber Sie müssen dieses Skript in C# oder Vb.net schreiben – Hadi