-
Gepackte Felder in RPG II (RPG36)
Hallo zusammen,
ich muss eine Anpassung in einem RPG II Programm durchführen und brauche dazu ein gepacktes Feld. Das Feld soll gepackt 6,0 definiert sein.
Mit
C Z-ADD*ZEROS FELD 60
bin ich schon hereingefallen. Ich dachte, das Feld wird wie im RPG III als gepacktes Feld definiert. Aber der Compiler macht daraus ein gezontes Feld.
Ich habe es auch schon über eine DS versucht, aber das haut irgendwie auch nicht hin. Vielleicht mache ich hier ja aber etwas falsch.
I DS
I P 1 40FELD
Weiß jemand, ob man in RPG II ein Feld explizit als gepackt definieren kann (und wenn ja, wie)?
Danke und Grüße
Thomas
-
Die Datentypen P (gepackt), S (gezont) und B (binär) werden im Free Format durch die Schlüsselworte PACKED, ZONED und BINDEC ersetzt.
Im Free-Format entspricht PACKED(11, 2) der Fix-Format-Definition 11P 2.
Wird ein Feld im Free-Format mit ZONED(7) angegeben, so entspricht dies im Fix-Format der Definition 7S 0.
Hoffe das hilft
Paul Hofmann
-
Feld 6.0 gepackt = Feld gezont 11.0
Ich hoffe, ich hab die Frage so verstanden. Alles andere macht keinen Sinn.
Anmerkung: Felddefinitionen nur für I/O packen. Für interne Felder ist das Format egal.
kf
-
Hallo Paul,
danke für Deine Antwort, aber mit Free-Format kann ich unter RPG II (RPG36) leider nichts anfangen.
Für mein Problem sollte ich wissen, wie ich ein Feld unter RPG II explizit als gepackt definieren kann.
Gruß
Thomas
-
In den Rechnenbestimmungen wird das Feld ganz normal mit 6,0 Stellen definiert.
In den Ausgabebestimmungen wird dann in der Stelle 44 ein P angegeben und das Feld wird gepackt gefüllt.
O FELD 4P
In den Eingabebestimmungen sieht es dann so aus:
I P 1 40FELD
Manfred Maschke
-
Zitat von camouflage
Feld 6.0 gepackt = Feld gezont 11.0
Ich hoffe, ich hab die Frage so verstanden. Alles andere macht keinen Sinn.
Anmerkung: Felddefinitionen nur für I/O packen. Für interne Felder ist das Format egal.
Nicht ganz.
Ich weiß, wie man in RPG III bzw. RPG IV (ILE) ein gepacktes Feld definiert. Aber unter RPG II (RPG36) funktioniert das irgendwie nicht.
Das Feld benötige ich als Parameter an ein CL-Programm, das will die Daten gepackt haben.
-
Vielleicht liegt's daran:
AS/400 Performance Management Version 3 Release 1 (April 1995)
... Other systems may process other numeric field types more efficiently. For example, System/36 uses zoned decimal arithmetic. Since the System/36 RPG compiler on the AS/400 (CRTS36RPG) does not generate packed decimal fields, you must use the CRTRPGPGM to get packed decimal field code generated for running on an AS/400.
-
Ggf. kann man sich dann mit einem Trick behelfen, in dem man eine externe DS (soweit das da schon geht) erstellt, die das Feld als gepackt definiert.
Vielleicht übernimmt der Compiler das dann auch als gepackt.
-
Oder den Wert als Zeichenkette übergeben und im CL empfangen und in ein numerisches Feld übertragen. Vorsicht bei negativen Werten!
-
Und dann gibts ja immer noch die "Wrapper"-Option:
RPG mit Zoned-Parameter, übertragen in Packed und Aufruf des Originals.
Ggf. Rückübertragen des Wertes wenn es eine Returnwert sein soll.
-
Das habe ich fast schon vermutet/befürchtet. Danke für den Link.
Ich hatte gehofft, dass es doch irgendwie möglich sein könnte, gepackte Felder zu definieren.
Dann muss ich doch den Umweg über einen Wrapper machen.
-
Ja, das mit dem Wrapper habe ich mir auch schon überlegt und werde das wohl machen.
Danke für Deine Antwort.
Similar Threads
-
By uditzen in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 26-06-15, 10:03
-
By cicero22 in forum IBM i Hauptforum
Antworten: 12
Letzter Beitrag: 03-09-14, 18:45
-
By Tonazzo in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 12-06-14, 22:50
-
By Harald.Wallukat in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 16-12-02, 20:37
-
By andi in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 23-07-01, 17:23
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