-
free rpg CALLB
01. Wie ist die Syntax für CALLB mit Parameter-Übergabe
(PLIST) im free rpg.
02. Gibt es für PLIST Ersatz im Free RPG ?
Vielen Dank im voraus für Antworten.
mfg. Ludger
-
Schau mal ein paar Einträge früher (Ersatz für *ENTRY).
Genau dies ist auch hier die Lösung.
Also:
Prototyp definieren
und CALLP verwenden.
-
Hallo Baldur,
nach meinigen bisherigen Kenntnissen kann man in RPG IV
im festen Format folgendes verwenden:
CALL (Aufruf eines anderen Programmes)
CALLB (Aufruf statisch gebundene Module)
CALLP (Aufruf von Prozeduren / Service-Programmen,
die dynamisch beim 1. Aufruf gebunden werden)
Gibt es im freien Format kein CALLB und CALL mehr, sondern
nur noch CALLP ?
mfg. Ludger
-
JA !
Aber du kannst die Call's ja in kleine Sub-Routinen einbauen und rufst diese im Free-Format mittels "exsr MyCall" auf.
-
Gibts es denn bei der Verwendung von CALLP im Free RPG Unterschiede zu beachten, abhängig davon, ob es sich im Festen Format um CALLB oder CALLP gehandelt hat. ?
mfg. Ludger
-
Hallo,
CALLP ist eine reine Compileranweisung und meint Call mit Prototyp. Im Prototyp steht dann ob es sich um einen CALL (EXTPGM) oder CALLB (EXTPROC) handelt generiert wird dann ein dynamischer call wie bei CALL oder ein gebundener call wie bei CALLB.
Bei der Verwendung von Prototypen erweitern sich dann die Möglichkieten für die Aufrufe weitere Angaben zu machen und es kommt die Möglichkeit hinzu das ganze freeformat zu machen und Rückgabewerte zu verwenden.
@Baldur: wenn schon ILE, warum dann Subroutine? Mir sind die Subroutines genauso ausgegangen, wie die Bezugszahlen und CALL und CALLB und LOOKUP und MOVE und READ und CHAIN und sonstiger Record Level Access.
mfg
Dieter Bender
-
Hallo Baldur und Dieter,
danke für Eure Mühe.
mfg Ludger
-
Ich habe einen ersten Versuch gemacht mit CALLP in Free Format
für ein statisch gebundenes Programm.
D BDA020PR PR extproc('BDA020PR')
D 3 0 Pers-Nr.
D 3 0 Arbeitsgang-Nr.
D 2 0 Produktgruppe
D 25 Personal-Name
D 25 Arbeitsgang-Text
D 25 Produktgruppen-Text
D* - - - - - - - -
D parmPers 3 0
D parmAgng 3 0
D parmPrgr 2 0
D parmPerstx 25
D parmAgngtx 25
D parmPrgrtx 25
callP BDA020PR (parmPers armAgng armPrgr armPersTx:
parmAgngTx armPrgrtx);
Es wird beim Compilieren des Moduls dann folgender Fehler gemeldet.:
*RNF5410 30 1 Der Prototyp für den Aufruf ist nicht definiert.
Was habe ich vergessen ??
mfg. Ludger
-
Der Doppelpunkt : mit anschl. P bewirkt wohl ein Smilie ?!
-
Hallo Ludger,
wenn es sich nicht um etwa Code (sprich aus dem Gedächtnis) handlet, dann müssen da noch mehr Fehler sein; die Deklaration des Prototyps ist bei den Parametern Fehlerhaft. Und das sieht mir nach Folgefehler eines anderen Fehlers aus.
Es wäre sinnvoll als erstes mal Smileys abzustellen, die nerven im Code nur (mich jedenfalls). Als zweites bitte den Original Code ausschneiden und alle Fehler mit zugehörigen Bezügen aus der Wandlungsliste zu posten, aber dann findest Du es wahrscheinlich schon selber.
Im Übrigen sind sprechende Namen nicht verboten und verbessern die Lesbarkeit des Codes für Außenstehende immens.
mfg
Dieter Bender
-
Hallo Dieter,
du hattest recht. Nach Bereingung aller weiteren Fehlermeldungen habe ich dann selber die Ursache gefunden.
Mir ist aufgefallen, dass bei FREE RPG bedeutend mehr Fehler (teilweise mit unklarer Aussage) angemeckert werden als beim FIXED RPG. Z.B. kann alleine ein fehlendes Semikolon zu einer ganzen Lawine von Folgefehlern führen.
Das Abstellen der Smilies habe ich beherzigt.
mfg. Lugder
-
Endlich kommen die RPGler in den Genuss der fehlenden SEU-Unterstützung (was in vielen Programmiersprachen gang und gäbe ist).
Erst seit der Visual-Unterstützung (VisualStudio, WebSphere o.ä.) spart man sich die Tipparbeit ein wenig und kann dann auch lange Namen verwenden.
Versucht man sich weiterhin in SEU und /free-RPG wird man immer häufiger erst fehlerhafte Umwandlungen korrigieren, was einem ja SEU bei festem Format weitgehends abnimmt.
Das /free-Format find ich im übrigen sehr gut, da man endlich auch die Quelle übersichtlicher strukturieren kann (Einrückungen, beliebige Kommentar).
Mal sehen, wie das ganze dann mit WebSphere-Client funktioniert. Vielleicht gibts da ja ähnliche Ansätze wie mit den Visual-Produkten anderer, so dass Tipparbeit weniger wird.
Similar Threads
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 14-03-08, 06:21
-
By Fucasdreh in forum NEWSboard Server Job
Antworten: 0
Letzter Beitrag: 10-01-07, 13:12
-
By mgraskamp in forum NEWSboard Programmierung
Antworten: 13
Letzter Beitrag: 16-02-06, 16:01
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 7
Letzter Beitrag: 25-01-05, 07:43
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 12-07-04, 09:27
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