project QadFinancials > class BDDocumentStatus > method CalcAllSelectDDocumentStatus

query calculated fields procedure

Description

Assign a value to query calculated fields


Parameters


iiCompanyIdinputintegerCompany id
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
query SelectDDocumentStatus


program code (program1/bddocumentstatus.p)

assign vcDocumentTypeDebtors   = {&DOCUMENTTYPEDEBTORS}
       vcDocumentStatusDebtors = {&DOCUMENTSTATUSDEBTORS}.

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:
    /* CalcDDocumentStatusDocTypeCalc*/
    assign {&tcDDocumentStatusDocTypeCalc} = "":U.
    
    do viCounter = num-entries(vcDocumentTypeDebtors,chr(2)) to 1 by -2 :
        if entry(viCounter,vcDocumentTypeDebtors,chr(2)) = {&tcDDocumentStatusDocType}
        then do:
            assign {&tcDDocumentStatusDocTypeCalc} = entry(viCounter - 1,vcDocumentTypeDebtors,chr(2)) no-error.
            leave.
        end. 
    end.
    
    /* CalcDDocumentStatusStatusCalc */
    assign {&tcDDocumentStatusStatusCalc} = "":U.

    do viCounter = num-entries(vcDocumentStatusDebtors,chr(2)) to 1 by -2 :
        if entry(viCounter,vcDocumentStatusDebtors,chr(2)) = {&tcDDocumentStatusStatus}
        then do :
            assign {&tcDDocumentStatusStatusCalc} = entry(viCounter - 1,vcDocumentStatusDebtors,chr(2)) no-error.
            leave.
        end. 
    end.

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