| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- DEF VAR hBrowser AS HANDLE NO-UNDO.
- DEF VAR htBrowser AS HANDLE NO-UNDO.
- DEF VAR hMenu AS HANDLE NO-UNDO.
- DEF VAR hMenuItem AS HANDLE NO-UNDO.
- DEF VAR hItem_Filter AS HANDLE NO-UNDO.
- DEF VAR hItem_Excel AS HANDLE NO-UNDO.
- DEF VAR hItem_zurueck AS HANDLE NO-UNDO.
- DEF VAR hItem_sort AS HANDLE NO-UNDO.
- DEF VAR hItem_move AS HANDLE NO-UNDO.
- DEF VAR hItem_Rule AS HANDLE NO-UNDO.
- DEF VAR cMenu AS CHAR NO-UNDO.
- DEF VAR hxMenu AS HANDLE NO-UNDO.
- DEF VAR hxMenuItem AS HANDLE EXTENT 10 NO-UNDO.
- DEF VAR ii AS INT NO-UNDO.
- hDaten = DYNAMIC-FUNCTION('getDataSource':U) NO-ERROR.
- hFenster = DYNAMIC-FUNCTION('getContainerSource':U) NO-ERROR.
- IF NOT VALID-HANDLE ( hDaten ) THEN hDaten = THIS-PROCEDURE:HANDLE.
- /*
- IF VALID-HANDLE(hFenster)
- THEN Progname = DYNAMIC-FUNCTION('getProgname':U, INPUT hFenster ) NO-ERROR.
- */
- EMPTY TEMP-TABLE tBrowser .
- EMPTY TEMP-TABLE tMenuItems .
- hBrowser = {&BROWSE-NAME}:HANDLE IN FRAME {&FRAME-NAME}.
- hBrowser:COLUMN-MOVABLE = TRUE.
- htBrowser = TEMP-TABLE tBrowser:DEFAULT-BUFFER-HANDLE.
- hMenu = hBrowser:POPUP-MENU NO-ERROR.
- hMenuItem = hMenu :FIRST-CHILD NO-ERROR.
- DO WHILE VALID-HANDLE (hMenuItem):
- IF hMenuItem:NAME = ? OR
- NOT hMenuItem:NAME BEGINS 'x_' THEN DO:
- hMenuItem = hMenuItem:NEXT-SIBLING.
- NEXT.
- END.
- CREATE tMenuItems.
- ASSIGN tMenuItems.hMenuItem = hMenuItem.
- hMenuItem = hMenuItem:NEXT-SIBLING.
- END.
- CREATE MENU hMenu
- ASSIGN POPUP-ONLY = TRUE
- TITLE = 'Browser Menu'.
- CREATE MENU-ITEM hItem_Excel
- ASSIGN LABEL = 'Export in Excel'
- NAME = 'm_excel'
- PARENT = hMenu.
- CREATE MENU-ITEM hItem_Filter
- ASSIGN LABEL = 'Filter setzen'
- NAME = 'm_filter'
- PARENT = hMenu.
- CREATE MENU-ITEM hItem_Rule
- ASSIGN SUBTYPE = 'RULE':U
- PARENT = hMenu.
- CREATE MENU-ITEM hItem_zurueck
- ASSIGN LABEL = 'Spalten und Breite zurücksetzen'
- NAME = 'm_zurueck'
- PARENT = hMenu.
- CREATE MENU-ITEM hItem_Rule
- ASSIGN SUBTYPE = 'RULE':U
- PARENT = hMenu.
- CREATE MENU-ITEM hItem_sort
- ASSIGN LABEL = 'Spalten sortierbar'
- NAME = 'm_sort'
- TOGGLE-BOX = TRUE
- CHECKED = TRUE
- PARENT = hMenu.
- CREATE MENU-ITEM hItem_move
- ASSIGN LABEL = 'Spalten verschiebbar'
- NAME = 'm_move'
- TOGGLE-BOX = TRUE
- CHECKED = FALSE
- PARENT = hMenu.
- CREATE MENU-ITEM hItem_Rule
- ASSIGN SUBTYPE = 'RULE':U
- PARENT = hMenu.
- FOR EACH tMenuItems ii = 1 TO 10:
- CREATE MENU-ITEM hxMenuItem[ii]
- ASSIGN LABEL = tMenuItems.hMenuItem:LABEL
- NAME = SUBSTRING(tMenuItems.hMenuItem:NAME,03)
- TOGGLE-BOX = tMenuItems.hMenuItem:TOGGLE-BOX
- PARENT = hMenu.
- IF hxMenuItem[ii]:TOGGLE-BOX = TRUE THEN hxMenuItem[ii]:CHECKED = FALSE.
- ON CHOOSE OF hxMenuItem[ii] PERSISTENT RUN VALUE(hxMenuItem[ii]:NAME) IN TARGET-PROCEDURE.
- ON VALUE-CHANGED OF hxMenuItem[ii] PERSISTENT RUN VALUE(hxMenuItem[ii]:NAME) IN TARGET-PROCEDURE.
- END.
- hBrowser:POPUP-MENU = hMenu NO-ERROR.
-
- ON CHOOSE OF hItem_Filter PERSISTENT RUN FILTER_SETZEN IN TARGET-PROCEDURE.
- ON CHOOSE OF hItem_Excel PERSISTENT RUN EXPORT_EXCEL IN TARGET-PROCEDURE.
- ON CHOOSE OF hItem_zurueck PERSISTENT RUN ZURUECKSETZEN IN TARGET-PROCEDURE.
- ON VALUE-CHANGED OF hItem_sort
- PERSISTENT RUN SORTIERBAR IN TARGET-PROCEDURE ( hItem_sort, hItem_move ).
- ON VALUE-CHANGED OF hItem_move
- PERSISTENT RUN VERSCHIEBBAR IN TARGET-PROCEDURE ( hItem_move, hItem_sort ).
- DYNAMIC-FUNCTION('getBrowserDaten':U, INPUT htBrowser,
- INPUT hBrowser,
- INPUT Sektion ) NO-ERROR.
- APPLY 'VALUE-CHANGED' TO hItem_sort.
- hMenu = hBrowser:POPUP-MENU NO-ERROR.
- hMenu = hMenu:FIRST-CHILD NO-ERROR.
- DO WHILE VALID-HANDLE (hMenu):
- cName = hMenu:NAME NO-ERROR.
- IF cName <> ? AND
- INDEX(cName, 'inakt') > 0 THEN DO:
- hInaktiv = hMenu.
- LEAVE.
- END.
- hMenu = hMenu:NEXT-SIBLING.
- END.
|