NewZealand (NZ)
New Zealand localization of Business Central 29. It adds GST posting with BAS reporting, withholding tax (WHT), IRD numbers and adjustment notes, tax invoices, EFT bank payments, post-dated checks, cost-plus pricing and NZ address handling. Use it to find the objects, fields and reports that carry these local features.
What NZ changes in W1 109 objects, BC29
codeunit/12 "Gen. Jnl.-Post Line"
- +
local event OnAfterOldCustLedgEntryModify(var CustLedgEntry: Record "Cust. Ledger Entry"; GenJournalLine: Record "Gen. Journal Line") - +
local event OnAfterOldVendLedgEntryModify(var VendLedgEntry: Record "Vendor Ledger Entry"; GenJournalLine: Record "Gen. Journal Line"; AppliedAmount: Decimal; var NextTaxEntryNo: Integer; var NextEntryNo: Integer; var NextCheckEntryNo: Integer; NextTransactionNo: Integer) - +
local event OnPostCustWHTOnAfterPostCustWHTTaxInv(var GenJournalLine: Record "Gen. Journal Line"; var CustLedgerEntry: Record "Cust. Ledger Entry") - +
local event OnBeforeUnApplyWHTEntry(GenJnlLine: Record "Gen. Journal Line"; TransactionType: Option; CVNo: Code[20]; TransactionNo: Integer; VoidCheck: Boolean; var IsHandled: Boolean) - +
local procedure PostApplyCust(GenJnlLine: Record "Gen. Journal Line"; var DtldCVLedgEntryBuf: Record "Detailed CV Ledg. Entry Buffer"; var OldCVLedgEntryBuf: Record "CV Ledger Entry Buffer"; var NewCVLedgEntryBuf: Record "CV Ledger Entry Buffer"; var NewCVLedgEntryBuf2: Record "CV Ledger Entry Buffer"; Cust: Record Customer; AllApplied: Boolean; var AppliedAmount: Decimal; var OldAppliedAmount: Decimal; var PmtTolAmtToBeApplied: Decimal; CustLedgEntry2: Record "Cust. Ledger Entry") - +
local procedure PostApplyVend(GenJnlLine: Record "Gen. Journal Line"; var DtldCVLedgEntryBuf: Record "Detailed CV Ledg. Entry Buffer"; var OldCVLedgEntryBuf: Record "CV Ledger Entry Buffer"; var NewCVLedgEntryBuf: Record "CV Ledger Entry Buffer"; var NewCVLedgEntryBuf2: Record "CV Ledger Entry Buffer"; Vend: Record Vendor; AllApplied: Boolean; var AppliedAmount: Decimal; var OldAppliedAmount: Decimal; var PmtTolAmtToBeApplied: Decimal) - +
procedure UnapplyVendLedgEntry(GenJournalLine: Record "Gen. Journal Line"; DetailedVendorLedgEntry: Record "Detailed Vendor Ledg. Entry"; VoidCheck: Boolean) - +
local procedure VendorACYExchangeRateApplies(GenJnlLine: Record "Gen. Journal Line"): Boolean - +
procedure InsertWHTPostingBufferPosted(var WHTEntryGL: Record "WHT Entry"; var GenJnlLine: Record "Gen. Journal Line"; Apply: Boolean; Source: Option Sales,Purchase) - +
procedure IncreaseWHTEntryNo() - +
procedure GetTransactionNo(var TransactionNo: Integer) - +
procedure InsertGSTReport(VATEntryNo: Integer; GenJnlLine2: Record "Gen. Journal Line") - +
procedure GetVATEntryNo(): Integer - +
procedure InsertWHTPaymentGL(GenJnlLine: Record "Gen. Journal Line"; var GenJnlLineWHT: Record "Gen. Journal Line"; var EntryNo: Integer) - +
local procedure IsAboveWHTMinInvoiceAmount(GenJnlLine: Record "Gen. Journal Line"): Boolean - +
procedure SetReversalDocument(ReversalDoc: Boolean) - +
local procedure CalcDtldCVLedgEntryAmount(GenJnlLine: Record "Gen. Journal Line"; WHTPercent: Decimal): Decimal - +
procedure CalcGLAccWHT(GenJnlLine: Record "Gen. Journal Line"; var WHTPostingSetup: Record "WHT Posting Setup"; var WHTAmountLCY: Decimal; var WHTAmount: Decimal) - +
procedure PostGLAccWHT(GenJnlLine: Record "Gen. Journal Line"; WHTPostingSetup: Record "WHT Posting Setup"; WHTAmountLCY: Decimal) - +
procedure CalcCustWHT(GenJnlLine: Record "Gen. Journal Line"; var WHTPostingSetup: Record "WHT Posting Setup"; var WHTAmountLCY: Decimal; var WHTAmount: Decimal) - +
procedure PostCustWHT(GenJnlLine: Record "Gen. Journal Line"; CustLedgEntry: Record "Cust. Ledger Entry"; WHTPostingSetup: Record "WHT Posting Setup"; WHTAmountLCY: Decimal) - +
procedure PostCustWHTTaxInv(GenJnlLine: Record "Gen. Journal Line"; CustLedgEntry: Record "Cust. Ledger Entry") - +
procedure CalcVendWHT(GenJnlLine: Record "Gen. Journal Line"; var WHTPostingSetup: Record "WHT Posting Setup"; var WHTAmountLCY: Decimal; var WHTAmount: Decimal) - +
procedure PostVendWHT(GenJnlLine: Record "Gen. Journal Line"; VendLedgEntry: Record "Vendor Ledger Entry"; WHTPostingSetup: Record "WHT Posting Setup"; WHTAmountLCY: Decimal; WHTAmount: Decimal) - +
procedure PostVendWHTTaxInv(GenJnlLine: Record "Gen. Journal Line"; VendLedgEntry: Record "Vendor Ledger Entry") - +
procedure CalcBankAccWHT(GenJnlLine: Record "Gen. Journal Line"; var WHTPostingSetup: Record "WHT Posting Setup"; var WHTAmountLCY: Decimal; var WHTAmount: Decimal) - +
procedure CalcBankAccWHT2(GenJnlLine: Record "Gen. Journal Line"; var WHTPostingSetup: Record "WHT Posting Setup"; var WHTAmountLCY: Decimal; var WHTAmount: Decimal) - +
procedure PostBankAccWHT(GenJnlLine: Record "Gen. Journal Line"; WHTPostingSetup: Record "WHT Posting Setup"; WHTAmountLCY: Decimal) - +
procedure UpdateWHTEntryTransaction(DocNo: Code[20]) - +
procedure ProcessSourceCode(SourceCode: Code[10]; SourceCodeSetup: Record "Source Code Setup"): Boolean - +
procedure IsCustAcc(GenJnlLine: Record "Gen. Journal Line"): Boolean - +
procedure IsVendAcc(GenJnlLine: Record "Gen. Journal Line"): Boolean - +
procedure IsPaymentOrRefund(GenJnlLine: Record "Gen. Journal Line"): Boolean - +
procedure UnapplyWHTEntry(GenJnlLine: Record "Gen. Journal Line"; TransactionType: Option; CVNo: Code[20]; TransactionNo: Integer; VoidCheck: Boolean) - +
procedure CollectWHTAmount(DocNo: Code[20]): Decimal - +
procedure GetNextWHTEntryNo(): Integer - +
procedure IncrNextWHTEntryNo() - +
local procedure InsertPmtDiscGSTReport(GenJnlLine: Record "Gen. Journal Line"; VATEntry: Record "VAT Entry") - +
local procedure CreateVendGLEntriesForTotalAmounts(GenJnlLine: Record "Gen. Journal Line"; var TempDimPostingBuffer: Record "Dimension Posting Buffer"; VendPostingGr: Record "Vendor Posting Group"; AdjAmountBuf: array[4] of Decimal; SavedEntryNo: Integer; LedgEntryInserted: Boolean; GLAccNo: Code[20]) - +
local procedure SetBASFields(var VATEntry: Record "VAT Entry"; BASDocNo: Code[11]; BASVersion: Integer; BASAdjustment: Boolean) - +
local procedure CalcSourceCurrVATBaseAmount(GenJnlLine: Record "Gen. Journal Line"; WHTAmountLCY: Decimal): Decimal - −
local event OnAfterOldCustLedgEntryModify(var CustLedgEntry: Record "Cust. Ledger Entry"; GenJournalLine: Record "Gen. Journal Line"; var TempCustLedgerEntry: Record "Cust. Ledger Entry" temporary; var DetailedCVLedgEntryBuffer: Record "Detailed CV Ledg. Entry Buffer") - −
local event OnAfterOldVendLedgEntryModify(var VendLedgEntry: Record "Vendor Ledger Entry"; GenJournalLine: Record "Gen. Journal Line"; var TempVendorLedgerEntry: Record "Vendor Ledger Entry" temporary; var DetailedCVLedgEntryBuffer: Record "Detailed CV Ledg. Entry Buffer"; AppliedAmount: Decimal; var NextTaxEntryNo: Integer; var NextEntryNo: Integer; var NextCheckEntryNo: Integer; NextTransactionNo: Integer) - −
local procedure UpdateAppliedCVLedgerEntries() - −
local procedure CalcSourceCurrVATBaseAmount(var GenJnlLine: Record "Gen. Journal Line"): Decimal
table/81 "Gen. Journal Line"
- +
field(11620; "Adjustment"; Boolean) - +
field(11621; "BAS Adjustment"; Boolean) - +
field(11626; "Adjustment Applies-to"; Code[20]) - +
field(11627; "Adjmt. Entry No."; Integer) - +
field(11629; "BAS Doc. No."; Code[11]) - +
field(11630; "BAS Version"; Integer) - +
field(11631; "Financially Voided Cheque"; Boolean) - +
field(11632; "EFT Journal No."; Integer) - +
field(11633; "EFT Payment"; Boolean) - +
field(11634; "EFT Ledger Entry No."; Integer) - +
field(11635; "EFT Bank Account No."; Code[20]) - +
field(11636; "EFT Register No."; Integer) - +
field(28021; "Bank Branch No."; Text[20]) - +
field(28022; "Bank Account No."; Text[30]) - +
field(28023; "Customer/Vendor Bank"; Code[20]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28043; "WHT Entry No."; Integer) - +
field(28044; "WHT Report Line No."; Code[20]) - +
field(28045; "Skip WHT"; Boolean) - +
field(28046; "Certificate Printed"; Boolean) - +
field(28047; "WHT Payment"; Boolean) - +
field(28048; "Actual Vendor No."; Code[20]) - +
field(28049; "Is WHT"; Boolean) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
field(28087; "Vendor Exchange Rate (ACY)"; Decimal) - +
field(28088; "Line Discount Amt. (ACY)"; Decimal) - +
field(28089; "Inv. Discount Amt. (ACY)"; Decimal) - +
field(28090; "Post Dated Check"; Boolean) - +
field(28091; "Check No."; Code[20]) - +
field(28092; "Interest Amount"; Decimal) - +
field(28093; "Interest Amount (LCY)"; Decimal) - +
field(28161; "Entry No."; Integer) - +
local event OnBeforeCheckAdjustmentAppliesto(GeneralLedgerSetup: Record "General Ledger Setup"; SourceCodeSetup: Record "Source Code Setup"; var IsHandled: Boolean) - +
local event OnAfterShouldCheckAdjustmentAppliesTo(var GenJournalLine: Record "Gen. Journal Line"; var ShouldCheck: Boolean) - +
procedure ValidateAdjmtAppliesTo() - +
procedure CheckAdjustmentAppliesto() - +
local procedure ShouldCheckAdjustmentAppliesTo(var GenJournalLine: Record "Gen. Journal Line"): Boolean - +
local procedure LookupAdjmtAppliesTo()
table/181 "Posted Gen. Journal Line"
- +
field(11620; "Adjustment"; Boolean) - +
field(11621; "BAS Adjustment"; Boolean) - +
field(11626; "Adjustment Applies-to"; Code[20]) - +
field(11627; "Adjmt. Entry No."; Integer) - +
field(11629; "BAS Doc. No."; Code[11]) - +
field(11630; "BAS Version"; Integer) - +
field(11631; "Financially Voided Cheque"; Boolean) - +
field(11632; "EFT Journal No."; Integer) - +
field(11633; "EFT Payment"; Boolean) - +
field(11634; "EFT Ledger Entry No."; Integer) - +
field(11635; "EFT Bank Account No."; Code[20]) - +
field(11636; "EFT Register No."; Integer) - +
field(28021; "Bank Branch No."; Text[20]) - +
field(28022; "Bank Account No."; Text[30]) - +
field(28023; "Customer/Vendor Bank"; Code[20]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28043; "WHT Entry No."; Integer) - +
field(28044; "WHT Report Line No."; Code[20]) - +
field(28045; "Skip WHT"; Boolean) - +
field(28046; "Certificate Printed"; Boolean) - +
field(28047; "WHT Payment"; Boolean) - +
field(28048; "Actual Vendor No."; Code[20]) - +
field(28049; "Is WHT"; Boolean) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
field(28087; "Vendor Exchange Rate (ACY)"; Decimal) - +
field(28088; "Line Discount Amt. (ACY)"; Decimal) - +
field(28089; "Inv. Discount Amt. (ACY)"; Decimal) - +
field(28090; "Post Dated Check"; Boolean) - +
field(28091; "Check No."; Code[20]) - +
field(28092; "Interest Amount"; Decimal) - +
field(28093; "Interest Amount (LCY)"; Decimal) - +
field(28161; "Entry No."; Integer)
table/39 "Purchase Line"
- +
field(28006; "Prepmt. VAT Amount Deducted"; Decimal) - +
field(28007; "Prepmt. VAT Base Deducted"; Decimal) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
key(Key15; "Document Type", "Document No.", "WHT Business Posting Group", "WHT Product Posting Group") - +
local event OnBeforeCalcPrepaymentLineAmount(var PurchaseLine: Record "Purchase Line"; Currency: Record Currency; var IsHandled: Boolean) - +
procedure GetFullGST(): Boolean - +
procedure InitTextVariable() - +
procedure InitTextVariableTH() - +
procedure FormatNoText(var NoText: array[2] of Text[80]; No: Decimal; CurrencyCode: Code[10]) - +
procedure FormatNoTextTH(var NoText: array[2] of Text[80]; No: Decimal; CurrencyCode: Code[10]) - +
local procedure CalculateFullGST(var PrepmtLineAmount: Decimal): Boolean - +
local procedure UpdateGSTAmounts(): Boolean - +
local procedure FullGSTAmount(): Decimal - +
local procedure ExcludeVAT(AmountInclVAT: Decimal): Decimal - +
local procedure LineAmountExclFullGST(): Decimal - +
local procedure PrepmtLineAmtExclFullGST(): Decimal - +
local procedure AppendInvDiscount(LineAmount: Decimal): Decimal - +
procedure CalcFullGSTValues(var VATAmountLine: Record "VAT Amount Line"; var PurchLine: Record "Purchase Line"; PriceIncludingVAT: Boolean) - +
procedure UpdateACYAmounts(PurchHeaderToCalc: Record "Purchase Header") - +
local procedure CalcCurrencyFactorACY(): Decimal - +
local procedure GetAdditionalCurrencyCode(): Code[10]
table/254 "VAT Entry"
- +
field(11624; "Adjustment"; Boolean) - +
field(11625; "BAS Adjustment"; Boolean) - +
field(11626; "BAS Doc. No."; Code[11]) - +
field(11627; "BAS Version"; Integer) - +
field(11628; "Consol. BAS Doc. No."; Code[11]) - +
field(11629; "Consol. Version No."; Integer) - +
field(28070; "Currency Code"; Code[10]) - +
field(28071; "Sett. Unrealised Amount (FCY)"; Decimal) - +
field(28072; "Sett. Unrealised Base (FCY)"; Decimal) - +
field(28073; "Sett. Unrealized Amount"; Decimal) - +
field(28074; "Sett. Unrealized Base"; Decimal) - +
field(28075; "Sett. Rem. Unrealized Amount"; Decimal) - +
field(28076; "Sett. Rem. Unrealized Base"; Decimal) - +
field(28077; "Settlement Adjustment"; Boolean) - +
field(28078; "Sett. Payment Entry No."; Integer) - +
key(Key14; "Type", "Closed", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Tax Jurisdiction Code", "Use Tax", "Posting Date", "G/L Acc. No.") - +
key(Key15; "Posting Date", "Type", "Closed", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Reversed", "G/L Acc. No.", "VAT Reporting Date") - +
key(Key16; "Document Date") - +
key(Key17; "G/L Acc. No.") - +
key(Key18; "Type", "Closed", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Reversed", "Posting Date", "G/L Acc. No.", "VAT Reporting Date") - +
procedure GetCustUnrealizedVATPart(SettledAmount: Decimal; Paid: Decimal; Full: Decimal; TotalUnrealVATAmountFirst: Decimal; TotalUnrealVATAmountLast: Decimal; CustLedgEntry: Record "Cust. Ledger Entry"; GenJnlLine: Record "Gen. Journal Line"; WHTAmount: Decimal): Decimal - +
local procedure GetWHTAmount(DocumentNo: Code[20]; var WHTAmount: Decimal) - Δ
key(Key9; "BAS Doc. No.", "BAS Version") - Δ
key(Key10; "Type", "Closed", "BAS Adjustment", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Posting Date", "BAS Doc. No.") - Δ
key(Key11; "Document Type", "Type", "Currency Code", "Posting Date", "Closed") - Δ
key(Key12; "Bill-to/Pay-to No.") - Δ
key(Key13; "Sett. Payment Entry No.")
table/98 "General Ledger Setup"
- +
field(11600; "BAS to be Lodged as a Group"; Boolean) - +
field(11601; "BAS Group Company"; Boolean) - +
field(11602; "BAS GST Division Factor"; Decimal) - +
field(11603; "Adjustment Mandatory"; Boolean) - +
field(11604; "Enable GST (Australia)"; Boolean) - +
field(11605; "Enable IRD No."; Boolean) - +
field(11606; "Enable VAT Registration No."; Boolean) - +
field(28000; "Address Validation"; Option) - +
field(28001; "AMAS Software"; Integer) - +
field(28002; "BarCode Custom Information"; Option) - +
field(28005; "Full GST on Prepayment"; Boolean) - +
field(28042; "Manual Sales WHT Calc."; Boolean) - +
field(28043; "Enable WHT"; Boolean) - +
field(28044; "Enable Tax Invoices"; Boolean) - +
field(28045; "Print Tax Invoices on Posting"; Boolean) - +
field(28046; "Round Amount for WHT Calc"; Boolean) - +
field(28047; "Min. WHT Calc only on Inv. Amt"; Boolean) - +
field(28048; "Force Payment With Invoice"; Boolean) - +
field(28090; "Post Dated Journal Template"; Code[10]) - +
field(28091; "Post Dated Journal Batch"; Code[10]) - +
field(28092; "Interest Cal Excl. VAT"; Boolean) - +
field(28093; "GST Report"; Boolean) - +
procedure GSTEnabled(DateToCheck: Date): Boolean - +
procedure IRDNoEnabled(): Boolean - +
procedure VATRegistrationNoEnabled(): Boolean - +
procedure CheckFullGSTonPrepayment(VATBusPostingGr: Text[30]; VATProdPostingGr: Text[30]): Boolean - Δ
field(57; "Local Address Format"; Option)
table/37 "Sales Line"
- +
field(28006; "Prepmt. VAT Amount Deducted"; Decimal) - +
field(28007; "Prepmt. VAT Base Deducted"; Decimal) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28043; "Full GST"; Decimal) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
local event OnBeforeCalcPrepaymentLineAmount(var SalesLine: Record "Sales Line"; Currency: Record Currency; var IsHandled: Boolean) - +
procedure InitTextVariable() - +
procedure InitTextVariableTH() - +
procedure FormatNoText(var NoText: array[2] of Text[80]; No: Decimal; CurrencyCode: Code[10]) - +
procedure FormatNoTextTH(var NoText: array[2] of Text[80]; No: Decimal; CurrencyCode: Code[10]) - +
local procedure CalculateFullGST(var PrepmtLineAmount: Decimal): Boolean - +
local procedure FullGSTAmount(): Decimal - +
procedure GetFullGST(): Boolean - +
procedure GetGLSetup() - +
procedure CalcFullGSTValues(var VATAmountLine: Record "VAT Amount Line"; var SalesLine: Record "Sales Line"; PriceIncludingVAT: Boolean) - +
procedure UpdateACYAmounts(SalesHeaderToCalc: Record "Sales Header") - +
local procedure GetCurrencyFactorACY(var AddCurrency: Record Currency): Decimal - +
local procedure GetCurrencyFactorACY(var AddCurrency: Record Currency; CurrSalesHeader: Record "Sales Header"): Decimal - +
local procedure GetAdditionalCurrencyCode(): Code[10] - −
local event OnCalcVATAmountLinesOnBeforeVATAmountLineUpdateLines(var SalesLine: Record "Sales Line"; var IsHandled: Boolean; var VATAmountLine: Record "VAT Amount Line"; var TotalVATAmount: Decimal)
table/112 "Sales Invoice Header"
- +
field(17110; "S/T Type"; Option) - +
field(17111; "S/T Expiry Date"; Date) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Rem. WHT Prepaid Amount (LCY)"; Decimal) - +
field(28042; "Paid WHT Prepaid Amount (LCY)"; Decimal) - +
field(28043; "Total WHT Prepaid Amount (LCY)"; Decimal) - +
field(28070; "Tax Document Type"; Option) - +
field(28071; "Printed Tax Document"; Boolean) - +
field(28072; "Posted Tax Document"; Boolean) - +
field(28073; "Tax Document Marked"; Boolean) - +
field(28074; "Tax Date Filter"; Date) - +
field(28075; "Invoice Print Type"; Option) - +
key(Key14; "Due Date") - +
key(Key15; "Salesperson Code") - +
key(Key16; "SystemModifiedAt") - Δ
key(Key9; "Printed Tax Document", "Bill-to Customer No.", "Currency Code", "Payment Discount %", "Posted Tax Document", "Tax Document Marked") - Δ
key(Key10; "Tax Document Type", "Bill-to Customer No.", "Currency Code", "Payment Discount %", "Printed Tax Document", "Posted Tax Document") - Δ
key(Key11; "Tax Document Marked") - Δ
key(Key12; "Posting Date") - Δ
key(Key13; "Document Exchange Status")
table/25 "Vendor Ledger Entry"
- +
field(11620; "Adjustment"; Boolean) - +
field(11621; "BAS Adjustment"; Boolean) - +
field(11626; "Adjustment Applies-to"; Code[20]) - +
field(11628; "Pre Adjmt. Reason Code"; Code[10]) - +
field(11631; "Financially Voided Cheque"; Boolean) - +
field(11632; "EFT Register No."; Integer) - +
field(11633; "EFT Amount Transferred"; Decimal) - +
field(11634; "EFT Bank Account No."; Code[20]) - +
field(28040; "Rem. Amt for WHT"; Decimal) - +
field(28041; "Rem. Amt"; Decimal) - +
field(28042; "WHT Amount"; Decimal) - +
field(28043; "WHT Amount (LCY)"; Decimal) - +
key(Key19; "EFT Register No.") - +
key(Key20; "Vendor Posting Group") - +
key(Key21; "Pmt. Discount Date") - +
key(Key22; "Document Type", "Due Date", "Open") - Δ
key(Key16; "Vendor No.", "Document Date", "BAS Adjustment") - Δ
key(Key17; "Vendor No.", "Positive", "Applies-to Doc. Type", "Applies-to Doc. No.", "Due Date") - Δ
key(Key18; "Document No.", "Document Type", "Vendor No.")
table/38 "Purchase Header"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(11620; "ABN"; Text[14]) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Actual Vendor No."; Code[20]) - +
field(28050; "WHT Amount"; Decimal) - +
field(28070; "Printed Tax Document"; Boolean) - +
field(28071; "Posted Tax Document"; Boolean) - +
field(28072; "Tax Document Posting Date"; Date) - +
field(28087; "Vendor Exchange Rate (ACY)"; Decimal) - +
local event OnValidateBuyFromVendorNoOnBeforeCheckVendorRegistered(var PurchaseHeader: Record "Purchase Header"; var SkipCheckVendorRegistered: Boolean) - +
local procedure ValidateDocumentDate() - +
local procedure ValidateAppliesToDocNo() - +
local procedure LookupAppliesToDocNo() - +
local procedure LookupAdjmtAppliesTo() - +
procedure ValidateAdjmtAppliesTo() - +
local procedure UpdateACYAmountInLines()
codeunit/90 "Purch.-Post"
- +
local event OnBeforePostWHT(var PurchaseHeader: Record "Purchase Header"; var TotalInvAmount: Decimal; var PurchInvHeader: Record "Purch. Inv. Header"; var PurchCrMemoHeader: Record "Purch. Cr. Memo Hdr."; var TempPurchaseLineGlobal: Record "Purchase Line" temporary; var WHTEntry: Record "WHT Entry"; var IsHandled: Boolean) - +
local procedure CalculateAmountsInclVAT(PurchHeader: Record "Purchase Header"; var PurchLine: Record "Purchase Line"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var TempVATAmountLineRemainder: Record "VAT Amount Line" temporary; FullGST: Boolean) - +
local procedure PostICGenJnl(PurchHeader: Record "Purchase Header") - +
procedure GetCurrencyFactorACY(PurchHeader: Record "Purchase Header") - +
procedure InsertGenJournalWHT(var PurchHeader: Record "Purchase Header"; var GenJnlLine: Record "Gen. Journal Line"; AccountNo: Code[20]) - +
procedure GetDate(PurchHeader: Record "Purchase Header"): Date - +
local procedure FillPrepmtLineNoBuf(LineNo: Integer; PrepmtLineNo: Integer) - +
local procedure SavePrepmtVATDeducted(PurchLine: Record "Purchase Line") - +
local procedure DividePrepmtVATDeducted(var PurchLine: Record "Purchase Line") - +
local procedure DistributeAmount(AmountToDistibute: Decimal; Ratio: Decimal; var Amount: Decimal; var Reminder: Decimal) - +
local procedure UpdateTaxForPostedDoc(var PurchHeader: Record "Purchase Header") - +
local procedure CheckWHTApplication(PurchHeader: Record "Purchase Header") - +
local procedure CalcWHTAmountOnPrepayment(DocNo: Code[20]): Decimal - +
local procedure PostWHT(var PurchHeader: Record "Purchase Header"; TotalInvAmount: Decimal) - +
local procedure InitializeWHTAmount(var PurchHeader: Record "Purchase Header") - +
local procedure RestoreWHTAmountToHeader(var PurchaseHeader: Record "Purchase Header") - −
local procedure CalculateAmountsInclVAT(PurchHeader: Record "Purchase Header"; var PurchLine: Record "Purchase Line"; var TempVATAmountLine: Record "VAT Amount Line" temporary; var TempVATAmountLineRemainder: Record "VAT Amount Line" temporary) - −
local procedure PostICGenJnl()
table/21 "Cust. Ledger Entry"
- +
field(11620; "Adjustment"; Boolean) - +
field(11621; "BAS Adjustment"; Boolean) - +
field(11626; "Adjustment Applies-to"; Code[20]) - +
field(11628; "Pre Adjmt. Reason Code"; Code[10]) - +
field(28040; "Rem. Amt for WHT"; Decimal) - +
field(28041; "Rem. Amt"; Decimal) - +
field(28042; "WHT Amount"; Decimal) - +
field(28043; "WHT Amount (LCY)"; Decimal) - +
field(28044; "WHT Payment"; Boolean) - +
key(Key24; "Document Type", "Open", "Posting Date", "Closed at Date") - +
key(Key25; "Salesperson Code") - +
key(Key26; "SystemModifiedAt") - Δ
key(Key18; "Customer No.", "Document Date", "BAS Adjustment") - Δ
key(Key19; "Customer No.", "Positive", "Applies-to Doc. Type", "Applies-to Doc. No.", "Due Date") - Δ
key(Key20; "Document No.", "Document Type", "Customer No.") - Δ
key(Key21; "Document Type", "Posting Date") - Δ
key(Key22; "Document Type", "Customer No.", "Open", "Due Date") - Δ
key(Key23; "Customer Posting Group")
table/79 "Company Information"
- +
field(11620; "ABN"; Text[13]) - +
field(11621; "Tax Period"; Option) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(17100; "IRD No."; Text[30]) - +
field(28040; "WHT Registration ID"; Text[30]) - +
field(28041; "RDO Code"; Code[3]) - +
field(28070; "VAT Registration Date"; Date) - +
local event OnBeforeValidateCity(var CompanyInformation: Record "Company Information"; CurrentFieldNo: Integer; var IsHandled: Boolean) - +
local event OnBeforeValidatePostCode(var CompanyInformation: Record "Company Information"; CurrentFieldNo: Integer; var IsHandled: Boolean) - +
local event OnBeforeValidateShipToCity(var CompanyInformation: Record "Company Information"; CurrentFieldNo: Integer; var IsHandled: Boolean) - +
local event OnBeforeValidateShipToPostCode(var CompanyInformation: Record "Company Information"; CurrentFieldNo: Integer; var IsHandled: Boolean) - Δ
field(11; "Giro No."; Text[20]) - Δ
field(14; "Bank Account No."; Text[30]) - Δ
field(38; "IBAN"; Code[50]) - −
local event OnBeforeValidateCity(var CompanyInformation: Record "Company Information"; var IsHandled: Boolean) - −
local event OnBeforeValidatePostCode(var CompanyInformation: Record "Company Information"; var IsHandled: Boolean) - −
local event OnBeforeValidateShipToCity(var CompanyInformation: Record "Company Information"; var IsHandled: Boolean) - −
local event OnBeforeValidateShipToPostCode(var CompanyInformation: Record "Company Information"; var IsHandled: Boolean)
table/312 "Purchases & Payables Setup"
- +
field(11610; "GST Prod. Posting Group"; Code[20]) - +
field(11611; "Pre-GST Prod. Posting Group"; Code[20]) - +
field(11612; "Vendor Registration Warning"; Boolean) - +
field(11613; "Payment Discount Reason Code"; Code[10]) - +
field(28040; "WHT Certificate No. Series"; Code[20]) - +
field(28041; "Print Dialog"; Boolean) - +
field(28042; "Print WHT Docs. on Pay. Post"; Boolean) - +
field(28043; "Print WHT Docs. on Credit Memo"; Boolean) - +
field(28070; "Posted Tax Invoice Nos."; Code[20]) - +
field(28071; "Posted Tax Credit Memo Nos"; Code[20]) - +
field(28072; "Posted Non Tax Invoice Nos."; Code[20]) - +
field(28073; "Posted Non Tax Credit Memo Nos"; Code[20]) - +
field(28087; "Enable Vendor GST Amount (ACY)"; Boolean) - +
field(28090; "Post Dated Check Template"; Code[10]) - +
field(28091; "Post Dated Check Batch"; Code[10]) - +
field(28093; "Default Cancel Reason Code"; Code[10])
table/114 "Sales Cr.Memo Header"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(17110; "S/T Type"; Option) - +
field(17111; "S/T Expiry Date"; Date) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Rem. WHT Prepaid Amount (LCY)"; Decimal) - +
field(28042; "Paid WHT Prepaid Amount (LCY)"; Decimal) - +
field(28043; "Total WHT Prepaid Amount (LCY)"; Decimal) - +
field(28070; "Tax Document Type"; Option) - +
field(28071; "Printed Tax Document"; Boolean) - +
field(28072; "Posted Tax Document"; Boolean) - +
field(28073; "Tax Document Marked"; Boolean) - +
field(28074; "Tax Date Filter"; Date) - +
field(28075; "Invoice Print Type"; Option)
table/124 "Purch. Cr. Memo Hdr."
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(11620; "ABN"; Text[14]) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Rem. WHT Prepaid Amount (LCY)"; Decimal) - +
field(28042; "Paid WHT Prepaid Amount (LCY)"; Decimal) - +
field(28043; "Total WHT Prepaid Amount (LCY)"; Decimal) - +
field(28045; "Actual Vendor No."; Code[20]) - +
field(28070; "Printed Tax Document"; Boolean) - +
field(28071; "Posted Tax Document"; Boolean) - +
field(28073; "Tax Date Filter"; Date) - +
field(28074; "Tax Document Marked"; Boolean) - +
field(28075; "Invoice Print Type"; Option)
table/23 "Vendor"
- +
field(11620; "ABN"; Text[11]) - +
field(11621; "Registered"; Boolean) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(11623; "Foreign Vend"; Boolean) - +
field(11624; "EFT Payment"; Boolean) - +
field(11625; "EFT Bank Account No."; Code[20]) - +
field(17100; "IRD No."; Text[30]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Payable Amount (LCY)"; Decimal) - +
field(28042; "WHT Registration ID"; Text[20]) - +
field(28043; "ID No."; Text[20]) - +
field(28090; "Post Dated Checks (LCY)"; Decimal) - +
key(Key16; "SystemModifiedAt") - Δ
key(Key14; "ABN", "ABN Division Part No.") - Δ
key(Key15; "Blocked")
table/290 "VAT Amount Line"
- +
field(28005; "Full GST on Prepayment"; Boolean) - +
field(28070; "VAT Realized"; Decimal) - +
field(28071; "Amount Paid"; Decimal) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
field(28086; "Calculated VAT Amount (ACY)"; Decimal) - +
procedure GetTotalLineAmountACY(): Decimal - +
procedure GetTotalVATAmountACY(): Decimal - +
procedure GetTotalVATBaseACY(): Decimal - +
procedure GetTotalAmountInclVATACY(): Decimal - +
local procedure GetAdditionalReportingCurrencyCode(): Code[10] - Δ
key(Key1; "VAT Identifier", "VAT Calculation Type", "Tax Group Code", "Use Tax", "Positive", "Full GST on Prepayment")
table/115 "Sales Cr.Memo Line"
- +
field(17110; "S/T Exempt"; Boolean) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
key(Key9; "Document No.", "Location Code") - +
procedure GetAdditionalCurrencyCode(): Code[10] - Δ
key(Key7; "Document No.", "WHT Business Posting Group", "WHT Product Posting Group") - Δ
key(Key8; "Order No.", "Order Line No.", "Posting Date")
table/123 "Purch. Inv. Line"
- +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
field(28091; "Prepayment %"; Decimal) - +
key(Key7; "Document No.", "Location Code") - +
local procedure GetAdditionalCurrencyCode(): Code[10] - Δ
key(Key5; "Document No.", "WHT Business Posting Group", "WHT Product Posting Group") - Δ
key(Key6; "Order No.", "Order Line No.", "Posting Date")
table/36 "Sales Header"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28050; "WHT Amount"; Decimal) - +
field(28070; "Tax Document Type"; Option) - +
field(28071; "Printed Tax Document"; Boolean) - +
field(28072; "Posted Tax Document"; Boolean) - +
field(28073; "Tax Document Marked"; Boolean) - +
local procedure ValidateDocumentDate() - +
local procedure ValidateAppliesToDocNo() - +
local procedure LookupAppliesToDocNo() - +
procedure ValidateAdjmtAppliesTo()
table/49 "Invoice Post. Buffer"
- +
field(11624; "Adjustment"; Boolean) - +
field(11625; "BAS Adjustment"; Boolean) - +
field(11626; "Adjustment Applies-to"; Code[20]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount(ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount(ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
field(28110; "Line No."; Integer) - +
field(28111; "Posting Description"; Text[100]) - Δ
key(Key1; "Line No.", "Type", "G/L Account", "Gen. Bus. Posting Group", "Gen. Prod. Posting Group", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Tax Area Code", "Tax Group Code", "Tax Liable", "Use Tax", "Dimension Set ID", "Job No.", "Fixed Asset Line No.", "Deferral Code", "Additional Grouping Identifier")
codeunit/444 "Purchase-Post Prepayments"
- +
local procedure CalcWHTAmounts(PurchInvNo: Code[20]; PrepaymentInvLineBuffer: Record "Prepayment Inv. Line Buffer"; var WHTEntry: Record "WHT Entry"; var WHTAmount: Decimal; var WHTAmountLCY: Decimal) - +
procedure SavePrepmtAmounts(PurchHeader: Record "Purchase Header"; PurchLine: Record "Purchase Line"; DocumentType: Option Invoice,"Credit Memo",Statistic; var TempOriginalPurchLine: Record "Purchase Line") - +
procedure RestorePrepmtAmounts(var TempOriginalPurchLine: Record "Purchase Line"; var PurchLine: Record "Purchase Line"; DocumentType: Option Invoice,"Credit Memo",Statistic) - +
local procedure CalcFullGSTOnLine(PurchLine: Record "Purchase Line"; var VATAmountLine: Record "VAT Amount Line"; DocumentType: Option Invoice,"Credit Memo",Statistic; PricesIncludingVAT: Boolean) - +
local procedure PostPrepmtInvLineBuffer(PurchHeader: Record "Purchase Header"; PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer"; DocumentType: Option Invoice,"Credit Memo"; PostingDescription: Text[100]; DocType: Enum "Gen. Journal Document Type"; DocNo: Code[20]; ExtDocNo: Text[35]; SrcCode: Code[10]; PostingNoSeriesCode: Code[20]; WHTAmountLCY: Decimal; WHTAmount: Decimal) - +
procedure InsertGST(PurchHeader: Record "Purchase Header"; PrepmtInvLineBuf2: Record "Prepayment Inv. Line Buffer"; DocumentType: Option Invoice,"Credit Memo"; DocumentNo: Code[20]; VATEntryNo: Integer) - +
procedure InsertInvLineBufferGST(var PrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer"; PrepmtInvLineBuf2: Record "Prepayment Inv. Line Buffer") - +
procedure FillInvLineBufferGST(PurchHeader: Record "Purchase Header"; PurchLine: Record "Purchase Line"; GLAcc: Record "G/L Account"; var PrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer") - +
procedure BuildInvLineBufferGST(PurchHeader: Record "Purchase Header"; var PurchLine: Record "Purchase Line"; DocumentType: Option; var PrepmtInvLineBuf: Record "Prepayment Inv. Line Buffer"; InvoiceRounding: Boolean) - +
local procedure IsFullGST(var PurchaseLine: Record "Purchase Line"): Boolean - +
local procedure IsFullGST(var PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer"): Boolean - −
local procedure PostPrepmtInvLineBuffer(PurchHeader: Record "Purchase Header"; PrepmtInvLineBuffer: Record "Prepayment Inv. Line Buffer"; DocumentType: Option Invoice,"Credit Memo"; PostingDescription: Text[100]; DocType: Enum "Gen. Journal Document Type"; DocNo: Code[20]; ExtDocNo: Text[35]; SrcCode: Code[10]; PostingNoSeriesCode: Code[20])
table/113 "Sales Invoice Line"
- +
field(17110; "S/T Exempt"; Boolean) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
field(28090; "Prepayment %"; Decimal) - +
key(Key28001; "Document No.", "WHT Business Posting Group", "WHT Product Posting Group") - +
local procedure GetAdditionalCurrencyCode(): Code[10]
table/122 "Purch. Inv. Header"
- +
field(11620; "ABN"; Text[14]) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Rem. WHT Prepaid Amount (LCY)"; Decimal) - +
field(28042; "Paid WHT Prepaid Amount (LCY)"; Decimal) - +
field(28043; "Total WHT Prepaid Amount (LCY)"; Decimal) - +
field(28044; "Actual Vendor No."; Code[20]) - +
field(28070; "Printed Tax Document"; Boolean) - +
field(28071; "Posted Tax Document"; Boolean) - +
field(28073; "Tax Date Filter"; Date) - +
field(28074; "Tax Document Marked"; Boolean) - +
field(28075; "Invoice Print Type"; Option)
table/125 "Purch. Cr. Memo Line"
- +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28042; "WHT Absorb Base"; Decimal) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount (ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount (ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
key(Key6; "Document No.", "Location Code") - +
local procedure GetAdditionalCurrencyCode(): Code[10] - Δ
key(Key4; "Document No.", "WHT Business Posting Group", "WHT Product Posting Group") - Δ
key(Key5; "Order No.", "Order Line No.", "Posting Date")
table/17 "G/L Entry"
- +
field(11600; "BAS Doc. No."; Code[11]) - +
field(11601; "BAS Adjustment"; Boolean) - +
field(11602; "Adjustment"; Boolean) - +
field(11624; "BAS Version"; Integer) - +
field(11625; "Consol. BAS Doc. No."; Code[11]) - +
field(11626; "Consol. Version No."; Integer) - +
key(Key14; "BAS Doc. No.", "BAS Version") - +
key(Key15; "G/L Account No.", "BAS Adjustment", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Posting Date", "BAS Doc. No.") - +
key(Key16; "Source Code", "Posting Date", "Document No.") - +
key(Key17; "Source Code", "Document No.", "Posting Date") - +
key(Key18; "Dimension Set ID") - Δ
key(Key13; "G/L Account No.", "Posting Date", "VAT Bus. Posting Group", "VAT Prod. Posting Group")
table/311 "Sales & Receivables Setup"
- +
field(11610; "Pre-GST Prod. Posting Group"; Code[20]) - +
field(11611; "Payment Discount Reason Code"; Code[10]) - +
field(28040; "Print WHT on Credit Memo"; Boolean) - +
field(28041; "Print Dialog"; Boolean) - +
field(28070; "Posted Tax Invoice Nos."; Code[20]) - +
field(28071; "Posted Tax Credit Memo Nos"; Code[20]) - +
field(28072; "Posted Non Tax Invoice Nos."; Code[20]) - +
field(28073; "Posted Non Tax Credit Memo Nos"; Code[20]) - +
field(28090; "Post Dated Check Template"; Code[10]) - +
field(28091; "Post Dated Check Batch"; Code[10]) - +
field(28092; "Incl. PDC in Cr. Limit Check"; Boolean) - +
field(28093; "Default Cancel Reason Code"; Code[10])
table/55 "Invoice Posting Buffer"
- +
field(11624; "Adjustment"; Boolean) - +
field(11625; "BAS Adjustment"; Boolean) - +
field(11626; "Adjustment Applies-to"; Code[20]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28081; "VAT Base (ACY)"; Decimal) - +
field(28082; "VAT Amount(ACY)"; Decimal) - +
field(28083; "Amount Including VAT (ACY)"; Decimal) - +
field(28084; "Amount(ACY)"; Decimal) - +
field(28085; "VAT Difference (ACY)"; Decimal) - +
procedure GetGLAccountGST(DeferralCode: Code[10]; DefaultGLAccount: Code[20]): Code[20]
codeunit/365 "Format Address"
- +
procedure CreateBarCode(TableNo: Integer; TableKey: Text; AddressType: Option; CustomInfo1: Code[20]; CustomInfo2: Code[20]; CustomInfo3: Code[20]) - +
procedure PrintBarCode(AddressType: Option): Text[100] - +
procedure SalesTaxInvBillTo(var AddrArray: array[8] of Text[100]; var SalesTaxInvHeader: Record "Sales Tax Invoice Header") - +
procedure SalesTaxInvShipTo(var AddrArray: array[8] of Text[100]; var SalesTaxInvHeader: Record "Sales Tax Invoice Header") - +
procedure SalesTaxCrMemoBillTo(var AddrArray: array[8] of Text[100]; var SalesTaxCrMemoHeader: Record "Sales Tax Cr.Memo Header") - +
procedure SalesTaxCrMemoShipTo(var AddrArray: array[8] of Text[100]; var SalesTaxCrMemoHeader: Record "Sales Tax Cr.Memo Header") - +
procedure PurchTaxInvPayTo(var AddrArray: array[8] of Text[100]; var PurchTaxInvHeader: Record "Purch. Tax Inv. Header") - +
procedure PurchTaxInvShipTo(var AddrArray: array[8] of Text[100]; var PurchTaxInvHeader: Record "Purch. Tax Inv. Header") - +
procedure PurchTaxCrMemoPayTo(var AddrArray: array[8] of Text[100]; var PurchTaxCrMemoHeader: Record "Purch. Tax Cr. Memo Hdr.") - +
procedure PurchTaxCrMemoShipTo(var AddrArray: array[8] of Text[100]; var PurchTaxCrMemoHeader: Record "Purch. Tax Cr. Memo Hdr.")
codeunit/442 "Sales-Post Prepayments"
- +
procedure SavePrepmtAmounts(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; DocumentType: Option Invoice,"Credit Memo",Statistic; var TempOriginalSalesLine: Record "Sales Line") - +
procedure RestorePrepmtAmounts(var TempOriginalSalesLine: Record "Sales Line"; var SalesLine: Record "Sales Line"; DocumentType: Option Invoice,"Credit Memo",Statistic) - +
local procedure CalcFullGSTOnLine(SalesLine: Record "Sales Line"; var VATAmountLine: Record "VAT Amount Line"; DocumentType: Option Invoice,"Credit Memo",Statistic; PricesIncludingVAT: Boolean) - +
procedure InsertGST(SalesHeader: Record "Sales Header"; PrepmtInvBuf2: Record "Prepayment Inv. Line Buffer"; DocumentType: Option Invoice,"Credit Memo"; DocumentNo: Code[20]; VATEntryNo: Integer) - +
procedure InsertInvLineBufferGST(var PrepmtInvBuf: Record "Prepayment Inv. Line Buffer"; PrepmtInvBuf2: Record "Prepayment Inv. Line Buffer") - +
local procedure FillInvLineBufferGST(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; GLAcc: Record "G/L Account"; var PrepmtInvBuf: Record "Prepayment Inv. Line Buffer") - +
local procedure BuildInvLineBufferGST(SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; DocumentType: Option; var PrepmtInvBuf: Record "Prepayment Inv. Line Buffer"; InvoiceRounding: Boolean) - +
procedure PrepmtAmountCheck(SalesLine: Record "Sales Line"; DocumentType: Option Invoice,"Credit Memo",Statistic): Decimal - +
local procedure IsFullGST(var SalesLine: Record "Sales Line"): Boolean - +
local procedure IsFullGST(var PrepaymentInvLineBuffer: Record "Prepayment Inv. Line Buffer"): Boolean
codeunit/80 "Sales-Post"
- +
local procedure PostICGenJnl(SalesHeader: Record "Sales Header") - +
procedure InsertGenJournalWHT(var SalesHeader: Record "Sales Header"; var GenJnlLine: Record "Gen. Journal Line"; AccountNo: Code[20]; AmountWHT: Decimal) - +
local procedure FillPrepmtLineNoBuf(LineNo: Integer; PrepmtLineNo: Integer) - +
local procedure SavePrepmtVATDeducted(SalesLine: Record "Sales Line") - +
local procedure UpdateTaxForPostedDoc(var SalesHeader: Record "Sales Header") - +
procedure GetCurrencyFactorACY(SalesHeader: Record "Sales Header"; var AddCurrency: Record Currency): Decimal - +
procedure GetDate(SalesHeader: Record "Sales Header"): Date - +
local procedure CheckWHTApplication(SalesHeader: Record "Sales Header") - +
local procedure PostWHT(var SalesHeader: Record "Sales Header"; TotalInvAmount: Decimal) - −
local procedure PostICGenJnl()
table/1383 "Vendor Templ."
- +
field(11620; "ABN"; Text[11]) - +
field(11621; "Registered"; Boolean) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(11623; "Foreign Vend"; Boolean) - +
field(11624; "EFT Payment"; Boolean) - +
field(17100; "IRD No."; Text[30]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28042; "WHT Registration ID"; Text[20]) - +
field(28043; "ID No."; Text[20]) - Δ
field(14; "Our Account No."; Text[20])
table/18 "Customer"
- +
field(11620; "ABN"; Text[11]) - +
field(11621; "Registered"; Boolean) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(17100; "IRD No."; Text[30]) - +
field(17110; "S/T Type"; Option) - +
field(17111; "S/T Expiry Date"; Date) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Payable Amount (LCY)"; Decimal) - +
field(28070; "Tax Document Type"; Option) - +
field(28090; "Post Dated Checks (LCY)"; Decimal)
table/1381 "Customer Templ."
- +
field(11620; "ABN"; Text[11]) - +
field(11621; "Registered"; Boolean) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(17100; "IRD No."; Text[30]) - +
field(17110; "S/T Type"; Option) - +
field(17111; "S/T Expiry Date"; Date) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28070; "Tax Document Type"; Option) - Δ
field(14; "Our Account No."; Text[20])
codeunit/13 "Gen. Jnl.-Post Batch"
- +
procedure CheckWHTCalculationRule(TotalInvoiceAmountLCY: Decimal; WHTPostingSetup: Record "WHT Posting Setup"; var GenJnlLine5: Record "Gen. Journal Line") - +
procedure VendorMinWHT(var VendLedgEntry: Record "Vendor Ledger Entry"; var GenJnlLine5: Record "Gen. Journal Line") - +
procedure CustomerMinWHT(var CustLedgEntry: Record "Cust. Ledger Entry"; var GenJnlLine5: Record "Gen. Journal Line") - +
procedure CompareAmounts(AmountLCY: Decimal; WHTPostSetup: Record "WHT Posting Setup"): Boolean - +
local procedure PostGenJournalLine(var GenJournalLine: Record "Gen. Journal Line"; CurrGenJnlLine: Record "Gen. Journal Line"; CurrentICPartner: Code[20]; ICTransactionNo: Integer): Boolean - +
local procedure IsWHTPaymentPosting(var GenJournalLine: Record "Gen. Journal Line"): Boolean - −
local procedure PostGenJournalLine(var GenJournalLine: Record "Gen. Journal Line"; CurrentICPartner: Code[20]; ICTransactionNo: Integer): Boolean
table/120 "Purch. Rcpt. Header"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(11620; "ABN"; Text[14]) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Actual Vendor No."; Code[20])
table/270 "Bank Account"
- +
field(11600; "EFT Bank Code"; Code[10]) - +
field(11601; "EFT BSB No."; Code[10]) - +
field(11602; "EFT Security No."; Text[30]) - +
field(11603; "EFT Balancing Record Required"; Boolean) - +
field(11604; "EFT Security Name"; Text[50]) - Δ
field(13; "Bank Account No."; Text[30]) - Δ
field(110; "IBAN"; Code[50])
table/5109 "Purchase Header Archive"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(11620; "ABN"; Text[14]) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Actual Vendor No."; Code[20])
table/6660 "Return Receipt Header"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(11620; "ABN"; Text[14]) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "Actual Vendor No."; Code[20])
table/5050 "Contact"
- +
field(11620; "ABN"; Text[11]) - +
field(11621; "Registered"; Boolean) - +
field(11622; "ABN Division Part No."; Text[3]) - +
field(17100; "IRD No."; Text[30]) - +
key(Key14; "SystemModifiedAt") - Δ
key(Key13; "ABN", "Type")
page/118 "General Ledger Setup"
- +
local procedure UpdateControls() - +
procedure UpdateSetups() - +
local procedure EnableGSTAustraliaOnAfterValid() - +
local procedure AddressValidationOnAfterValida() - +
local procedure AMASSoftwareOnFormat()
table/5107 "Sales Header Archive"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28070; "Tax Document Type"; Option)
table/7001 "Price List Line"
- +
field(28060; "Published Price"; Decimal) - +
field(28061; "Cost"; Decimal) - +
field(28062; "Cost-plus %"; Decimal) - +
field(28063; "Discount Amount"; Decimal) - +
local procedure UpdateUnitPriceByCostPlusPct()
table/7002 "Sales Price"
- +
field(28060; "Published Price"; Decimal) - +
field(28061; "Cost"; Decimal) - +
field(28062; "Cost-plus %"; Decimal) - +
field(28063; "Discount Amount"; Decimal) - +
procedure UpdateUnitPrice()
table/7022 "Price Worksheet Line"
- +
field(28060; "Published Price"; Decimal) - +
field(28061; "Cost"; Decimal) - +
field(28062; "Cost-plus %"; Decimal) - +
field(28063; "Discount Amount"; Decimal) - +
local procedure UpdateUnitPriceByCostPlusPct()
page/576 "VAT Specification Subform"
- +
procedure ShowGSTAmountACY() - +
local procedure CalculateACYVATAmounts() - +
local procedure UpdateVATAmountACY(PostingDate: Date; HeaderCurrencyCode: Code[10]; HeaderCurrencyFactor: Decimal; VendorExchangeRateACY: Decimal) - +
procedure SetPurchHeader(var PurchHeader: Record "Purchase Header")
table/179 "Reversal Entry"
- +
procedure CopyWHTEntryFilters(var WHTEntry: Record "WHT Entry") - +
local procedure CheckWHT(WHTEntry: Record "WHT Entry") - +
procedure ShowWHTEntries() - +
procedure InsertFromWHTEntry(var TempTransactionNoInteger: Record "Integer" temporary; Number: Integer; RevType: Option Transaction,Register; var NextLineNo: Integer)
table/271 "Bank Account Ledger Entry"
- +
field(28090; "Post Dated Check No."; Code[20]) - +
key(Key9; "Bank Account No.", "Document No.", "Posting Date", "Open") - +
key(key10; "Statement No.", "Statement Line No.") - Δ
key(Key8; "Document Type", "Document No.", "Open")
table/330 "Currency Exchange Rate"
- +
field(28041; "Relational Sett. Rate Amount"; Decimal) - +
field(28140; "Settlement Rate Amount"; Decimal) - +
procedure ExchangeRateFactorFRS21(Date: Date; CurrencyCode: Code[10]; VendorExchRate: Decimal): Decimal - +
procedure ExchangeRateFRS21(Date: Date; CurrencyCodeFCY: Code[10]; CurrencyCode: Code[10]; VendorExchRate: Decimal): Decimal
table/383 "Detailed CV Ledg. Entry Buffer"
- +
field(6202; "Non-Deductible VAT Amount ACY"; Decimal) - +
field(17130; "Document Date"; Date) - Δ
field(6200; "Non-Deductible VAT Amount"; Decimal) - Δ
field(6201; "Non-Deductible VAT Amount LCY"; Decimal)
table/45 "G/L Register"
- +
field(28040; "From WHT Entry No."; Integer) - +
field(28041; "To WHT Entry No."; Integer) - +
procedure GetNextEntryNo(UseLegacyPosting: Boolean): Integer - −
procedure GetNextRegisterNo(UseLegacyPosting: Boolean): Integer
table/6650 "Return Shipment Header"
- +
field(11612; "Adjustment"; Boolean) - +
field(11613; "BAS Adjustment"; Boolean) - +
field(11614; "Adjustment Applies-to"; Code[20]) - +
field(28040; "WHT Business Posting Group"; Code[20])
codeunit/20 "Posting Preview Event Handler"
- +
local procedure OnInsertGSTSalesEntry(var Rec: Record "GST Sales Entry"; RunTrigger: Boolean) - +
local procedure OnInsertGSTPurchaseEntry(var Rec: Record "GST Purchase Entry"; RunTrigger: Boolean) - Δ
local procedure OnAfterGenJnlPostLineFinishPosting(var GlobalGLEntry: Record "G/L Entry"; var GLRegister: Record "G/L Register"; var IsTransactionConsistent: Boolean; var GenJournalLine: Record "Gen. Journal Line")
codeunit/358 "DateFilter-Calc"
- +
procedure VerifiyDateFilter(Filter: Text[30]) - +
procedure VerifMonthPeriod(Filter: Text[30]) - +
procedure ReturnEndingPeriod(StartPeriod: Date; PeriodType: Option Date,Week,Month,Quarter,Year): Date
codeunit/5804 "ItemCostManagement"
- +
local event OnBeforeUpdateCostPlusPrices(ItemNo: Code[20]; var IsHandled: Boolean) - +
procedure UpdateCostPlusPrices(ItemNo: Code[20]) - +
local procedure UpdateOldCostPlusPrices(ItemNo: Code[20]): Boolean
codeunit/815 "Sales Post Invoice"
- +
procedure InsertGST(SalesHeader: Record "Sales Header"; InvoicePostingBuffer: Record "Invoice Posting Buffer"; VATEntryNo: Integer) - +
local procedure PrepareLineGST(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; SalesLineACY: Record "Sales Line") - +
local procedure UpdateInvoicePostingBufferGST(SalesLine: Record "Sales Line"; InvoicePostingBuffer: Record "Invoice Posting Buffer")
codeunit/816 "Purch. Post Invoice"
- +
local procedure InsertGST(PurchHeader: Record "Purchase Header"; InvoicePostingBuffer: Record "Invoice Posting Buffer"; VATEntryNo: Integer) - +
local procedure FillInvoicePostingBufferGST(PurchHeader: Record "Purchase Header"; PurchLine: Record "Purchase Line"; PurchLineACY: Record "Purchase Line") - +
local procedure UpdateInvoicePostingBufferGST(PurchLine: Record "Purchase Line"; InvoicePostingBuffer: Record "Invoice Posting Buffer")
report/113 "Customer/Item Sales"
- +
procedure InitializeRequest(NewPagePerCustomer: Boolean) - −
procedure CalculateProfitPercent(Amount: Decimal; ProfitAmt: Decimal): Decimal - −
local procedure UpdateRequestPageFilterValues()
table/15 "G/L Account"
- +
field(28040; "WHT Business Posting Group"; Code[20]) - +
field(28041; "WHT Product Posting Group"; Code[20]) - +
field(28160; "G/L Entry Type Filter"; Option)
table/272 "Check Ledger Entry"
- +
field(28040; "WHT Amount"; Decimal) - +
field(28090; "PDC Check No."; Code[20]) - +
field(28091; "Interest Amount"; Decimal)
table/288 "Vendor Bank Account"
- +
field(11600; "EFT BSB No."; Code[10]) - Δ
field(14; "Bank Account No."; Text[30]) - Δ
field(24; "IBAN"; Code[50])
table/32 "Item Ledger Entry"
- +
key(Key22; "Location Code", "Item No.", "Posting Date") - +
key(Key23; "SystemModifiedAt") - Δ
key(Key21; "Item No.", "Location Code", "Posting Date")
codeunit/103 "Cust. Entry-Edit"
- +
local event OnBeforeModifyCustLedgEntry(var CurrentSalesHeader: Record "Sales Header"; var CustLedgerEntry: Record "Cust. Ledger Entry") - +
procedure LookupAdjmtAppliesTo(var CurrentSalesHeader: Record "Sales Header")
codeunit/1217 "Pre-map Incoming Purch. Doc"
- +
local event OnAfterSetIncomingDocumentPersistHeaderData(EntryNo: Integer; RecordNo: Integer; var IncomingDocument: Record "Incoming Document") - +
local procedure FindVendorByABN(var Vendor: Record Vendor; VATRegNo: Text): Boolean
codeunit/1303 "Correct Posted Sales Invoice"
- +
local event OnAfterSetDefaultCancelReasonCode(var SalesHeader: Record "Sales Header") - +
local procedure SetCrMemoDefaultReasonCode(var SalesHeader: Record "Sales Header")
codeunit/1313 "Correct Posted Purch. Invoice"
- +
local event OnAfterSetDefaultCancelReasonCode(var PurchaseHeader: Record "Purchase Header") - +
local procedure SetCrMemoDefaultReasonCode(var PurchaseHeader: Record "Purchase Header")
codeunit/17 "Gen. Jnl.-Post Reverse"
- +
procedure ReverseWHT(var WHTEntry: Record "WHT Entry"; SourceCode: Code[10]) - +
procedure ReverseGST(VATEntry: Record "VAT Entry")
codeunit/226 "CustEntry-Apply Posted Entries"
- +
local procedure CheckWHTAmount(CustLedgEntry: Record "Cust. Ledger Entry") - +
local procedure GetInvoiceNo(CustLedgEntry: Record "Cust. Ledger Entry"): Code[20]
codeunit/227 "VendEntry-Apply Posted Entries"
- +
local procedure CheckWHTAmount(VendLedgEntry: Record "Vendor Ledger Entry") - +
local procedure GetInvoiceNo(VendLedgEntry: Record "Vendor Ledger Entry"): Code[20]
codeunit/367 "CheckManagement"
- +
local procedure CalcAmountToVoid(CheckLedgEntry: Record "Check Ledger Entry"; var WHTAmount: Decimal): Decimal - −
local procedure CalcAmountToVoid(CheckLedgEntry: Record "Check Ledger Entry"): Decimal
page/161 "Purchase Statistics"
- Δ
procedure GetVATSpecification() - Δ
procedure SetVATSpecification()
report/114 "Salesperson - Sales Statistics"
- −
procedure CalculateProfitPercent(Amount: Decimal; ProfitAmt: Decimal): Decimal - −
local procedure UpdateRequestPageFilterValues()
report/292 "Copy Sales Document"
- +
local event OnPreReportOnBeforeCopySalesDoc(var CopyDocumentMgt: Codeunit "Copy Document Mgt."; DocType: Integer; DocNo: Code[20]; SalesHeader: Record "Sales Header"; CurrReportUseRequestPage: Boolean; IncludeHeader: Boolean; RecalculateLines: Boolean; ExactCostReversingMandatory: Boolean; var ReplacePostDate: Boolean; var ReplaceDocDate: Boolean; var PostingDate: Date) - −
local event OnPreReportOnBeforeCopySalesDoc(var CopyDocumentMgt: Codeunit "Copy Document Mgt."; DocType: Integer; DocNo: Code[20]; SalesHeader: Record "Sales Header"; CurrReportUseRequestPage: Boolean; IncludeHeader: Boolean; RecalculateLines: Boolean; ExactCostReversingMandatory: Boolean)
report/402 "Purchase Document - Test"
- +
procedure AddDimToTempLine(PurchLine: Record "Purchase Line"; var TempDimSetEntry: Record "Dimension Set Entry") - −
procedure AddDimToTempLine(PurchLine: Record "Purchase Line")
report/8 "Budget"
- +
procedure InitializeRequest(NewPeriodStartDate: Date; NewPeriodLength: Text[30]; NewRounding: Option) - −
procedure InitializeRequest(NewPeriodStartDate: Date; NewPeriodLength: Text[30]; NewInThousands: Boolean)
table/461 "Prepayment Inv. Line Buffer"
- +
field(28002; "Invoice Discount Amount"; Decimal) - +
field(28004; "Prepayment %"; Decimal)
table/9 "Country/Region"
- +
field(28000; "Address Validation"; Option) - +
field(28001; "AMAS Software"; Integer)
table/93 "Vendor Posting Group"
- +
field(28070; "Non-Taxable"; Boolean) - +
field(28090; "Interest Account"; Code[20])
codeunit/1373 "Batch Posting Print Mgt."
- +
procedure PrintOtherDocuments(var GenJournalLine: Record "Gen. Journal Line"; PrintWHT: Boolean; ScheduleInJobQueue: Boolean)
codeunit/1797 "Data Migration Facade Helper"
- +
procedure CreateCountyIfNeeded(NameToSet: Text[30]; DescriptionToSet: Text[30]): Text[30]
codeunit/370 "Bank Acc. Reconciliation Post"
- +
local procedure PostUnrealizedWHT(var GenJnlLine: Record "Gen. Journal Line")
codeunit/81 "Sales-Post (Yes/No)"
- +
local procedure CheckTaxNoSeries(SalesHeader: Record "Sales Header"; SalesSetup: Record "Sales & Receivables Setup")
codeunit/82 "Sales-Post + Print"
- +
local procedure CheckTaxNoSeries(SalesHeader: Record "Sales Header"; SalesSetup: Record "Sales & Receivables Setup")
page/10 "Countries/Regions"
- +
local procedure AMASSoftwareOnFormat()
page/256 "Payment Journal"
- +
local event OnPrintRemittanceAdvanceOnAfterSetFilters(var GenJnlLine: Record "Gen. Journal Line"; var ReportSelections: Record "Report Selections")
report/310 "Vendor - Labels"
- Δ
procedure InitializeRequest(SetLabelFormat: Option)
report/393 "Suggest Vendor Payments"
- +
local procedure GetExternalDocumentNo(VendLedgEntryNo: Integer): Code[35]
table/1382 "Item Templ."
- +
field(28040; "WHT Product Posting Group"; Code[20])
table/156 "Resource"
- +
field(28040; "WHT Product Posting Group"; Code[20])
table/187 "VAT Posting Parameters"
- +
field(11620; "VAT Base ACY"; Decimal)
table/225 "Post Code"
- Δ
field(5; "County"; Text[30])
table/242 "Source Code Setup"
- +
field(28040; "WHT Settlement"; Code[10])
table/27 "Item"
- +
field(28040; "WHT Product Posting Group"; Code[20])
table/379 "Detailed Cust. Ledg. Entry"
- +
field(17130; "Document Date"; Date)
table/380 "Detailed Vendor Ledg. Entry"
- +
field(17130; "Document Date"; Date)
table/5600 "Fixed Asset"
- +
field(28040; "WHT Product Posting Group"; Code[20])
table/5800 "Item Charge"
- +
field(28040; "WHT Product Posting Group"; Code[20])
table/83 "Item Journal Line"
- +
field(28087; "Vendor Exchange Rate (ACY)"; Decimal)
table/92 "Customer Posting Group"
- +
field(28070; "Non-Taxable"; Boolean)
BC29 · country layer against W1 · Learn: local functionality · narrative reviewed (checked by Opus)
Overview
The NZ layer uses a shared APAC code base. Object names such as AU/NZ Statement and Enable GST (Australia) show the link to Australia, so many objects and fields carry ABN, BAS and GST names. It adds 170 objects of its own and changes W1 objects, adding 459 fields, 210 procedures and 21 events. The main areas are GST and BAS (BAS Management, BAS setup pages, GST entry pages, settlement fields on VAT Entry), withholding tax (WHTManagement, WHT posting groups, WHT Entry, certificates and settlement), and tax invoices and tax credit memos (TaxInvoiceManagement, posted tax document pages and reports).
Posting is extended through procedures added to Gen. Jnl.-Post Line, Sales-Post, Purch.-Post, the prepayment codeunits and the invoice posting codeunits. These handle WHT, full GST on prepayments and ACY amounts. Adjustment applies-to logic is added to Gen. Journal Line, Sales Header, Purchase Header and Cust. Entry-Edit. Setup is in General Ledger Setup (Enable GST (Australia), Enable WHT, Enable IRD No., Enable Tax Invoices, Full GST on Prepayment), Sales & Receivables Setup and Purchases & Payables Setup.
Banking adds EFT Management, EFT Register, the Transfer EFT Register and Create EFT File reports, and post-dated checks. Learn covers these local features: addresses in New Zealand, withholding tax setup and settlement, IRD numbers and adjustment notes, GST posting and prepayments, EFT, cost-plus pricing, statutory financial reports, and e-invoicing with Peppol PINT A-NZ.
Key points
- GST posting with BAS: BAS Management codeunit, BAS setup and calculation sheet pages, BAS fields on G/L Entry and VAT Entry, and the Calculate GST Settlement report.
- Withholding tax: WHT business and product posting groups, WHT revenue types and posting setup, WHT Entry, WHT certificate reports, and the Calc. and Post WHT Settlement report.
- IRD numbers and adjustment notes: IRD No. on Company Information, Customer, Vendor and Contact, plus Adjustment, BAS Adjustment and Adjustment Applies-to fields on journal lines, documents and ledger entries.
- Full GST on prepayments and ACY VAT amounts: extra fields on sales and purchase lines, plus procedures in the prepayment posting codeunits.
- Tax invoices and tax credit memos: TaxInvoiceManagement, posted tax invoice and credit memo pages, and the tax invoice reports.
- EFT payments: EFT fields on Bank Account, Vendor and journal lines, EFT Register, Transfer EFT Register and Create EFT File.
- Post-dated checks, check installments, and the AU/NZ Statement and back-dated aged receivables and payables reports.
- Cost-plus pricing fields (Published Price, Cost, Cost-plus %) on price list lines, and NZ address handling with AMAS and counties.
Narrative written by Sonnet from the code diff and 26 Learn page summaries. In numbers: NewZealand (NZ) localization of Business Central in BC29: 170 objects of its own, 109 W1 objects changed (459 fields and 21 events added). From the code; country apps outside the Base Application are not included yet.
By area
| Area | W1 objects changed | Own objects | Fields added |
|---|---|---|---|
| Finance | 27 | 136 | 162 |
| Purchases | 26 | 4 | 137 |
| Sales | 26 | 1 | 123 |
| Foundation | 10 | 9 | 10 |
| Bank | 5 | 10 | 9 |
| Inventory | 6 | 2 | 4 |
| Text | 0 | 3 | 0 |
| Pricing | 2 | 0 | 8 |
| Security | 2 | 0 | 0 |
| Service | 0 | 2 | 0 |
| (no namespace) | 0 | 1 | 0 |
| CRM | 1 | 0 | 4 |
| ExpenseAgent | 0 | 1 | 0 |
| FixedAssets | 1 | 0 | 1 |
| Integration | 1 | 0 | 0 |
| IO | 1 | 0 | 0 |
| Projects | 1 | 0 | 1 |
| Utilities | 0 | 1 | 0 |
Finance
Adds GST and BAS handling, with BAS Management, the BAS setup, calculation sheet and ATO receipt pages, and GST sales and purchase entry pages. Adds withholding tax (WHTManagement, WHT posting groups, revenue types, posting setup, WHT Entry), tax invoice management and the posted tax document pages. W1 tables get BAS, WHT, adjustment and ACY fields, and General Ledger Setup gets the enable switches. Posting codeunits get WHT and GST procedures and a few events. Many local reports are added, including GST settlement, WHT certificates, balance sheet and income statement.
Why: Learn describes GST as reported in the Business Activity Statement. WHT is withheld from vendors without IRD numbers and remitted through the BAS. Adjustment notes adjust GST claims when consideration changes.
Objects: codeunit/12 “Gen. Jnl.-Post Line”, table/98 “General Ledger Setup”, table/254 “VAT Entry”, codeunit/11601 “BAS Management” (own), codeunit/28040 “WHTManagement” (own), table/81 “Gen. Journal Line”, page/28044 “WHT Entry” (own), report/11603 “Calculate GST Settlement” (own).
All 163 objects of Finance in the diff
Purchases
Vendor, purchase document and posted document tables get ABN, IRD No., WHT group, adjustment, tax document and ACY amount fields. Purchases & Payables Setup gets GST groups, WHT certificate numbering, tax invoice number series and post-dated check settings. Purch.-Post and the prepayment codeunits get WHT and full GST procedures. Adds the Items Received & Not Invoiced and Purchase Receipts reports.
Why: Learn explains that vendors without IRD numbers have WHT withheld according to WHT Posting Setup.
Objects: table/38 “Purchase Header”, table/39 “Purchase Line”, codeunit/90 “Purch.-Post”, codeunit/444 “Purchase-Post Prepayments”, table/312 “Purchases & Payables Setup”, table/23 “Vendor”, table/25 “Vendor Ledger Entry”, codeunit/816 “Purch. Post Invoice”.
All 30 objects of Purchases in the diff
Sales
Customer and sales document tables get IRD No., sales tax exemption, WHT, adjustment, tax document type and ACY fields. Sales-Post, prepayment and invoice posting codeunits get WHT and full GST procedures. Sales & Receivables Setup gets tax invoice number series and post-dated check settings. Adds the AU/NZ Statement report.
Why: Learn covers GST on prepayments and adjustment notes (credit memos) for sales.
Objects: table/36 “Sales Header”, table/37 “Sales Line”, codeunit/80 “Sales-Post”, codeunit/442 “Sales-Post Prepayments”, table/311 “Sales & Receivables Setup”, table/18 “Customer”, table/21 “Cust. Ledger Entry”, report/17110 “AU/NZ Statement” (own).
All 27 objects of Sales in the diff
Foundation
Company Information gets ABN, IRD No., WHT Registration ID, RDO Code and tax period fields. Address handling adds counties, address buffer and ID tables, AMAS and address validation settings on Country/Region, and barcode and tax document address procedures in Format Address. DateFilter-Calc gets period verification procedures.
Why: Learn explains that NZ postal codes can have multiple cities and that addresses use the Delivery Point Identifier (DPID) for validation and barcodes.
Objects: table/79 “Company Information”, codeunit/365 “Format Address”, table/28004 “County” (own), table/9 “Country/Region”, codeunit/358 “DateFilter-Calc”, codeunit/28020 “Report Management APAC” (own), table/28002 “Address Buffer” (own), table/242 “Source Code Setup”.
All 19 objects of Foundation in the diff
Bank
Adds EFT: EFT fields on Bank Account, EFT Management, EFT Register and the reports to transfer and create EFT files. Adds post-dated check fields on bank ledger entries, a deposit slip report, bank reconciliation and cash flow compare reports, and back-dated aged balance reports. Bank Acc. Reconciliation Post gets unrealized WHT posting.
Why: Learn documents EFT for vendor payments, compare bank cash flow, and the bank reconciliation and deposit slip reports.
Objects: codeunit/11603 “EFT Management” (own), table/11609 “EFT Register” (own), report/11608 “Create EFT File” (own), report/11607 “Transfer EFT Register” (own), table/270 “Bank Account”, table/272 “Check Ledger Entry”, report/28021 “Bank Account Reconciliation” (own), codeunit/370 “Bank Acc. Reconciliation Post”.
All 15 objects of Bank in the diff
Inventory
Item, Item Template, Item Charge and Item Journal Line get a WHT Product Posting Group or ACY exchange rate field. ItemCostManagement gets cost-plus price update procedures and an event. Adds the Stock Card and Stock Movement reports.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/5804 “ItemCostManagement”, table/27 “Item”, table/1382 “Item Templ.”, table/5800 “Item Charge”, report/14311 “Stock Card” (own), report/28022 “Stock Movement” (own), table/83 “Item Journal Line”.
All 8 objects of Inventory in the diff
Text
Adds barcode support with BarCode Management and reports for barcode checking and batch jobs, used with address barcodes.
Why: Learn links address barcodes to the DPID.
Objects: codeunit/28001 “BarCode Management” (own), report/28000 “BarCode Checking” (own), report/28001 “BarCode Batch Job” (own).
All 3 objects of Text in the diff
Pricing
Price List Line and Price Worksheet Line get Published Price, Cost, Cost-plus % and Discount Amount fields. Procedures update the unit price from the cost-plus percentage.
Why: Learn documents determining the sales price by cost plus percentage.
Objects: table/7001 “Price List Line”, table/7022 “Price Worksheet Line”.
All 2 objects of Pricing in the diff
Security
The LOCAL and LOCAL READ permission sets are changed to cover the NZ objects.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: permissionset/1001 “LOCAL”, permissionset/1002 “LOCAL READ”.
All 2 objects of Security in the diff
Service
Adds a service document management codeunit for APAC and a Service Manager role center page extension.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/11612 “Serv. Document Mgt. APAC” (own), pageextension/28041 “Serv.ServiceMgrRoleCenter APAC” (own).
All 2 objects of Service in the diff
(no namespace)
A table extension on source code setup for APAC adds local source codes.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: tableextension/28160 “SourcecodeAPAC” (own).
All 1 objects of (no namespace) in the diff
CRM
Contact gets ABN, Registered, ABN Division Part No. and IRD No. fields.
Why: Learn covers entering IRD numbers for tax compliance.
Objects: table/5050 “Contact”.
All 1 objects of CRM in the diff
ExpenseAgent
Adds an NZ expense event subscriber codeunit.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/6977 “Expense Event Subscriber NZ” (own).
All 1 objects of ExpenseAgent in the diff
FixedAssets
Fixed Asset gets a WHT Product Posting Group field.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: table/5600 “Fixed Asset”.
All 1 objects of FixedAssets in the diff
Integration
The Data Migration Facade Helper gets a procedure to create a county when needed.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/1797 “Data Migration Facade Helper”.
All 1 objects of Integration in the diff
IO
The incoming purchase document pre-mapping gets a vendor lookup by ABN and a new event after incoming document header data is set.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/1217 “Pre-map Incoming Purch. Doc”.
All 1 objects of IO in the diff
Projects
Resource gets a WHT Product Posting Group field.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: table/156 “Resource”.
All 1 objects of Projects in the diff
Utilities
Adds a CodeUnit Selection page.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: page/28001 “CodeUnit Selection” (own).
All 1 objects of Utilities in the diff
Objects of its own
170 objects only this country has.
- codeunit/355 “Local Navigate Handler”
- codeunit/6977 “Expense Event Subscriber NZ”
- codeunit/11600 “ABN Management”
- codeunit/11601 “BAS Management”
- codeunit/11602 “Import Subsidiary”
- codeunit/11603 “EFT Management”
- codeunit/11612 “Serv. Document Mgt. APAC”
- codeunit/12200 “Tax Invoice Renaming Subscr.”
- codeunit/17100 “Recurring Amount - Distribute”
- codeunit/28000 “Post Code Check”
- codeunit/28001 “BarCode Management”
- codeunit/28002 “Serv. Post Code Check”
- codeunit/28020 “Report Management APAC”
- codeunit/28040 “WHTManagement”
- codeunit/28041 “G/L Reg.-WHT Entries”
- codeunit/28042 “Service Format Address APAC”
- codeunit/28066 “Purch. Cr. Memo Hdr. - Edit”
- codeunit/28070 “TaxInvoiceManagement”
- codeunit/28071 “Purch. Tax Inv.-Printed”
- codeunit/28072 “Sales Tax Inv.-Printed”
- codeunit/28073 “Purch. Tax Cr.Memo-Printed”
- codeunit/28074 “Sales Tax Cr.Memo-Printed”
- codeunit/28090 “PostDatedCheckMgt”
- page/11600 “BAS Setup”
- page/11601 “BAS Calculation Sheet”
- page/11602 “BAS Calc. Schedule Fields”
- page/11603 “BAS Calc. Schedule List”
- page/11604 “BAS Business Units”
- page/11605 “BAS ATO Receipt”
- page/11606 “BAS Calc. Sheet Entries”
- page/11607 “BAS Comment Lines”
- page/11608 “BAS Setup Names”
- page/11609 “BAS Setup Preview”
- page/11610 “BAS Setup Preview Subform”
- page/11611 “BAS - XML Field IDs”
- page/11612 “BAS XML Field Setup Names”
- page/11613 “BAS Business Units-Settlement”
- page/11614 “BAS - XML Field IDs Setup”
- page/11615 “EFT Register”
- page/17101 “Amount Distribution”
- page/28001 “CodeUnit Selection”
- page/28003 “Counties”
- page/28040 “WHT Business Posting Group”
- page/28041 “WHT Product Posting Group”
- page/28042 “WHT Revenue Types”
- page/28043 “WHT Posting Setup”
- page/28044 “WHT Entry”
- page/28066 “Posted Purch. Cr.Memo - Update”
- page/28071 “Posted Sales Tax Invoice”
- page/28072 “Posted Sales Tax Inv. Subform”
- page/28073 “Posted Sales Tax Credit Memo”
- page/28074 “Posted Sales Tax Cr. Memo Sub”
- page/28075 “Posted Purchase Tax Invoice”
- page/28076 “Posted Purch. Tax Inv. Subform”
- page/28077 “Posted Purch. Tax Credit Memo”
- page/28078 “Posted Purch. Tax Cr. Memo Sub”
- page/28079 “Posted Purch. Tax Invoices”
- page/28080 “Posted Purch. Tax Cr. Memos”
- page/28081 “Posted Sales Tax Invoices”
- page/28082 “Posted Sales Tax Cr. Memos”
- page/28090 “Post Dated Checks”
- page/28091 “Post Dated Checks List”
- page/28092 “Post Dated Checks-Purchases”
- page/28093 “Post Dated Checks List-Purch.”
- page/28164 “GST Purchase Entries”
- page/28165 “GST Sales Entries”
- page/28166 “GST Purchase Entries Preview”
- page/28167 “GST Sales Entries Preview”
- pageextension/28040 “SourceCodeSetupAPAC”
- pageextension/28041 “Serv.ServiceMgrRoleCenter APAC”
- report/11600 “Withholding Summary”
- report/11603 “Calculate GST Settlement”
- report/11604 “BAS-Update”
- report/11605 “Export BAS Setup to Excel”
- report/11606 “Print BAS Export File”
- report/11607 “Transfer EFT Register”
- report/11608 “Create EFT File”
- report/14303 “WHT Certificate”
- report/14304 “WHT certificate preprint”
- report/14305 “WHT Certificate TH - Copy”
- report/14306 “WHT certificate preprint Copy”
- report/14307 “WHT PND 1”
- report/14308 “WHT PND 2”
- report/14309 “WHT PND 3”
- report/14310 “WHT Report - PND 53”
- report/14311 “Stock Card”
- report/16626 “Certificate of Creditable tax”
- report/16627 “Monthly Remittance Return WHT”
- report/16628 “Annual Information Return WHT”
- report/16629 “Quarterly VAT Return”
- report/16630 “E-Filing”
- report/16631 “Monthly VAT Declaration”
- report/16632 “WHT E-Filing”
- report/17109 “Transaction Detail Report”
- report/17110 “AU/NZ Statement”
- report/17111 “Items Received & Not Invoiced”
- report/17116 “Aged Acc. Rec. (BackDating)”
- report/17117 “Aged Acc. Pay. (BackDating)”
- report/28000 “BarCode Checking”
- report/28001 “BarCode Batch Job”
- report/28020 “Bank Detail Cashflow Compare”
- report/28021 “Bank Account Reconciliation”
- report/28022 “Stock Movement”
- report/28023 “Deposit Slip”
- report/28024 “Balance Sheet”
- report/28025 “Income Statement”
- report/28026 “Financial Analysis Report”
- report/28027 “VAT Report - Vendor”
- report/28028 “VAT Report - Customer”
- report/28029 “Purchase Receipts”
- report/28040 “WHT Certificate - Other”
- report/28041 “Calc. and Post WHT Settlement”
- report/28043 “WHT Certificate - Other Copy”
- report/28070 “Pending Sales Tax Invoice”
- report/28071 “Purch. - Tax Invoice”
- report/28072 “Sales - Tax Invoice”
- report/28073 “Purch. - Tax Cr. Memo”
- report/28074 “Sales - Tax Cr. Memo”
- report/28090 “Post Dated Checks”
- report/28091 “Create Check Installments”
- report/28092 “PDC Acknowledgement Receipt”
- report/28140 “Adjust Settlement Exch. Rates”
- report/28160 “G/L Journal”
- report/28161 “Journals”
- report/28162 “G/L Trial Balance”
- report/28163 “G/L Detail Trial Balance”
- report/28164 “GST Purchase Report”
- report/28165 “GST Sales Report”
- report/28166 “BAS - Import/Export”
- report/28167 “BAS - Import/Export Setup”
- table/11600 “BAS Setup”
- table/11601 “BAS Calculation Sheet”
- table/11602 “BAS XML Field ID”
- table/11603 “BAS Business Unit”
- table/11604 “BAS Calc. Sheet Entry”
- table/11605 “BAS Comment Line”
- table/11606 “BAS Setup Name”
- table/11607 “BAS XML Field Setup Name”
- table/11608 “BAS XML Field ID Setup”
- table/11609 “EFT Register”
- table/16608 “Temp WHT Entry - EFiling”
- table/28002 “Address Buffer”
- table/28003 “Address ID”
- table/28004 “County”
- table/28040 “WHT Business Posting Group”
- table/28041 “WHT Product Posting Group”
- table/28042 “WHT Revenue Types”
- table/28043 “WHT Posting Setup”
- table/28044 “WHT Entry”
- table/28045 “WHT Certificate Buffer”
- table/28046 “Temp WHT Entry”
- table/28070 “Tax Posting Buffer”
- table/28071 “Sales Tax Invoice Header”
- table/28072 “Sales Tax Invoice Line”
- table/28073 “Sales Tax Cr.Memo Header”
- table/28074 “Sales Tax Cr.Memo Line”
- table/28075 “Purch. Tax Inv. Header”
- table/28076 “Purch. Tax Inv. Line”
- table/28077 “Purch. Tax Cr. Memo Hdr.”
- table/28078 “Purch. Tax Cr. Memo Line”
- table/28079 “Tax Document Buffer Build”
- table/28080 “Tax Document Buffer”
- table/28090 “Post Dated Check Line”
- table/28160 “GST Purchase Entry”
- table/28161 “GST Sales Entry”
- tableextension/28040 “SourceCodeSetupAPAC”
- tableextension/28072 “Serv. Sales Tax Invoice Line”
- tableextension/28074 “Serv. Sales Tax Cr.Memo Line”
- tableextension/28160 “SourcecodeAPAC”
- xmlport/16630 “WHT-EFiling”
Other versions
- BC30: 279 objects differ from W1 (459 fields, 21 events added)
Source: country layer of the Base Application compared with W1 of the same version (data/code/diffs/country/).