K
Krishna Kumar
Guest
Hi, I need to write a program such that users can input table name and fields name and then display the values of given fields of the given table of records. Note - User can enter multiple fields as well. Do use sports database I'm almost done with the program however issue is whenever I'm display fh:buffer-value .It only displays last value of the field in the record. Also let me know can we display column name at the top . Suppose user enter following fields - name custnum country. It's only displaying country. rest of the fields are getting overlapped in the frame. Can you please help me out on this? Below is the program - def var table1 as character no-undo. def var field1 as character format "x(50)" no-undo. def var qh as handle no-undo. def var bh as handle no-undo. def var fh as handle no-undo. def var ix as integer no-undo. define variable fieldex as character extent 20. define variable fieldey as character extent 20. define variable lcquerystring as character no-undo. Set table1 field1. FIND FIRST _file WHERE _file._File-Name EQ table1 NO-LOCK NO-ERROR. IF available(_file) then do: ASSIGN lcQueryString = "FOR EACH " + table1. end. else do: display "Table is not available". return. end. create buffer bh for table table1. create query qh. qh:set-buffers( bh ). qh:query-prepare( lcquerystring ). qh:query-open. display bh:name. repeat WITH FRAME myFrame DOWN : qh:GET-NEXT( no-lock ). do ix = 1 to num-entries(field1," "): assign fieldex[ix] = entry(ix,field1," "). fh = bh:buffer-field(fieldex[ix]). display fh:buffer-value FORMAT "x(30)" . end. end. delete object bh. delete object qh . Thanks.
Continue reading...
Continue reading...