[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Sep 2008
    Beiträge
    70
    ...allerdings bekomme ich zu den Prozeduren mit DSPMOD nicht die Ein-/Ausgabeparameter angezeigt.
    Ich bekomme nur die Prozedurnamen.

    Erreichen möchte ich damit einen Prozedurkatalog, den ich für alle Programmierer zur Verfügung stellen kann.
    Da die Prozedurnamen weitestgehend sprechend sind, benötige ich auch keine weiteren Beschreibungen dazu.

    Für SQL-Prozeduren gibt es diese QSYS2-Tabellen ja aber für Serviceprogramm-Prozeduren habe ich noch nichts gefunden.

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    ... die Parameter sind nur in der Quelle zu finden. Für diesen Zweck würde ich mir mal RPGDOC anschauen, hab ich aber selber noch nicht ausprobiert. Üblicherweise schreibe ich die blackbox Kurzdoku in die Header Copystrecken.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    RDi interpretiert alle Importe (Copy/Include) einer Quelle um daraus eine ItelliSense-Liste zu generieren.
    Eine Art Reflection, wie man sie von anderen Sprachen kennt (Java/.NET) gibt es für ILE nicht.
    In QSYS2 findest du ausschließlich SQL-Definitionen und da gibt es natürlich ein Repository für Funktionen/Prozeduren sowie deren Parametern, da diese von SQL zur Laufzeit geprüft werden.

    In ILE gibt es keine Laufzeitprüfung außer unerwarteten MCH-Fehlern.
    D.h., deine Aufrufe werden ausschließlich durch die Source-Prototypen kompiliert.
    Ob der Prototyp tatsächlich zum Aufruf später passt, interessiert weder den Linker (CRTPGM) noch der ausführende Befehe.
    Man erinnere sich DSPPGM wird die Anzahl der Parameter angezeigt:
    Bei CLP steht da dann z.B "2 - 2", d.h., dass genau 2 Parameter erwartet werden.
    Bei ILE/RPG/COBOL steht da dann 0 - 255, d.h., du kannst beliebige Parameter zwischen 0 und 255 übergeben.
    Leider verhält sich das genauso bei ILE-Prozeduren.
    Hier gilt die Regel: Der Programmierer wird schon wissen, was er tut.
    Bei Objekt-Sprachen (Java, .Net., Delphi o.ä.) gibt es diesbezüglich eben Laufzeitprüfungen über Typen und Parameter.

    Deshalb wird da kein Repository angeboten.

    Es gibt allerdings für Programme (nicht für Module), einen Parameter, mit dem man sich XML-Strukturen im IFS erzeugen lassen kann da diese für irgendwelche Remote-Aufrufe benötigt werden.
    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

  4. #4
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Ist bei denen wohl wichtig, um die richtige Funktion/Prozedur/Methode zu finden, da sie überladen sein kann?

    Zitat Zitat von Fuerchau Beitrag anzeigen
    In QSYS2 findest du ausschließlich SQL-Definitionen und da gibt es natürlich ein Repository für Funktionen/Prozeduren sowie deren Parametern, da diese von SQL zur Laufzeit geprüft werden.
    ...
    Bei Objekt-Sprachen (Java, .Net., Delphi o.ä.) gibt es diesbezüglich eben Laufzeitprüfungen über Typen und Parameter.

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    RPG kennt keine Überladungen, hier muss man immer neue Funktionsnamen erfinden.
    In SQL wiederum ist das natürlich möglich.
    Aus der Eingangsfrage (RDi und Intellisense) habe ich aber entnommen, dass es sich nicht um SQL handelt.
    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
    Jan 2012
    Beiträge
    1.199
    Wir standen vor dem gleichen Problem. Da wir keine andere Lösung gefunden haben, haben wir in unser Compile-Script einen Aufruf eines selbstgeschriebenen Programms eingebaut, das den Source des erfolgreich gewandelten Programmes interpretiert und einen passenden Prototyp erzeugt und in ein Repository schreibt.

    Das war ganz schön aufwendig. Schade, dass IBM da keine Standardlösung anbietet.

    Wenn du da etwas findest (z.B. passende APIs), lass es uns wissen!

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Vielleicht basiert der RDi-Editor ja auf OpenSource und man kann sich die Quell-Analyse daraus entnehmen, da ja dort alle Variablen analysiert werden könnte dies ebenso hilfreich für ein Repository sein.
    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

  8. #8
    Registriert seit
    Jan 2012
    Beiträge
    1.199
    Coole Idee. Ich muss unser Java Kollegen mal fragen, ob die da etwas herausfinden können.

Similar Threads

  1. User defined Functions auflisten
    By msost in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 18-08-16, 14:59
  2. Prozeduren in Servicepgm von einem Anderen Programm aus aufrufen.
    By dholtmann in forum NEWSboard Programmierung
    Antworten: 13
    Letzter Beitrag: 22-07-16, 08:57
  3. SQLRPGLE Get und Set Prozeduren
    By iseries_user in forum NEWSboard Programmierung
    Antworten: 14
    Letzter Beitrag: 11-05-16, 10:13
  4. Interne Prozeduren mit DFTACTGRP
    By DEVJO in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 16-09-15, 13:14
  5. Probleme mit SQL-Prozeduren
    By AnjaS in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 16-01-03, 09:18

Berechtigungen

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