Show TOC

DataSource für Datei-Quellsystem anlegenLocate this document in the navigation structure

Verwendung

Um Daten aus einem Datei-Quellsystem übertragen zu können, müssen zuvor die Metadaten, d.h. die Datei- und Feldinformationen im BW in Form einer DataSource vorhanden sein.

Voraussetzungen

Bezüglich CSV-Dateien beachten Sie Folgendes:

  • Felder, die in einer CSV-Datei nicht gefüllt sind, werden im Fall von Characterfeldern mit einem Leerzeichen gefüllt, im Fall von numerischen Feldern mit "0".

  • Wenn der Gebrauch von Trennzeichen in einer CSV-Datei inkonsistent ist, wird das falsche, d.h. nicht in der DataSource festgelegte Trennzeichen als Zeichen gelesen und beide Felder werden zu einem zusammengefasst und möglicherweise abgeschnitten. Die nachfolgenden Felder befinden sich dann nicht mehr in der korrekten Reihenfolge.

  • Ein Zeilenumbruch kann nicht als Bestandteil eines Wertes verwendet werden - auch dann nicht, wenn der Wert mit einem Escape-Zeichen eingeschossen ist.

Bezüglich CSV-Dateien sowie ASCII Dateien beachten Sie Folgendes:

  • Führende Nullen sind in Abhängigkeit von der verwendeten Konvertierungsroutine anzugeben bzw. nicht anzugeben. Siehe dazu Konvertierungsroutinen im BW-System.

  • Zur Datumsangabe verwenden Sie i.d.R. das Format 'JJJJMMTT' ohne interne Trennzeichen. In Abhängigkeit von der verwendeten Konvertierungsroutine können Sie auch andere Formate verwenden.

Hinweise zum Laden

  • Beim Laden von externen Daten haben Sie die Möglichkeit, die Daten von einer beliebigen Workstation in das BW zu laden. Das Laden von einer Workstation ist jedoch nur im Dialog möglich. Aus Performance-Gesichtspunkten sollten Sie die Daten auf einem Applikationsserver ablegen und von dort in das BW laden. Auf diese Weise können Sie die Daten auch im Hintergrund laden und somit auch in Prozessketten verwenden.

  • Falls Sie eine große Menge von Bewegungsdaten von einer flachen Datei ins BW laden wollen, und Sie die Möglichkeit haben, den Dateityp der flachen Datei zu bestimmen, sollten Sie die flache Datei als ASCII-Datei anlegen. Aus Performance-Gesichtspunkten ist das Laden von Daten aus einer ASCII-Datei die kostengünstigste Methode. Das Laden aus einer CSV-Datei ist langsamer, da hier auch die Trennzeichen und Aufhebungszeichen gesendet und interpretiert werden müssen. Das Erzeugen einer ASCII-Datei kann unter Umständen einen größeren Aufwand bedeuten.

  • Beim Laden von einer Workstation werden die Daten einer Datei in einem einzigen Datenpaket geladen. Dies kann bei sehr großen Dateien (hohe Anzahl an Datensätzen, breite Struktur) beim Laden ins PSA über ein InfoPackage zu einem Abbruch führen. Um dies zu vermeiden, haben sie verschiedene Möglichkeiten:
    • Wir empfehlen, die Datei auf den Applikationsserver zu legen. Vom Applikationsserver kann das InfoPackage paketweise lesen. Beachten Sie jedoch, dass Microsoft-Excel-Dateien nicht vom Applikationsserver gelesen werden können, konvertieren Sie Ihre Datei daher gegebenenfalls in eine CSV-Datei.
    • Alternativ können Sie, falls möglich, die Datei in kleinere Dateien aufspalten.
Vorgehensweise

Sie befinden sich im DataSource-Baum in der Data Warehousing Workbench.

  1. Markieren Sie die Anwendungskomponente, in der die DataSource angelegt werden soll und wählen Sie DataSource anlegen.

  2. Geben Sie auf dem folgenden Bild einen technischen Namen für die DataSource ein, wählen Sie den Typ der DataSource aus und wählen Sie Übernehmen.

    Sie gelangen in die DataSource-Pflege.

  3. Gehen Sie zur Registerkarte Allgemeines.

    1. Geben Sie Beschreibungen für die DataSource ein (kurz, mittel, lang).

    2. Geben Sie ggf. an, ob die DataSource einen Anfangsbestand aufbaut und potentiell doppelte Datensätze innerhalb eines Requests liefert.

    3. Geben Sie an, ob das PSA für die DataSource im Character-Format generiert werden soll, d.h. nicht in einer typisierten Struktur, sondern ausschließlich mit zeichenartigen Feldern vom Typ CHAR.

      Verwenden Sie diese Option, wenn die Konvertierung während des Ladens Probleme bereitet, beispielsweise, weil noch keine geeignete Konvertierungsroutine vorliegt, oder wenn die Quelle nicht garantieren kann, dass die Daten im richtigen Datentyp geladen werden können.

      Die Daten können in diesem Fall nach Aktivierung der DataSource dennoch bereits in das PSA geladen werden und dort korrigiert werden.

  4. Gehen Sie zur Registerkarte Extraktion.

    1. Legen Sie das Deltaverfahren für die DataSource fest.

      Sie können das generische Delta verwenden, bei dem mit Hilfe eines deltarelevanten Feldes, dessen Werte mit der Zeit monoton steigen, zur Laufzeit ermittelt wird, welche Daten übertragen werden. Weitere Informationen finden Sie unter Generisches BW-Delta verwenden.

    2. Geben Sie an, ob die DataSource den Direktzugriff auf Daten unterstützen soll.

    3. Real-Time Data Acquisition ist für die Übertragung aus Dateien nicht unterstützt.

    4. Wählen Sie den Adapter für die Datenübertragung aus. Sie können textartige Dateien oder binäre Dateien von Ihrer lokalen Workstation oder vom Applikationsserver laden:

      • Textartige Dateien enthalten ausschließlich Zeichen, die als Text darstellbar und lesbar sind. Beispiele hierfür sind CSV- und ASCII-Dateien. Für CSV-Dateien müssen Sie ein Zeichen festlegen, das die einzelnen Feldwerte voneinander trennt. Sowohl dieses Trennzeichen, als auch ein Aufhebungszeichen (Escape-Zeichen), das dieses Zeichen im Bedarfsfall als Bestandteil des Wertes festlegt, müssen Sie im BW festlegen und nach dieser Festlegung in der Datei verwenden. ASCII-Dateien enthalten die Daten in einer festgelegten Länge. Die festgelegte Feldlänge in der Datei und die Länge des zugeordneten Feldes im BW müssen dabei übereinstimmen.

      • Binäre Dateien enthalten die Daten in Form von Bytes. In einer solchen Datei kann jeder beliebige Bytewert vorkommen, d.h. auch Bytes, die nicht als Text darstellbar und lesbar sind. In diesem Fall müssen die Feldwerte in der Datei im internen Format der zugeordneten Felder im BW übereinstimmen.

      Über Eigenschaften können Sie die allgemeinen Adaptereigenschaften anzeigen.

    5. Wählen Sie den Pfad zur Datei aus, die geladen werden soll, oder geben Sie den Namen der Datei direkt ein, z.B. C:/Daten/US/Kosten97.csv.

      Sie können auch eine Routine anlegen, die den Namen ihrer Datei bestimmt. Wenn keine Routine für den Namen der Datei angelegt wurde, wird der Dateiname im Feld Dateiname direkt interpretiert.

    6. Nehmen Sie in Abhängigkeit vom Adapter und der zu ladenden Datei weitere Einstellungen vor.

      • Für binäre Dateien:

        Legen Sie die Zeichensatz-Einstellungen für die zu übertragenden Daten fest.

      • Textartige Dateien:

        1. Legen Sie fest, wie viele Zeilen Ihrer Datei Kopfzeilen sind und daher bei der Datenübertragung zu ignorieren sind.

        2. Legen Sie die Zeichensatz-Einstellungen für die zu übertragenden Daten fest:

          Wenn Sie die Daten aus einer ASCII-Datei laden, werden die Daten in einer festen Datensatzlänge angefordert.

          Wenn Sie Daten aus einer Excel-CSV-Datei laden, legen Sie den Datenseparator und das Escape-Zeichen fest.

          1. Im Feld Datenseparator geben Sie das Trennzeichen an, das Ihre Datei benutzt, um die Felder zu trennen.

          2. Wenn das Trennzeichen Bestandteil eines Wertes ist, so ist dies in der Datei daran zu erkennen, dass der Wert in bestimmten Anfangs- und End-Zeichen steht. Dieses Anfangs- und End-Zeichen geben Sie im Feld Escape-Zeichen an.

          3. Kontrollieren Sie in einem Texteditor (z.B. Notepad) den zur Zeit in der Datei verwendeten Separator und das Escape-Zeichen. Diese sind abhängig von der von Ihnen verwendeten Länderversion der Datei.

          4. Wenn Sie das Kennzeichen Hex markieren, so können Sie den Datenseparator und das Escape-Zeichen auch im Hexadezimal-Format angeben. Wenn Sie Zeichen für den Datenseparator bzw. das Excape-Zeichen eingegeben haben, werden diese nach der Prüfung der Eingaben als Hexadezimalcode dargestellt. Eine Eingabe von zwei Zeichen als Separator oder Escape-Zeichen wird dann immer als Hexadezimaleingabe interpretiert.

          Hinweis
          • Beispiel für die Verwendung von Datenseparator und Escape-Zeichen: Sie haben das Zeichen ; als Datenseparator gewählt. In Ihrer Datei gibt es jedoch für ein Feld den Wert 12;45. Wenn Sie als Escape-Zeichen " festgelegt haben, muss der Wert in der Datei als "12;45" vorliegen, damit 12;45 ins BW geladen wird. Der ganze zu übertragende Wert muss also von den Escape-Zeichen umschlossen sein.

          • Die Escape-Zeichen werden als normale Bestandteile des Wertes interpretiert, wenn die Escape-Zeichen den Wert nicht umschließen, sondern an einer Stelle innerhalb des Wertes verwendet werden. Wenn Sie als Escape-Zeichen " festgelegt haben, wird also beispielsweise der Wert 12"45 als 12"45 übertragen und 12"45" wird als 12"45" übertragen.

          • Beachten Sie, dass das Leerzeichen als Escape-Zeichen interpretiert wird, wenn Sie für das Escape-Zeichen keine Angabe machen. Wir empfehlen daher die Verwendung eines anderen Zeichens als des Leerzeichens als Escape-Zeichen.

    7. Nehmen Sie ggf. die Einstellungen für das Zahlenformat vor (verwendetes Tausender-Trennzeichen und verwendetes Zeichen für die Dezimalpunktdarstellung).

    8. Nehmen Sie ggf. Einstellungen zur Währungskonvertierung vor.

    9. Nehmen Sie ggf. weitere von Ihrer Auswahl abhängige Einstellungen vor.

  5. Gehen Sie zur Registerkarte Vorschlag.

    Hier erzeugen Sie einen Vorschlag für die Feldliste der DataSource auf Basis von Beispieldaten Ihrer Datei.

    1. Geben Sie an, wie viele Datensätze Sie laden wollen und wählen Sie Beispieldaten laden.

      Im oberen Bereich der Registerkarte werden Ihnen die Daten im Format Ihrer Datei angezeigt.

      Im unteren Bereich zeigt das System den Vorschlag für die Feldliste an.

    2. Wählen Sie in der Tabelle der vorgeschlagenen Felder über In Feldliste kopieren aus, welche Felder Sie in die Feldliste der DataSource übernehmen wollen. In der Standardeinstellung sind alle Felder markiert.

  6. Gehen Sie zur Registerkarte Felder.

    Hier bearbeiten Sie die Felder, die Sie aus der Registerkarte Vorschlag in die Feldliste der DataSource übernommen haben. Wenn Sie die Feldliste nicht aus einem Vorschlag erzeugt haben, können Sie die Felder der DataSource hier direkt definieren.

    Wenn das System beim Wechsel von der Registerkarte Vorschlag zur Registerkarte FelderÄnderungen zwischen dem Vorschlag und der Feldliste feststellt, zeigt es ein Dialogfenster an, in dem Sie angeben, ob die Änderungen aus dem Vorschlag in die Feldliste übernommen werden sollen oder nicht.

    1. Zur Definition eines Feldes wählen Sie Zeile einfügen und geben einen Feldnamen an.

    2. Legen Sie unter Transfer die entscheidungsrelevanten Felder der DataSource fest, die zur Extraktion zur Verfügung stehen sollen und ins BW übertragen werden sollen.

    3. Alternativ zur Erzeugung eines Vorschlags für die Feldliste können Sie die Angabe von InfoObjects nutzen, um die Felder der DataSource zu definieren. Geben Sie hierzu unter Template-InfoObject InfoObjects zu den Feldern des BW an. Die technischen Eigenschaften des InfoObjects können dabei in das Feld der DataSource übernommen werden.

      Hinweis Die Angabe von InfoObjects an dieser Stelle stellt keine Zuordnung zu Feldern der DataSource dar. Diese Zuordnung wird in der Transformation durchgeführt. Die hier angegebenen InfoObjects werden bei der Definition der Transformation lediglich vom System zur Zuordnung zu einem Feld vorgeschlagen.
    4. Ändern Sie ggf. den Datentyp des Feldes.

    5. Legen Sie die Schlüsselfelder der DataSource fest.

      Diese Felder werden als Sekundärindex auf dem PSA erzeugt. Diese Festlegung ist für performante Selektionen im Datentransferprozess von Bedeutung, insbesondere bei semantischer Gruppierung.

    6. Geben Sie an, ob Kleinbuchstaben unterstützt sind.

    7. Geben Sie an, ob die Quelle die Daten in internem Format oder in externem Format liefert.

    8. Wenn Sie externes Format gewählt haben, stellen Sie sicher, dass die Ausgabelänge des Feldes (externe Länge) korrekt ist. Ändern Sie ggf. die Angaben.

    9. Geben Sie ggf. eine Konvertierungsroutine an, die die Daten von externem in internes Format umwandelt.

    10. Markieren Sie die Felder, für die beim Einplanen einer Datenanforderung über ein InfoPackage das Festlegen von Selektionskriterien ermöglicht werden soll. Die Daten zu einem solchen Feld werden dann entsprechend der Selektionskriterien im InfoPackage übertragen.

    11. Wählen Sie, welche Selektionsmöglichkeiten (z.B. EQ, BT) für die Selektion im InfoPackage zur Verfügung stehen sollen.

    12. Geben Sie ggf. unter Feldart an, ob es sich um sprach- oder zeitabhängige Daten handelt, die selektiert werden sollen.

  7. Prüfen, sichern und aktivieren Sie die DataSource.

  8. Gehen Sie zur Registerkarte Vorschau.

    Wenn Sie Vorschaudaten lesen wählen, wird Ihnen in einer Vorschau die angegebene Zahl von Datensätzen entsprechend Ihrer Auswahl der Felder angezeigt.

    Mit dieser Funktion haben Sie die Möglichkeit, zu überprüfen, ob die Datenformate und Daten korrekt sind.

Ergebnis

Die DataSource ist angelegt und in der DataSource-Übersicht zum Datei-Quellsystem in der Data Warehousing Workbench in der Anwendungskomponente sichtbar. Mit der Aktivierung der DataSource erzeugt das System eine PSA-Tabelle und ein Übertragungsprogramm.

Sie können nun ein InfoPackage anlegen, in dem Sie die Selektionen für die Datenanforderung festlegen. Die Daten können dann in die Eingangsschicht des BW, in das PSA, geladen werden. Mit einem Datentransferprozess können Sie die Daten auch direkt in einen InfoProvider laden, ohne zuvor ins PSA zu laden. Des Weiteren können Sie auf die Daten direkt zugreifen, wenn die DataSource Direktzugriff unterstützt und Sie den Datenfluss mit einem VirtualProvider definiert haben.