Leitfaden für die Skripterstellung in ACL 14.1

JOIN-Befehl

Kombiniert Felder aus zwei Analytics-Tabellen in einer neuen einzelnen Analytics-Tabelle.

Hinweis

Um die Fuzzy-Übereinstimmung zur Zusammenführung von Tabellen zu verwenden, lesen Sie FUZZYJOIN-Befehl.

JOIN {PKEY primäre_Schlüsselfelder|PKEY ALL} {FIELDS Primärfelder|FIELDS ALL} {SKEY sekundäre_Schlüsselfelder|SKEY ALL} <WITH Sekundärfelder|WITH ALL> {kein_Schlüsselwort|MANY|UNMATCHED|PRIMARY|SECONDARY|PRIMARY SECONDARY} <IF Test> TO Tabellenname <LOCAL> <OPEN> <WHILE Test> <FIRST Bereich|NEXT Bereich> <APPEND> <PRESORT> <SECSORT> <ISOLOCALE Gebietsschemacode>
Name Beschreibung
PKEY primäre_Schlüsselfelder | PKEY ALL

Die Schlüsselfelder oder der Ausdruck in der Primärtabelle.

  • primäre_Schlüsselfelder Das angegebene Feld oder die angegebenen Felder verwenden
  • ALL alle Felder der Tabelle auswählen
FIELDS Primärfelder | FIELDS ALL

Die in die zusammengeführte Ausgabedatei einzuschließenden Felder oder Ausdrücke aus der Primärtabelle.

  • Primärfelder Das angegebene Feld oder die angegebenen Felder einschließen
  • ALL Alle Felder aus der-Tabelle einschließen

Hinweis

Sie müssen die Primärschlüsselfelder explizit festlegen, wenn sie in der zusammengeführten Tabelle enthalten sein sollen. Wenn Sie ALL angeben, werden sie auch eingeschlossen.

SKEY Sekundärschlüsselfelder | SKEY ALL

Das Schlüsselfeld, die Felder oder der Ausdruck in der Sekundärtabelle.

  • sekundäre_Schlüsselfelder Das angegebene Feld oder die angegebenen Felder verwenden
  • ALL alle Felder der Tabelle auswählen

WITH Sekundärfelder | WITH ALL

Optional

Die in die zusammengeführte Ausgabedatei einzuschließenden Felder oder Ausdrücke aus der Sekundärtabelle.

  • Sekundärfelder Das angegebene Feld oder die angegebenen Felder einschließen
  • ALL Alle Felder aus der-Tabelle einschließen

Hinweis

Sie müssen die Sekundärschlüsselfelder explizit festlegen, wenn sie in der zusammengeführten Tabelle enthalten sein sollen. Wenn Sie ALL angeben, werden sie auch eingeschlossen.

Sie können WITH nicht angeben, falls Sie den Zusammenführungstyp UNMATCHED verwenden.

kein_Schlüsselwort | MANY | UNMATCHED | PRIMARY | SECONDARY | PRIMARY SECONDARY

Der durchzuführende Zusammenführungstyp.

kein_Schlüsselwort (alle Schlüsselwörter für den Zusammenführungstyp nicht angeben)

Die zusammengeführte Ausgabetabelle enthält: Entsprechende Option des Dialogfelds Zusammenführen
  • alle übereinstimmenden Primärdatensätze und den ersten übereinstimmenden Sekundärdatensatz

Übereinstimmende Primär- und Sekundärdatensätze

(erster übereinstimmender Sekundärdatensatz)

MANY

Die zusammengeführte Ausgabetabelle enthält: Entsprechende Option des Dialogfelds Zusammenführen
  • alle übereinstimmenden Primärdatensätze und alle übereinstimmenden Sekundärdatensätze
  • einen Datensatz für jede Übereinstimmung zwischen Primär- und Sekundärtabellen

Übereinstimmende Primär- und Sekundärdatensätze

(alle übereinstimmenden Sekundärdatensätze)

UNMATCHED

Die zusammengeführte Ausgabetabelle enthält: Entsprechende Option des Dialogfelds Zusammenführen
  • nicht übereinstimmende Primärdatensätze

Nicht übereinstimmende Primärdatensätze

 

PRIMARY

Die zusammengeführte Ausgabetabelle enthält: Entsprechende Option des Dialogfelds Zusammenführen
  • alle Primärdatensätze (übereinstimmend und nicht übereinstimmend) und den ersten übereinstimmenden Sekundärdatensatz

Alle Primär- und übereinstimmenden Sekundärdatensätze

Hinweis

Das Schlüsselwort BOTH entspricht der Angabe von PRIMARY.

SECONDARY

Die zusammengeführte Ausgabetabelle enthält: Entsprechende Option des Dialogfelds Zusammenführen
  • alle Sekundärdatensätze (übereinstimmend und nicht übereinstimmend) und alle übereinstimmenden Primärdatensätze

    Nur die erste Instanz eines doppelten Sekundärdatensatzes wird mit einem Primärdatensatz abgeglichen.

Alle Sekundär- und übereinstimmenden Primärdatensätze

PRIMARY SECONDARY

Die zusammengeführte Ausgabetabelle enthält: Entsprechende Option des Dialogfelds Zusammenführen
  • alle Primärdatensätze und alle Sekundärdatensätze, die übereinstimmen und nicht übereinstimmen

    Nur die erste Instanz eines doppelten Sekundärdatensatzes wird mit einem Primärdatensatz abgeglichen.

Alle Primär- und Sekundärdatensätze

IF Test

Optional

Ein bedingter Ausdruck, der wahr sein muss, damit ein Datensatz verarbeitet wird. Der Befehl wird nur für Datensätze ausgeführt, welche die Bedingung erfüllen.

Hinweis

Der IF-Parameter wird nur für Datensätze ausgewertet, die nach Anwendung von Bereichsparametern (WHILE, FIRST, NEXT) in einer Tabelle übrig sind.

Hinweis

Bei den meisten Zusammenführungstypen gilt eine IF-Bedingung nur für die Primärtabelle.

Die Ausnahme ist eine n:n-Zusammenführung, bei der sich die IF-Bedingung auch auf die Sekundärtabelle beziehen kann.

TO Tabellenname

Der Ort, an den die Ergebnisse des Befehls gesendet werden sollen:

  • Tabellenname Speichert die Ergebnisse in einer Analytics-Tabelle.

    Geben Sie Tabellenname als in Anführungszeichen gesetzte Zeichenfolge mit der Dateierweiterung „.FIL“ an. Beispiel: TO "Ausgabe.FIL"

    Standardmäßig wird die Tabellendatendatei (.FIL) im Ordner mit dem Analytics-Projekt gespeichert.

    Verwenden Sie entweder einen absoluten oder relativen Dateipfad, um die Datendatei in einen anderen bestehenden Ordner zu speichern:

    • TO "C:\Ausgabe.FIL"
    • TO "Ergebnisse\Ausgabe.FIL"

    Hinweis

    Tabellennamen sind auf 64 alphanumerische Zeichen beschränkt, was die .FIL-Dateierweiterung nicht einbezieht. Der Name kann den Unterstrich beinhalten ( _ ), aber keine anderen Sonderzeichen oder Leerzeichen. Er kann nicht mit einer Ziffer beginnen.

LOCAL

Optional

Speichert die Ausgabedatei am selben Speicherort wie das Analytics-Projekt.

Hinweis

Nur anwendbar, wenn der Befehl für eine Servertabelle ausgeführt wird und die Ausgabedatei eine Analytics-Tabelle ist.

OPEN

Optional

Öffnet die durch den Befehl erstellte Tabelle, nachdem der Befehl ausgeführt wird. Nur gültig, wenn der Befehl eine Ausgabetabelle erstellt.

WHILE Test

Optional

Ein bedingter Ausdruck, der wahr sein muss, damit ein Datensatz verarbeitet wird. Der Befehl wird ausgeführt, bis die Bedingung falsch ist oder das Tabellenende erreicht wurde.

Hinweis

Wenn Sie WHILE zusammen mit FIRST oder NEXT verwenden, endet die Datensatzverarbeitung, sobald eine Grenze erreicht wird.

FIRST Bereich | NEXT Bereich

Optional

Die Anzahl der zu verarbeitenden Datensätze:

  • FIRST Verarbeitung beim ersten Datensatz beginnen, bis die angegebene Datensatzanzahl erreicht wird
  • NEXT Verarbeitung beim aktuell ausgewählten Datensatz beginnen, bis die angegebene Datensatzanzahl erreicht wird

Verwenden Sie Bereich, um die Anzahl der zu verarbeitenden Datensätze anzugeben.

Wenn Sie FIRST und NEXT nicht angeben, werden standardmäßig alle Datensätze verarbeitet.

APPEND

Optional

Hängt die Befehlsausgabe an das Ende einer vorhandenen Datei an, statt die Datei zu überschreiben.

Hinweis

Vergewissern Sie sich, dass die Struktur der Befehlsausgabe und der bestehenden Datei identisch sind:

  • dieselben Felder
  • dieselbe Feldanordnung
  • abzugleichende Felder mit derselben Länge
  • abzugleichende Felder mit demselben Datentyp

Analytics hängt eine Ausgabe an eine bestehende Datei beliebiger Struktur an. Falls die Struktur der Ausgabe und der bestehenden Datei nicht übereinstimmen, kann die Datenintegrität verletzt sein, es können Daten fehlen oder falsch sein.

PRESORT

Optional

Sortiert die Primärtabelle nach dem Primärschlüsselfeld, bevor der Befehl ausgeführt wird.

Hinweis

PRESORT kann nicht innerhalb des GROUP-Befehls verwendet werden.

Indizierung statt Sortierung

Für die Primärtabelle kann anstelle der Sortierung auch ein Index erstellt werden. Bei großen Tabellen kann eine Indizierung statt einer Sortierung die Zeit für das Zusammenführen verringern.

Lassen Sie PRESORT und SECSORT aus, wenn Sie zwei Tabellen über ein indiziertes gemeinsames Schlüsselfeld zusammenführen.

SECSORT

Optional

Sortiert die Sekundärtabelle vor dem Ausführen des Befehls nach dem sekundären Schlüsselfeld.

Hinweis

SECSORT kann nicht innerhalb des GROUP-Befehls verwendet werden.

Indizierung statt Sortierung

Für die Sekundärtabelle kann anstelle der Sortierung auch ein Index erstellt werden. Bei großen Tabellen kann eine Indizierung statt einer Sortierung die Zeit für das Zusammenführen verringern.

Lassen Sie PRESORT und SECSORT aus, wenn Sie zwei Tabellen über ein indiziertes gemeinsames Schlüsselfeld zusammenführen.

ISOLOCALE Gebietsschema_Code

Optional

Hinweis

Gilt nur für die Unicode-Edition von Analytics.

Das Systemgebietsschema im Format Sprache_Land. Für kanadisches Französisch geben Sie beispielsweise fr_ca ein.

Verwenden Sie die folgenden Codes:

  • Sprache Sprachcode nach dem Standard ISO 639
  • Land Ländercode nach dem Standard ISO 3166

    Wenn Sie keinen Ländercode angeben, verwendet ACL das Standardland für die verwendete Sprache.

Wenn Sie ISOLOCALE verwenden, wird das Standard-Systemgebietsschema nicht verwendet.

Zwei Tabellen zusammenführen, um Mitarbeiter zu finden, die auch Lieferanten sein könnten

Im folgenden Beispiel werden die Tabellen „Mitarbeiterstamm“ und „Lieferant“ mit Hilfe des gemeinsamen Schlüsselfelds der Anschrift (Felder „Adresse“ und „Lieferantenstraße“) zusammengeführt.

Der JOIN-Befehl erstellt eine neue Tabelle mit übereinstimmenden Primär- und Sekundärdatensätzen. Dies führt zu einer Liste von Mitarbeitern und Lieferanten mit der gleichen Adresse.

OPEN Mitarbeiterstamm PRIMARY
OPEN Lieferant SECONDARY
JOIN PKEY Adresse FIELDS Mitnr Vorname Nachname Adresse SKEY Lieferantenstraße WITH Lieferantennr Lieferantenname Lieferantenstraße TO "Mitarbeiter_Lieferanten_Übereinstimmungen" OPEN PRESORT SECSORT

Diese Version des JOIN-Befehls schließt alle Felder der Primär- und Sekundärtabellen in die zusammengeführte Ausgabetabelle ein.

OPEN Mitarbeiterstamm PRIMARY
OPEN Lieferant SECONDARY
JOIN PKEY Adresse FIELDS ALL SKEY Lieferantenstraße WITH ALL TO "Mitarbeiter_Lieferanten_Übereinstimmungen" OPEN PRESORT SECSORT

Zwei Tabellen zusammenführen, um Forderungen ohne übereinstimmenden Kunden zu finden

Im folgenden Beispiel werden die Tabellen „Forderungen“ und „Kunde“ mit Hilfe des gemeinsamen Kundennummer-Schlüsselfelds (KdnNr) zusammengeführt.

Der JOIN-Befehl verwendet den UNMATCHED-Zusammenführungstyp, um eine neue Tabelle mit nicht abgeglichenen Primärdatensätzen zu erstellen. Dies führt zu einer Liste von Forderungsdatensätzen, die mit keinen Kundendatensätzen verknüpft sind.

OPEN Forderungen PRIMARY
OPEN Kunde SECONDARY
JOIN PKEY KdnNr FIELDS KdnNr Fällig Betrag SKEY KdnNr UNMATCHED TO "Kunde_nicht_gefunden.fil" OPEN PRESORT SECSORT

Hinweis

Weitere Informationen über die Funktion dieses Befehls finden Sie in Hilfe für Analytics.