Read-only record list (DISPLAY ARRAY) / Examples |
Form definition file "custlist.per" (same as in Example 1)
SCHEMA shop MAIN DEFINE arr DYNAMIC ARRAY OF RECORD LIKE customer.* DEFINE cnt, ofs, len, row, i INTEGER DATABASE shop OPEN FORM f1 FROM "custlist" DISPLAY FORM f1 DECLARE c1 SCROLL CURSOR FOR SELECT id, fname, lname FROM customer OPEN c1 DISPLAY ARRAY arr TO srec.* ATTRIBUTES(COUNT=-1) ON FILL BUFFER LET ofs = fgl_dialog_getBufferStart() LET len = fgl_dialog_getBufferLength() LET row = ofs FOR i=1 TO len FETCH ABSOLUTE row c1 INTO arr[i].* IF SQLCA.SQLCODE!=0 THEN CALL DIALOG.setArrayLength("srec",row-1) EXIT FOR END IF LET row = row + 1 END FOR AFTER DISPLAY IF NOT int_flag THEN DISPLAY "Selected customer is #" || arr[arr_curr()-ofs+1].id END IF END DISPLAY END MAIN