project QadFinancials > class BDPaymentSelection > method GetListAllowedDocStatus

Description

Get the allowed statuses for Payment Selections


Parameters


icDDocumentTypeinputcharacter
icDDocumentStatusinputcharacter
icGLCodeinputcharacter
ilIsIncSelinputlogical
tExistingDPaySelTypeStatusoutputtemp-table
icActivityCodeChoseninputcharacterwhich activity are we running?
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


unused


program code (program6/bdpaymentselection.p)

empty temp-table tExistingDPaySelTypeStatus.

if icDDocumentType = "":U or
   icDDocumentType = ?
then return.

assign     
    vcAllowedStatuses = {&DOCUMENTSTATUS-PORTFOLIO-TR} + chr(2) + {&DOCUMENTSTATUS-PORTFOLIO} + chr(2) +
                        {&DOCUMENTSTATUS-INIT-TR} + chr(2) + {&DOCUMENTSTATUS-INIT} + chr(2) +
                        {&DOCUMENTSTATUS-INCASSO-TR}   + chr(2) + {&DOCUMENTSTATUS-INCASSO}.

<Q-90 run DDocumentStatusByTypeStatusGL (all) (Read) (NoCache)
   (input viCompanyId, (CompanyId)
    input icDDocumentType, (DDocumentStatusDocumentType)
    input ?, (DDocumentStatusStatus)
    input ?, (BankGLId)
    input icGLCode, (BankGLCode)
    output dataset tqDDocumentStatusByTypeStatusGL) in BDDocumentStatus>

if viBDDocument9ID = 0 or
   viBDDocument9ID = ?
then do:
    <I-22 {bFcStartAndOpenInstance
         &ADD-TO-TRANSACTION   = "true"
         &CLASS                = "BDDocument"}>
end. /* if viBBankNumber4ID = 0 or */
else if not valid-handle(vhBDDocument9Inst)
then do:
    <I-7 {bFcOpenInstance
         &CLASS           = "BDDocument"}>
end. /* not if viDDocument9ID = 0 or */
     
for each tqDDocumentStatusByTypeStatusGL:
    if not can-find(first tExistingDPaySelTypeStatus where
                          tExistingDPaySelTypeStatus.tcDocumentStatus = tqDDocumentStatusByTypeStatusGL.tcDDocumentStatusStatus)
    then do:
            create tExistingDPaySelTypeStatus.

            assign tExistingDPaySelTypeStatus.tcDocumentStatus   = tqDDocumentStatusByTypeStatusGL.tcDDocumentStatusStatus
                   tExistingDPaySelTypeStatus.tcDocumentStatusTR = <M-63 GetDDocumentStatusTranslation  (input  tExistingDPaySelTypeStatus.tcDocumentStatus (icStatus)) in BDDocument>                       
                   tExistingDPaySelTypeStatus.tcDocumentType     = "":U
                   tExistingDPaySelTypeStatus.tcDocumentTypeTR   = "":U.
    end.
end.

if valid-handle(vhBDDocument9Inst)
then do:
    <I-52 {bFcCloseInstance
         &CLASS           = "BDDocument"}>
end.

for each tExistingDPaySelTypeStatus:
    if lookup(tExistingDPaySelTypeStatus.tcDocumentStatus, vcAllowedStatuses, chr(2)) = 0
    then delete tExistingDPaySelTypeStatus.
end.