Funktion "init relation()"

Aus Limbas Wiki

Wechseln zu: Navigation, Suche

<-- zurück zu Admin-Dokumentation / <-- zurück zur Hauptseite


array init_relation(numeric $gtabid, numeric $fieldid, numeric $ID, array $rel_add_ID=null, array $rel_del_ID=null, bool $rel_showonly=null,$linkParam=null,rel_type=1);

Funktion, deren Rückgabewert für das Setzen, Löschen und Anzeigen von Verknüpfungen benötigt wird (./limbas_src/gtab/gtab.lib)

Parameter:

Die Übergabe-Parameter werden an den erforderlichen Stellen des Rückgabe-Arrays eingefügt.

$gtabid

→ Tabellen-ID der Tabelle, die das Feld mit der Verknüpfung enthält

$fieldid

→ Feld-ID des Feldes mit der Verknüpfung

$ID

→ ID des Datensatzes, für den Datensätze aus der verknüpften Tabelle hinzugefügt, gelöscht oder angezeigt werden sollen

$rel_add_ID

Dieser Übergabe-Parameter ist nur relevant, wenn der Rückgabewert dieser Funktion als Parameter für die Funktion set_relation() verwendet wird.

→ null: Im Rückgabe-Array werden keine Datensätze eingetragen, die der Verknüpfungen hinzugefügt werden sollen

→ Array mit IDs der Datensätze aus der verknüpften Tabelle, die der Verknüpfung hinzugefügt werden sollen (z.B. array(2,6))

$rel_del_ID

Dieser Übergabe-Parameter ist nur relevant, wenn der Rückgabewert dieser Funktion als Parameter für die Funktion set_relation() verwendet wird.

→ null: Im Rückgabe-Array werden keine Datensätze eingetragen, die aus der Verknüpfung gelöscht werden sollen

→ Array mit IDs der Datensätze aus der verknüpften Tabelle, die aus der Verknüpfung gelöscht werden sollen (z.B. array(2,6))

$rel_showonly

Dieser Übergabe-Parameter ist nur relevant, wenn der Rückgabewert dieser Funktion als $verkn-Parameter für die Funktion get_gresult() verwendet wird.

→ 1: Im Rückgabewert der Funktion get_gresult() werden nur Datensätze berücksichtigt, die mit dem durch $gtabid, $fieldid und $ID spezifizierten Tabellenfeld verknüpft sind.

→ 0, null: Im Rückgabewert der Funktion get_gresult() werden nur Datensätze berücksichtigt, die im durch $gtabid und $fieldid spezifizierten Tabellenfeld mit keinem Datensatz verknüpft sind.

$linkParam

Mit Hilfe dieses Parameters ist es möglich, zusätzliche Felder in der Verknüpfungstabelle, die manuell hinzugefügt wurden zu befüllen. Der Parameter ist ein Array mit dem Feldnamen als Schlüssel und dem Inhalt als Wert. Dieser Parameter wird auch dafür genutzt, Verknüpfungen zu der Tabelle LDMS_FILES, also dem Dateisystem in einem bestimmten Ordner dieser Verknüpfung anzuzeigen.

array('LID', 123)

$rel_type

Dieser optionale Parameter kann 1 oder 2 sein und gibt an aus welcher Richtung die Verknüpfung erstellt werden soll. Standardmäßig wird die Verknüpfung von links nach rechts ausgeführt. Also z.B Auftrag -> Kunde. Sollen alle Kunden eines bestimmten Auftrags angezeigt werden muß der Parameter [1] sein. Sollen alle Aufträge eines bestimmten Kunden angezeigt werden muß der Parameter [2] sein.

Rückgabewert:

Array, in dem Format, wie es von den Funktionen (z.B. set_relation(), get_gresult()) zum Setzen, Löschen und zum Anzeigen von Verknüpfungen als Parameter benötigt wird.

Beispiel

In diesem Beispiel soll die Tabelle Auftrag die ID 1 und die Tabelle Kunde die ID 2 haben. Kunde ist über das Feld mit der ID 10 zu Auftrag verknüpft.

Example:

Dieses Beispiel gibt ein Ergebnis-Array der Tabelle Auftrag welche mit Kunde der Datensatz-ID 134 verknüpft ist.

 $relation = init_relation(1, 10, 134, null, null, 1, null, 2);
 return get_gresult(1,1, null, null, $relation);
Example:

Dieses Beispiel gibt ein Ergebnis-Array der Tabelle Kunde welche mit Auftrag der Datensatz-ID 20 verknüpft ist.

 $relation = init_relation(1, 10, 20, null, null, 1, null, 1);
 return get_gresult(2,1, null, null, $relation);