project QadFinancials > class BYearClosing > method AdditionalUpdatesPostingTaxAccount
Description
Add a default tax line to a postingline on a tax account.
Parameters
iiCompanyId | input | integer | |
icDefaultTaxCode | input | character | |
icPostingtcRowid | input | character | |
iiPostingLineId | input | integer | |
icCurrencyCode | input | character | |
itTaxPointDate | input | date | |
icTaxGLCode | input | character | |
idExchangeRate | input | decimal | |
idCCExchangeRate | input | decimal | |
idCCExchangeRateScale | input | decimal | |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program5/byearclosing.p)
assign viLocalReturnStatus = oiReturnStatus
oiReturnStatus = -98.
empty temp-table tYearClosingTaxDetailPosting.
/* Get the domain of the year closing company */
<Q-1 run DomainsForCompanies (all) (Read) (NoCache)
(input 0, (DomainId)
input '':U, (DomainCode)
input iiCompanyId, (CompanyId)
output dataset tqDomainsForCompanies) in BDomain >
find tqDomainsForCompanies where
tqDomainsForCompanies.tiCompany_id = iiCompanyId
no-lock no-error.
if not available tqDomainsForCompanies
then do:
assign vcMessage = trim(substitute(#T-4'The domain could not be found for an entity (Entity ID = &1).':255(63326)t-4#, trim(string(iiCompanyId)) ))
oiReturnStatus = -3.
<M-2 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input '':U (icFieldName),
input '':U (icFieldValue),
input 'S':U (icType),
input 1 (iiSeverity),
input '':U (icRowid),
input 'QadFin-6860':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BYearClosing>
return.
end. /* if not available tqDomainsForCompanies */
create tYearClosingTaxDetailPosting.
assign tYearClosingTaxDetailPosting.tx2d_domain = tqDomainsForCompanies.tcDomainCode
tYearClosingTaxDetailPosting.tx2d_tax_code = icDefaultTaxCode
tYearClosingTaxDetailPosting.tx2d_tr_type = {&VATTAXTRANSACTIONTYPE-APVOUCHER}.
/* Retrieve PostingLine Rowid */
<M-6 run GetPostingLineRowidBasedOnPostingLineID
(input iiPostingLineId (iiPostingLineID),
output vcPostingLineRowid (ocPostingLineRowid),
output viFcReturnSuper (oiReturnStatus)) in BJournalEntry>
if viFcReturnSuper <> 0 and viLocalReturnStatus >= 0
then assign viLocalReturnStatus = viFcReturnSuper.
<M-3 run AddTaxPosting
(input icPostingtcRowid (icPostingtcRowid),
input vcPostingLineRowid (icPostingLineTcRowid),
input itTaxPointDate (itTaxPointDate),
input trim(#T-5'Default Tax':100(63325)T-5#) (icDescription),
input icCurrencyCode (icCurrencyCode),
input 0 (iiCurrencyId),
input {&EXCHANGERATETYPE-ACCOUNTING} (icExchangeRateType),
input idExchangeRate (idExchangeRate),
input 1 (idExchangeRateScale),
input idCCExchangeRate (idCCRate),
input idCCExchangeRateScale (idCCRateScale),
input 0 (idBaseDebit),
input 0 (idBaseCredit),
input 0 (idFullDebit),
input 0 (idFullCredit),
input {&INVOICETYPE-INVOICE} (icInvoiceType),
input false (ilCalculateVat),
input-output tYearClosingTaxDetailPosting (tTaxDetailPosting),
input '':U (icCaller),
input false (ilIsVatDelay),
input '':U (icDivisionCode),
input '':U (icVatCurrencyCode),
input 0 (iiVatCurrencyId),
input 1 (idVatExchangeRate),
input 1 (idVatExchangeRateScale),
input {&VATTRANSACTIONTYPE-PURCHASE} (icTransactionType),
input '':U (icTxclTaxCls),
input '':U (icTxuTaxUsage),
input '':U (icFromTxzTaxZone),
input '':U (icToTxzTaxZone),
input '':U (icTxenvTaxEnv),
input '':U (icDocumentReference),
input '':U (icDocumentNumber),
input '':U (icPaymentCondition),
input false (ilIsTaxInCityFromCompany),
input false (ilIsTaxInCityFromShipTo),
input true (ilCustomerInvoice),
input '':U (icControlGLCode),
input 0 (iiMasterId),
input 0 (iiTransactionId),
input icTaxGLCode (icTaxGLCode),
input false (ilIsTaxable),
input 0 (idAdjustmentFactor),
input '':U (icCostCentreCode),
input '':U (icProjectCode),
input 0 (iiShipFromAddressId),
input 0 (iiShipToAddressId),
input {&VATTAXTRANSACTIONTYPE-APVOUCHER} (icTaxTransactionType),
input '':U (icSoldToDebtorCode),
input-output iiPostingLineId (biFirstVatPostingLineId),
output viDummyPostingLineID (oiSecondVatPostingLineId),
output vcDummy (ocPostingLineIds),
input false (ilLinkedCrCyDaemonReqExists),
output viFcReturnSuper (oiReturnStatus)) in BJournalEntry>
if viFcReturnSuper <> 0 and viLocalReturnStatus >= 0
then assign viLocalReturnStatus = viFcReturnSuper.
assign oiReturnStatus = viLocalReturnStatus.