project BLF > class BDraftInstance > method CalcAllDraftInstanceForSelect

query calculated fields procedure

Description

Assign a value to query calculated fields


Parameters


iiCompanyIdinputintegerCompany id
icCreationUserinputcharacter
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


BLF
query DraftInstanceForSelect


program code (program1/bdraftinstance.p)

create query vhQuery in widget-pool "non-persistent".
vhQuery:forward-only = yes.
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:
    <Q-43 run BusActivityByLabeslCodesIDs (all) (Read) (Cache)
       (input ?, (BusComponentID)
        input {&tcBusinessClass}, (BusComponentCode)
        input ?, (BusComponentLabel)
        input ?, (BusActivityID)
        input {&tcActivity}, (BusActivityCode)
        input ?, (BusActivityLabel)
        output dataset tqBusActivityByLabeslCodesIDs) in BBusinessComponent >

    find first tqBusActivityByLabeslCodesIDs where
               tqBusActivityByLabeslCodesIDs.tcBusComponentCode = {&tcBusinessClass} and
               tqBusActivityByLabeslCodesIDs.tcBusActivityCode  = {&tcActivity}
               no-error.

    assign {&tcBusComponentLabel} = if available tqBusActivityByLabeslCodesIDs
                                    then tqBusActivityByLabeslCodesIDs.tcBusComponentLabel
                                    else ""
           {&tcBusActivityLabel}  = if available tqBusActivityByLabeslCodesIDs
                                    then tqBusActivityByLabeslCodesIDs.tcBusActivityLabel
                                    else ""
           viTime                 = {&tiCreationTime}
           viSec                  = viTime mod 60
           viTime                 = (viTime - viSec) / 60
           viMin                  = viTime mod 60
           viHrs                  = (viTime - viMin) / 60
           {&tcCreationTime}      = string(viHrs, "99") + ":" + string(viMin, "99") + ":" + string(viSec, "99").

    vhQuery:get-next().
end.

vhQuery:query-close().
delete object vhQuery.