Consultor Eletrônico



Kbase 20299: ADM2 - How to Delete Rows in Multi-Select SmartDataBrowser
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   16/10/2008
Status: Unverified

GOAL:

How to delete rows in a Multi-Select SmartDataBrowser (SDB)

FACT(s) (Environment):

Progress 9.1x

FIX:

Place the following code in an internal procedure or in a trigger of the SmartDataBrowser procedure:

DEFINE VARIABLE intVar AS INTEGER NO-UNDO.
DEFINE VARIABLE hQuery AS HANDLE NO-UNDO.
DEFINE VARIABLE hBuffer AS HANDLE NO-UNDO.
DEFINE VARIABLE hDataSource AS HANDLE NO-UNDO.
ASSIGN
hDataSource = DYNAMIC-FUNCTION('getDataSource':U)
hQuery = DYNAMIC-FUNCTION('getDataHandle':U IN hDataSource)
hBuffer = hQuery:GET-BUFFER-HANDLE(1) NO-ERROR.

DO WITH FRAME {&FRAME-NAME}:
DO intVar = 1 TO BROWSE {&BROWSE-NAME}:NUM-SELECTED-ROWS:
BROWSE {&BROWSE-NAME}:FETCH-SELECTED-ROW(intVar).
DYNAMIC-FUNCTION('deleteRow':U IN hDataSource, STRING(hBuffer:ROWID)).
END.
BROWSE {&BROWSE-NAME}:DELETE-SELECTED-ROWS().
END.