Consultor Eletrônico



Kbase P20568: A sample implementation of the table security integration pr
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   3/5/2003
Status: Unverified

GOAL:

How to make some tables invisible to all users in GUI RESULTS?

FACT(s) (Environment):

Windows

FIX:

Following is a step-by-step procedure demonstrating the use of the table security integration procedure u-table.p to make the "Customer", "Invoice" and "Order" tables totally invisible to all users in GUI RESULTS:

1. Extract a copy of the integration sample procedure file named u-table.p from the aderes.pl procedure library and save it in the working directory as myTableSecurity.p.

2. Modify and save myTableSecurity.p to read as follows:

DEFINE INPUT PARAMETER dName AS CHARACTER NO-UNDO.
DEFINE INPUT PARAMETER uName AS CHARACTER NO-UNDO.
DEFINE INPUT PARAMETER tList AS CHARACTER NO-UNDO.
DEFINE INPUT PARAMETER aList AS CHARACTER NO-UNDO.
DEFINE INPUT-OUTPUT PARAMETER sList AS CHARACTER NO-UNDO.

DEFINE VARIABLE qbf-i AS INTEGER NO-UNDO.

DEFINE VARIABLE cHiddenTable AS CHARACTER NO-UNDO INITIAL "Customer, Invoice, Order".

DO qbf-i = 1 TO NUM-ENTRIES(tList):
IF INDEX(cHiddenTable, ENTRY(qbf-i, tList)) > 0 THEN ENTRY(qbf-i, sList) = "false".
END.

3. Start RESULTS.

4. Select Query > Customize > Integration Procedures > Table Security.

5. Use the Files button to specify myTableSecurity.p and click OK.

6. Close Results to save the changes.

7. The above tables are now hidden from all users.

Selective user dependant table security may be implemented by modifying the logic of the above myTableSecurity.p integration point procedure.