-
Dafür ist leider die Sprache (ILE)RPG vollkommen ungeeignet.
Der Feldname dient ja nur uns für die Addressierung des Speichers. Zur Laufzeit spielt letztlich der Name keine Rolle mehr.
Was du machen willst Bedarf am Ende Pointerarithmetik und %Subst().
Per API liest du dir die Feldstruktur der externen Tabelle ein und baust ein weiteres Array auf:
- Name = Name des Feldes
- Pointer = Verweis auf die Basis der externen Struktur + Position des Feldes aus dem API.
- Länge = Länger des Feldes.
Zusätzlich nun 2 Singelfelder:
dcl-s ptr pointer;
dcl-s Feld char(1000) based(ptr);
Hilfsfelder:
dcl-s index int(5);
dcl-s j int(5);
Wenn das Array nach Name sortiert hast, kannst du mit %lookupeq() schnell ein Element auslesen.
Nun kannst du durch dein vorher aufgebautes Array mit den 3000 Namen und Inhalten in einer Schleife folgendes tun:
for j=1 to 3000;
index = %lookupeq(name[j]:PtrArray);
ptr = PtrArray(index).Pointer;
%subst(Feld:1:PtrArray(index).Size) = Value[j];
endfor;
Allerdings ist eine Umwandlung in numerische Felder nur per select/when je Typ mittels %dec() durchführbar, weil die Argumente Stellne/Nachkomma von %dec nur Konstanten sein können.
Similar Threads
-
By Aban13 in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 10-05-20, 07:28
-
By ora in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 22-06-19, 17:26
-
By Sebastian85 in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 05-07-17, 13:16
-
By MGJ79 in forum NEWSboard Programmierung
Antworten: 7
Letzter Beitrag: 24-04-14, 10:00
-
By Harald.Wallukat in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 16-12-02, 20:37
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