-
Prozedur in CLLE
Guten Tag,
wir haben ein Modul zur Prüfung, ob ein Benutzer bestimmte Funktionen benutzen darf. Es ist in RPGLE geschrieben. Das Modul heißt BERPRU_P. Darin ist die Prozedur ber_pru.
Diese möchte aus aus einem CLLE Programm aufrufen. Ich erstelle das CLLE Modul und versuche dann dann das Programm zu erstellen.
Code:
CRTPGM PGM(MSPBH02) MODULE(MSPBH02 BER_PRU)
Dabei erhalte ich den Fehler
CPD5D02
Definition für Symbol 'BER_PRU' nicht gefunden.
Kann mir jemand sagen, was ich ändern kann/muss, um das Programm zu erstellen?
Herzlichen Dank im Voraus
Hubert
-
Ich habe das immer mit einer BNDDIR in ein CLLE eingebunden. Versuch es mal damit.
Code:
DCLPRCOPT LOG(*NO) USRPRF(*OWNER) AUT(*EXCLUDE) DFTACTGRP(*NO) ACTGRP(*NEW) +
BNDDIR(MYLIB/MYBND)
-
Leider nicht.
Ich habe ein BNDDIR angelegt:
Code:
Objekt Art Bibliothek
MSPBH02 *MODULE *LIBL
BER_PRU *MODULE *LIBL
und versucht, das Programm zu erstellen:
Code:
CRTPGM PGM(MSPBH02) MODULE(*PGM) ENTMOD(*PGM) BNDDIR(MSPBH02)
Das Ergebnis ist das gleiche.
-
Schau dir die Exporte mal per DSPPGM genau an.
Die Aufrufe sind Casesensitive.
-
Zitat von Hubert
_______________________ Das Modul heißt BERPRU_P.
CRTPGM PGM(MSPBH02) MODULE(MSPBH02 BER_PRU)
Hubert
... meistens hat der Blechkasten Recht!!!
-
Blöde Frage... müsstest du das CLLE nicht mittels CRTBNDCL umwandeln?
-
Zitat von prsbrc
Blöde Frage... müsstest du das CLLE nicht mittels CRTBNDCL umwandeln?
... einfache Antwort: Nein!!!
-
Klar. Bin noch im Mittagsschlafmodus. Wenn alles schon fix fertig in Module verpackt ist dann nicht, hast recht :-)
-
Module können nur direkt gebunden werden, wenn es sich bei der aufzurufenden Prozedur um die Main-Procedure handelt (globale C-Bestimmungen).
Bei sonstigen exportierten Prozeduren, muss das Modul zunächst in einem Service-Programm gebunden werden.
Wenn dann das Service-Programm in einem Binderverzeichnis eingetragen ist, kann man das Programm direkt mit CRTBNDCL erstellen.
Voraussetzung ist allerdings, dass das Programm nicht in der Default-Aktivierungsgruppe erstellt wird und dass das Binder-Verzeichnis angegeben wird. Beides kann man beim CRTBNDCL angeben. Besser ist allerdings, man hinterlegt die Aktivierungsgruppe und das Binder-Verzeichnis im DCLPRCOPT-Befehl im CL-Quellcode.
... ich würde allerdings eine benannte Aktivierungsgruppe der Aktivierungsgruppe *NEW vorziehen.
Birgitta
-
Zitat von B.Hauser
Module können nur direkt gebunden werden, wenn es sich bei der aufzurufenden Prozedur um die Main-Procedure handelt (globale C-Bestimmungen).
Bei sonstigen exportierten Prozeduren, muss das Modul zunächst in einem Service-Programm gebunden werden.
Birgitta
... noch jemand im Mittagsschlafmodus?!
Ich sage nur: Bind by Copy, bind by Reference.
-
Module können auch ohne Serviceprogramm gebunden werden.
Module müssen keine Main-Funktion haben da sie ja nur ein Modul sind.
Beim CRTPGM kann ich eine Liste der Module angeben, wobei das Modul mit der Main-Prozedur explizit angegben werden kann, die ich zu einem Programm binde, bei CRTBNDxxx eben Binderverzeichnisse, die auch nur Module enthalten können.
ACTGRP(*NEW) wird auch häufig verwendet um Programme ohne Main rekursiv aufrufen zu können.
Zusätzlich ist sichergestellt, dass nach dem Ende alles aufgeräumt wird und nicht Reste in der ACTGRP hängenbleiben (z.B. geöffnete Dateien, Satzsperren, u.v.m.).
Similar Threads
-
By camouflage in forum NEWSboard Programmierung
Antworten: 26
Letzter Beitrag: 15-03-21, 13:13
-
By dibe in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 18-09-15, 09:55
-
By Etherion in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 30-09-14, 13:36
-
By muadeep in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 13-02-06, 16:35
-
By Ludger Muhmann in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 07-10-02, 14:06
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