-
Menü via CL erstellen
Hallo,
ich versuche, ein Menü via CL-PGM zu generieren. Dabei gibt es grössere Probleme.
Hier die Quelle:
PGM
CRTDSPF FILE(XXX/TEST)
DLTMSGF MSGF(XXX/TEST)
MONMSG MSGID(CPF0000)
CRTMSGF MSGF(XXX/TEST)
CRTMNU MENU(XXX/TEST) TYPE(*DSPF) +
CMDLIN(*SHORT) DSPKEY(*NO) CURLIB(*NOCHG) + PRDLIB(*NOCHG) REPLACE(*YES) DLTOVR FILE(*ALL)
ENDPGM
Folgende Objekte werden auch erstellt:
Objekt Art Bibliothek Attribut
TEST *MSGF XXX
TEST *FILE XXX DSPF
TEST *MENU XXX DSPF
Nach dem Aufruf: GO MENU(XXX/TEST) erscheint dann folgende Fehlermeldung:
Nachrichten-ID . . . . : CPD6ADF Bewertung . . . . . . : 30
Nachrichtenart . . . . : Diagnose
Sendedatum . . . . . . : 07.10.19 Sendezeit . . . . . . : 11:57:35
Nachricht . . . : Bildschirmdatei TEST darf nicht von Menü verwendet werden.
Ursache . . . . : Für Bildschirmdatei TEST in Bibliothek XXX ist kein separater Bezugszahlenbereich definiert. Bildschirmatei TEST wird von Menü TEST in Bibliothek XXX verwendet. Für Bildschirmdateien, die von Menüs
verwendet werden, muss ein separater Bezugszahlenbereich definiert sein.
Fehlerbeseitigung: Definition der Bildschirmdatei so ändern, dass ein separater Bezugszahlenbereich definiert wird. Hierzu Schlüsselwort INDARA in den Datendefinitionsspezifikationen für die Bildschirmdatei angeben.
=> wird das Menü über SDA erstellt, funktioniert alles einwandfrei. Und in der MNUDDS ist standardmäßig INDARA vorgegeben.
Ich möchte erreichen, dass ich eine QMNUSRC via CL auslese und anhand der MNUDDS die Menüs generiere.
Weiß jemand Rat?
Gruß
Bodo
-
SDA erstellt doch ein Beispiel.
Nimm die DDS-Quelle des Menüs als Basis und baue deine Quelle genau so auf.
-
Hallo Baldur,
dass ist nicht das Problem. Die Quellen wurden über SDA erstellt. Nun sollen in einer anderen Umgebung die Menüs mit den SDA-Quellen generiert werden. Und das möchte ich im CL automatisieren.
Gruß
Bodo
-
Menu erstellen
Hallo,
alles richtig gemacht.
Fehler liegt ziemlich sicher daran,
dass ein ANDERES DSPF-Objekt mit dem Namen TEST
zum Erstellungszeitpunkt in einer anderen Bibliothek(die sich auch in der Libliste befinden) existiert.
Also zuerst mit WRKOBJ prüfen, wo überall TEST rumschwiert.
Viel Glück.
-
Hallo,
es ist kein Problem mit gleichen Objekten in verschiedenen Bibliotheken, dass kann absolut ausgeschlossen werden.
Problem hat eine andere Ursache. Trotzdem Danke.
Vielleicht hat ja noch jemand eine Idee???
Gruß
Bodo
-
WICHTIG:
Die DSPF muss als Satzformat den namen der DSPF enthalten.
Prüfe das bei deiner Generierung !
Bildschirmdatei (DSPF) - Hilfetext
Gibt die Bildschirmdatei an, die zum Erstellen des
Menüobjekts verwendet werden soll. Die Bildschirmdatei muß
ein Satzformat enthalten, das denselben Namen hat wie die
Bildschirmdatei selbst (genannt Menüformat). In der Datei
können ebenfalls Hilfeformate enthalten sein.
-
Alles sehr merkwürden....
Wir machen unsere Menüs mit nem eigenen CLP und das funktioniert supi.
Also laut Handbuch wären die Erstellungbefehle für Deinen Fall wie folgt:
CRTDSPF FILE(PERLIB/PERSMENU) +
SRCFILE(USERLIB/SFPERS) +
DFRWRT(*NO) +
RSTDSP(*NO)
CRTMSGF MSGF(PERLIB/PERSMENU) +
TEXT('Message file of commands for menu PERSMENU.')
CRTMNU MENU(PERLIB/PERSMENU) TYPE(*DSPF) DSPF(*MENU) +
MSGF(*MENU) DSPKEY(*NO) CMDLIN(*LONG) +
TEXT('Personnel menu')
Versuch das mal genauso, nur eben die Namen der LIB und des Objektes ersetzen.
Wenn Du schreibst dass bei Umwandlung durch automatik das funktioniert, dann prüfe doch mal die Umwandlungsliste, was da genau für Parameter gezogen werden.
kuempi
-
Wie schon erwähnt, sind die Quellen Original, also über SDA erstellt worden. Keine manuellen Änderungen vorgenommen. Die Quellen sind abolut einwandfrei.
Objekte werden ja auch erstellt, aber Verwendung klappt nicht (siehe Fehlermeldung im Beitrag oben)
Gruß
Bodo
(Nachsatz: Dies ist die Antwort auf die letzte Antwort von Baldur)
-
Hallo Kuempi,
nachdem ich Dein Handbuchzitat:
CRTDSPF FILE(PERLIB/PERSMENU) +
SRCFILE(USERLIB/SFPERS) +
DFRWRT(*NO) +
RSTDSP(*NO)
geringfügig erweitert habe,
CRTDSPF FILE(&SRCLIB/&MLNAME) +
SRCFILE(&SRCLIB/&PFSRC) SRCMBR(&MLNAME) +
TEXT(&MLMTXT) RSTDSP(*NO) DFRWRT(*NO)
funktioniert es einwandfrei.
Problem ist gelöst. Besten Dank an alle
Gruß
Bodo
-
Also ich kann deinen Fehler leider nicht nachvollziehen.
Ich habe mir per SDA ein Menü generieren lassen.
Habe dann die Quellenart auf DSPF umgestellt (was den CRTDSPF nicht interessiert) und manuell die Texte geändert.
Anschließend per CRTDSPF und CRTMNU die Objekte erstellt.
Per GO MTEST kann ich das Menü problemlos aufrufen.
Dann habe ich die DSPF-Quelle kopiert, den Namen des Satzformates angepasst, eine MSGF erstellt und wiederum CRTDSPF und CRTMNU aufgerufen.
Der Aufruf von MTEST2 klappt nun auch.
Ich weiß also nicht, was du da wo falsch machst.
Similar Threads
-
By Sony in forum IBM i Hauptforum
Antworten: 27
Letzter Beitrag: 20-07-09, 21:48
-
By federico in forum NEWSboard Drucker
Antworten: 6
Letzter Beitrag: 21-09-06, 09:55
-
By becama in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 23-06-06, 14:46
-
By WPF in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 02-06-05, 10:06
-
By Jelu1 in forum NEWSboard Programmierung
Antworten: 9
Letzter Beitrag: 16-04-05, 00:21
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks