project QadFinancials > class BConsolid > method CalcAllSelectConsolid

query calculated fields procedure

Description

Assign a value to query calculated fields


Parameters


iiCompanyIdinputintegerCompany id
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
query SelectConsolid


program code (program1/bconsolid.p)

assign vcConsolidSourceLayerTypes = {&CONSOLIDSOURCELAYERTYPES}
       vcConsolidStatuses         = {&CONSOLIDSTATUSES}
       vcConsolidTargetLayerTypes = {&CONSOLIDTARGETLAYERTYPES}.

create query vhQuery in widget-pool "non-persistent".
vhQuery:set-buffers(ih_Buffer).
vhQuery:query-prepare("for each ":U + ih_Buffer:table).
vhQuery:query-open().
vhQuery:get-first().
do while not vhQuery:query-off-end:
    /* CalcConsolidEndTimeCalc , CalcConsolidStartTimeCalc */
    assign {&tcConsolidEndTimeCalc} = string({&tiConsolidEndTime},"HH:MM:SS":U)
         {&tcConsolidStartTimeCalc} = string({&tiConsolidStartTime},"HH:MM:SS":U).

    /* CalcConsolidSourceLayerTypeCalc */
    assign {&tcConsolidSourceLayerTypeCalc} = '?':U.

    do viCounter = num-entries(vcConsolidSourceLayerTypes,chr(2)) to 1 by -2 :
        if entry(viCounter,vcConsolidSourceLayerTypes,chr(2)) = {&tcConsolidSourceLayerTypCode}
        then do :
            assign {&tcConsolidSourceLayerTypeCalc} = entry(viCounter - 1,vcConsolidSourceLayerTypes,chr(2)) no-error.
            leave.
        end. /* if entry */
    end.

    /* CalcConsolidStatusCalc*/
    assign {&tcConsolidStatusCalc} = '?':U.
    do viCounter = num-entries(vcConsolidStatuses,chr(2)) to 1 by -2 :
        if entry(viCounter,vcConsolidStatuses,chr(2)) = {&tcConsolidStatus}
        then do :
            assign {&tcConsolidStatusCalc} = entry(viCounter - 1,vcConsolidStatuses,chr(2)) no-error.
            leave.
        end. /* if entry */
    end.

    /* CalcConsolidTargetLayerTypeCalc */
    assign {&tcConsolidTargetLayerTypeCalc} = '?':U.
    do viCounter = num-entries(vcConsolidTargetLayerTypes,chr(2)) to 1 by -2 :
        if entry(viCounter,vcConsolidTargetLayerTypes,chr(2)) = {&tcConsolidTargetLayerTypCode}
        then do :
            assign {&tcConsolidTargetLayerTypeCalc} = entry(viCounter - 1,vcConsolidTargetLayerTypes,chr(2)) no-error.
            leave.
        end. /* if entry */
    end.

    vhQuery:get-next().
end.
vhQuery:query-close().
delete object vhQuery.