project QadFinancials > class BPosting > method AddTaxPostingFillCCAmounts
Description
fill the cc amounts of posting line and posting vat
Parameters
iiCurrencyId | input | integer | Currency ID |
idExchangeRate | input | decimal | Exchange Rate |
idExchangeRateScale | input | decimal | exchange rate scale |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program6/bposting.p)
assign oiReturnStatus = -98
viLocalReturnStatus = 0.
/* ============================================================ */
/* Currency: CC = TC --> amounts: CC = TC */
/* Currency: DomainIsStatutory = false --> amounts: CC = LC */
/* Currency: CC <> TC & DomainIsStatutory --> CC = TC * SC-Rate */
/* ============================================================ */
if viCompanyCCId <> 0 and viCompanyCCId <> ?
then do:
if viCompanyCCId = iiCurrencyId
then assign tPostingLine.PostingLineDebitCC = tPostingLine.PostingLineDebitTC
tPostingLine.PostingLineCreditCC = tPostingLine.PostingLineCreditTC
tPostingLine.PostingLineCCRate = 1
tPostingLine.PostingLineCCScale = 1
tPostingVat.PostingVatTaxDebitCC = tPostingVat.PostingVatTaxDebitTC
tPostingVat.PostingVatTaxCreditCC = tPostingVat.PostingVatTaxCreditTC
tPostingVat.PostingVatBaseDebitCC = tPostingVat.PostingVatBaseDebitTC
tPostingVat.PostingVatBaseCreditCC = tPostingVat.PostingVatBaseCreditTC.
else if vlDomainIsStatutory = false
then assign tPostingLine.PostingLineDebitCC = tPostingLine.PostingLineDebitLC
tPostingLine.PostingLineCreditCC = tPostingLine.PostingLineCreditLC
tPostingLine.PostingLineCCRate = tPostingLine.PostingLineExchangeRate
tPostingLine.PostingLineCCScale = tPostingLine.PostingLineRateScale
tPostingVat.PostingVatTaxDebitCC = tPostingVat.PostingVatTaxDebitLC
tPostingVat.PostingVatTaxCreditCC = tPostingVat.PostingVatTaxCreditLC
tPostingVat.PostingVatBaseDebitCC = tPostingVat.PostingVatBaseDebitLC
tPostingVat.PostingVatBaseCreditCC = tPostingVat.PostingVatBaseCreditLC.
else assign tPostingLine.PostingLineCCRate = idExchangeRate
tPostingLine.PostingLineCCScale = idExchangeRateScale.
if tPostingLine.PostingLineDebitTC <> 0 then
tPostingLine.PostingLineDebitCC =
<M-1 RoundAmount
(input tPostingLine.PostingLineDebitTC * idExchangeRate * idExchangeRateScale (idUnroundedAmount),
input viCompanyCCId (iiCurrencyID),
input '':U (icCurrencyCode)) in business>.
if tPostingLine.PostingLineCreditTC <> 0 then
tPostingLine.PostingLineCreditCC =
<M-2 RoundAmount
(input tPostingLine.PostingLineCreditTC * idExchangeRate * idExchangeRateScale (idUnroundedAmount),
input viCompanyCCId (iiCurrencyID),
input '':U (icCurrencyCode)) in business>.
if tPostingVat.PostingVatTaxDebitTC <> 0 then
tPostingVat.PostingVatTaxDebitCC =
<M-3 RoundAmount
(input tPostingVat.PostingVatTaxDebitTC * idExchangeRate * idExchangeRateScale (idUnroundedAmount),
input viCompanyCCId (iiCurrencyID),
input '':U (icCurrencyCode)) in business>.
if tPostingVat.PostingVatTaxCreditTC <> 0 then
tPostingVat.PostingVatTaxCreditCC =
<M-4 RoundAmount
(input tPostingVat.PostingVatTaxCreditTC * idExchangeRate * idExchangeRateScale (idUnroundedAmount),
input viCompanyCCId (iiCurrencyID),
input '':U (icCurrencyCode)) in business>.
if tPostingVat.PostingVatBaseDebitTC <> 0 then
tPostingVat.PostingVatBaseDebitCC =
<M-5 RoundAmount
(input tPostingVat.PostingVatBaseDebitTC * idExchangeRate * idExchangeRateScale (idUnroundedAmount),
input viCompanyCCId (iiCurrencyID),
input '':U (icCurrencyCode)) in business>.
if tPostingVat.PostingVatBaseCreditTC <> 0 then
tPostingVat.PostingVatBaseCreditCC =
<M-6 RoundAmount
(input tPostingVat.PostingVatBaseCreditTC * idExchangeRate * idExchangeRateScale (idUnroundedAmount),
input viCompanyCCId (iiCurrencyID),
input '':U (icCurrencyCode)) in BApplicationProperty>.
end. /* if viCompanyCCId <> 0 and viCompanyCCId <> ? */
assign oiReturnStatus = viLocalReturnStatus.