Zu Hauptinhalt springen

Zirkelbezüge

AUF DIESER SEITE

Zirkelbezüge

Sind Tabellen so miteinander verknüpft, dass Werte auf mehr als einem Weg miteinander verknüpft sind, spricht man von Zirkelbezügen oder auch zirkulären Verknüpfungen ("Loops") in der Datenstruktur.

  1. Öffnen Sie den Dateneditor in der Scripting Tutorial App.
  2. Klicken Sie auf Create new , um einen neuen Skriptabschnitt hinzuzufügen.
  3. Nennen Sie den Abschnitt Region.
  4. Klicken Sie im rechten Menü unter DataFiles auf Daten auswählen.

  5. Laden Sie Region.txt hoch und wählen Sie die Datei aus. Ein Datenvorschaufenster wird geöffnet.
  6. Wählen Sie alle Felder aus und achten Sie darauf, dass unter Feldnamen der Eintrag Eingebettete Feldnamen ausgewählt ist, damit die Namen der Tabellenfelder beim Laden der Daten eingeschlossen sind.
  7. Klicken Sie auf Skript einfügen.
  8. Klicken Sie auf Daten laden.
  9. Dieses Mal sieht es so aus, als ob beim Laden der Daten etwas schief gelaufen ist. Ein Zirkelbezug wurde erstellt. Im Fenster Datenladefortschritt wird eine Fehlermeldung angezeigt, die darauf hinweist, dass während des Ladevorgangs ein Zirkelbezug gefunden wurde. Der Ladevorgang wird jedoch abgeschlossen und die App wird gespeichert.

  10. Öffnen Sie die Datenmodellansicht.
  11. Sie können die Tabellen durch Ziehen so neu organisieren, dass die Verbindungen zwischen den Tabellen leicht sichtbar sind.

    Datenmodellansicht mit Zirkelbezügen
    Data model viewer showing circular reference.

    Die rot gepunkteten Linien weisen darauf hin, dass ein Zirkelbezug erstellt wurde. Dies sollte vermieden werden, da dadurch Widersprüche bei der Interpretation der Daten entstehen können.

Auflösen von Zirkelbezügen

Um verstehen zu können, was den Zirkelbezug verursacht hat, sehen wir uns die Tabellen im Datenmodell genauer an.

Wenn Sie Table1 und Table2 im obigen Screenshot betrachten, sehen Sie, dass beiden das Feld Date gemein ist. Sie werden auch feststellen, dass Table1 und Region das Feld SalesKey gemein ist. Außerdem haben Table2 und Region das Feld Week gemeinsam. Das bedeutet, dass ein Zirkelbezug erstellt wurde. Da dieser später bei der Datenanalyse zu Problemen führen kann, werden wir ihn auflösen.

Am einfachsten lässt sich das Problem durch Umbenennen oder Entfernen eines Felds auflösen. In unserem konkreten Fall wurden Daten geladen, die für unsere App nicht erforderlich sind, weshalb wir sie entfernen können.

  1. Öffnen Sie den Dateneditor.
  2. Klicken Sie auf den Abschnitt Region und löschen Sie die folgenden beiden Zeilen in der LOAD-Anweisung:
  3. "Week",

    SalesKey

  4. Entfernen Sie unbedingt auch das Komma nach "Region Code".
  5. Ihr Skript sieht nun wie folgt aus:

    LOAD Region, "Region Code" FROM [lib://DataFiles/Region.txt] (txt, codepage is 28591, embedded labels, delimiter is '\t', msq);

  6. Klicken Sie auf Daten laden.
  7. Öffnen Sie die Datenmodellansicht.
  8. Die unerwünschten Bezüge zu Region wurden entfernt.

    In der Datenmodellansicht ist zu sehen, dass die Zirkelbezüge entfernt wurden
    Data model viewer showing that circular reference has been removed.