-
ILE RPG Source in PGU übertragen
Hallo Community, wie oben schon beschrieben geht es darum ein Quellcode der im ILE RPG geschrieben ist, in PGU auf der AS/400 zu übertragen, sprich das Programm ist derzeit eben nur programmiert, jedoch habe ich die Aufgabe dieses Programm in eine Verwaltung mittels PGU zu programmieren. Nun steh ich bisschen auf dem Schlauch, da oftmals in der Source vorkommt: *IN99 IFEQ *OFF (meist nach einem SETLL). Nun meine Frage,
wie kann man das noch schreiben? Ohne Bezugszahl quasi.
Wäre super wenn mir jemand helfen könnte.
Viele Grüße aus Bayern!
-
Geht alles ohne BZ:
setll(e)
read(e)
reade(e)
readpe(e)
chain(e)
write(e)
delete(e)
update(e)
if %found()
if %eof()
if %error(); // früher Fehler-BZ, nun xxx(e)
-
SETLL mit READE-Schleife entspricht einer Auswahl an Datensätzen mit denselben Bedingungen.
-
Erstmal vielen Dank für deine schnelle Antwort! :-)
Wie würde man folgendes zb. Umsetzen? Hier möchte ich prüfen ob die Tour passt, die angegeben wurde. Die Eingabe wird in einer Tabelle überprüft und dann geschaut, ob das Eingegebene eben dem Wert in der Tabelle entspricht.
Code:
TOURF2 IFNE *BLANK MOVEL(P) TGTOUR GRUPTW
MOVEL(P) TOURF2 WERTTW
KEYTAB SETLL TABWERRC 99
*IN99 IFEQ *OFF
SETON 4666
-
Das ist auch mit dem CHAIN möglich, falls man den in PGU umsetzen kann...
-
Moin,
Du kannst die Logik nicht unbedingt in ein PGU umsetzen, da PGU ein Dialogprogrammgenerator ist, der eine „feste“ Logik hat.
Du kannst allerdings in jedem PGU Punkt - z. B. vor Ausgabe des Formats, nach Ausführung Feldprüfung usw. - eigene Logik einbauen. Also auch CHAIN auch ohne BZZ.
Dabei ist es unerheblich, ob Du „reines“ RPG oder Freeform einbaust.
mfg
DKSPROFI
-
Ein CHAIN sucht genau den Schlüssel, der ggf. auch verkürzt angegeben werden kann.
Allerdings gilt bei "not %found()" der Zeiger als undefiniert, so dass ein nächster READE a) nicht erfolgreich sein muss oder b) nicht zwingend den nächsten Satz abgibt.
Nur SETLL/SETGT setzt den Dateizeiger für einen nachfolgenden READE/READPE.
Was den Austausch der Anweisung angeht:
SETLL ohne Bezugszahl, anschließend "if not %found()".
Übrigens: Der Status %eof(), %found(), %error() ist für jede Datei statisch bis zu nächsten IO-Anweisung derselben Datei, so dass mit %xxx(Datei) der Status jederzeit erneut prüfbar ist.
-
Vielen Dank euch allen für die hilfreichen Antworten!
Ich habe es nun umgesetzt und die Fehlerprüfung funktioniert auch dementsprechend.
Habe nun 2 funktionierende Wege gefunden.
Geht man nach PGU - Basis, funktioniert auch folgendes:
Code:
EXSR CHKSKEY IF $SCHKERR = 'J'
$$RTRN0001 IFEQ '1'
Danach eben dirket EVAL #MSGDT = ' '
Ihr habt mir auf jeden Fall alle auf die Sprünge geholfen! :-)
Schöne Arbeitswoche noch an alle!
Similar Threads
-
By dholtmann in forum NEWSboard Programmierung
Antworten: 19
Letzter Beitrag: 07-10-15, 23:18
-
By programmer400 in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 18-11-14, 15:22
-
By Gimli in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 08-04-03, 08:54
-
By hs in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 18-11-02, 14:44
-
By mott in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 20-06-02, 10:24
Tags for this Thread
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