Zitat Zitat von harkne
Ich habe bei einer anderen Frage hier mal das qualified bei Datenstrukturen aufgenschappt und probiert.

Ich habe jetzt in meinem Programm eine Datenstruktur namens Stellplatz und dort qualified angegeben und die Unterfelder Art und Anzahl.

Also:

PHP-Code:
d AryStellPlatz   ds                  dim(999qualified 
d  Art                            4                       
d  Anzahl                        6  0 
Da die Anzahl eine Summe aus mehreren Datensätz ist wollte ich einen %lookup machen um zu sehen ob die Art bereits vorhanden ist. Wenn ja Anzahl im entsprechenden Element hinzuzählen. Wenn nein MaxIdx um 1 erhöhen und Art und Anzahl in nächstes freies Element reinstellen. Ich hoffe es ist klar.

Jetzt endlich meine Frage ?
Der %lookup auf AryStellPlatz.Art funktioniert aber nicht. Fehler bei der Umwandlung
Wie kann ich die Arten durchsuchen ? Muss ich die wirklich nacheinander durchlesen ?
Dazu musst Du die Feldgruppe als Datenstruktur-Unterfeld definieren und durch die Unterfelder Art und Anzahl überlagern. Durch die Überlagerung werden diese Unterfelder automatisch als Feldgruppen definiert.:
PHP-Code:
D MyDS            DS                  Qualified                          
D  AryStellPlatz                      Dim
(999)                           
D    Art                        10A   overlay(AryStellPlatz)             
D    Anzahl                      6  0 overlay(AryStellPlatz: *Next)      
 *-------------------------------------------------------
 /
Free                                   
   MyDS
.Art(1) = 'ABC';                  
   
MyDS.Anzahl(1) = 123;                 
   
Dsply MyDS.AryStellPlatz(1);          
                                         
   
Pos = %LookUp(*BlanksMyDS.Art);     
   
Dsply Pos
   *
InLR = *On;                   
 /
End-Free 
Birgitta