Parameters
icOwnBankNumber | input | character | |
biOwnBankNumber_ID | input-output | integer | |
bcBankGLCode | input-output | character | |
btBankImpLineOrigTransDate | input-output | date | |
itBankImpLineValueDate | input | date | |
iiBankImpLineBatchNbr | input | integer | |
iiBankImpLine_ID | input | integer | |
icBankImpLineStatNumber | input | character | |
icBankImpLineInfo | input | character | |
oiBankState_ID | output | integer | |
icBankImpLineInOut | input | character | |
icBankImpLineDescription | input | character | |
icBankImpLinePaymentRef | input | character | |
icBankImpLineInvRefList | input | character | |
icBankImpLineDebtorCode | input | character | |
icBankImpLineCreditorCode | input | character | |
idBankImpLineAmountSumTC | input | decimal | |
icBankImpLineDebtorName | input | character | |
icBankImpLineAddressLine | input | character | |
icBankImpLineAddressCity | input | character | |
icBankImpLineAddressZip | input | character | |
icBankImpLineAddressCountry | input | character | |
icBankImpLineBankNumber | input | character | |
idBankImpLineOrigAmountTC | input | decimal | |
icBankImpLineOrigCurrCode | input | character | |
idBankImpLineExchangeRate | input | decimal | |
idBankImpLineRateScale | input | decimal | |
icBankImpLineCost | input | character | |
icBankImpLineRowID | input | character | |
ocBankingEntryReference | output | character | |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program6/bbankimportline.p)
/* =================================================================================================== */
/* Method : CreateUnallocatedBankEntry */
/* Desc : This method creates new banking entry and will not alloctes it */
/* =================================================================================================== */
assign oiReturnStatus = -98
vcParam = '':U
vcCriteria = '':U.
/* =================================================================================================== */
/* Open communication with BankEntry component */
/* =================================================================================================== */
if viBBankEntryID = 0 or viBBankEntryID = ?
then do:
<I-19 {bFcStartAndOpenInstance
&ADD-TO-TRANSACTION = "true"
&CLASS = "BBankEntry"}>
end.
else if not valid-handle(vhBBankEntryInst)
then do:
<I-5 {bFcOpenInstance
&CLASS = "BBankEntry"}>
end.
assign viLocalReturn = 0
viOriginalCompanyId = viCompanyId.
CREATE_BANK_STATEMENT:
do:
/* =================================================================================================== */
/* Get definition of own bank number */
/* =================================================================================================== */
if biOwnBankNumber_ID = 0 or biOwnBankNumber_ID = ? or
bcBankGLCode = '':U or bcBankGLCode = ?
then do:
/* Create Processing Info */
<M-45 run CreateBankImpLineProcessInfo
(input 'GetBankNumberByNumber':U (icProcessName),
input #T-59'Get own bank number':255(242707683)T-59# (icProcessDesc),
input ? (icProcessResult),
input ? (icProcessParam),
input 'CreateUnallocatedBankEntry':U (icParentRowName),
input 0 (iiProcessStatus),
output viFcReturnSuper (oiReturnStatus)) in BBankImportLine>
<M-1 run GetBankNumberByNumber
(input {&BANKNUMBERPARENTTYPE-GL} (icBankNumberParentType),
input icOwnBankNumber (icBankNumber),
output biOwnBankNumber_ID (oiBankNumberId),
output vcDummy (ocBankNumber),
output viDummy (oiParentObjectId),
output bcBankGLCode (ocParentObjectCode),
output viDummy (oiCurrencyId),
output vcDummy (ocCurrencyCode),
output viDummy (oiTransactionCompanyId),
input ? (icBankImpCurrencyCode),
output viFcReturnSuper (oiReturnStatus)) in BBankImportLine>
if viFcReturnSuper <> 0 then assign viLocalReturn = viFcReturnSuper.
<M-96 run UpdateBankImpLineProcessResult
(input 'GetBankNumberByNumber':U (icProcessName),
input viLocalReturn (iiProcessStatus),
input ? (icProcessResult),
output viFcReturnSuper (oiReturnStatus)) in BBankImportLine>
if viLocalReturn < 0 then leave CREATE_BANK_STATEMENT.
end. /* if iiOwnBankNumber_ID = 0 or iiOwnBankNumber_ID */
/* =================================================================================================== */
/* Add bank entry header */
/* =================================================================================================== */
if btBankImpLineOrigTransDate = ?
then assign btBankImpLineOrigTransDate = itBankImpLineValueDate.
if iiBankImpLineBatchNbr <> 0 and
iiBankImpLineBatchNbr <> ?
then do:
assign vcBankImpLineRef = string(iiBankImpLineBatchNbr).
end.
else do:
<Q-6 run GetBankImpByLineID (all) (Read) (NoCache)
(input iiBankImpLine_ID, (BankImpLineID)
output dataset tqGetBankImpByLineID) in BBankImportLine>
find first tqGetBankImpByLineID where
tqGetBankImpByLineID.tiBankImpLine_ID = iiBankImpLine_ID
no-error.
if available tqGetBankImpByLineID
then assign vcBankImpLineRef = tqGetBankImpByLineID.tcBankImpFileName.
end.
<M-46 run AddBankEntryHeader
(input bcBankGLCode (icBankGLCode),
input-output icBankImpLineStatNumber (bcStatementNumber),
input btBankImpLineOrigTransDate (itTransactionDate),
input icBankImpLineInfo (icInfo),
input vcBankImpLineRef (icBankImpLineRef),
output oiBankState_ID (oiBankStateId),
output vcBankStateRowId (ocBankStateRowId),
output viBankStateYear (oiBankStateYear),
output viFcReturnSuper (oiReturnStatus)) in BBankEntry>
if viFcReturnSuper <> 0 then assign viLocalReturn = viFcReturnSuper.
/* Create Processing Info */
<M-31 run CreateBankImpLineProcessInfo
(input 'AddBankEntryHeader':U (icProcessName),
input #T-4'Create bank entry header info':255(74266279)T-4# (icProcessDesc),
input ? (icProcessResult),
input ? (icProcessParam),
input 'CreateUnallocatedBankEntry':U (icParentRowName),
input viLocalReturn (iiProcessStatus),
output viFcReturnSuper (oiReturnStatus)) in BBankImportLine>
if viLocalReturn < 0 then leave CREATE_BANK_STATEMENT.
/* =================================================================================================== */
/* Create bank statement line */
/* =================================================================================================== */
assign vcBankLineInOut = (if icBankImpLineInOut = {&TRANSDIRECTION-IN}
then {&BANKSTATELINEINOUT-IN}
else {&BANKSTATELINEINOUT-OUT})
vcBankStateLineDesc = icBankImpLineDescription.
/* Make sure that the BankStateLineDescription is filled with value */
if vcBankStateLineDesc = '':U or vcBankStateLineDesc = ?
then assign vcBankStateLineDesc = icBankImpLinePaymentRef.
if vcBankStateLineDesc = '':U or vcBankStateLineDesc = ?
then assign vcBankStateLineDesc = icOwnBankNumber + 'Statement':U.
assign vcBankStateLineReferenceExt = substring(icBankImpLineInvRefList,1,40,"CHARACTER")
vcBankStateLineDebCredExt = if (icBankImpLineDebtorCode <> "":U and
icBankImpLineDebtorCode <> ?)
then icBankImpLineDebtorCode
else icBankImpLineCreditorCode.
<M-9 run AddBankEntryLine
(input vcBankStateRowId (icBankEntryRowId),
input btBankImpLineOrigTransDate (itTransactionDate),
input itBankImpLineValueDate (itValueDate),
input vcBankStateLineDesc (icDescription),
input idBankImpLineAmountSumTC (idTransactionAmountTC),
input vcBankLineInOut (icTransactionInOut),
input icBankImpLinePaymentRef (icReference),
input vcBankStateLineReferenceExt (icReferenceExt),
input icBankImpLineInfo (icInfo),
input icBankImpLineDebtorName (icPartnerName),
input icBankImpLineAddressLine (icAddressLine),
input icBankImpLineAddressCity (icAddressCity),
input icBankImpLineAddressZip (icAddressZip),
input icBankImpLineAddressCountry (icAddressCountry),
input icBankImpLineBankNumber (icPartnerBankNumber),
input '':U (icPartnerDebCred),
input idBankImpLineOrigAmountTC (idOrigAmountTC),
input icBankImpLineOrigCurrCode (icOrigCurrCode),
input idBankImpLineExchangeRate (idBankExchangeRate),
input idBankImpLineRateScale (idBankRateScale),
input icBankImpLineCost (icCost),
input icBankImpLineRowID (icBankImportLineRowID),
output vcBankStateLineRowId (ocBankStateLineRowId),
input true (ilIsUnAllocatedStatement),
input vcBankImpLineRef (icBankImpLineRef),
output viFcReturnSuper (oiReturnStatus)) in BBankEntry>
if viFcReturnSuper <> 0 then assign viLocalReturn = viFcReturnSuper.
/* Create Processing Info */
<M-70 run CreateBankImpLineProcessInfo
(input 'AddBankEntryLine':U (icProcessName),
input #T-25'Create bank entry line data':255(677416537)T-25# (icProcessDesc),
input ? (icProcessResult),
input ? (icProcessParam),
input 'CreateUnallocatedBankEntry':U (icParentRowName),
input viLocalReturn (iiProcessStatus),
output viFcReturnSuper (oiReturnStatus)) in BBankImportLine>
if viLocalReturn < 0 then leave CREATE_BANK_STATEMENT.
/* Prepare Banking Entry reference for warning message */
assign ocBankingEntryReference = string(viBankStateYear) + "/" +
icBankImpLineStatNumber + "/" +
vcBankImpLineRef.
end. /* of CREATE_BANK_STATEMENT: */
/* ====== */
/* Return */
/* ====== */
if viLocalReturn <> 0 then assign oiReturnStatus = viLocalReturn.
if oiReturnStatus = -98 then assign oiReturnStatus = 0.