The Dialog class / Usage |
Using the DIALOG keyword outside a dialog instruction block results in a compilation error. However, you can pass the object to a function that defines the dialog parameter with the ui.Dialog type.
INPUT BY NAME custid, custname, custaddr BEFORE INPUT CALL setupDialog(DIALOG) ... ON ACTION check_address ... CALL setupDialog(DIALOG) ... END INPUT FUNCTION setupDialog(d) DEFINE d ui.Dialog DEFINE isAdmin BOOLEAN LET isAdmin = (global_params.user_group == "admin") CALL d.setActionActive("delete", isAdmin) CALL d.setActionActive("convert", isAmdin) CALL d.setActionActive("check_address", isAdmin AND rec.custaddr IS NOT NULL) END FUNCTION