project QadFinancials > class BDDocument > method DefaultValuesDDocumentTypeStatus


Parameters


icRowidinputcharacter
icDDocumentTypeinputcharacter
icDDocumentStatusinputcharacter
icGLCodeinputcharacter
oiDDocumentValueDaysoutputinteger
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


unused


program code (program6/bddocument.p)

if icRowId = ?
then assign icRowId = "":U.

if icRowId = "":U
then return.

find bDDocument where
     bDDocument.tc_Rowid = icRowid
     no-error.

if not available bDDocument
then return.

if icDDocumentType = ?
then assign icDDocumentType = "":U.

if icDDocumentStatus = ?
then assign icDDocumentStatus = "":U.

if icGLCode = ?
then assign icGLCode = "":U.

if icDDocumentType   = "":U or
   icDDocumentStatus = "":U or
   icGLCode          = "":U
then do:
    assign bDDocument.DDocumentType   = icDDocumentType
           bDDocument.DDocumentStatus = icDDocumentStatus
           bDDocument.tcGLCode        = icGLCode.

    return.
end.

if bDDocument.DDocumentType   <> icDDocumentType   or
   bDDocument.DDocumentStatus <> icDDocumentStatus or
   bDDocument.tcGLCode        <> icGLCode
then assign bDDocument.DDocumentType      = icDDocumentType
            bDDocument.DDocumentStatus    = icDDocumentStatus
            bDDocument.tcGLCode           = icGLCode
            bDDocument.DDocumentValueDays = ?.

if bDDocument.DDocumentValueDays = ?
then do:
    <Q-3 run DDocumentStatusByTypeStatusGL (all) (Read) (Cache)
       (input bDDocument.Company_ID, (CompanyId)
        input icDDocumentType, (DDocumentStatusDocumentType)
        input icDDocumentStatus, (DDocumentStatusStatus)
        input ?, (BankGLId)
        input icGLCode, (BankGLCode)
        output dataset tqDDocumentStatusByTypeStatusGL) in BDDocumentStatus>

    find first tqDDocumentStatusByTypeStatusGL where
               tqDDocumentStatusByTypeStatusGL.tcDDocumentStatusDocType = icDDocumentType and
               tqDDocumentStatusByTypeStatusGL.tcDDocumentStatusStatus       = icDDocumentStatus and
               tqDDocumentStatusByTypeStatusGL.tcBankGLCode                  = icGLCode
               no-error.

    assign bDDocument.DDocumentValueDays = if available tqDDocumentStatusByTypeStatusGL
                                           then tqDDocumentStatusByTypeStatusGL.tiDDocumentStatusDefValDays
                                           else 0.
end.

assign oiDDocumentValueDays = bDDocument.DDocumentValueDays.