Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • GENERIC(*YES)というオプションがあるので、顧客名(#NAME)による一般的な検索処理が自動的に組み込まれます。

バージョン2

   
     GROUP_BY   NAME(#CUSTOMER) FIELDS(#CUSTNO #NAME #ADDL1 
           #ADDL2 #ADDL3)
DEF_LIST   NAME(#BROWCUST) FIELDS((#CHOOSE *SELECT)
           #CUSTNO #NAME) COUNTER(#NUMCUSTS)
DEFINE     FIELD(#GENNAME) REFFLD(#NAME)
 
BEGIN_LOOP
 
<< Display the list - empty on first cycle >>
 
DISPLAY    FIELD((#GENNAME *INPUT))
           BROWSELIST(#BROWCUST)
 
<< Process any selected entries - none in first cycle >>
 
CHANGE     FIELD(#TOTSELECT) TO(0)

SELECTLIST NAMED(#BROWCUST) GET_ENTRYS(*SELECT)
CHANGE     FIELD(#TOTSELECT) TO('#TOTSELECT + 1')
FETCH      FIELDS(#CUSTOMER) FROM_FILE(CUSTMST)
           WITH_KEY(#CUSTNO)
DISPLAY    FIELDS(#CUSTOMER)
ENDSELECT
 
<< If none selected build a new list >>
 
IF         COND('#TOTSELECT = 0')
 
    CLR_LIST   NAMED(#BROWCUST)
    SELECT     FIELDS(#BROWCUST) FROM_FILE(CUSMSTV1)
               WITH_KEY(#GENNAME) GENERIC(*YES)
    ADD_ENTRY  TO_LIST(#BROWCUST)
    ENDSELECT
 
    IF   COND('#NUMCUSTS = 0')
    MESSAGE  MSGTXT('No customers found with this name')
    ENDIF
 
ENDIF
 
END_LOOP

...