0 / 0
Zurück zur englischen Version der Dokumentation

Beispiele für das Extrahieren von Daten aus Microsoft Excel-Dateien (DataStage® )

Letzte Aktualisierung: 12. März 2025
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:
  1. Erstellen Sie einen Auftrag, der eine Excel-Phase und eine Sequential File umfasst.
  2. Doppelklicken Sie auf die Excel-Bühne.
  3. Geben Sie im Fenster Konfiguration den vollständigen Dateipfad der Microsoft Excel-Eingabedatei Employee1.xls an.
  4. Wählen Sie in der Liste Bereichsoption die Option Gesamten Datenbereich angeben, um die Daten in einem bestimmten Bereich zu extrahieren.
  5. Im Bereichsausdruck Feld, geben Sie anSheet1!A16:K28 .
  6. 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.
  7. Deaktivieren Sie das Kontrollkästchen neben den Microsoft Excel-Spalten E (TELEFONNUMMER) und I (GEBURTSDATUM).
  8. Klicken Sie auf Importieren und OK. Wenn Sie auf Importieren klicken, wird der Kartenausschnitt unten rechts im Fenster Konfiguration aktualisiert.
  9. Auf der Seite Ausgabe >Spalte ändern Sie den Typ der EMP_NOSpalte in Ganzzahl und klicken Sie dann auf OK.
  10. 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.
  11. 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.

Tabelle 1. Microsoft Excel-Beispieldatei mit Mitarbeiterdetails
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.

Die Datei OutputOfExample1.txt zeigt Daten für DEPT_B01 mit Ausnahme der Spalten TELEFONNUMMER und GEBURTSDATUM:
"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:
  1. Geben Sie im Fenster Konfiguration den vollständigen Dateipfad der Microsoft Excel-Eingabedatei Employee2.xls an.
  2. Wählen Sie in der Bereichsoption die Option Anfangszeile angeben aus.
  3. 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.
  4. Wählen Sie in der Spaltenüberschrift die Erste Zeile der Datenbereiche.
  5. 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.
  6. Klicken Sie auf Importieren. Die Stufe erzeugt die Spaltenzuordnungen.
  7. 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.
  8. Fügen Sie in der Zuordnungstabelle eine Zeile für die Spalte ADRESSE in der Eingabedatei ein, die einen Hyperlink enthält.
    1. Klicken Einfügen
    2. Wählen Sie in der Option Excel-Element die Option Spaltenadresse aus.
    3. Wählen Sie in der Zelle der Option Import in der neuen Zeile die Hyperlink-Adresse.
    4. Geben Sie den DataStage-Spaltennamen EMAIL_ADDRESS für die neue Zeile an. Klicken Sie dann auf OK.
  9. Klicken Sie auf die Registerkarte Output > Spalte um den Datentyp oder andere Attribute zu ändern.
  10. Ändern Sie den Typ der Spalte EMP_NO in Ganze Zahl. Klicken Sie auf OK.
  11. 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.
  12. 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:

Tabelle 2. Informationen zu Mitarbeitern in DEPT_A00
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
Tabelle 3. Details zu Mitarbeitern in DEPT_B01
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:
  1. Erstellen Sie einen Auftrag, der eine Excel-Phase und zwei Sequential File umfasst. Sie können Ihre Links in Abteilungen und Mitarbeiter umbenennen.
  2. Doppelklicken Sie auf die Excel-Bühne. Geben Sie im Fenster Konfiguration den vollständigen Dateipfad der Microsoft Excel-Eingabedatei Employee3.xls an.
  3. 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.
    1. Von dem Verknüpfung Wählen Sie im Listenfeld Bereiche.
    2. Von dem Bereichsoption Liste, wählen Sie Geben Sie den gesamten Bereich an.
    3. Geben Sie im Feld Bereichsausdruck Folgendes an: Abteilungen!A2:C6 .
    4. Wählen Sie in der Spaltenüberschrift die Erste Zeile der Datenbereiche.
    5. Klicken Sie auf Importieren und anschließend auf OK.
  4. Geben Sie die aus dem Mitarbeiter-Arbeitsblatt zu extrahierenden Daten an und führen Sie die folgenden Unterschritte aus, um die Spaltenzuordnungen zu generieren.
    1. Wählen Sie im Listenfeld Verknüpfung Mitarbeiter aus.
    2. Von dem Bereichsoption Liste, Geben Sie den gesamten Bereich an.
    3. Geben Sie im Feld Bereichsausdruck Folgendes an: Mitarbeiter!A2:L34.
    4. Wählen Sie in der Spaltenüberschrift, die Option Erste Zeile von Datenbereichen aus.
    5. Klicken Sie auf Importieren und anschließend auf OK.
  5. Wählen Sie auf der Seite "Ausgabe" den Link Mitarbeiter als Ausgabenamen aus.
  6. Ändern Sie auf der Seite Spalten den Datentyp der Spalte EMP_NO in eine ganze Zahl, und klicken Sie dann auf OK.
  7. 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 .
  8. 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
  9. 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.