Beispiele für das Extrahieren von Daten aus Microsoft Excel-Dateien (DataStage® )
Sie können Beispieljobs erstellen, die Daten aus Microsoft Excel-Dateien extrahieren. In diesem Beispiel wird die Stage Sequential File als Ausgabestage verwendet. Sie können jede andere Ausgabestage zum Erstellen der Ausgabe verwenden.
Extrahieren Sie die Datei IS_install\Clients\Samples\Connectors\UnstructuredData_Samples.zip, um die Dateien für die Beispiele abzurufen.
Beispiel 1: Extrahieren von Daten aus einem Bereich in einer Microsoft Excel-Datei
Erstellen Sie einen Auftrag, der die Excel-Stufe zum Abrufen von Daten aus einem Bereich in einer Microsoft Excel-Tabelle verwendet.
In diesem Beispiel wird die Microsoft Excel-Beispieldatei Employee1.xls verwendet, die Angaben zu den in einer Organisation tätigen Mitarbeitern enthält. Diese Beispieldatei besteht aus drei Tabellenblättern: Sheet1, Sheet2, und Sheet3.Sheet1 enthält Informationen über die Mitarbeiter in jeder Abteilung des Unternehmens. Sheet2 und Sheet3 sind leer. In diesem Beispiel extrahieren Sie Geschäftsinformationen nur zu den Mitarbeitern, die für die Abteilung B01 arbeiten.
- So extrahieren Sie Daten aus einem Bereich in einer Excel-Datei:
- Erstellen Sie einen Auftrag, der eine Excel-Phase und eine Sequential File umfasst.
- Doppelklicken Sie auf die Excel-Bühne.
- Geben Sie im Fenster Konfiguration den vollständigen Dateipfad der Microsoft Excel-Eingabedatei Employee1.xls an.
- Wählen Sie in der Liste Bereichsoption die Option Gesamten Datenbereich angeben, um die Daten in einem bestimmten Bereich zu extrahieren.
- Im Bereichsausdruck Feld, geben Sie anSheet1!A16:K28 .
- Wählen Sie aus dem Feld Spaltenkopf die Erste Zeile der Datenbereiche. Wenn die erste Zeile der Datenbereiche ausgewählt ist, wird die erste Zeile als Kopfzeile betrachtet, und die Excel-Stufe beginnt mit der Extraktion ab der zweiten Zeile.
- Deaktivieren Sie das Kontrollkästchen neben den Microsoft Excel-Spalten E (TELEFONNUMMER) und I (GEBURTSDATUM).
- Klicken Sie auf Importieren und OK. Wenn Sie auf Importieren klicken, wird der Kartenausschnitt unten rechts im Fenster Konfiguration aktualisiert.
- Auf der Seite EMP_NOSpalte in Ganzzahl und klicken Sie dann auf OK. ändern Sie den Typ der
- Doppelklicken Sie auf die Stage Sequential File. Auf der Eigenschaften Geben Sie auf der Seite den Pfad an, in dem die Ausgabedatei erstellt werden soll, gefolgt vom DateinamenOutputOfExample1.txt und klicken Sie auf OK.
- Speichern des Jobs. Jetzt können Sie den Auftrag kompilieren und ausführen.
Die folgende Tabelle zeigt die Informationen in einer Microsoft Excel-Eingabedatei, die die Mitarbeiterinformationen für verschiedene Abteilungen enthält.
MIT-NR. | VORNAME | MITTLERE INITIALISIERUNG | NACHNAME | TELEFONNR. | Einstellungsdatum | JOB | SEX | Geburtsdatum |
---|---|---|---|---|---|---|---|---|
Mitarbeiter in DEPT_A00 | ||||||||
10 | Christine | I | HAAS | 3978 | 1.1.1995 | PRES | F | 24.8.1963 |
20 | Michael | L | THOMSON | 3476 | 10.10.2003 | MGRPNR | M | 2.2.1976 |
30 Stunden | SALLY | A | KWAN | 4738 | 5.4.2005 | MGRPNR | F | 11.5.1971 |
50 | John | B | GEYER | 6789 | 17.8.1979 | MGRPNR | M | 15.9.1955 |
Mitarbeiter in DEPT_B01 | ||||||||
60.000 | Irving | F | STERN | 6423 | 14.9.2003 | MGRPNR | M | 7.7.1975 |
70 | EVA | D | Pulaski | 7831 | 30.9.2003 | MGRPNR | F | 26.5.2003 |
90 | EILEEN | W | Henderson | 5498 | 15.8.2000 | MGRPNR | F | 15.5.1971 |
100 | THEODORE | Q | SPENSER | 742 | 19.6.2000 | MGRPNR | M | 18.12.1980 |
110 | VINCENZO | G | LUCCHESSI | 3490 | 16.5.1988 | SALESREP | M | 5.11.1958 |
120 | SEAN | O'CONNELL | 2167 | 5.12.1993 | Sachbearbeiter | M | 18.10.1972 | |
130 | DELORES | M | QUINTANEN | 4578 | 28.7.2001 | ANALYTIKER | F | 15.9.1955 |
140 | Heather | A | NICHOLLS | 1793 | 12/15/2006 | ANALYTIKER | F | 19.1.1976 |
150 | Bruce | ADAMSON | 4510 | 12.2.2002 | DESIGNER | M | 17.5.1972 | |
160 | ELISABETH | R | PIANKA | 3782 | 11.10.2006 | DESIGNER | F | 12.4.1980 |
1770 | MASATOSHI | J | Yoshimura | 2890 | 15.9.1999 | DESIGNER | M | 5.1.1981 |
180 | MARILYN | S | PFLEIDERER | 1682 | 7.7.2003 | DESIGNER | F | 21.2.1978 |
Nachdem der Job ausgeführt wurde, können Sie dasOutputOfExample1.txt Datei, um das Ergebnis anzuzeigen.
"60","IRVING","F","STERN","2003-09-14","MANAGER ","M","72250","500"
"70","EVA","D","PULASKI","2005-09-30","MANAGER ","F","96170","700"
"90","EILEEN","W","HENDERSON","2000-08-15","MANAGER ","F","89750","600"
"100","THEODORE","Q","SPENSER","2000-06-19","MANAGER ","M","86150","500"
"110","VINCENZO","G","LUCCHESSI","1988-05-16","SALESREP","M","66500","900"
"120","SEAN"," ","O'CONNELL","1993-12-05","CLERK ","M","49250","600"
"130","DELORES","M","QUINTANA","2001-07-28","ANALYST ","F","73800","500"
"140","HEATHER","A","NICHOLLS","2006-12-15","ANALYST ","F","68420","600"
"150","BRUCE"," ","ADAMSON","2002-02-12","DESIGNER","M","55280","500"
"160","ELIZABETH","R","PIANKA","2006-10-11","DESIGNER","F","62250","400"
"170","MASATOSHI","J","YOSHIMURA","1999-09-15","DESIGNER","M","44680","500"
"180","MARILYN","S","SCOUTTEN","2003-07-07","DESIGNER","F","51340","500"
Beispiel 2: Daten aus mehreren Microsoft Excel-Arbeitsblättern extrahieren
Dieses Beispiel verwendet die Microsoft Excel-Beispieldatei Employee2.xls. Diese Beispieldatei enthält die folgenden Arbeitsblätter: DEPT A00, DEPT B01, DEPT C01, und DEPT D01. Jedes Blatt enthält Informationen zu den Mitarbeitern in der Abteilung.
Die Datenstruktur jedes Arbeitsblatts ist ähnlich. Jedes Arbeitsblatt enthält die Spalten MIT-NR., VORNAME, MIT.INIT, NACHNAME, TELEFONNUMMER, EINSTELLUNGSDATUM, JOB und ADRESSE und die dritte Zeile ist die Kopfzeile. Aber jedes Blatt hat eine andere Anzahl von Zeilen.
- So extrahieren Sie Daten aus mehreren Dateien:
- Geben Sie im Fenster Konfiguration den vollständigen Dateipfad der Microsoft Excel-Eingabedatei Employee2.xls an.
- Wählen Sie in der Bereichsoption die Option Anfangszeile angeben aus.
- Geben Sie im Feld Bereichsausdruck A3:H3an. Wenn die Stufe mit der Option "Erste Zeile angeben" ausgeführt wird und kein bestimmter Blattname im Bereichsausdruck angegeben ist, findet der Auftrag die letzte Zeile und extrahiert Zeilen bis zur letzten Zeile zur Laufzeit.
- Wählen Sie in der Spaltenüberschrift die Erste Zeile der Datenbereiche.
- Auf der Eigentum Aktivieren Sie auf der Registerkarte das Kontrollkästchen neben der Eigenschaft, um den Eigenschaftswert zu extrahieren. Wählen Sie in diesem Beispiel die Eigenschaft Blattname aus.
- Klicken Sie auf Importieren. Die Stufe erzeugt die Spaltenzuordnungen.
- Um die SheetNname Spalte die erste Spalte in der Liste, wählen Sie die SheetName und klicken Sie auf Hoch bis zum SheetName Spalte ist die erste Spalte in der Liste.
- Fügen Sie in der Zuordnungstabelle eine Zeile für die Spalte ADRESSE in der Eingabedatei ein, die einen Hyperlink enthält.
- Klicken Einfügen
- Wählen Sie in der Option Excel-Element die Option Spaltenadresse aus.
- Wählen Sie in der Zelle der Option Import in der neuen Zeile die Hyperlink-Adresse.
- Geben Sie den DataStage-Spaltennamen EMAIL_ADDRESS für die neue Zeile an. Klicken Sie dann auf OK.
- Klicken Sie auf die Registerkarte um den Datentyp oder andere Attribute zu ändern.
- Ändern Sie den Typ der Spalte EMP_NO in Ganze Zahl. Klicken Sie auf OK.
- Geben Sie auf der Seite Eigenschaften den Pfad an, in dem die Ausgabedatei erstellt werden soll, gefolgt vom Dateinamen OutputOfExample2.txt. Klicken Sie auf OK.
- Speichern des Jobs. Jetzt können Sie den Auftrag kompilieren und ausführen.
Ein Beispiel für die Eingabe von Microsoft Excel-Dateien, die die Mitarbeiterinformationen für jede Abteilung in den verschiedenen Blättern enthalten. Die Auftragsextrakte der Mitarbeiterdaten aus allen Blättern werden in Form der folgenden Tabellen angezeigt:
MIT-NR. | VORNAME | MITTLERE INITIALISIERUNG | NACHNAME | TELEFONNR. | Einstellungsdatum | JOB | SEX | Geburtsdatum |
---|---|---|---|---|---|---|---|---|
10 | Christine | I | HAAS | 3978 | 1.1.1995 | PRES | F | 24.8.1963 |
20 | Michael | L | THOMSON | 3476 | 10.10.2003 | MGRPNR | M | 2.2.1976 |
30 Stunden | SALLY | A | KWAN | 4738 | 5.4.2005 | MGRPNR | F | 11.5.1971 |
50 | John | B | GEYER | 6789 | 17.8.1979 | MGRPNR | M | 15.9.1955 |
MIT-NR. | VORNAME | MIDI NIT | NACHNAME | TELEFONNR. | Einstellungsdatum | JOB | SEX | Geburtsdatum |
---|---|---|---|---|---|---|---|---|
60.000 | Irving | F | STERN | 6423 | 14.9.2003 | MGRPNR | M | 7.7.1975 |
70 | EVA | D | Pulaski | 7831 | 30.9.2003 | MGRPNR | F | 26.5.2003 |
90 | EILEEN | W | Henderson | 5498 | 15.8.2000 | MGRPNR | F | 15.5.1971 |
100 | THEODORE | Q | SPENSER | 742 | 19.6.2000 | MGRPNR | M | 18.12.1980 |
110 | VINCENZO | G | LUCCHESSI | 3490 | 16.5.1988 | SALESREP | M | 5.11.1958 |
120 | SEAN | O'CONNELL | 2167 | 5.12.1993 | Sachbearbeiter | M | 18.10.1972 | |
130 | DELORES | M | QUINTANEN | 4578 | 28.7.2001 | ANALYTIKER | F | 15.9.1955 |
140 | Heather | A | NICHOLLS | 1793 | 12/15/2006 | ANALYTIKER | F | 19.1.1976 |
150 | Bruce | ADAMSON | 4510 | 12.2.2002 | DESIGNER | M | 17.5.1972 | |
160 | ELISABETH | R | PIANKA | 3782 | 11.10.2006 | DESIGNER | F | 12.4.1980 |
1770 | MASATOSHI | J | Yoshimura | 2890 | 15.9.1999 | DESIGNER | M | 5.1.1981 |
180 | MARILYN | S | PFLEIDERER | 1682 | 7.7.2003 | DESIGNER | F | 21.2.1978 |
Nachdem der Auftrag ausgeführt wurde, können Sie die Datei OutputOfExample2.txt öffnen, die das folgende Ergebnis enthält.
"DEPT A00","10","CHRISTINE","I","HAAS","3978","1995-01-01","PRES ","CHRISTINE HAAS","mailto:CHRISTINE%[email protected]"
"DEPT A00","20","MICHAEL","L","THOMPSON","3476","2003-10-10","MANAGER ","MICHAEL THOMPSON","mailto:MICHAEL%[email protected]"
"DEPT A00","30","SALLY","A","KWAN","4738","2005-04-05","MANAGER ","SALLY KWAN","mailto:SALLY%[email protected]"
"DEPT A00","50","JOHN","B","GEYER","6789","1979-08-17","MANAGER ","JOHN GEYER","mailto:JOHN%[email protected]"
"DEPT B01","60","IRVING","F","STERN","6423","2003-09-14","MANAGER ","IRVING STERN","mailto:IRVING%[email protected]"
"DEPT B01","70","EVA","D","PULASKI","7831","2005-09-30","MANAGER ","EVA PULASKI","mailto:EVA%[email protected]"
"DEPT B01","90","EILEEN","W","HENDERSON","5498","2000-08-15","MANAGER ","EILEEN HENDERSON","mailto:EILEEN%[email protected]"
"DEPT B01","100","THEODORE","Q","SPENSER","972","2000-06-19","MANAGER ","THEODORE SPENSER","mailto:THEODORE%[email protected]"
"DEPT B01","110","VINCENZO","G","LUCCHESSI","3490","1988-05-16","SALESREP","VINCENZO LUCCHESSI","mailto:VINCENZO%[email protected]"
"DEPT B01","120","SEAN"," ","O'CONNELL","2167","1993-12-05","CLERK ","SEAN O'CONNELL","mailto:SEAN%20O'[email protected]"
"DEPT B01","130","DELORES","M","QUINTANA","4578","2001-07-28","ANALYST ","DELORES QUINTANA","mailto:DELORES%[email protected]"
"DEPT B01","140","HEATHER","A","NICHOLLS","1793","2006-12-15","ANALYST ","HEATHER NICHOLLS","mailto:HEATHER%[email protected]"
"DEPT B01","150","BRUCE"," ","ADAMSON","4510","2002-02-12","DESIGNER","BRUCE ADAMSON","mailto:BRUCE%[email protected]"
"DEPT B01","160","ELIZABETH","R","PIANKA","3782","2006-10-11","DESIGNER","ELIZABETH PIANKA","mailto:ELIZABETH%[email protected]"
"DEPT B01","170","MASATOSHI","J","YOSHIMURA","2890","1999-09-15","DESIGNER","MASATOSHI YOSHIMURA","mailto:MASATOSHI%[email protected]"
"DEPT B01","180","MARILYN","S","SCOUTTEN","1682","2003-07-07","DESIGNER","MARILYN SCOUTTEN","mailto:MARILYN%[email protected]"
"DEPT C01","190","JAMES","H","WALKER","2986","2004-07-26","DESIGNER","JAMES WALKER","mailto:JAMES%[email protected]"
"DEPT C01","200","DAVID"," ","BROWN","4501","2002-03-03","DESIGNER","DAVID BROWN","mailto:DAVID%[email protected]"
"DEPT C01","210","WILLIAM","T","JONES","942","1998-04-11","DESIGNER","WILLIAM JONES","mailto:WILLIAM%[email protected]"
"DEPT C01","220","JENNIFER","K","LUTZ","672","1998-08-29","DESIGNER","JENNIFER LUTZ","mailto:JENNIFER%[email protected]"
"DEPT C01","230","JAMES","J","JEFFERSON","2094","1996-11-21","CLERK ","JAMES JEFFERSON","mailto:JAMES%[email protected]"
"DEPT C01","240","SALVATORE","M","MARINO","3780","2004-12-05","CLERK ","SALVATORE MARINO","mailto:SALVATORE%[email protected]"
"DEPT C01","250","DANIEL","S","SMITH","961","1999-10-30","CLERK ","DANIEL SMITH","mailto:DANIEL%[email protected]"
"DEPT C01","260","SYBIL","P","JOHNSON","8953","2005-09-11","CLERK ","SYBIL JOHNSON","mailto:SYBIL%[email protected]"
"DEPT D01","270","MARIA","L","PEREZ","9001","2006-09-30","CLERK ","MARIA PEREZ","mailto:MARIA%[email protected]"
"DEPT D01","280","ETHEL","R","SCHNEIDER","8997","1997-03-24","OPERATOR","ETHEL SCHNEIDER","mailto:ETHEL%[email protected]"
"DEPT D01","290","JOHN","R","PARKER","4502","2006-05-30","OPERATOR","JOHN PARKER","mailto:JOHN%[email protected]"
"DEPT D01","300","PHILIP","X","SMITH","2095","2002-06-19","OPERATOR","PHILIP SMITH","mailto:PHILIP%[email protected]"
"DEPT D01","310","MAUDE","F","SETRIGHT","3332","1994-09-12","OPERATOR","MAUDE SETRIGHT","mailto:MAUDE%[email protected]"
"DEPT D01","320","RAMLAL","V","MEHTA","9990","1995-07-07","FIELDREP","RAMLAL MEHTA","mailto:RAMLAL%[email protected]"
"DEPT D01","330","WING"," ","LEE","2103","2006-02-23","FIELDREP","WING LEE","mailto:WING%[email protected]"
"DEPT D01","340","JASON","R","GOUNOT","5698","1977-05-05","FIELDREP","JASON GOUNOT","mailto:JASON%[email protected]"
Beispiel 3: Extrahieren von Daten aus mehreren Bereichen mit unterschiedlichen Datenstrukturen in einer Microsoft Excel-Datei
Dieses Beispiel verwendet die Microsoft Excel-Beispieldatei Employee3.xls. Diese Beispieldatei enthält zwei Arbeitsblätter, Departments und Employees, die unterschiedliche Datenstrukturen haben.
In diesem Beispiel verfügt die Excel-Stage über zwei Ausgabelinks. Sie extrahieren Daten aus dem Arbeitsblatt Departments in den ersten Link und aus dem Arbeitsblatt Employees in den zweiten Link.
- So extrahieren Sie verschiedene Datenstrukturen:
- Erstellen Sie einen Auftrag, der eine Excel-Phase und zwei Sequential File umfasst. Sie können Ihre Links in Abteilungen und Mitarbeiter umbenennen.
- Doppelklicken Sie auf die Excel-Bühne. Geben Sie im Fenster Konfiguration den vollständigen Dateipfad der Microsoft Excel-Eingabedatei Employee3.xls an.
- Geben Sie die Daten an, die aus dem Arbeitsblatt Abteilungen extrahiert werden sollen, und führen Sie die folgenden Teilschritte aus, um die Spaltenzuordnungen zu erstellen.
- Von dem Verknüpfung Wählen Sie im Listenfeld Bereiche.
- Von dem Bereichsoption Liste, wählen Sie Geben Sie den gesamten Bereich an.
- Geben Sie im Feld Bereichsausdruck Folgendes an: Abteilungen!A2:C6 .
- Wählen Sie in der Spaltenüberschrift die Erste Zeile der Datenbereiche.
- Klicken Sie auf Importieren und anschließend auf OK.
- Geben Sie die aus dem Mitarbeiter-Arbeitsblatt zu extrahierenden Daten an und führen Sie die folgenden Unterschritte aus, um die Spaltenzuordnungen zu generieren.
- Wählen Sie im Listenfeld Verknüpfung Mitarbeiter aus.
- Von dem Bereichsoption Liste, Geben Sie den gesamten Bereich an.
- Geben Sie im Feld Bereichsausdruck Folgendes an: Mitarbeiter!A2:L34.
- Wählen Sie in der Spaltenüberschrift, die Option Erste Zeile von Datenbereichen aus.
- Klicken Sie auf Importieren und anschließend auf OK.
- Wählen Sie auf der Seite "Ausgabe" den Link Mitarbeiter als Ausgabenamen aus.
- Ändern Sie auf der Seite Spalten den Datentyp der Spalte EMP_NO in eine ganze Zahl, und klicken Sie dann auf OK.
- Doppelklicken Sie auf die erste Sequential File BühneOutput_1 und geben Sie den Pfad zur Erstellung der Ausgabedatei an, gefolgt vom DateinamenOutputOfExample3_1.txt .
- Doppelklicken Sie auf die zweite Sequential File Stufe Output_2, und geben Sie den Pfad zur Erstellung der Ausgabedatei an, gefolgt vom Dateinamen OutputOfExample3_2.txt
- Speichern des Jobs. Jetzt können Sie den Auftrag kompilieren und ausführen.
Eine beispielhafte Microsoft Excel-Eingabedatei Employee3.xls enthält Abteilungsinformationen im Blatt Abteilungen und Mitarbeiterinformationen im Blatt Mitarbeiter. Der Job extrahiert Abteilungsdaten in die Datei OutputOfExample3_1.txt und Mitarbeiterdaten in OutputOfExample3_2.txt.
Öffnen Sie nach der Ausführung des Jobs die Datei OutputOfExample3_1.txt und die Datei OutputOfExample3_2.txt. Die Datei OutputOfExample3_1.txt muss mit dem Arbeitsblatt Abteilungen und die Datei OutputOfExample3_2.txt mit dem Arbeitsblatt Mitarbeiter aus der Datei Employee.xls übereinstimmen.