project BLF > class BFcSession > method DeleteFcSessionRecord

Description

Method used for deleting an existing fcSession record.


Parameters


iiSessionInstanceIdinputinteger
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


unused


program code (program1/bfcsession.p)

If oiReturnStatus = 0
Then Assign oiReturnStatus = -98.

If iiSessionInstanceId          = 0 Or
   iiSessionInstanceId          = ? 
Then Do:
    Assign vcMsg = Trim(#T-1'Not all parameters have valid values.':100(5045)T-1#)
           oiReturnStatus = -1.
    <M-3 run SetMessage
       (input  vcMsg (icMessage), 
        input  '' (icArguments), 
        input  '' (icFieldName), 
        input  '' (icFieldValue), 
        input  'S':U (icType), 
        input  1 (iiSeverity), 
        input  '' (icRowid), 
        input  'BLF-94':U (icFcMsgNumber), 
        input  '' (icFcExplanation), 
        input  '' (icFcIdentification), 
        input  '' (icFcContext), 
        output viFcReturnSuper (oiReturnStatus)) in BFcSession>  
    Return.
End.

<Q-5 run FcSessionByAll (all) (Read) (NoCache)
   (input iiSessionInstanceId, (SessionInstanceId)
    input ?, (GlobalSessionNeedsUpdate)
    output dataset tqFcSessionByAll) in BFcSession >
Find tqFcSessionByAll No-error.
If Not Available tqFcSessionByAll
Then Do:
    Assign vcMsg = Trim(#T-2'There are no or to many fcSession records found for the session instance with id $1.':100(5046)T-2#)
           oiReturnStatus = -1.
    <M-4 run SetMessage
       (input  vcMsg (icMessage), 
        input  '' (icArguments), 
        input  '' (icFieldName), 
        input  '' (icFieldValue), 
        input  'S':U (icType), 
        input  1 (iiSeverity), 
        input  '' (icRowid), 
        input  'BLF-95':U (icFcMsgNumber), 
        input  '' (icFcExplanation), 
        input  '' (icFcIdentification), 
        input  '' (icFcContext), 
        output viFcReturnSuper (oiReturnStatus)) in BFcSession>  
    Return.
End.

<M-6 run ClearData
   (output viFcReturnSuper (oiReturnStatus)) in BFcSession>
If viFcReturnSuper <> 0 
Then Assign oiReturnStatus = viFcReturnSuper.
If viFcReturnSuper < 0
Then Return.

<M-7 run DataLoad
   (input  tqFcSessionByAll.tc_rowid (icRowids), 
    input  '' (icPkeys), 
    input  '' (icObjectIds), 
    input  '' (icFreeform), 
    input  False (ilKeepPrevious), 
    output viFcReturnSuper (oiReturnStatus)) in BFcSession>
If viFcReturnSuper <> 0 
Then Assign oiReturnStatus = viFcReturnSuper.
If viFcReturnSuper < 0
Then Return.

<M-9 run DataDelete
   (output viFcReturnSuper (oiReturnStatus)) in BFcSession>
If viFcReturnSuper <> 0 
Then Assign oiReturnStatus = viFcReturnSuper.
If viFcReturnSuper < 0
Then Return.
<M-8 run DataSave
   (output viFcReturnSuper (oiReturnStatus)) in BFcSession>
If viFcReturnSuper <> 0 
Then Assign oiReturnStatus = viFcReturnSuper.
If viFcReturnSuper < 0
Then Return.

If oiReturnStatus = -98
Then Assign oiReturnStatus = 0.