project BLF > class TGenericReportAdapter > method CreateSession

Description

This method is the main method of this component. It takes the sessionkey parameter to create a session.


Parameters


icGlobalSessionIdinputcharacterInput Global Session ID.
icEntityCodeinputcharacter
oiReturnStatusoutputinteger


Internal usage


unused


program code (program1/tgenericreportadapter.p)

/*start a session*/
<I-1 {tFcStartAndOpenInstance
     &CLASS           = "Session"
     &SESSIONID       = "0"}>
     
/*run applicationlogin based on the global session id provided in the icSessionKey parameter*/
<M-2 run ApplicationLogin
   (input  icGlobalSessionId (icGlobalSessionId), 
    input  icEntityCode (icCompanyCode), 
    input  ? (icExtra), 
    input  no (ilReturnTimeStamps), 
    output vcFcMaskList (ocReportTimeStamp), 
    output vcDummyC (ocSystCacheDateTime), 
    output vcDummyS (ocSystDateTime), 
    output viFcReturnSuper (oiReturnStatus)) in Session>

if viFcReturnSuper < 0
then do:
    assign oiReturnStatus = viFcReturnSuper.
    /*if an error occured, get the messages.*/
    empty temp-table tFcMessagesTGRA.
    run GetPublictFcMessages in vhSession4Inst (output dataset tFcMessagesTGRA, output viFcReturnSuper).
    <I-3 {tFcCloseAndStopInstance
         &CLASS           = "Session"}>
    return.
end.

/*start the BGenericReportAdapter*/
<I-4 {tFcStartAndOpenInstance
     &CLASS           = "BGenericReportAdapter"
     &SESSIONID       = "viSession4ID"}>
     
end procedure.

procedure openBusinessReport:

   define input parameter icBusinessComponent  as character no-undo.
   define input parameter icBusinessReportName as character no-undo.
   define input parameter icLanguageCode       as character no-undo.
   define input parameter table for tFilterTable.
   define output parameter ocResultSetList     as character no-undo.
   define output parameter oiStatus            as integer no-undo.

   <M-5 run openReport
      (input  icBusinessComponent (icComponentName), 
       input  icBusinessReportName (icReportName), 
       input  icLanguageCode (icLanguageCode), 
       input  tFilterTable (tFilter), 
       output ocResultSetList (ocTableNameList), 
       output oiStatus (oiReturnStatus)) in BGenericReportAdapter>

end procedure. /* openBusinessReport */

procedure getResultSet:

   define input parameter icBusinessComponent   as character no-undo.
   define input parameter icBusinessReportName  as character no-undo.
   define input parameter icResultSetName       as character no-undo.
   define input parameter iiFetchSize           as integer   no-undo.
   define output parameter table-handle ohReportTable.
   define output parameter olMoreTableDataAvailable as logical no-undo.

   <M-6 run getTableData
      (input  icBusinessComponent (icComponentName), 
       input  icBusinessReportName (icReportName), 
       input  icResultSetName (icTableName), 
       input  iiFetchSize (iiBatchSize), 
       output ohReportTable (ohTable), 
       output olMoreTableDataAvailable (olMoreTableDataAvailable), 
       output viFcReturnSuper (oiReturnStatus)) in BGenericReportAdapter>

end procedure. /* getResultSet */

function isResultSetAvailable returns logical
   (input icBusinessComponent as character,
    input icReportName        as character,
    input icResultSetName     as character):

    return <M-7 isTableAvailable
              (input  icBusinessComponent (icComponentName), 
               input  icReportName (icReportName), 
               input  icResultSetName (icTableName)) in BGenericReportAdapter>.

end function. /* isResultSetAvailable */

procedure getMetaSchema:

   define input parameter icBusinessComponent  as character no-undo.
   define input parameter icBusinessReportName as character no-undo.
   define input parameter icResultSetName      as character no-undo.
   define output parameter table-handle ohReportTable.

   <M-8 run getTableMetaSchema
      (input  icBusinessComponent (icComponentName), 
       input  icBusinessReportName (icReportName), 
       input  icResultSetName (icTableName), 
       output ohReportTable (ohTable), 
       output viFcReturnSuper (oiReturnStatus)) in BGenericReportAdapter>