Kbase P98408: How to access RECID or ROWID of the selected rows in multiple browse using dynamic query
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  03/12/2004 |
|
Status: Unverified
GOAL:
How to access RECID or ROWID of the selected rows in multiple browse using dynamic query
FIX:
Example code:
DEFINE VARIABLE vhQueryHdl AS HANDLE NO-UNDO.
DEFINE VARIABLE hBuffer AS HANDLE NO-UNDO.
DEFINE BROWSE BROWSE-1
WITH NO-ROW-MARKERS MULTIPLE SEPARATORS SIZE 63 BY 5.48 EXPANDABLE.
DEFINE BUTTON BFETCH
LABEL "Fetch"
SIZE 15 BY 1.14.
DEFINE FRAME DEFAULT-FRAME
BFETCh AT ROW 2 COL 8
BROWSE-1 AT ROW 3.62 COL 8
WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
SIDE-LABELS NO-UNDERLINE THREE-D
AT COL 1 ROW 1
SIZE 80 BY 16.
CREATE QUERY vhQueryHdl.
CREATE BUFFER hBuffer FOR TABLE "employee" .
vhQueryHdl:SET-BUFFERS(hBuffer).
vhQueryHdl:QUERY-PREPARE("FOR EACH employee NO-LOCK":U).
vhQueryHdl:QUERY-OPEN.
ON 'CHOOSE':U OF BFETCH
DO:
DEFINE VARIABLE iCnt AS INTEGER NO-UNDO.
MESSAGE "Rows selected: " BROWSE-1:NUM-SELECTED-ROWS
VIEW-AS ALERT-BOX INFO BUTTONS OK.
IF BROWSE-1:NUM-SELECTED-ROWS > 0 THEN
DO iCnt = 1 TO BROWSE-1:NUM-SELECTED-ROWS :
BROWSE-1:FETCH-SELECTED-ROW(iCnt) .
MESSAGE
"Row: " iCnt SKIP
"Recid: " hbuffer:RECID SKIP
"Rowid: " STRING(hBuffer:ROWID)
VIEW-AS ALERT-BOX INFO BUTTONS OK.
END.
RETURN.
END.
ENABLE ALL WITH FRAME DEFAULT-FRAME.
BROWSE BROWSE-1:QUERY = vhQueryHdl.
BROWSE BROWSE-1:ADD-COLUMNS-FROM("employee":U,"deptCode":U).
WAIT-FOR CLOSE OF THIS-PROCEDURE.