[MENU]
Hier können u.a. benutzerabhängige Menüs je Dialog hinzugefügt werden. Jeder Anwender kann seine infra-Menüs auch mit weiteren Aufrufen wie Textsystem, Kalender usw. ergänzen.
Der Aufruf von infra-Programmen aus einem infra-Programm kann ab Version 5.2 über die INI-Datei gesteuert werden (siehe unten, Beispiel zu PDV111) !
LastModulEntries = 9;
Default ist 5. Angabe legt fest, wie viele der zuletzt angewählten Programme im Anfangsfenster unter Menü MODUL abgelegt werden. Je Arbeitsstation merkt sich das System diese Menüs für die nächste Sitzung.
SIBPPS_MAIN = IDM_MODUL,1, INI(MODULMENU, Menu)
Der 1. Eintrag für den Dialog SIBPPS_MAIN und das Menü IDM_MODUL (GRIT-Ident) wird in Sektion MODULMENU, Schlüsselwort "Menu" definiert. Der erste Parameter steht also für den Menünamen in der CGW-Datei, der zweite Parameter für die Stelle innerhalb des Menüs, an der ein neuer Eintrag erfolgen soll. Fehlt der Menüname, so wird das neue Menü an der angegebenen Position im Hauptmenü eingefügt.
SIBPPS_MAIN = IDM_MODUL,1, (SIBPPS.MEN)
Alle Menüangaben sind in der Datei SIBPPS.MEN abgelegt. Der Aufbau der Menüdatei ist in einem eigenem Kapitel beschrieben.
SIBPPS_MAIN.Eintrag2 = ,2, INI(MODULMENU, Menu2)
Falls je Dialog mehrere Menüs eingefügt werden sollen, muss hinter dem Dialognamen ein Punkt gefolgt von beliebigen Zeichen angegeben werden.
PDV111_1.1 = ,2,INI(MENUEXT,111_1) ; erstes Menü
PDV111_1.2 = ,2,INI(MENUEXT,111_2) ; zweites Menü
[MENUEXT]
111_1={
&Programme,,,,
{
"",,121,CBsExecModProc
"",,141,CBsExecModProc
}
}
111_2={
Andere &Stammdatenprogramme,,,,
{
"",,711:Startupmode=Create,CBsCallModProc
}
}
- Hinweis: Falls hinter der Modulnummer des aufzurufenden Programms Werte mitgegeben werden, die ein (oder mehrere) Komma beinhalten, müssen Anführungszeichen gesetzt werden wie folgt:
- 111_2={
Andere &Stammdatenprogramme,,,,
{
'''',,"711:MeineDaten1,MeineDaten2",CBsCallModProc
}
}
Für das Programm PDV111 wird im ersten Fenster ein Menü PROGRAMME eingefügt, um die Programme "121 Stücklisten Bearbeiten" und "141 Arbeitspläne bearbeiten" aufrufen zu können. Da der erste Parameter fehlt (Menüname), wird das neue Menü als zweiter Eintrag im Hauptmenü eingefügt. (Zur Wirkungsweise von "CBsExecModProc" siehe auch 15.02 infra-Prozeduren (CallBacks).)
AUF435_1 = ,3, FILE(extras.men)
AUF435_3 = ,3, FILE(extras.men)
Die Datei "extras.men" muss im INI-Verzeichnis liegen und enthält z.B. folgende Einträge:
- {
&Extras, , , ,
{
;Aufruf Taschenrechner:
"Taschen&rechner", , d:\win95\calc.exe, CBgLaunchProcess
;Aufruf Notizblock:
"&Notiz",,d:\win95\notepad.exe TRIM(GV(GV_loginname)).txt, CBgLaunchProcess
; Aufruf Textsystem
"Win&Word", , d:\winword\winword.exe, CBgLaunchProcess
;Aufruf eines Commandfiles unter OS/2:
"privat", , cmd.exe /C privat.cmd, CBgLaunchProcess
;Aufruf einer Batch-Datei unter Windows:
"privat", , command.com /C privat.bat, CBgLaunchProcess
;Aufruf eines Windows-Programms (3.1) aus OS/2:
"Textsystem", ,"cmd.exe /C start /WIN Pfad\winword.exe", CBgLaunchProcess
;Aufruf Textsystem. Programm, Pfad u. Parameter sind in der INI-Datei
;unter Sektion EXTERN, Schlüsselwort TEXT definiert, ggf. betriebssystemsabhängig:
"Textsystem", , INI(EXTERN,TEXT), CBgLaunchProcess
}
}
Die Datei hat denselben Aufbau wie die Datei SIBPPS.MEN (siehe unten). Im obigen Beispiel wird beim Notizblockaufruf als Parameter der Benutzername mitgegeben. Die Funktion TRIM sorgt dafür, dass keine rechtsbündigen Leerzeichen übergeben werden, da ansonsten der Dateiname mit der Extension "txt" unkorrekt wäre. (Zur Wirkungsweise von "CBgLaunchProcess" siehe auch 15.02 infra-Prozeduren (CallBacks).)
SIBPPS_MAIN_3=IDM_KONFIG,3,INI(MENULang,Lang_1)
[MENULang]
LANG_1={
Sprache
{
"&Francais",,"set_language(33);",interpreter,,,R ; Französisch
"&Deutsch",,"set_language(49);",interpreter,,,R ; Deutsch
}
}
Neues Menü zum Setzen des Sprachkennzeichens.
