-
CL-Befehle in REXX/400
Hallo liebe Kollegen von der AS/400-Zunft,
nachdem ich mich nun (als AS/400-Neuling) durch die
Grundlagen gekaempft habe, habe ich mich nun der Programmierung zugewandt und als Einstieg den REXX/400-Interpreter gewaehlt.
Dabei bin ich bereits nach ca. 5 Zeilen auf das erste Problem gestossen. Mein kleines Einstiegsprogramm sieht ungefaehr so aus:
/* REXX-Test */
say 'My first REXX program...'
address command
'SNDMSG MSG(Hello operator...) TOUSR(*SYSOPR)'
say 'Press any key to continue...'
pull .
exit
---------------------------------------------------------
Das Problem liegt bei dem CL-Befehl SNDMSG.
Ich bekomme immer einen RC von 'CPF0001' zurueck!
Die Nachrichten-Beschreibung sagt dazu lapidar 'Fehler in Befehl &1 gefunden'.
Der Befehl ist syntaktisch okay, ich habe ihn auch in dieser Form von der Kommandozeile ausgefuehrt.
Die Syntax im Programm entspricht auch der Beschreibung in der REXX-Referenz zur Ausfuehrung von Befehlen des jeweiligen Environments.
Was mache ich falsch?
Gruss
Reiner Ziegler
PS.: Kennt jemand noch andere Literatur ueber REXX/400 (ich habe nur die "Programmers Guide" und "Reference" gefunden)? Mich wuerde zum Beispiel interessieren, ob es moeglich ist, aus REXX heraus API-Funktionen auszufuehren (Socket-API).
-
Schau dir die Syntax von CL-Befehlen genauer an. Texte müssen in einfache Hochkomma gesetzt werden:
"SNDMSG MSG('Hello operator...') TOUSR(*SYSOPR)"
Alternativ auch:
Msg = 'Hello operator...'
'SNDMSG MSG(&Msg) TOUSR(*SYSOPR)'
Alle Programme, die direkt aufgerufen werden können, können auch von REXX verwendet werden.
Bei den Übergabe-Parametern ist das Problem allerdings die Art der Variablen (Strukturen, gepackte Felder, usw.). Diese muss man meist per Hex-Funktionen zusammen setzen.
Was die Socket-Funktionen angeht, so sind das C-Funktionen und keine Programme, daher von REXX nicht einsetzbar.
Allerdings wird von REXX sehr komfortabel SQL unterstützt.
-
Hallo,
vielen Dank fuer die Loesung!
Die Variante mit den (einfachen) Hochkommas hatte ich auch schon probiert. Was ich allerdings NICHt probiert hatte, war den gesamten Environment-Befehl in DOPPELTE Hochkommas einzuschliessen!
Danke und Gruss
Reiner Ziegler
Similar Threads
-
By Sony in forum IBM i Hauptforum
Antworten: 27
Letzter Beitrag: 20-07-09, 21:48
-
By schatte in forum NEWSboard Programmierung
Antworten: 19
Letzter Beitrag: 10-01-07, 11:32
-
By cimbala in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 10-12-06, 16:46
-
By kuempi von stein in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 19-07-06, 14:34
-
By bo1 in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 23-06-06, 15:00
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