project BLF > class BFieldSecurity > method DataLoadFieldSecurityRules

Description

Load all security rules for a single business field into the class temp-tables.


Parameters


icBusComponentCodeinputcharacter
iiBusComponentIdinputintegerId of the business component
icBusinessFieldinputcharacter
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


unused


program code (program3/bfieldsecurity.p)

/* ================================================================= */
/* convert code into ID                                              */
/* ================================================================= */
if (iiBusComponentId = 0 or iiBusComponentId = ?)
and icBusComponentCode <> ""
and icBusComponentCode <> ?
Then Do:
    <Q-2 run BusComponentPrim (all)  (Read)  (NoCache)  (input ?, (BusComponentID) 
                           input icBusComponentCode, (BusComponentCode)
                           output dataset tqBusComponentPrim) in BBusinessComponent >
    Find First tqBusComponentPrim No-Error.
    IF Available tqBusComponentPrim 
    Then  iiBusComponentId = tqBusComponentPrim.tiBusComponent_ID.
    Empty Temp-table  tqBusComponentPrim.
End.

/* ================================================================= */
/* Load rules                                                        */
/* ================================================================= */
Assign vcLoad = "for each FieldSecurity where FieldSecurity.BusComponent_ID = ":U 
    + string(iiBusComponentId) 
    + " and FieldSecurity.FieldSecurityBusFieldName = '":U 
    + icBusinessField
    + "'":U.
<M-1 run DataLoad (input  '' (icRowids), 
                   input  '' (icPkeys), 
                   input  '' (icObjectIds), 
                   input  vcLoad (icFreeform), 
                   input  no (ilKeepPrevious), 
                   output oiReturnStatus (oiReturnStatus)) in BFieldSecurity>