View Full Version : Verknüpfte Feldgruppe
Hallo,
Habe in einem ILE RPG zwei feldgruppen
die zur Laufzeit gefüllt werden
d trm5 s 3a dim(50)
d anz5 s 4s 0 dim(50)
..
c P5coli lookup trm5(i) 55
c if *in55 = *on
c eval anz5(i) = anz5(i) + P5anps
c else
c *blanks lookup trm5(i) 55
c eval trm5(i) = P5coli
c eval anz5(i) = P5anps
c endif
ich möchte die erste Feldgruppe mit SORTA sortiern und dabei soll die zweite mit sortiert werden.
Was muß ich in der D bestimmung noch tun um dies zu erreichen?
Danke im Voraus
Gruss
DD3TJ
Thibaut Foucart
versuche es mal damit
d ds
d MyFldGrp Dim(100)
d trm5 3a Overlay( MyFldGrp )
d anz5 4s 0 Overlay( MyFldGrp : *Next )
Gruß
Ronald
Hallo,
Danke es hat funktioniert.
gruss
DD3TJ
Thibaut Foucart
Hallo zusammen,
habe eine ähnliche Feldgruppe bei der die BIF %LOOKUP nicht funktioniert. Nehme ich den Operationcode LOOKUP dann klappt es? Bin nicht dahinter gekommen an was es liegt, hat jemand bereits ähnliche Erfahrungen gemacht?
d ds
Da_mhdlos 53 dim(500) ascend
D a_mhd 43 overlay(a_mhdlos:1)
D a_men 10S 0 overlay(a_mhdlos:44) inz(0)
diese Zeile funktioniert nicht (y = immer 0), obwohl a_mhd mit Werten gefüllt und im Suchfeld v_hf0043 exakt ein enthaltener Wert abgefragt wird?
c* eval y = %lookup(v_hf0043:a_mhd)
nachfolgender Code funktioniert mit gleichen Feldinhalten
c eval y = 1
c v_hf0043 lookup a_mhd(y) 36
c if *in36 = *off
c eval y = 0
c endif
c if y > 0
c else
c eval y = %lookup(*blank:a_mhd)
c move v_hf0043 a_mhd(y)
c endif
MfG
Chera
Hallo Chera,
ich würde bei dem statement
c* eval y = %lookup(v_hf0043:a_mhd)
mal einen Startindex mitgeben, wie:
c* eval y = %lookup(v_hf0043:a_mhd:1)
das machts du bei dem zweiten Beispiel, das ja funktioniert nämlich auch, indem du vorher y auf 1 setzt.
Karl-Heinz
Hallo,
habe das eigentlich immer ohne Startindex gemacht, funktioniert ja auch wenn ich den nächsten leeren Feldgruppenindex suche.
c eval y = %lookup(*blank:a_mhd)
Aber danke für den Tipp, werde das mal ausprobieren.
Chera
Brauchst Du eigentlich unbedingt das Schlüssel-Wort ASCEND?
Da Du nur auf gleich vergleichst und nicht auf größer oder kleiner. Sollte dieses Schlüssel-Wort nicht erforderlich sein, entferne es.
Sofern führe, sofern Du das Schlüssel-Wort ASCEND wirklich brauchst vor dem %LOOKUP einen SORTA durch.
Birgitta
Hallo Britta,
auch dir danke für deinen Tipp. ACSEND wird nicht benötigt, war für eine andere Variante gedacht, werde es entfernen.
Trotzdem sollte doch die BIF mit dem Operationscode das gleiche Ergebnis liefern?
Chera