Tabellen-Menüs erweitern

Geschätzte Lektüre: 3 Minuten

Die Menüpunkte von Tabellenformularen oder Listen können mit eigenen Punkten erweitert werden. Die Erweiterungen können mit Hilfe folgender Skript-Erweiterungen eingetragen werden:

  • ext_gtab.inc
  • ext_gtab_erg.inc
  • ext_gtab_change.inc.

Um in LIMBAS einem Tabellenformular oder einer Liste einen Menüpunkt hinzuzufügen, muss

  • eine Funktion (mit beliebigem Funktionsnamen) erstellt werden, die
    • die folgenden Parameter übergeben bekommt:
      • $gtabid: Tabellen-Id der aktuell gezeigten Tabelle
      • $formid: Formular-Id des aktuell verwendeten Formulars, im Falle des Standardformulars „null“
      • $ID: Datensatz-Id des aktuell verwendeten Datensatzes, nur für Detailansicht (gtab_change) verfügbar
      • &$gresult: Zeiger auf Ergebnis der letzten Datenbank-Abfrage (siehe get_gresult())
    • die Darstellung des neuen Menüpunktes erledigt.
    • festlegt, welche JavaScript-Anweisung(en) oder -Funktion(en) bei Auswahl des neuen Menüpunktes ausgeführt werden soll(en). Dabei können Information mittels versteckter HTML-Formularelemente (hidden) im HTML-Objekt „span id=“myExtForms““ an LIMBAS zurückgegeben werden.

Dafür sind die pop_*-Menüfunktionen aus der Datei ./limbas_src/lib/context.lib zu verwenden. Genauere Einstellungen für die Darstellung sowie die JavaScript-Anweisungen/Funktionen sind der verwendeten Funktion als Parameter zu übergeben.

  • die erstellte Funktion über die folgende Zuweisung einer Tabelle und einem Menü, in dem der neue Menüpunkt hinzugefügt werden soll, zugewiesen werden:
if(!$gLmbExt[$menuToBeExtended][$gtabid]){
	$gLmbExt[$menuToBeExtended][$gtabid] = $functionName;
}

Dabei entspricht

  • $gtabid der Tabellen-Id der Tabelle, für die der Menüpunkt hinzugefügt werden soll
  • $menuToBeExtended einem der folgenden Werte, welche das zu erweiternde Menü angeben:
    • „menuChangeCInfo“ → Menüpunkt wird dem [Datei]→[Info]-Menü der Bearbeitungs- und Detailansicht hinzugefügt
    • „menuChangeCContext“ → Menüpunkt wird dem [Datei]-Menü der Bearbeitungs- und Detailansicht hinzugefügt
    • „menuChangeCDisplay“ → Menüpunkt wird dem [Ansicht]-Menü der Bearbeitungs- und Detailansicht hinzugefügt
    • „menuChangeCExtras“ → Menüpunkt wird dem [Extras]-Menü der Bearbeitungs- und Detailansicht hinzugefügt
    • „menuChangeCReport“ → Menüpunkt wird dem [Extras]→[Berichte]-Menü der Bearbeitungs- und Detailansicht hinzugefügt
    • „menuChangeItems“ → Menüpunkt wird dem Hauptmenü der Bearbeitungs- und Detailansicht hinzugefügt
    • „menuChangeIcons“ → Menüpunkt wird der Symbolleiste der Bearbeitungs- und Detailansicht hinzugefügt
    • „menuListCInfo“ → Menüpunkt wird im Kontextmenü der Listenansicht dem [Info]-Menü hinzugefügt
    • „menuListCContext“ → Menüpunkt wird dem Kontextmenü der Listenansicht hinzugefügt
    • „menuListCDisplay“ → Menüpunkt wird dem [Ansicht]-Menü der Listenansicht hinzugefügt
    • „menuListCExtras“ → Menüpunkt wird dem [Extras]-Menü der Listenansicht hinzugefügt
    • „menuListCReport“ → Menüpunkt wird dem [Extras]→[Berichte]-Menü der Listenansicht hinzugefügt
    • „menuCalExtras“ → Menüpunkt wird dem [Extras]-Menü der Kalenderansicht hinzugefügt
    • „menuDMSExtras“ → Menüpunkt wird dem [Extras]-Menü des Filemanagers hinzugefügt
  • $functionName der Funktion für die Darstellung des neuen Menüpunktes