project QadFinancials > class BPosting > method CalcAllSelectPostingLine

query calculated fields procedure

Description

Assign a value to query calculated fields


Parameters


iiCompanyIdinputintegerCompany id
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
query SelectPostingLine


program code (program1/bposting.p)

assign vcJournalTypeCode = "":U
       vcJournalTypes    = {&JOURNALTYPES}.
if vcListGLTYPECODES = "":U 
then assign vcListGLTYPECODES = {&GLTYPECODES}.

create query vhQuery in widget-pool "non-persistent".
vhQuery:set-buffers(ih_Buffer).
vhQuery:query-prepare("for each ":U + ih_Buffer:table + " where ":U + ih_Buffer:table + ".tcJournalTypeCodeTr = '' by ":U + ih_Buffer:table + ".tcJournalTypeCode":U).
vhQuery:query-open().
vhQuery:get-first().

do while not vhQuery:query-off-end:

    /* assign tcJournalTypeCode */
    if {&tcJournalTypeCode} <> vcJournalTypeCode
    then do:
        assign vcJournalTypeCodeTr = "?":U
               vcJournalTypeCode   = {&tcJournalTypeCode}.

        do viA = num-entries(vcJournalTypes, chr(2)) to 2 by -2:
            if entry(viA, vcJournalTypes, chr(2)) = {&tcJournalTypeCode}
            then do:
                assign vcJournalTypeCodeTr = entry(viA - 1, vcJournalTypes, chr(2)) no-error.
                leave.
            end.
        end.
    end.

    assign {&tcJournalTypeCodeTr} = vcJournalTypeCodeTr.
    
    /* assign tcGLTypeCodeTr */
    do viA = num-entries(vcListGLTYPECODES, chr(2)) to 1 by -2 :
        if entry(viA, vcListGLTYPECODES, chr(2)) = {&tcGLTypeCode}
        then do :
            assign {&tcGLTypeCodeTr} = entry(viA - 1, vcListGLTYPECODES, chr(2)) no-error.
            leave.
        end. /*  if entry(viA, vcListGLTYPECODES, chr(2)) = {&tcGLTypeCode} */
    end.

    /* assign the net amounts */
    assign {&tdBalanceTCCalc} = {&tdPostingLineDebitTC} - {&tdPostingLineCreditTC}
           {&tdBalanceLCCalc} = {&tdPostingLineDebitLC} - {&tdPostingLineCreditLC}
           {&tdBalanceCCCalc} = {&tdPostingLineDebitCC} - {&tdPostingLineCreditCC}.

    /* assign the Posting Key */
    assign {&tcPostingKey} = string ({&tiPostingYearPeriod}) + '/' + 
                             {&tcJournalCode} + '/' +
                             string ({&tiPostingVoucher},'999999999').
    
    vhQuery:get-next().
end.

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