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.