project BLF > class BFcSession > method CreateFcSessionRecord

Description

Method to create a fcSession record.


Parameters


iiSessionInstanceIdinputinteger
iiSessionTimeOutinputinteger
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-8'Not all parameters have valid values.':100(5045)T-8#)
           oiReturnStatus = -1.
    <M-2 run SetMessage
       (input  vcMsg (icMessage), 
        input  '' (icArguments), 
        input  '' (icFieldName), 
        input  '' (icFieldValue), 
        input  'S':U (icType), 
        input  1 (iiSeverity), 
        input  '' (icRowid), 
        input  'BLF-93':U (icFcMsgNumber), 
        input  '' (icFcExplanation), 
        input  '' (icFcIdentification), 
        input  '' (icFcContext), 
        output viFcReturnSuper (oiReturnStatus)) in BFcSession>    
    Return.
End.

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

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

/* Save date and time in UTC */
session:timezone = 0.
    
Assign 
    tfcSession.GlobalSessionId              = vcGlobalSessionId
    tfcSession.GlobalSessionNeedsUpdate     = False
    tfcSession.SessionInstance_ID           = iiSessionInstanceId
    tfcSession.SessionLastCheckDate         = Today
    tfcSession.SessionLastCheckTime         = Time
    tfcSession.GlobalSessionLastCheckDate   = Today
    tfcSession.GlobalSessionLastCheckTime   = Time
    tfcSession.SessionTimeOut               = iiSessionTimeOut.

session:timezone = viTimeOffset.
    
<M-5 run ValidateBC
   (output viFcReturnSuper (oiReturnStatus)) in BFcSession>
If viFcReturnSuper <> 0 
Then Assign oiReturnStatus = viFcReturnSuper.
If viFcReturnSuper < 0
Then Return.
<M-6 run AdditionalUpdates
   (output viFcReturnSuper (oiReturnStatus)) in BFcSession>
If viFcReturnSuper <> 0 
Then Assign oiReturnStatus = viFcReturnSuper.
If viFcReturnSuper < 0
Then Return.

<M-7 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.