[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jan 2006
    Beiträge
    37

    CLLE als Prozedur ins Serviceprogramm

    Hallo zusammen,

    ich möchte gerne CLLE-Programm-Funktionalitäten als Prozedur in einem Serviceprogramm hinterlegen.

    Ist dies möglich?

    Wenn ja:
    Wie kann ich in CLLE den Prozedurnamen definieren?
    Wie muss ich in CLLE den Returnvalue definieren?

    Es geht nicht darum, eine Prozedur aus CLLE aufzurufen. Mir ist klar, dass das mit DCLPRCOPT und CALLPRC funktioniert !!!

    Gruß
    Stefan

  2. #2
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Hallo Stefan,

    das geht ganz einfach:
    * CL mit CRTCLMOD als Modul erstellen
    * CL im SRVPGM hinterlegen.
    * Im RPG die Prototypdefinition mit Schlüsselword "ExtProc" einfügen

    Der Return geht über die Parameter.
    Soweit ich weis kannst du im CL nur über die SubRoutinen innerhalb vom CL einen Return-Value definieren.

    lg Andreas

  3. #3
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Sofern die Prozedur von außen aufgerufen werden soll, ist zusätzlich im Prototypen das Schlüssel-Wort Export erforderlich.
    Falls Du mit Bindersprache arbeitest sollte dann die Prozedur auch in der Binder-Quelle eingetragen werden.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  4. #4
    Registriert seit
    Jan 2006
    Beiträge
    37
    Hallo Andreas,

    vielen Dank für die schnelle Antwort. Leider habe noch nicht herausgelesen, wie ich innerhalb der CLLE Prozedur den Prozedurnamen definiere, der dann von außen aufgerufen wird und den ich auch in der Binder-Quelle eintragen kann.

    Wie lautet das CLLE-Schlüsselwort?

    Gruß
    Stefan

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Und wie man sehr schön sehen kann:
    Eine Prozedur hat keinen Returnwert.
    CL-Module können nur Prozeduren und keine Funktionen sein (hier fehlt wieder eine Erweiterung).
    Benötigt man CL als Funktion so muss man dieses wieder in einer HLL-Funktion kapseln.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  6. #6
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Zitat Zitat von Etherion Beitrag anzeigen
    Hallo Andreas,

    vielen Dank für die schnelle Antwort. Leider habe noch nicht herausgelesen, wie ich innerhalb der CLLE Prozedur den Prozedurnamen definiere, der dann von außen aufgerufen wird und den ich auch in der Binder-Quelle eintragen kann.

    Wie lautet das CLLE-Schlüsselwort?

    Gruß
    Stefan
    Da wirst du in CL nicht viel finden.
    Wenn du im RPG für den CL-Prozedur-Aufruf einen anderen Namen haben möchtest kannst du dies bei den Prototypen definieren:
    Code:
    D myProc1          PR                  ExtProc('CLLEMOD1')
    In CL kannst du keinen eigenen Namen für die Prozedur definieren. Name=Objekt.

  7. #7
    Registriert seit
    Jan 2006
    Beiträge
    37
    Hallo Andreas,

    vielen Dank.

    "Name=Objekt" war die letzte Info, die ich noch gebraucht habe.

    Gruß
    Stefan

Similar Threads

  1. Antworten: 2
    Letzter Beitrag: 12-08-14, 12:09
  2. hinzufügen Prozedur in bestehendes Serviceprogramm
    By Tonazzo in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 11-03-14, 09:26
  3. SQL Funktion ruft Serviceprogramm auf - Parameter übergabe
    By loisl in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 08-11-13, 16:37
  4. ILE RPG + CLLE
    By Ludger Muhmann in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 07-10-02, 14:06

Tags for this Thread

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •