| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- DEF VAR cwords AS CHAR NO-UNDO.
- DEF VAR ii AS INT NO-UNDO.
- DEF BUFFER bBuffer FOR labeltexte.
- DEF VAR hbBuffer AS HANDLE NO-UNDO.
- hbBuffer = BUFFER bBuffer:HANDLE.
- DEF VAR cDatatype AS CHAR NO-UNDO.
- DEF VAR cchar AS CHAR NO-UNDO.
- FOR EACH bBuffer:
- cwords = ''.
- DO ii = 1 TO hbBuffer:NUM-FIELDS:
- IF hbBuffer:BUFFER-FIELD(ii):BUFFER-VALUE = ? THEN NEXT.
- IF hbBuffer:BUFFER-FIELD(ii):BUFFER-VALUE = '' THEN NEXT.
- IF hbBuffer:BUFFER-FIELD(ii):BUFFER-VALUE = '0' THEN NEXT.
- IF INDEX(hbBuffer:BUFFER-FIELD(ii):NAME, 'SHA') > 0 THEN NEXT.
- IF INDEX(hbBuffer:BUFFER-FIELD(ii):NAME, 'word') > 0 THEN NEXT.
-
- cDatatype = hbBuffer:BUFFER-FIELD(ii):DATA-TYPE.
- CASE cDatatype:
- WHEN 'logical' THEN NEXT.
- WHEN 'character' THEN cWords = cWords + ' ' + hbBuffer:BUFFER-FIELD(ii):BUFFER-VALUE.
- WHEN 'integer' THEN DO:
- cchar = TRIM(STRING(INTEGER(hbBuffer:BUFFER-FIELD(ii):BUFFER-VALUE),'zzzzzzzz9-')).
- cwords = cWords + ' ' + CHR(01) + cChar + CHR(01).
- END.
- WHEN 'decimal' THEN DO:
- cchar = TRIM(STRING(DECIMAL(hbBuffer:BUFFER-FIELD(ii):BUFFER-VALUE),'zzzzzzzz9.9<<<-')).
- cwords = cWords + ' ' + CHR(01) + cChar + CHR(01).
- END.
- WHEN 'date' THEN DO:
- cchar = STRING(DATE(hbBuffer:BUFFER-FIELD(ii):BUFFER-VALUE),'99.99.9999').
- cwords = cWords + ' ' + cChar.
- END.
- END CASE.
- END.
- bBuffer.wordindex = ''.
- cwords = TRIM(cwords).
- DO ii = 1 TO NUM-ENTRIES(cwords, ' '):
- cchar = ENTRY(ii, cwords, ' ').
- IF LOOKUP(cchar, bBuffer.wordindex) > 0 THEN NEXT.
- bBuffer.wordindex = bBuffer.wordindex + ' ' + cchar.
- END.
- bBuffer.wordindex = TRIM(bBuffer.wordindex).
- END.
|