project QadFinancials > class BJournalEntry > method PostingLineGLEnabling

Description

posting line enabling


Parameters


iiCompanyIdinputinteger
icGLCodeinputcharacterGL Account
icRowidinputcharacterRow ID
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BJournalEntry.CalculateDetail
method BJournalEntry.PostingLineGLUpdate


program code (program6/bjournalentry.p)

empty temp-table tUpdatePostingLineEnabling.

/* Normalize input parameters */
if iiCompanyId = 0 or iiCompanyId = ?
then assign iiCompanyId = viCompanyId.

<Q-4 run GLForPostingLineEnabling (all) (Read) (Cache)
   (input iiCompanyId, (CompanyId)
    input icGLCode, (GLCode)
    output dataset tqGLForPostingLineEnabling) in BGL >

find first tqGLForPostingLineEnabling where
           tqGLForPostingLineEnabling.tcGLCode = icGLCode
           no-error.

if not available tqGLForPostingLineEnabling
then do:
    <M-2 run SetMessage
       (input  trim(#T-3'This GL account is invalid.':100(2732)t-3#) (icMessage), 
        input  '':U (icArguments), 
        input  'tPostingLine.tcGLCode':U (icFieldName), 
        input  icGLCode (icFieldValue), 
        input  'E':U (icType), 
        input  3 (iiSeverity), 
        input  icRowid (icRowid), 
        input  'QADFIN-271':U (icFcMsgNumber), 
        input  '':U (icFcExplanation), 
        input  '':U (icFcIdentification), 
        input  '':U (icFcContext), 
        output viFcReturnSuper (oiReturnStatus)) in BPosting>

    assign oiReturnStatus = -1.
    return.
end.

if tqGLForPostingLineEnabling.tiCurrency_ID = ?
then assign tqGLForPostingLineEnabling.tiCurrency_ID = 0.

create tUpdatePostingLineEnabling.
assign tUpdatePostingLineEnabling.tc_Rowid            = icRowid
       tUpdatePostingLineEnabling.tcBusinessFieldName = "tPostingLine.tcDivisionCode":U
       tUpdatePostingLineEnabling.tlEnabled           = tqGLForPostingLineEnabling.tlGLIsDivisionAccount.

create tUpdatePostingLineEnabling.
assign tUpdatePostingLineEnabling.tc_Rowid            = icRowid
       tUpdatePostingLineEnabling.tcBusinessFieldName = "tPostingLine.tcCostCentreCode":U
       tUpdatePostingLineEnabling.tlEnabled           = tqGLForPostingLineEnabling.tlGLIsCostCentreAccount.

create tUpdatePostingLineEnabling.
assign tUpdatePostingLineEnabling.tc_Rowid            = icRowid
       tUpdatePostingLineEnabling.tcBusinessFieldName = "tPostingLine.tcProjectCode":U
       tUpdatePostingLineEnabling.tlEnabled           = tqGLForPostingLineEnabling.tlGLIsProjectAccount.

create tUpdatePostingLineEnabling.
assign tUpdatePostingLineEnabling.tc_Rowid            = icRowid
       tUpdatePostingLineEnabling.tcBusinessFieldName = "tPostingLine.tcIntercoBusinessRelationCode":U
       tUpdatePostingLineEnabling.tlEnabled           = tqGLForPostingLineEnabling.tlGLIsIntercoAccount and
                                                        not tqGLForPostingLineEnabling.tlGLIsFixedInterco.

create tUpdatePostingLineEnabling.
assign tUpdatePostingLineEnabling.tc_Rowid            = icRowid
       tUpdatePostingLineEnabling.tcBusinessFieldName = "tPostingLine.PostingLineQTY":U
       tUpdatePostingLineEnabling.tlEnabled           = tqGLForPostingLineEnabling.tlGLIsQuantityAccount.

create tUpdatePostingLineEnabling.
assign tUpdatePostingLineEnabling.tc_Rowid            = icRowid
       tUpdatePostingLineEnabling.tcBusinessFieldName = "tPostingLine.tcCurrencyCode":U
       tUpdatePostingLineEnabling.tlEnabled           = tqGLForPostingLineEnabling.tiCurrency_ID = 0 and
                                                        not tqGLForPostingLineEnabling.tlGLIsLocalCurrency.