localization · BC29official - Microsoftreviewed - checked by Opus

Canada (CA)

Canada (CA) localization of Business Central 29. It covers sales tax and GST/HST calculation and reporting, GIFI codes, bank deposits and reconciliation, and EFT electronic payments. It also carries the North American (NA) report set and extra Mexico (SAT/CFDI, DIOT) objects. It answers what the Canadian layer adds to W1 tax, banking, sales and purchase objects.

What CA changes in W1 147 objects, BC29

codeunit/398 "Sales Tax Calculate" +95
  • +local event OnBeforeAddSalesLine(var SalesLine: Record "Sales Line"; var IsHandled: Boolean)
  • +local event OnBeforeAddPurchLine(var PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean)
  • +local event OnBeforeDistTaxOverPurchLines(var PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean)
  • +local event OnBeforeDistTaxOverSalesLines(var SalesLine: Record "Sales Line"; var IsHandled: Boolean)
  • +local event OnBeforeDistTaxOverServLines(var ServiceLine: Record Microsoft.Service.Document."Service Line"; var IsHandled: Boolean)
  • +local event OnBeforeEndSalesTaxCalculationSales(SalesHeader: Record "Sales Header"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var IsHandled: Boolean)
  • +local event OnBeforeEndSalesTaxCalculationPurchase(PurchaseHeader: Record "Purchase Header"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var IsHandled: Boolean)
  • +local event OnBeforeEndSalesTaxCalculationService(ServiceHeader: Record Microsoft.Service.Document."Service Header"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var IsHandled: Boolean)
  • +local event OnBeforeGetSummarizedSalesTaxTable(var SalesTaxAmountLine: Record "Sales Tax Amount Line"; SourceType: Integer; SourceSubtype: Integer; SourceID: Code[20]; var IsHandled: Boolean)
  • +local event OnBeforeGetPostedSummarizedSalesTaxTable(var SalesTaxAmountLine: Record "Sales Tax Amount Line"; var TempSalesTaxAmountDifference: Record "Sales Tax Amount Difference" temporary; var IsHandled: Boolean)
  • +local event OnBeforeApplyTaxDifference(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line"; var IsHandled: Boolean)
  • +local event OnAfterUpdatePurchaseLineVatPct(var PurchLine: Record "Purchase Line"; PurchHeader: Record "Purchase Header")
  • +local event OnDistTaxOverPurchLinesOnPurchLineLoopOnAfterSetPurchLineVATBaseAmount(var PurchLine: Record "Purchase Line"; PurchHeader: Record "Purchase Header")
  • +local event OnDistTaxOverPurchLinesOnTempSalesTaxLineLoopOnAfterSetPurchLineVATBaseAmount(var PurchLine: Record "Purchase Line"; PurchHeader: Record "Purchase Header")
  • +local event OnDistTaxOverPurchLinesOnTempSalesTaxLineLoopOnAfterSetTempSalesTaxLineAmount(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary; PurchLine: Record "Purchase Line"; PurchHeader: Record "Purchase Header"; var Amount: Decimal)
  • +local event OnAddPurchInvoiceLinesOnAfterCalcPurchLineSalesTaxAmountLine(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary; PurchInvLine: Record "Purch. Inv. Line"; PurchInvHeader: Record "Purch. Inv. Header"; ExchangeFactor: Decimal)
  • +local event OnAfterAddSalesLine(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary; SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header"; ExchangeFactor: Decimal)
  • +local event OnDistTaxOverSalesLinesOnSalesLineLoopOnAfterSetSalesLineVATBaseAmount(var SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header")
  • +local event OnDistTaxOverSalesLinesOnTempSalesTaxLineLoopOnAfterSetSalesLineVATBaseAmount(var SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header")
  • +local event OnDistTaxOverSalesLinesOnTempSalesTaxLineLoopOnAfterSetTempSalesTaxLineAmount(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary; SalesLine: Record "Sales Line"; SalesHeader: Record "Sales Header"; var Amount: Decimal)
  • +local event OnDistTaxOverPurchLinesOnBeforeFindPurchLineSetTempSalesTaxLineAmount(var PurchLine: Record "Purchase Line"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnDistTaxOverPurchLinesOnBeforeFindPurchLineAmounts(var PurchLine: Record "Purchase Line"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnDistTaxOverSalesLinesOnBeforeFindSalesLineAmounts(var SalesLine: Record "Sales Line"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnEndSalesTaxCalculationOnBeforeSalesTaxAmountLine2Insert(var SalesTaxAmountLine2: Record "Sales Tax Amount Line" temporary; var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnEndSalesTaxCalculationOnBeforeTempSalesTaxLineModify(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnEndSalesTaxCalculationOnAfterCalculateMaxAmount(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary; TaxDetail: Record "Tax Detail"; var MaxAmount: Decimal; var AddedTaxAmount: Decimal; TaxBaseAmt: Decimal)
  • +local event OnAfterAddPurchLine(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary; PurchLine: Record "Purchase Line"; PurchHeader: Record "Purchase Header"; ExchangeFactor: Decimal)
  • +local event OnBeforeStartSalestaxCalculation()
  • +local event OnAddSalesLineOnAfterTempSalesTaxAmountLineSetFilters(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnAddPurchLineOnAfterTempSalesTaxAmountLineSetFilters(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnAfterGetSalesTaxAmountLineTable(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnBeforeCalculateExpenseTax(TaxAreaCode: Code[20]; TaxGroupCode: Code[20]; TaxLiable: Boolean; Date: Date; Amount: Decimal; Quantity: Decimal; ExchangeRate: Decimal; var TaxAmount: Decimal; var TempTaxDetailMaximums: Record "Tax Detail" temporary; var TaxDetail: Record "Tax Detail"; var TaxAreaLine: Record "Tax Area Line"; var IsHandled: Boolean)
  • +local event OnAddSalesLineOnBeforeTempSalesTaxAmountLineInsert(var TempSalesTaxLine: Record "Sales Tax Amount Line" temporary; var SalesLine: Record "Sales Line")
  • +local event OnAfterEndSalesTaxCalulation(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; SalesHeaderRead: Boolean; PurchHeaderRead: Boolean; ServHeaderRead: Boolean; ProcessDate: Date)
  • +local event OnAddSalesLineOnAfterSetSalesTaxAmountLineFilter(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; SalesLine: Record "Sales Line"; TaxAreaLine: Record "Tax Area Line")
  • +local event OnAddSalesLineOnBeforeModifySalesTaxAmountLine(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; SalesLine: Record "Sales Line")
  • +local event OnEndSalesTaxCalculationOnBeforeSalesTaxAmountLine2Copy(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var TaxBaseAmt: Decimal; var AddedTaxAmount: Decimal; var TotalTaxAmount: Decimal)
  • +local event OnDistTaxOverSalesLinesOnAfterSetSalesLineFilters(var SalesLine: Record "Sales Line"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • +local event OnAfterInitializeExternalTaxEngine(var ExternalTaxEngineImplementation: Interface "External Tax Engine")
  • +procedure InitializeExternalTaxEngine()
  • +procedure CallExternalTaxEngineForDoc(DocTable: Integer; DocType: Option Quote,"Order",Invoice,"Credit Memo","Blanket Order","Return Order"; DocNo: Code[20]): Text[20]
  • +procedure CallExternalTaxEngineForJnl(var GenJnlLine: Record "Gen. Journal Line"; CalculationType: Option Normal,Reverse,Expense): Decimal
  • +procedure CallExternalTaxEngineForSales(var SalesHeader2: Record "Sales Header"; UpdateRecIfChanged: Boolean): Boolean
  • +procedure CallExternalTaxEngineForPurch(var PurchHeader2: Record "Purchase Header"; UpdateRecIfChanged: Boolean): Boolean
  • +procedure CallExternalTaxEngineForServ(var ServiceHeader2: Record Microsoft.Service.Document."Service Header"; UpdateRecIfChanged: Boolean): Boolean
  • +procedure FinalizeExternalTaxCalcForDoc(DocTable: Integer; DocNo: Code[20])
  • +procedure FinalizeExternalTaxCalcForJnl(var GLEntry: Record "G/L Entry")
  • +procedure CalcSalesTaxAmountLine(var SalesTaxAmountLine: Record "Sales Tax Amount Line"; TaxCountry2: Enum "Sales Tax Country"; ExchangeFactor2: Decimal; TaxAreaCode: Code[20]; TaxGroupCode: Code[20]; LineType: Integer; LineAmount: Decimal; VATBaseAmount: Decimal; LineQuantity: Decimal; PostingDate: Date; TaxLiable: Boolean; UseTax: Boolean; DocumentArea: Enum "Sales Tax Document Area")
  • +local procedure SetTaxBaseAmount(var SalesTaxAmountLine: Record "Sales Tax Amount Line"; Value: Decimal; ExchangeFactor2: Decimal; Increment: Boolean)
  • +procedure HasExciseTax(TaxAreaCode: Code[20]; TaxGroupCode: Code[20]; TaxLiable: Boolean; Quantity: Decimal; Date: Date): Boolean
  • +procedure ClearMaximums()
  • +procedure StartSalesTaxCalculation()
  • +procedure SetTmpSalesHeader(SalesHeader2: Record "Sales Header")
  • +procedure AddSalesLine(SalesLine: Record "Sales Line")
  • +procedure AddSalesInvoiceLines(DocNo: Code[20])
  • +procedure AddSalesCrMemoLines(DocNo: Code[20])
  • +procedure AddPurchLine(PurchLine: Record "Purchase Line")
  • +procedure AddPurchInvoiceLines(DocNo: Code[20])
  • +procedure AddPurchCrMemoLines(DocNo: Code[20])
  • +procedure AddServiceLine(ServiceLine: Record Microsoft.Service.Document."Service Line")
  • +procedure AddServInvoiceLines(DocNo: Code[20])
  • +procedure AddServCrMemoLines(DocNo: Code[20])
  • +procedure EndSalesTaxCalculation(Date: Date)
  • +local procedure ApplyTaxDifference(var TempSalesTaxAmountLine2: Record "Sales Tax Amount Line"; var TotalTaxAmount: Decimal)
  • +procedure GetSummarizedSalesTaxTable(var SummarizedSalesTaxAmtLine: Record "Sales Tax Amount Line")
  • +procedure GetSalesTaxAmountLineTable(var TempSalesTaxAmountLineTo: Record "Sales Tax Amount Line" temporary)
  • +procedure SetSalesTaxAmountLineTable(var TempSalesTaxAmountLineFrom: Record "Sales Tax Amount Line" temporary)
  • +procedure PutSalesTaxAmountLineTable(var SalesTaxLine2: Record "Sales Tax Amount Line" temporary; ProductArea: Integer; DocumentType: Integer; DocumentNo: Code[20])
  • +procedure DistTaxOverSalesLines(var SalesLine: Record "Sales Line")
  • +procedure DistTaxOverPurchLines(var PurchLine: Record "Purchase Line")
  • +procedure DistTaxOverServLines(var ServLine: Record Microsoft.Service.Document."Service Line")
  • +procedure GetSalesTaxCountry(TaxAreaCode: Code[20]): Boolean
  • +procedure GetTaxCountry(): Enum "Sales Tax Country"
  • +procedure GetRoundByJurisdiction(): Boolean
  • +local procedure SetUpCurrency(CurrencyCode: Code[10])
  • +procedure ReadTempPurchHeader(TempPurchHeader: Record "Purchase Header" temporary)
  • +procedure ReadTempSalesHeader(TempSalesHeader2: Record "Sales Header" temporary)
  • +procedure CopyTaxDifferencesToTemp(ProductArea: Enum "Sales Tax Document Area"; DocumentType: Integer; DocumentNo: Code[20])
  • +local procedure CreateSingleTaxDifference(ProductArea: Enum "Sales Tax Document Area"; DocumentType: Integer; DocumentNo: Code[20])
  • +procedure SaveTaxDifferences()
  • +procedure SetPurchHeader(NewPurchHeader: Record "Purchase Header")
  • +procedure SetRoundByJurisdiction(NewRoundByJurisdiction: Boolean)
  • +procedure CalculateExpenseTax(TaxAreaCode: Code[20]; TaxGroupCode: Code[20]; TaxLiable: Boolean; Date: Date; Amount: Decimal; Quantity: Decimal; ExchangeRate: Decimal): Decimal
  • +procedure HandleRoundTaxUpOrDown(var SalesTaxAmountLine: Record "Sales Tax Amount Line"; RoundTax: Option "To Nearest",Up,Down; TotalTaxAmount: Decimal; TaxAreaCode: Code[20]; TaxGroupCode: Code[20])
  • +local procedure CheckTaxAmtLinePos(SalesLineAmt: Decimal; TaxAmtLinePos: Boolean): Boolean
  • +local procedure ResetTaxAmountsInPurchLines(var PurchaseLine: Record "Purchase Line"; TaxAreaCode: Code[20])
  • +local procedure ResetTaxAmountsInSalesLines(var SalesLine: Record "Sales Line"; TaxAreaCode: Code[20])
  • +procedure SetTotalTaxAmountRounding(NewTotalTaxAmountRounding: Decimal)
  • +procedure GetTotalTaxAmountRounding(): Decimal
  • +local procedure SetTaxDetailFilter(var TaxDetail2: Record "Tax Detail"; TaxJurisdictionCode: Code[10]; TaxGroupCode: Code[20]; Date: Date)
  • +local procedure UpdatePurchaseLineVatPct(var PurchLine: Record "Purchase Line")
  • +local procedure ShowMissingTaxAreaValuesErr(TaxAreaLine2: Record "Tax Area Line"; CalculationOrderViolation2: Boolean)
  • +procedure SetExchangeFactor(NewExchangeFactor: Decimal)
  • +procedure RunOnBeforeDistTaxOverServLines(var ServiceLine: Record Microsoft.Service.Document."Service Line"; var IsHandled: Boolean)
  • +procedure RunOnBeforeEndSalesTaxCalculationService(ServiceHeader: Record Microsoft.Service.Document."Service Header"; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var IsHandled: Boolean)
table/110 "Sales Shipment Header" +46
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10020; "Original Document XML"; BLOB)
  • +field(10022; "Original String"; BLOB)
  • +field(10023; "Digital Stamp SAT"; BLOB)
  • +field(10024; "Certificate Serial No."; Text[250])
  • +field(10025; "Signed Document XML"; BLOB)
  • +field(10026; "Digital Stamp PAC"; BLOB)
  • +field(10030; "Electronic Document Status"; Option)
  • +field(10031; "Date/Time Stamped"; Text[50])
  • +field(10033; "Date/Time Canceled"; Text[50])
  • +field(10035; "Error Code"; Code[10])
  • +field(10036; "Error Description"; Text[250])
  • +field(10037; "Date/Time Stamp Received"; DateTime)
  • +field(10038; "Date/Time Cancel Sent"; DateTime)
  • +field(10039; "Identifier IdCCP"; Text[50])
  • +field(10040; "PAC Web Service Name"; Text[50])
  • +field(10041; "QR Code"; BLOB)
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
  • +field(10043; "Date/Time First Req. Sent"; Text[50])
  • +field(10044; "Transport Operators"; Integer)
  • +field(10045; "Transit-from Date/Time"; DateTime)
  • +field(10046; "Transit Hours"; Integer)
  • +field(10047; "Transit Distance"; Decimal)
  • +field(10048; "Insurer Name"; Text[50])
  • +field(10049; "Insurer Policy Number"; Text[30])
  • +field(10050; "Foreign Trade"; Boolean)
  • +field(10051; "Vehicle Code"; Code[20])
  • +field(10052; "Trailer 1"; Code[20])
  • +field(10053; "Trailer 2"; Code[20])
  • +field(10055; "Transit-to Location"; Code[10])
  • +field(10056; "Medical Insurer Name"; Text[50])
  • +field(10057; "Medical Ins. Policy Number"; Text[30])
  • +field(10058; "SAT Weight Unit Of Measure"; Code[10])
  • +field(10059; "SAT International Trade Term"; Code[10])
  • +field(10060; "Exchange Rate USD"; Decimal)
  • +field(10061; "SAT Customs Regime"; Code[10])
  • +field(10062; "SAT Transfer Reason"; Code[10])
  • +field(27002; "CFDI Cancellation Reason Code"; Code[10])
  • +field(27003; "Substitution Document No."; Code[20])
  • +field(27004; "CFDI Export Code"; Code[10])
  • +field(27007; "CFDI Cancellation ID"; Text[50])
  • +field(27008; "Marked as Canceled"; Boolean)
  • +field(27009; "SAT Address ID"; Integer)
  • +procedure ExportEDocument()
  • +procedure RequestStampEDocument()
  • +procedure CancelEDocument()
table/5744 "Transfer Shipment Header" +43
  • +field(10020; "Original Document XML"; BLOB)
  • +field(10022; "Original String"; BLOB)
  • +field(10023; "Digital Stamp SAT"; BLOB)
  • +field(10024; "Certificate Serial No."; Text[250])
  • +field(10025; "Signed Document XML"; BLOB)
  • +field(10026; "Digital Stamp PAC"; BLOB)
  • +field(10030; "Electronic Document Status"; Option)
  • +field(10031; "Date/Time Stamped"; Text[50])
  • +field(10033; "Date/Time Canceled"; Text[50])
  • +field(10035; "Error Code"; Code[10])
  • +field(10036; "Error Description"; Text[250])
  • +field(10037; "Date/Time Stamp Received"; DateTime)
  • +field(10038; "Date/Time Cancel Sent"; DateTime)
  • +field(10039; "Identifier IdCCP"; Text[50])
  • +field(10040; "PAC Web Service Name"; Text[50])
  • +field(10041; "QR Code"; BLOB)
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
  • +field(10043; "Date/Time First Req. Sent"; Text[50])
  • +field(10044; "Transport Operators"; Integer)
  • +field(10045; "Transit-from Date/Time"; DateTime)
  • +field(10046; "Transit Hours"; Integer)
  • +field(10047; "Transit Distance"; Decimal)
  • +field(10048; "Insurer Name"; Text[50])
  • +field(10049; "Insurer Policy Number"; Text[30])
  • +field(10050; "Foreign Trade"; Boolean)
  • +field(10051; "Vehicle Code"; Code[20])
  • +field(10052; "Trailer 1"; Code[20])
  • +field(10053; "Trailer 2"; Code[20])
  • +field(10056; "Medical Insurer Name"; Text[50])
  • +field(10057; "Medical Ins. Policy Number"; Text[30])
  • +field(10058; "SAT Weight Unit Of Measure"; Code[10])
  • +field(10059; "SAT International Trade Term"; Code[10])
  • +field(10060; "Exchange Rate USD"; Decimal)
  • +field(10061; "SAT Customs Regime"; Code[10])
  • +field(10062; "SAT Transfer Reason"; Code[10])
  • +field(27002; "CFDI Cancellation Reason Code"; Code[10])
  • +field(27003; "Substitution Document No."; Code[20])
  • +field(27004; "CFDI Export Code"; Code[10])
  • +field(27007; "CFDI Cancellation ID"; Text[50])
  • +field(27008; "Marked as Canceled"; Boolean)
  • +procedure ExportEDocument()
  • +procedure RequestStampEDocument()
  • +procedure CancelEDocument()
table/112 "Sales Invoice Header" +41
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10019; "Electronic Document Sent"; Boolean)
  • +field(10020; "Original Document XML"; BLOB)
  • +field(10021; "No. of E-Documents Sent"; Integer)
  • +field(10022; "Original String"; BLOB)
  • +field(10023; "Digital Stamp SAT"; BLOB)
  • +field(10024; "Certificate Serial No."; Text[250])
  • +field(10025; "Signed Document XML"; BLOB)
  • +field(10026; "Digital Stamp PAC"; BLOB)
  • +field(10030; "Electronic Document Status"; Option)
  • +field(10031; "Date/Time Stamped"; Text[50])
  • +field(10032; "Date/Time Sent"; Text[50])
  • +field(10033; "Date/Time Canceled"; Text[50])
  • +field(10035; "Error Code"; Code[10])
  • +field(10036; "Error Description"; Text[250])
  • +field(10037; "Date/Time Stamp Received"; DateTime)
  • +field(10038; "Date/Time Cancel Sent"; DateTime)
  • +field(10040; "PAC Web Service Name"; Text[50])
  • +field(10041; "QR Code"; BLOB)
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
  • +field(10043; "Date/Time First Req. Sent"; Text[50])
  • +field(10050; "Foreign Trade"; Boolean)
  • +field(10055; "Transit-to Location"; Code[10])
  • +field(10059; "SAT International Trade Term"; Code[10])
  • +field(10060; "Exchange Rate USD"; Decimal)
  • +field(27000; "CFDI Purpose"; Code[10])
  • +field(27001; "CFDI Relation"; Code[10])
  • +field(27002; "CFDI Cancellation Reason Code"; Code[10])
  • +field(27003; "Substitution Document No."; Code[20])
  • +field(27004; "CFDI Export Code"; Code[10])
  • +field(27005; "CFDI Period"; Option)
  • +field(27007; "CFDI Cancellation ID"; Text[50])
  • +field(27008; "Marked as Canceled"; Boolean)
  • +field(27009; "SAT Address ID"; Integer)
  • +field(27012; "CFDI Certificate of Origin No."; Text[50])
  • +procedure ExportEDocument()
  • +procedure ExportEDocumentPDF()
  • +procedure RequestStampEDocument()
  • +procedure CancelEDocument()
table/114 "Sales Cr.Memo Header" +40
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10019; "Electronic Document Sent"; Boolean)
  • +field(10020; "Original Document XML"; BLOB)
  • +field(10021; "No. of E-Documents Sent"; Integer)
  • +field(10022; "Original String"; BLOB)
  • +field(10023; "Digital Stamp SAT"; BLOB)
  • +field(10024; "Certificate Serial No."; Text[250])
  • +field(10025; "Signed Document XML"; BLOB)
  • +field(10026; "Digital Stamp PAC"; BLOB)
  • +field(10030; "Electronic Document Status"; Option)
  • +field(10031; "Date/Time Stamped"; Text[50])
  • +field(10032; "Date/Time Sent"; Text[50])
  • +field(10033; "Date/Time Canceled"; Text[50])
  • +field(10035; "Error Code"; Code[10])
  • +field(10036; "Error Description"; Text[250])
  • +field(10037; "Date/Time Stamp Received"; DateTime)
  • +field(10038; "Date/Time Cancel Sent"; DateTime)
  • +field(10040; "PAC Web Service Name"; Text[50])
  • +field(10041; "QR Code"; BLOB)
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
  • +field(10043; "Date/Time First Req. Sent"; Text[50])
  • +field(10050; "Foreign Trade"; Boolean)
  • +field(10055; "Transit-to Location"; Code[10])
  • +field(10059; "SAT International Trade Term"; Code[10])
  • +field(10060; "Exchange Rate USD"; Decimal)
  • +field(27000; "CFDI Purpose"; Code[10])
  • +field(27001; "CFDI Relation"; Code[10])
  • +field(27002; "CFDI Cancellation Reason Code"; Code[10])
  • +field(27003; "Substitution Document No."; Code[20])
  • +field(27004; "CFDI Export Code"; Code[10])
  • +field(27007; "CFDI Cancellation ID"; Text[50])
  • +field(27008; "Marked as Canceled"; Boolean)
  • +field(27009; "SAT Address ID"; Integer)
  • +field(27012; "CFDI Certificate of Origin No."; Text[50])
  • +procedure ExportEDocument()
  • +procedure ExportEDocumentPDF()
  • +procedure RequestStampEDocument()
  • +procedure CancelEDocument()
table/36 "Sales Header" +38
  • +field(10000; "Sales Tax Amount Rounding"; Decimal)
  • +field(10001; "Prepmt. Sales Tax Rounding Amt"; Decimal)
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10009; "Outstanding Amount ($)"; Decimal)
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10044; "Transport Operators"; Integer)
  • +field(10045; "Transit-from Date/Time"; DateTime)
  • +field(10046; "Transit Hours"; Integer)
  • +field(10047; "Transit Distance"; Decimal)
  • +field(10048; "Insurer Name"; Text[50])
  • +field(10049; "Insurer Policy Number"; Text[30])
  • +field(10050; "Foreign Trade"; Boolean)
  • +field(10051; "Vehicle Code"; Code[20])
  • +field(10052; "Trailer 1"; Code[20])
  • +field(10053; "Trailer 2"; Code[20])
  • +field(10055; "Transit-to Location"; Code[10])
  • +field(10056; "Medical Insurer Name"; Text[50])
  • +field(10057; "Medical Ins. Policy Number"; Text[30])
  • +field(10058; "SAT Weight Unit Of Measure"; Code[10])
  • +field(10059; "SAT International Trade Term"; Code[10])
  • +field(10060; "Exchange Rate USD"; Decimal)
  • +field(10061; "SAT Customs Regime"; Code[10])
  • +field(10062; "SAT Transfer Reason"; Code[10])
  • +field(12600; "Prepmt. Include Tax"; Boolean)
  • +field(27000; "CFDI Purpose"; Code[10])
  • +field(27001; "CFDI Relation"; Code[10])
  • +field(27004; "CFDI Export Code"; Code[10])
  • +field(27005; "CFDI Period"; Option)
  • +field(27009; "SAT Address ID"; Integer)
  • +field(27012; "CFDI Certificate of Origin No."; Text[50])
  • +local procedure IsPrepmtInvoicePosted(): Boolean
  • +procedure GetStatisticsPageID(): Integer
  • +local procedure CopyCFDIFieldsFromCustomer()
  • +local procedure UpdateTaxAreaCode()
  • +local procedure GetTaxAreaCode(): Code[20]
  • +local procedure GetShipToAddrTaxAreaCode(var TaxAreaCode: Code[20]): Boolean
  • +local procedure GetCustomerTaxAreaCode(var TaxAreaCode: Code[20]; CustomerNo: Code[20]): Boolean
table/21 "Cust. Ledger Entry" +33
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10019; "Electronic Document Sent"; Boolean)
  • +field(10020; "Original Document XML"; BLOB)
  • +field(10021; "No. of E-Documents Sent"; Integer)
  • +field(10022; "Original String"; BLOB)
  • +field(10023; "Digital Stamp SAT"; BLOB)
  • +field(10024; "Certificate Serial No."; Text[250])
  • +field(10025; "Signed Document XML"; BLOB)
  • +field(10026; "Digital Stamp PAC"; BLOB)
  • +field(10030; "Electronic Document Status"; Option)
  • +field(10031; "Date/Time Stamped"; Text[50])
  • +field(10032; "Date/Time Sent"; Text[50])
  • +field(10033; "Date/Time Canceled"; Text[50])
  • +field(10035; "Error Code"; Code[10])
  • +field(10036; "Error Description"; Text[250])
  • +field(10037; "Date/Time Stamp Received"; DateTime)
  • +field(10038; "Date/Time Cancel Sent"; DateTime)
  • +field(10040; "PAC Web Service Name"; Text[50])
  • +field(10041; "QR Code"; BLOB)
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
  • +field(10043; "Date/Time First Req. Sent"; Text[50])
  • +field(27002; "CFDI Cancellation Reason Code"; Code[10])
  • +field(27003; "Substitution Entry No."; Integer)
  • +field(27007; "CFDI Cancellation ID"; Text[50])
  • +field(27008; "Marked as Canceled"; Boolean)
  • +procedure GetDocumentVATPostingSetup(var TempVATPostingSetup: Record "VAT Posting Setup"; GenJnlLine: Record "Gen. Journal Line")
  • +procedure GetDocumentVATPostingSetup(var TempVATPostingSetup: Record "VAT Posting Setup"; CustLedgerEntry: Record "Cust. Ledger Entry")
  • +local procedure InsertTempVATPostingSetup(var TempVATPostingSetup: Record "VAT Posting Setup"; DocumentNo: Code[20])
  • +procedure GetInvoicePartAmountByVAT(DocType: Enum "Gen. Journal Document Type"; GenJnlLine: Record "Gen. Journal Line"; VATBusPostingGroup: Code[20]; VATProdPostingGroup: Code[20]): Decimal
  • +procedure ExportEDocument()
  • +procedure RequestStampEDocument()
  • +procedure CancelEDocument()
codeunit/90 "Purch.-Post" +25, 2 removed
  • +local event OnBeforeCalculateSalesTax(PurchaseHeader: Record "Purchase Header"; var TempPurchLineForSalesTax: Record "Purchase Line" temporary; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var IsHandled: Boolean; CommitIsSuppressed: Boolean)
  • +local event OnPostProvincialSalesTaxToGLOnAfterGenJnlLineAssignFields(var GenJnlLine: Record "Gen. Journal Line"; PurchaseHeader: Record "Purchase Header")
  • +local event OnPostSalesTaxToGLOnBeforeGenJnlPostLine(var GenJnlLine: Record "Gen. Journal Line"; PurchaseHeader: Record "Purchase Header"; var TempSalesTaxAmtLine: Record "Sales Tax Amount Line")
  • +local event OnPostSalesTaxToGLOnAfterGenJnlLineAssignField(var GenJnlLine: Record "Gen. Journal Line"; PurchHeader: Record "Purchase Header"; PurchLine: Record "Purchase Line")
  • +local event OnAddSalesTaxLineToSalesTaxCalcOnBeforeOnBeforeTempPurchLineForSalesTaxInsert(var TempPurchLineForSalesTax: Record "Purchase Line" temporary; PurchHeader: Record "Purchase Header")
  • +local event OnSumPurchLinesTempOnAfterCalcVATAmount(PurchHeader: Record "Purchase Header"; TotalPurchLine: Record "Purchase Line"; OldPurchLine: Record "Purchase Line"; var VATAmount: Decimal)
  • +local event OnPostUpdateInvoiceLineOnBeforePurchOrderLineModify(var PurchHeader: Record "Purchase Header"; var PurchOrderLine: Record "Purchase Line")
  • +local event OnBeforePostSalesTaxToGL(var PurchHeader: Record "Purchase Header"; var PurchLine: Record "Purchase Line"; var LineCount: Integer; var TotalUseTaxAmount: Decimal; var TotalNotUseTaxAmount: Decimal; var TempSalesTaxAmtLine: Record "Sales Tax Amount Line" temporary; var Window: Dialog; var SalesTaxCountry: Option US,CA,,,,,,,,,,,,NoTax; var GenJnlLineDocNo: Code[20]; var GenJnlLineExtDocNo: Code[35]; var GenJnlLineDocType: Enum "Gen. Journal Document Type"; var SrcCode: Code[10]; var Currency: Record Currency; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line"; var TotalPurchLineLCY: Record "Purchase Line"; var TotalPurchLine: Record "Purchase Line"; var IsHandled: Boolean)
  • +local event OnPostProvincialSalesTaxToGLOnBeforeRunWithCheck(var PurchHeader: Record "Purchase Header"; var TotalUseTaxAmount: Decimal; var GenJnlLine: Record "Gen. Journal Line"; var TempProvSalesTaxAmtLine: Record "Sales Tax Amount Line" temporary; var Currency: Record Currency)
  • +local event OnAfterPostProvincialSalesTaxToGL(var PurchHeader: Record "Purchase Header"; var TotalUseTaxAmount: Decimal; var GenJnlLineDocNo: Code[20])
  • +local event OnBeforeCalcProvincialSalesTax(var PurchHeader: Record "Purchase Header")
  • +local event OnBeforePostProvincialSalesTaxToGL(var PurchaseHeader: Record "Purchase Header"; var TotalUseTaxAmount: Decimal; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var SalesTaxCountry: Option US,CA,,,,,,,,,,,,NoTax; TaxOption: Option ,VAT,SalesTax; var GenJnlLineDocNo: Code[20]; var GenJnlLineExtDocNo: Code[35]; var GenJnlLineDocType: Enum "Gen. Journal Document Type"; var SrcCode: Code[10]; var Currency: Record Currency; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line"; var IsHandled: Boolean)
  • +local event OnBeforeCopyAndCheckItemCharge(var PurchaseHeader: Record "Purchase Header")
  • +local event OnCopyAndCheckItemChargeOnBeforeThrowError(varPurchHeader: Record "Purchase Header"; var InvoiceEverything: Boolean; var AssignError: Boolean)
  • +local procedure UpdatePrepmtAmountInvBuf(PrepmtSalesLineNo: Integer; CurrencyFactor: Decimal; PrepmtIncludeTax: Boolean)
  • +local procedure Is100PctPrepmtInvoice(var TempPurchLine: Record "Purchase Line" temporary): Boolean
  • +local procedure AddSalesTaxLineToSalesTaxCalc(PurchHeader: Record "Purchase Header"; PurchLine: Record "Purchase Line"; FirstLine: Boolean)
  • +local procedure PostSalesTaxToGL(PurchHeader: Record "Purchase Header"; var TotalUseTaxAmount: Decimal; var TotalNotUseTaxAmount: Decimal)
  • +local procedure PostSalesTaxToGLRounding(PurchaseHeader: Record "Purchase Header"; LineAmount: Decimal; LineAmountLCY: Decimal)
  • +local procedure CalcProvincialSalesTax(PurchHeader: Record "Purchase Header")
  • +local procedure PostProvincialSalesTaxToGL(PurchHeader: Record "Purchase Header"; var TotalUseTaxAmount: Decimal)
  • +local procedure RoundSalesTaxAmount(var Remainder: Decimal; TaxAmount: Decimal): Decimal
  • +local procedure QuantityInvoicedNotAssigned(ItemChargePurchLine: Record "Purchase Line"): Decimal
  • +local procedure ItemChargeQtyToAssign(ItemChargePurchLine: Record "Purchase Line"): Decimal
  • +local procedure SetTaxType(PurchHeader: Record "Purchase Header"; var PurchLine: Record "Purchase Line")
  • −local event OnPostUpdateInvoiceLineOnBeforePurchOrderLineModify(var PurchOrderLine: Record "Purchase Line")
  • −local procedure UpdatePrepmtAmountInvBuf(PrepmtSalesLineNo: Integer; CurrencyFactor: Decimal)
codeunit/80 "Sales-Post" +20, 1 changed, 4 removed
  • +local event OnAfterPostSalesTaxToGL(var SalesHeader: Record "Sales Header"; GenJnlLineDocType: Integer; GenJnlLineDocNo: Code[20]; GenJnlLineExtDocNo: Code[35])
  • +local event OnAfterDivideAmount(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; QtyType: Option General,Invoicing,Shipping; SalesLineQty: Decimal; var TempVATAmountLine: Record "VAT Amount Line" temporary; var TempVATAmountLineRemainder: Record "VAT Amount Line" temporary; var TempSalesLineForSalesTax: Record "Sales Line" temporary)
  • +local event OnBeforeCalculateSalesTax(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var SalesTaxAmountLine: Record "Sales Tax Amount Line"; var LocalwasProcessed: Boolean; CommitIsSuppressed: Boolean)
  • +local event OnFinalizeInvoicePostingSalesTax(var SalesHeader: Record "Sales Header"; var SalesInvoiceHeader: Record "Sales Invoice Header"; CommitIsSuppressed: Boolean; PreviewMode: Boolean)
  • +local event OnFinalizeCreditmemoPostingSalesTax(var SalesHeader: Record "Sales Header"; var SalesCrMemoHeader: Record "Sales Cr.Memo Header"; CommitIsSuppressed: Boolean; PreviewMode: Boolean)
  • +local event OnBeforePostSalesTaxToGL(var GenJnlLine: Record "Gen. Journal Line"; SalesHeader: Record "Sales Header"; SalesTaxAmountLine: Record "Sales Tax Amount Line")
  • +local event OnBeforePostSalesTaxRoundingToGL(var GenJnlLine: Record "Gen. Journal Line"; SalesHeader: Record "Sales Header")
  • +local event OnDivideAmountOnAfterCalcSalesTaxGeneral(SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line")
  • +local event OnBeforePostSalesTaxToGeneralLedger(var SalesHeader: Record "Sales Header"; var LineCount: Integer; var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary; var Window: Dialog; var SalesTaxCountry: Option US,CA,,,,,,,,,,,,NoTax; var GenJnlLineDocNo: Code[20]; var GenJnlLineExtDocNo: Code[35]; var GenJnlLineDocType: Enum "Gen. Journal Document Type"; var SourceCode: Code[10]; var Currency: Record Currency; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line"; var TotalSalesLineLCY: Record "Sales Line"; var TotalSalesLine: Record "Sales Line"; var TempSalesLineGlobal: Record "Sales Line" temporary; var IsHandled: Boolean)
  • +local event OnFinalizePostingOnAfterDecrementPrepmtAmtInvLCY(var SalesHeader: Record "Sales Header"; var TempDropShptPostBuffer: Record "Drop Shpt. Post. Buffer" temporary)
  • +local event OnAddSalesTaxLineToSalesTaxCalcOnBeforeTempSalesLineForSalesTaxInsert(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var TempSalesLineForSalesTax: Record "Sales Line" temporary)
  • +local event OnSetTaxTypeOnAfterAddSalesTaxLineToSalesTaxCalc(var SalesLine: Record "Sales Line")
  • +local procedure PostInvoice(var SalesHeader: Record "Sales Header"; var CustLedgEntry: Record "Cust. Ledger Entry"; LineCount: Integer)
  • +procedure InsertedPrepmtVATBaseToDeduct(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; PrepmtLineNo: Integer; TotalPrepmtAmtToDeduct: Decimal; PrepmtAmtToDeductInclTax: Decimal): Decimal
  • +local procedure UpdatePrepmtAmountInvBuf(PrepmtSalesLineNo: Integer; CurrencyFactor: Decimal; PrepmtIncludeTax: Boolean)
  • +local procedure Is100PctPrepmtInvoice(var TempSalesLine: Record "Sales Line" temporary): Boolean
  • +local procedure AddSalesTaxLineToSalesTaxCalc(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; FirstLine: Boolean)
  • +local procedure PostSalesTaxToGL(SalesHeader: Record "Sales Header"; LineCount: Integer)
  • +local procedure PostSalesTaxToGLRounding(SalesHeader: Record "Sales Header"; LineAmount: Decimal; LineAmountLCY: Decimal)
  • +local procedure SetTaxType(SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line")
  • Δlocal event OnBeforePostUpdateOrderLine(SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line" temporary; CommitIsSuppressed: Boolean; var SalesSetup: Record "Sales & Receivables Setup")
  • −local event OnAfterDivideAmount(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; QtyType: Option General,Invoicing,Shipping; SalesLineQty: Decimal; var TempVATAmountLine: Record "VAT Amount Line" temporary; var TempVATAmountLineRemainder: Record "VAT Amount Line" temporary)
  • −local procedure PostInvoice(var SalesHeader: Record "Sales Header"; var CustLedgEntry: Record "Cust. Ledger Entry")
  • −procedure InsertedPrepmtVATBaseToDeduct(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; PrepmtLineNo: Integer; TotalPrepmtAmtToDeduct: Decimal): Decimal
  • −local procedure UpdatePrepmtAmountInvBuf(PrepmtSalesLineNo: Integer; CurrencyFactor: Decimal)
table/79 "Company Information" +20, 3 changed
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10006; "UPS Shipper ID"; Text[15])
  • +field(10010; "Tax Area Code"; Code[20])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10016; "Federal ID No."; Text[30])
  • +field(10017; "QST Registration No."; Text[20])
  • +field(10021; "Provincial Tax Area Code"; Code[20])
  • +field(10022; "Software Identification Code"; Code[10])
  • +field(10023; "RFC No."; Code[12])
  • +field(10024; "CURP No."; Code[18])
  • +field(10025; "State Inscription"; Text[30])
  • +field(10026; "Tax Scheme"; Text[250])
  • +field(14021; "RFC Number"; Text[30])
  • +field(27000; "SAT Tax Regime Classification"; Code[10])
  • +field(27001; "SAT Postal Code"; Code[10])
  • +field(27002; "SCT Permission Type"; Code[10])
  • +field(27003; "SCT Permission Number"; Code[20])
  • +procedure IsCanada(): Boolean
  • +procedure InferIsCanadaFromCurrency(): Boolean
  • +procedure CheckIfMissingMXEInvRequiredFields(): Boolean
  • Δfield(11; "Giro No."; Text[20])
  • Δfield(14; "Bank Account No."; Text[30])
  • Δfield(38; "IBAN"; Code[50])
table/270 "Bank Account" +19, 3 changed
  • +field(10005; "E-Pay Export File Path"; Text[250])
  • +field(10006; "Last E-Pay Export File Name"; Text[30])
  • +field(10007; "E-Pay Trans. Program Path"; Text[250])
  • +field(10008; "E-Pay Trans. Program Command"; Text[80])
  • +field(10009; "Last ACH File ID Modifier"; Code[1])
  • +field(10010; "Last Remittance Advice No."; Code[20])
  • +field(10011; "Export Format"; Option)
  • +field(10012; "Last E-Pay File Creation No."; Integer)
  • +field(10013; "Client No."; Code[10])
  • +field(10014; "Client Name"; Code[30])
  • +field(10015; "Input Qualifier"; Code[30])
  • +field(10017; "Bank Communication"; Option)
  • +field(10018; "Check Date Format"; Option)
  • +field(10019; "Check Date Separator"; Option)
  • +field(10020; "EFT Export Code"; Code[20])
  • +field(27000; "Bank Code"; Code[3])
  • +procedure CheckLastStatementNo(): Boolean
  • +local procedure ValidateIncrementableText(ValidateText: Text)
  • +procedure GetEFTCodeunitID(): Integer
  • Δfield(13; "Bank Account No."; Text[30])
  • Δfield(110; "IBAN"; Code[50])
  • Δfield(1210; "Payment Export Format"; Code[20])
table/181 "Posted Gen. Journal Line" +21
  • +field(10006; "Export File Name"; Text[30])
  • +field(10011; "Tax Jurisdiction Code"; Code[10])
  • +field(10012; "Tax Type"; Option)
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10021; "IRS 1099 Amount"; Decimal)
  • +field(10030; "Foreign Exchange Indicator"; Option)
  • +field(10031; "Foreign Exchange Ref.Indicator"; Option)
  • +field(10032; "Foreign Exchange Reference"; Code[20])
  • +field(10033; "Gateway Operator OFAC Scr.Inc"; Option)
  • +field(10034; "Secondary OFAC Scr.Indicator"; Option)
  • +field(10035; "Origin. DFI ID Qualifier"; Option)
  • +field(10036; "Receiv. DFI ID Qualifier"; Option)
  • +field(10037; "Transaction Type Code"; Option)
  • +field(10038; "Transaction Code"; Code[3])
  • +field(10039; "Company Entry Description"; Text[10])
  • +field(10040; "Payment Related Information 1"; Text[80])
  • +field(10041; "Payment Related Information 2"; Text[52])
  • +field(10045; "GST/HST"; Enum "GST HST Tax Type")
  • +field(10046; "EFT Export Sequence No."; Integer)
table/81 "Gen. Journal Line" +21
  • +field(10006; "Export File Name"; Text[30])
  • +field(10011; "Tax Jurisdiction Code"; Code[10])
  • +field(10012; "Tax Type"; Option)
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10021; "IRS 1099 Amount"; Decimal)
  • +field(10030; "Foreign Exchange Indicator"; Option)
  • +field(10031; "Foreign Exchange Ref.Indicator"; Option)
  • +field(10032; "Foreign Exchange Reference"; Code[20])
  • +field(10033; "Gateway Operator OFAC Scr.Inc"; Option)
  • +field(10034; "Secondary OFAC Scr.Indicator"; Option)
  • +field(10035; "Origin. DFI ID Qualifier"; Option)
  • +field(10036; "Receiv. DFI ID Qualifier"; Option)
  • +field(10037; "Transaction Type Code"; Option)
  • +field(10038; "Transaction Code"; Code[3])
  • +field(10039; "Company Entry Description"; Text[10])
  • +field(10040; "Payment Related Information 1"; Text[80])
  • +field(10041; "Payment Related Information 2"; Text[52])
  • +field(10045; "GST/HST"; Enum "GST HST Tax Type")
  • +field(10046; "EFT Export Sequence No."; Integer)
table/98 "General Ledger Setup" +19, 1 changed
  • +field(10001; "VAT in Use"; Boolean)
  • +field(10002; "Bank Rec. Adj. Doc. Nos."; Code[20])
  • +field(10003; "Deposit Nos."; Code[20])
  • +field(10004; "SAT Certificate Thumbprint"; Text[250])
  • +field(10005; "Send PDF Report"; Boolean)
  • +field(10006; "Hash Algorithm"; Option)
  • +field(10007; "PAC Code"; Code[10])
  • +field(10008; "PAC Environment"; Option)
  • +field(10009; "CFDI Enabled"; Boolean)
  • +field(10010; "Sim. Signature"; Boolean)
  • +field(10011; "Sim. Send"; Boolean)
  • +field(10012; "Sim. Request Stamp"; Boolean)
  • +field(10120; "Bank Recon. with Auto. Match"; Boolean)
  • +field(10121; "SAT Certificate"; Code[20])
  • +field(10122; "Disable CFDI Payment Details"; Boolean)
  • +field(10123; "USD Currency Code"; Code[10])
  • +field(10124; "Cancel on Time Expiration"; Boolean)
  • +field(10125; "Multiple SAT Certificates"; Boolean)
  • +procedure CheckIfMissingMXEInvRequiredFields(): Boolean
  • Δfield(57; "Local Address Format"; Option)
table/18 "Customer" +19
  • +field(10004; "UPS Zone"; Code[2])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10017; "Bank Communication"; Option)
  • +field(10018; "Check Date Format"; Option)
  • +field(10019; "Check Date Separator"; Option)
  • +field(10021; "Balance on Date"; Decimal)
  • +field(10022; "Balance on Date (LCY)"; Decimal)
  • +field(10023; "RFC No."; Code[13])
  • +field(10024; "CURP No."; Code[18])
  • +field(10025; "State Inscription"; Text[30])
  • +field(14020; "Tax Identification Type"; Enum "Tax Identification Type")
  • +field(27000; "CFDI Purpose"; Code[10])
  • +field(27001; "CFDI Relation"; Code[10])
  • +field(27002; "SAT Tax Regime Classification"; Code[10])
  • +field(27004; "CFDI Export Code"; Code[10])
  • +field(27005; "CFDI General Public"; Boolean)
  • +field(27006; "CFDI Period"; Option)
  • +field(27007; "CFDI Customer Name"; Text[300])
  • +procedure ValidateRFCNo(Length: Integer)
table/5740 "Transfer Header" +18
  • +field(10044; "Transport Operators"; Integer)
  • +field(10045; "Transit-from Date/Time"; DateTime)
  • +field(10046; "Transit Hours"; Integer)
  • +field(10047; "Transit Distance"; Decimal)
  • +field(10048; "Insurer Name"; Text[50])
  • +field(10049; "Insurer Policy Number"; Text[30])
  • +field(10050; "Foreign Trade"; Boolean)
  • +field(10051; "Vehicle Code"; Code[20])
  • +field(10052; "Trailer 1"; Code[20])
  • +field(10053; "Trailer 2"; Code[20])
  • +field(10056; "Medical Insurer Name"; Text[50])
  • +field(10057; "Medical Ins. Policy Number"; Text[30])
  • +field(10058; "SAT Weight Unit Of Measure"; Code[10])
  • +field(10059; "SAT International Trade Term"; Code[10])
  • +field(10060; "Exchange Rate USD"; Decimal)
  • +field(10061; "SAT Customs Regime"; Code[10])
  • +field(10062; "SAT Transfer Reason"; Code[10])
  • +field(27004; "CFDI Export Code"; Code[10])
codeunit/12 "Gen. Jnl.-Post Line" +12, 5 removed
  • +local event OnBeforeCheckJnlLineForEFTFile(GenJnlLine: Record "Gen. Journal Line"; var IsHandled: Boolean)
  • +local event OnBeforeSkipFindTaxDetail(var TaxDetail: Record "Tax Detail"; var GenJournalLine: Record "Gen. Journal Line"; var IsHandled: Boolean; var ReturnValue: Boolean)
  • +local procedure CalcCurrencyRealizedGainLoss(var CVLedgEntryBuf: Record "CV Ledger Entry Buffer"; var TempDtldCVLedgEntryBuf: Record "Detailed CV Ledg. Entry Buffer" temporary; GenJnlLine: Record "Gen. Journal Line"; AppliedAmount: Decimal; AppliedAmountLCY: Decimal; var VATRealizedGainLossLCY: Decimal)
  • +procedure CustUnrealizedVAT(GenJnlLine: Record "Gen. Journal Line"; var CustLedgEntry2: Record "Cust. Ledger Entry"; SettledAmount: Decimal; GainLossLCY: Decimal; CurrencyFactor: Decimal; PostingDate: Date)
  • +procedure CustUnrealizedVAT(ShouldConsiderVATPostingGrouping: Boolean; TempVATPostingSetup: Record "VAT Posting Setup" temporary; GenJnlLine: Record "Gen. Journal Line"; var CustLedgEntry2: Record "Cust. Ledger Entry"; SettledAmount: Decimal; GainLossLCY: Decimal; CurrencyFactor: Decimal; PostingDate: Date)
  • +procedure VendUnrealizedVAT(GenJnlLine: Record "Gen. Journal Line"; var VendLedgEntry2: Record "Vendor Ledger Entry"; SettledAmount: Decimal; GainLossLCY: Decimal; CurrencyFactor: Decimal; PostingDate: Date)
  • +procedure PostUnrealVATEntry(GenJnlLine: Record "Gen. Journal Line"; var VATEntry2: Record "VAT Entry"; VATAmount: Decimal; VATBase: Decimal; VATAmountAddCurr: Decimal; VATBaseAddCurr: Decimal; GLEntryNo: Integer; RealizedVATAmount: Decimal; RealizedVATBase: Decimal; RealizedVATAmountAddCurr: Decimal; RealizedVATBaseAddCurr: Decimal)
  • +procedure PostApply(var 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"; BlockPaymentTolerance: Boolean; AllApplied: Boolean; var AppliedAmount: Decimal; var PmtTolAmtToBeApplied: Decimal; var VATRealizedGainLossLCY: Decimal)
  • +procedure CalculateFirstLastAmount(UnRealizedVatType: Option " ",Percentage,First,Last,"First (Fully Paid)","Last (Fully Paid)","Cash Basis"; RemainingUnrealizedAmount: Decimal; var TotalUnrealVATAmountLast: Decimal; var TotalUnrealVATAmountFirst: Decimal)
  • +local procedure SkipFindTaxDetail(var TaxDetail: Record "Tax Detail"; GenJournalLine: Record "Gen. Journal Line"): Boolean
  • +local procedure GetRealizedVATGainLossGLAccNo(VATEntry: Record "VAT Entry"; CurrencyCode: Code[10]): Code[20]
  • +local procedure CheckJnlLineForEFTFile(GenJnlLine: Record "Gen. Journal Line")
  • −local procedure CalcCurrencyRealizedGainLoss(var CVLedgEntryBuf: Record "CV Ledger Entry Buffer"; var TempDtldCVLedgEntryBuf: Record "Detailed CV Ledg. Entry Buffer" temporary; GenJnlLine: Record "Gen. Journal Line"; AppliedAmount: Decimal; AppliedAmountLCY: Decimal)
  • −procedure CustUnrealizedVAT(GenJnlLine: Record "Gen. Journal Line"; var CustLedgEntry2: Record "Cust. Ledger Entry"; SettledAmount: Decimal)
  • −procedure VendUnrealizedVAT(GenJnlLine: Record "Gen. Journal Line"; var VendLedgEntry2: Record "Vendor Ledger Entry"; SettledAmount: Decimal)
  • −procedure PostUnrealVATEntry(GenJnlLine: Record "Gen. Journal Line"; var VATEntry2: Record "VAT Entry"; VATAmount: Decimal; VATBase: Decimal; VATAmountAddCurr: Decimal; VATBaseAddCurr: Decimal; GLEntryNo: Integer)
  • −procedure PostApply(var 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"; BlockPaymentTolerance: Boolean; AllApplied: Boolean; var AppliedAmount: Decimal; var PmtTolAmtToBeApplied: Decimal)
table/23 "Vendor" +15, 2 changed
  • +field(10004; "UPS Zone"; Code[2])
  • +field(10016; "Federal ID No."; Text[30])
  • +field(10017; "Bank Communication"; Option)
  • +field(10018; "Check Date Format"; Option)
  • +field(10019; "Check Date Separator"; Option)
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10021; "Balance on Date"; Decimal)
  • +field(10022; "Balance on Date (LCY)"; Decimal)
  • +field(10023; "RFC No."; Code[13])
  • +field(10024; "CURP No."; Code[18])
  • +field(10025; "State Inscription"; Text[30])
  • +field(10026; "FATCA filing requirement"; Boolean)
  • +field(14020; "Tax Identification Type"; Enum "Tax Identification Type")
  • +key(Key16; "SystemModifiedAt")
  • +procedure ValidateRFCNo(Length: Integer)
  • Δkey(Key14; "Purchaser Code")
  • Δkey(Key15; "Blocked")
table/39 "Purchase Line" +14, 1 changed
  • +field(10001; "Tax To Be Expensed"; Decimal)
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10022; "IRS 1099 Liable"; Boolean)
  • +field(10025; "GST/HST"; Enum "GST HST Tax Type")
  • +local event OnBeforeCheckForTaxDifferences(var PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean)
  • +local event OnBeforeUpdateVATAmountsForReleasedDocument(var PurchaseLine: Record "Purchase Line"; var IsHandled: Boolean)
  • +local event OnValidateDirectUnitCostOnBeforeThrowErrorIfPrepaymentInvoicePosted(var PurchaseLine: Record "Purchase Line"; var ThrowError: Boolean)
  • +local procedure UpdateVATAmountsForReleasedDocument()
  • +procedure CalcSalesTaxLines(var PurchHeader: Record "Purchase Header"; var PurchLine: Record "Purchase Line")
  • +procedure TestExpenseCapitalize()
  • +local procedure CheckForTaxDifferences()
  • +procedure CalcAmountIncludingTax(BaseAmount: Decimal): Decimal
  • +procedure RecalculateTaxes()
  • +local procedure HasVatInUse(): Boolean
  • Δfield(86; "Tax Liable"; Boolean)
table/1381 "Customer Templ." +12, 1 changed
  • +field(10004; "UPS Zone"; Code[2])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10017; "Bank Communication"; Option)
  • +field(10018; "Check Date Format"; Option)
  • +field(10019; "Check Date Separator"; Option)
  • +field(10023; "RFC No."; Code[13])
  • +field(10024; "CURP No."; Code[18])
  • +field(10025; "State Inscription"; Text[30])
  • +field(14020; "Tax Identification Type"; Option)
  • +field(10092; "State"; Text[30])
  • +field(27000; "CFDI Purpose"; Code[10])
  • +field(27001; "CFDI Relation"; Code[10])
  • Δfield(14; "Our Account No."; Text[20])
table/1383 "Vendor Templ." +11, 1 changed
  • +field(10004; "UPS Zone"; Code[2])
  • +field(10016; "Federal ID No."; Text[30])
  • +field(10017; "Bank Communication"; Option)
  • +field(10018; "Check Date Format"; Option)
  • +field(10019; "Check Date Separator"; Option)
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10023; "RFC No."; Code[13])
  • +field(10024; "CURP No."; Code[18])
  • +field(10025; "State Inscription"; Text[30])
  • +field(10026; "FATCA filing requirement"; Boolean)
  • +field(14020; "Tax Identification Type"; Option)
  • Δfield(14; "Our Account No."; Text[20])
table/37 "Sales Line" +10, 2 changed
  • +field(10000; "Package Tracking No."; Text[50])
  • +field(10001; "Retention Attached to Line No."; Integer)
  • +field(10002; "Retention VAT %"; Decimal)
  • +field(10003; "Custom Transit Number"; Text[30])
  • +field(10004; "SAT Customs Document Type"; Code[10])
  • +procedure CalcSalesTaxLines(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line")
  • +local procedure CheckRetentionAttachedToLineNo()
  • +procedure CalcAmountIncludingTax(BaseAmount: Decimal): Decimal
  • +procedure GetPrepaidSalesAmountInclVAT(): Decimal
  • +local procedure HasVatInUse(): Boolean
  • Δfield(86; "Tax Liable"; Boolean)
  • Δprocedure InitQtyToAsm()
table/38 "Purchase Header" +12
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10019; "GST/HST Tax Type"; Enum "GST HST Tax Type")
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10021; "IRS 1099 Amount"; Decimal)
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
  • +field(12600; "Prepmt. Include Tax"; Boolean)
  • +local procedure IsPrepmtInvoicePosted(): Boolean
  • +procedure GetStatisticsPageID(): Integer
  • +procedure RecalculateTaxesOnLines()
codeunit/9025 "Small Business Report Catalog" 1 changed, 10 removed
  • Δprocedure RunDetailTrialBalanceReport(UseRequestPage: Boolean)
  • −local event OnBeforeRunCustomerTop10ListReport(UseRequestPage: Boolean; var IsHandled: Boolean)
  • −local event OnBeforeRunVendorTop10ListReport(UseRequestPage: Boolean; var IsHandled: Boolean)
  • −local event OnBeforeRunTrialBalanceReport(UseRequestPage: Boolean; var IsHandled: Boolean)
  • −local event OnBeforeRunAgedAccountsReceivableReport(UseRequestPage: Boolean; var IsHandled: Boolean)
  • −local event OnBeforeRunAgedAccountsPayableReport(UseRequestPage: Boolean; var IsHandled: Boolean)
  • −procedure RunAgedAccountsReceivableReport(UseRequestPage: Boolean)
  • −procedure RunAgedAccountsPayableReport(UseRequestPage: Boolean)
  • −procedure RunCustomerTop10ListReport(UseRequestPage: Boolean)
  • −procedure RunVendorTop10ListReport(UseRequestPage: Boolean)
  • −procedure RunTrialBalanceReport(UseRequestPage: Boolean)
codeunit/5988 "Serv-Documents Mgt." +10
  • +local event OnBeforeCalculateSalesTax(var SalesTaxCalculationOverridden: Boolean; var ServiceHeader: Record "Service Header"; var ServiceLine: Record "Service Line"; var TempSalesTaxAmountLine: Record Microsoft.Finance.SalesTax."Sales Tax Amount Line" temporary; var IsHandled: Boolean; Ship: Boolean; Consume: Boolean; Invoice: Boolean)
  • +local event OnCheckAndSetPostingConstants(var ServiceHeader: Record "Service Header")
  • +local event OnFinalize(var ServiceHeader: Record "Service Header"; var ServiceInvoiceHeader: Record "Service Invoice Header"; var ServiceInvoiceLine: Record "Service Invoice Line"; var ServiceCrMemoHeader: Record "Service Cr.Memo Header"; var ServiceCrMemoLine: Record "Service Cr.Memo Line"; IsInvoice: Boolean)
  • +local event OnPostDocumentLinesOnBeforeSalesTaxLineToSalesTaxCalc(ServiceLine: Record "Service Line" temporary; ServiceHeader: Record "Service Header" temporary)
  • +procedure GetUseExternalTaxEngine(): Boolean
  • +procedure TestTaxGroup()
  • +procedure RunOnBeforeCalculateSalesTax(var SalesTaxCalculationOverridden2: Boolean; var ServiceHeader: Record "Service Header"; var ServiceLine: Record "Service Line"; var TempSalesTaxAmountLine: Record Microsoft.Finance.SalesTax."Sales Tax Amount Line" temporary; var IsHandled: Boolean; Ship2: Boolean; Consume2: Boolean; Invoice2: Boolean)
  • +procedure RunOnCheckAndSetPostingConstants(var ServiceHeader: Record "Service Header")
  • +procedure RunOnFinalize(var ServiceHeader: Record "Service Header"; var ServiceInvoiceHeader: Record "Service Invoice Header"; var ServiceInvoiceLine: Record "Service Invoice Line"; var ServiceCrMemoHeader: Record "Service Cr.Memo Header"; var ServiceCrMemoLine: Record "Service Cr.Memo Line"; IsInvoice: Boolean)
  • +procedure RunOnPostDocumentLinesOnBeforeSalesTaxLineToSalesTaxCalc(ServiceLine: Record "Service Line" temporary; ServiceHeader: Record "Service Header" temporary)
report/1401 "Check" +1, 3 changed, 5 removed
  • +local procedure ApplyBalancingTypeOfEmployee()
  • Δlocal procedure PrintOneLineOneEntryOnAfterGetRecordForCustomer(var CustLedgEntry1: Record "Cust. Ledger Entry")
  • Δlocal procedure PrintOneLineOneEntryOnAfterGetRecordForVendor(var VendLedgEntry1: Record "Vendor Ledger Entry")
  • Δlocal procedure PrintOneLineOneEntryOnAfterGetRecordForEmployee(var EmployeeLedgerEntry1: Record "Employee Ledger Entry")
  • −local event OnAfterFormatNoText(var NoText: array[2] of Text[80]; No: Decimal; CurrencyCode: Code[10])
  • −procedure FormatNoText(var NoText: array[2] of Text[80]; No: Decimal; CurrencyCode: Code[10])
  • −local procedure AddToNoText(var NoText: array[2] of Text[80]; var NoTextIndex: Integer; var PrintExponent: Boolean; AddText: Text[30])
  • −procedure InitTextVariable()
  • −local procedure GetAmtDecimalPosition(): Decimal
table/5600 "Fixed Asset" +9
  • +field(10001; "Vehicle Licence Plate"; Code[10])
  • +field(10002; "Vehicle Year"; Integer)
  • +field(10003; "Vehicle Gross Weight"; Decimal)
  • +field(10004; "SAT Federal Autotransport"; Code[10])
  • +field(10005; "SAT Trailer Type"; Code[10])
  • +field(10006; "SCT Permission Type"; Code[10])
  • +field(10007; "SCT Permission Number"; Code[20])
  • +field(10008; "SCT Permission No."; Text[50])
  • +field(27000; "SAT Classification Code"; Code[10])
table/272 "Check Ledger Entry" +6, 2 changed
  • +field(10005; "Trace No."; Code[30])
  • +field(10006; "Transmission File Name"; Text[30])
  • +procedure GetCheckAmountText(CurrencyCode: Code[10]; var CurrencySymbol: Code[5]): Text
  • +local procedure GetFractionPartLength(DecimalValue: Decimal): Integer
  • +local procedure GetDecimalSeparator(): Code[1]
  • +procedure ResetStatementFields(BankAccountNo: Code[20]; StatementNo: Code[20]; StatementType: Option)
  • Δfield(14; "Original Entry Status"; Option)
  • Δfield(19; "Statement No."; Code[20])
table/44 "Sales Comment Line" +8
  • +field(10000; "Print On Quote"; Boolean)
  • +field(10001; "Print On Pick Ticket"; Boolean)
  • +field(10002; "Print On Order Confirmation"; Boolean)
  • +field(10003; "Print On Shipment"; Boolean)
  • +field(10004; "Print On Invoice"; Boolean)
  • +field(10005; "Print On Credit Memo"; Boolean)
  • +field(10006; "Print On Return Authorization"; Boolean)
  • +field(10007; "Print On Return Receipt"; Boolean)
table/1284 "Outstanding Bank Transaction" +4, 2 changed, 1 removed
  • +field(10010; "Indentation"; Integer)
  • +field(10011; "External Document No."; Code[35])
  • +procedure CreateTheDepositHeaderLine(var TempOutstandingBankTransaction: Record "Outstanding Bank Transaction" temporary; var TempOutstandingBankTransactionCopy: Record "Outstanding Bank Transaction" temporary; BankAccountLedgerEntry: Record "Bank Account Ledger Entry")
  • +procedure CopyFromBankAccLedgerEntry(BankAccountLedgerEntry: Record "Bank Account Ledger Entry"; BankTransacType: Integer; StatementType: Integer; StatementNo: Code[20]; RemainingAmt: Decimal; IndentationValue: Integer)
  • Δfield(3; "Document Type"; Option)
  • Δkey(Key1; "External Document No.", "Entry No.")
  • −procedure CopyFromBankAccLedgerEntry(BankAccountLedgerEntry: Record "Bank Account Ledger Entry"; BankTransacType: Integer; StatementType: Integer; StatementNo: Code[20]; RemainingAmt: Decimal)
table/27 "Item" +7
  • +field(10004; "Duty Class"; Code[10])
  • +field(10011; "Consumptions (Qty.)"; Decimal)
  • +field(10012; "Outputs (Qty.)"; Decimal)
  • +field(27000; "SAT Item Classification"; Code[10])
  • +field(27024; "SAT Hazardous Material"; Code[10])
  • +field(27025; "SAT Packaging Type"; Code[10])
  • +field(27026; "SAT Material Type"; Code[10])
codeunit/333 "Req. Wksh.-Make Order" +4, 2 removed
  • +local event OnBeforeCheckInsertFinalizePurchaseOrderHeader(RequisitionLine: Record "Requisition Line"; var PurchaseHeader: Record "Purchase Header"; var CheckInsert: Boolean; var OrderCounter: Integer; var PrevPurchCode: Code[10]; PrevLocationCode: Code[10]; var PrevShipToCode: Code[10]; var UpdateAddressDetails: Boolean; var CheckAddressDetailsResult: Boolean; ReceiveDateReq: Date; CheckCustomer: Boolean)
  • +local event OnAfterPurchasingParametersMatch(var PurchaseHeader: Record "Purchase Header"; var RequisitionLine: Record "Requisition Line"; PrevPurchCode: Code[10]; var IsMatch: Boolean)
  • +local procedure CheckInsertFinalizePurchaseOrderHeader(RequisitionLine: Record "Requisition Line"; var PurchOrderHeader: Record "Purchase Header"; UpdateAddressDetails: Boolean; CheckCustomer: Boolean): Boolean
  • +local procedure PurchasingParametersMatch(PurchaseHeader: Record "Purchase Header"; ReqLine: Record "Requisition Line"): Boolean
  • −local event OnBeforeCheckInsertFinalizePurchaseOrderHeader(RequisitionLine: Record "Requisition Line"; var PurchaseHeader: Record "Purchase Header"; var CheckInsert: Boolean; var OrderCounter: Integer; var PrevPurchCode: Code[10]; PrevLocationCode: Code[10]; var PrevShipToCode: Code[10]; var UpdateAddressDetails: Boolean; var CheckAddressDetailsResult: Boolean; ReceiveDateReq: Date)
  • −local procedure CheckInsertFinalizePurchaseOrderHeader(RequisitionLine: Record "Requisition Line"; var PurchOrderHeader: Record "Purchase Header"; UpdateAddressDetails: Boolean): Boolean
codeunit/8 "AccSchedManagement" +5, 1 removed
  • +local event OnAfterFormatCellAsText(var ColumnLayout2: Record "Column Layout"; var ValueAsText: Text[30]; NegativeAmounts: Option; Value: Decimal)
  • +procedure SetParameters(NewNegativeAmounts: Integer; NewNegativePercents: Integer)
  • +procedure BuildFinPerDescription(BaseDescription: Text[80]; PeriodStartDate: Date; PeriodEndDate: Date): Text[250]
  • +local procedure BreakDownDate(DateToBreak: Date; var Year: Integer; var Month: Integer; var Day: Integer; var MonthName: Text[30])
  • +local procedure SetCFEntryFiltersForBudgetEntries(var CFAccount: Record "Cash Flow Account"; var CFForecastEntry: Record "Cash Flow Forecast Entry"; var AccSchedLine: Record "Acc. Schedule Line"; var ColumnLayout: Record "Column Layout")
  • −local event OnAfterFormatCellAsText(var ColumnLayout2: Record "Column Layout"; var ValueAsText: Text[30]; Value: Decimal)
page/344 "Navigate" +5, 1 removed
  • +local event OnAfterSetTrackingFiltersOnBeforeFindTrackingRecords(var ItemTrackingFilters: Record Item)
  • +local procedure FindPostedDepositHeader()
  • +local procedure FindPostedDepositLine()
  • +procedure SetExternal()
  • +local procedure FindDepositRecords()
  • −local event OnFindTrackingRecordsOnAfterSetTrackingFilters(var ItemTrackingFilters: Record Item)
page/370 "Bank Account Card" +6
  • +local event OnAfterAfterGetCurrentRecord()
  • +local event OnAfterSetCountrySpecificControls()
  • +local procedure SetCountrySpecificControls()
  • +local procedure ExportFormatOnAfterValidate()
  • +local procedure AfterGetCurrentRecord()
  • +local procedure ValidateExportFormats()
report/202 "Sales Document - Test" +4, 2 removed
  • +local event OnBeforeCalculateSalesTax(var SalesHeaderParm: Record "Sales Header"; var SalesTaxAmountLineParm: Record "Sales Tax Amount Line"; var SalesTaxCalculationOverridden: Boolean)
  • +local event OnAfterCalculateSalesTax(var VATBaseAmount: Decimal; var VATAmount: Decimal; SalesTaxAmountLineParm: Record "Sales Tax Amount Line")
  • +procedure AddDimToTempLine(SalesLine: Record "Sales Line"; var TempDimSetEntry: Record "Dimension Set Entry")
  • +procedure InitializeRequest(NewShipReceiveOnNextPostReq: Boolean; NewInvOnNextPostReq: Boolean; NewShowDim: Boolean; NewShowCostAssignment: Boolean; NewSummarize: Boolean)
  • −procedure AddDimToTempLine(SalesLine: Record "Sales Line")
  • −procedure InitializeRequest(NewShipReceiveOnNextPostReq: Boolean; NewInvOnNextPostReq: Boolean; NewShowDim: Boolean; NewShowCostAssignment: Boolean)
table/111 "Sales Shipment Line" +5, 1 changed
  • +field(10000; "Package Tracking No."; Text[50])
  • +field(10003; "Custom Transit Number"; Text[30])
  • +field(10004; "SAT Customs Document Type"; Code[10])
  • +key(Key8; "Document Id")
  • +procedure StartTrackingSite()
  • Δkey(Key7; "Document No.", "Package Tracking No.")
table/122 "Purch. Inv. Header" +6
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
table/124 "Purch. Cr. Memo Hdr." +6
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10042; "Fiscal Invoice Number PAC"; Text[50])
table/254 "VAT Entry" +4, 1 changed, 1 removed
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10019; "GST/HST"; Enum "GST HST Tax Type")
  • +procedure GetUnrealizedVATPart(SettledAmount: Decimal; Paid: Decimal; Full: Decimal; TotalUnrealVATAmountFirst: Decimal; TotalUnrealVATAmountLast: Decimal; OriginalAmtLCY: Decimal): Decimal
  • Δfield(35; "Tax Type"; Option)
  • −procedure GetUnrealizedVATPart(SettledAmount: Decimal; Paid: Decimal; Full: Decimal; TotalUnrealVATAmountFirst: Decimal; TotalUnrealVATAmountLast: Decimal): Decimal
table/322 "Tax Detail" +3, 3 changed
  • +field(10010; "Expense/Capitalize"; Boolean)
  • +procedure CheckTaxType(TaxDetailRec: Record "Tax Detail"): Boolean
  • +procedure PrepareForCheckTaxType(TaxDetailRec: Record "Tax Detail")
  • Δfield(3; "Tax Type"; Option)
  • Δfield(5; "Tax Below Maximum"; Decimal)
  • Δfield(6; "Tax Above Maximum"; Decimal)
page/256 "Payment Journal" +5
  • +local event OnAfterCheckPaymentLineBeforeExport(var GenJournalLine: Record "Gen. Journal Line")
  • +local procedure CheckPaymentLineBeforeExport(var GenJnlLine: Record "Gen. Journal Line"; GenJournalBatch: Record "Gen. Journal Batch"; BankAccount: Record "Bank Account")
  • +local procedure SetAMCAppearance()
  • +local procedure EntriesToVoid(GenJnlLine3: Record "Gen. Journal Line"; AMC: Boolean): Boolean
  • +local procedure UseForElecPaymentChecked(GenJnlLine3: Record "Gen. Journal Line"): Boolean
table/123 "Purch. Inv. Line" +3, 2 changed
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10022; "IRS 1099 Liable"; Boolean)
  • +key(Key7; "Document No.", "Location Code")
  • Δkey(Key5; "Job No.", "Document No.")
  • Δkey(Key6; "Order No.", "Order Line No.", "Posting Date")
table/1382 "Item Templ." +5
  • +field(10004; "Duty Class"; Code[10])
  • +field(27000; "SAT Item Classification"; Code[10])
  • +field(27024; "SAT Hazardous Material"; Code[10])
  • +field(27025; "SAT Packaging Type"; Code[10])
  • +field(27026; "SAT Material Type"; Code[10])
table/15 "G/L Account" +4, 1 changed
  • +field(10001; "GIFI Code"; Code[10])
  • +field(27000; "SAT Account Code"; Code[20])
  • +field(27001; "SAT Classification Code"; Code[10])
  • +key(Key11; "Account Category")
  • Δkey(Key10; "GIFI Code")
table/288 "Vendor Bank Account" +3, 2 changed
  • +field(10000; "Use for Electronic Payments"; Boolean)
  • +field(27000; "Bank Code"; Code[3])
  • +local event OnValidateUseforElectronicPayments(xVendorBankAccount: Record "Vendor Bank Account"; var IsHandled: Boolean)
  • Δfield(14; "Bank Account No."; Text[30])
  • Δfield(24; "IBAN"; Code[50])
table/325 "VAT Posting Setup" +4, 1 changed
  • +field(6201; "Non-Ded. Sales VAT Account"; Code[20])
  • +field(10001; "CFDI VAT Exemption"; Boolean)
  • +field(10002; "CFDI Non-Taxable"; Boolean)
  • +field(10003; "CFDI Subject to Tax"; Code[10])
  • Δfield(5; "Unrealized VAT Type"; Option)
table/5107 "Sales Header Archive" +5
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10009; "Outstanding Amount ($)"; Decimal)
  • +field(10015; "Tax Exemption No."; Text[30])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(12600; "Prepmt. Include Tax"; Boolean)
codeunit/442 "Sales-Post Prepayments" +4
  • +local event OnBeforeUpdateSalesTaxOnLines(var SalesLine: Record "Sales Line"; var ValidTaxAreaCode: Boolean; CommitIsSuppressed: Boolean)
  • +procedure PrepmtAmount(SalesLine: Record "Sales Line"; DocumentType: Option Invoice,"Credit Memo",Statistic; IncludeTax: Boolean): Decimal
  • +procedure UpdateSalesTaxOnLines(var SalesLine: Record "Sales Line"; IncludeTax: Boolean; DocumentType: Option Invoice,"Credit Memo")
  • +local procedure CalcSalesTaxLines(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line")
report/1303 "Standard Sales - Draft Invoice" +3, 1 removed
  • +local event OnLineOnAfterGetRecordOnBeforeCalcTotals(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var VATAmountLine: Record "VAT Amount Line")
  • +local procedure CreateUSReportTotalLines()
  • +local procedure GetTaxSummarizedLines(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
  • −local procedure ShowVATClause(VATClauseCode: Code[20]): Boolean
report/1304 "Standard Sales - Quote" +4
  • +local event OnAfterCalculateSalesTax(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var VATBaseAmount: Decimal; var VATAmount: Decimal; var TotalAmountInclVAT: Decimal)
  • +local event OnBeforeCalculateSalesTax(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var VATAmountLine: Record "VAT Amount Line")
  • +local procedure CreateUSReportTotalLines()
  • +local procedure GetTaxSummarizedLines(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
report/1306 "Standard Sales - Invoice" +4
  • +local event OnAfterCalculateSalesTax(var SalesInvoiceHeader: Record "Sales Invoice Header"; var SalesInvoiceLine: Record "Sales Invoice Line"; var TotalAmount: Decimal; var TotalAmountVAT: Decimal; var TotalAmountInclVAT: Decimal)
  • +local event OnBeforeCalculateSalesTax(var SalesInvoiceHeader: Record "Sales Invoice Header"; var SalesInvoiceLine: Record "Sales Invoice Line"; var VATAmountLine: Record "VAT Amount Line")
  • +local procedure CreateUSReportTotalLines()
  • +local procedure GetTaxSummarizedLines(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
report/1307 "Standard Sales - Credit Memo" +4
  • +local event OnAfterCalculateSalesTax(var SalesCrMemoHeader: Record "Sales Cr.Memo Header"; var SalesCrMemoLine: Record "Sales Cr.Memo Line"; var TotalAmount: Decimal; var TotalAmountVAT: Decimal; var TotalAmountInclVAT: Decimal)
  • +local event OnBeforeCalculateSalesTax(var SalesCrMemoHeader: Record "Sales Cr.Memo Header"; var SalesCrMemoLine: Record "Sales Cr.Memo Line"; var VATAmountLine: Record "VAT Amount Line")
  • +local procedure CreateUSReportTotalLines()
  • +local procedure GetTaxSummarizedLines(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
report/5915 "Service Document - Test" +4
  • +local event OnBeforeCalculateSalesTax(var ServiceHeader: Record "Service Header"; var SalesTaxAmountLine: Record "Sales Tax Amount Line"; var SalesTaxCalculationOverridden: Boolean)
  • +procedure RunOnBeforeCalculateSalesTax(var ServiceHeader: Record "Service Header"; var SalesTaxAmountLine: Record "Sales Tax Amount Line"; var SalesTaxCalculationOverridden: Boolean)
  • +procedure RunOnAfterCheckServiceDoc(ServiceHeader: Record "Service Header"; var ErrorText: array[99] of Text[250]; var ErrorCounter: Integer)
  • +procedure RunOnBeforeCheckType(ServiceLine: Record "Service Line"; var ErrorCounter: Integer; var ErrorText: array[99] of Text[250])
table/1019 "Job Difference Buffer" +4
  • +field(10010; "Budgeted Quantity"; Decimal)
  • +field(10011; "Budgeted Total Cost"; Decimal)
  • +field(10012; "Budgeted Line Amount"; Decimal)
  • +field(10013; "Description"; Text[50])
table/113 "Sales Invoice Line" +4
  • +field(10000; "Package Tracking No."; Text[50])
  • +field(10001; "Retention Attached to Line No."; Integer)
  • +field(10002; "Retention VAT %"; Decimal)
  • +field(10003; "Custom Transit Number"; Text[30])
table/17 "G/L Entry" +3, 1 changed
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10019; "GST/HST"; Enum "GST HST Tax Type")
  • +key(Key14; "Dimension Set ID")
  • Δkey(Key13; "External Document No.", "Posting Date")
table/25 "Vendor Ledger Entry" +2, 2 changed
  • +field(10020; "IRS 1099 Code"; Code[10])
  • +field(10021; "IRS 1099 Amount"; Decimal)
  • Δkey(Key4; "Document No.", "Document Type", "Vendor No.")
  • Δkey(Key5; "External Document No.", "Document Type", "Vendor No.")
table/287 "Customer Bank Account" +2, 2 changed
  • +field(10000; "Use for Electronic Payments"; Boolean)
  • +field(27000; "Bank Code"; Code[3])
  • Δfield(14; "Bank Account No."; Text[30])
  • Δfield(24; "IBAN"; Code[50])
table/290 "VAT Amount Line" +3, 1 changed
  • +field(10001; "Tax Area Code"; Code[20])
  • +procedure GetAmtSubjectToSalesTax(): Decimal
  • +procedure GetAmtExemptFromSalesTax(): Decimal
  • Δkey(Key1; "VAT Identifier", "VAT Calculation Type", "Tax Group Code", "Tax Area Code", "Use Tax", "Positive")
table/5109 "Purchase Header Archive" +4
  • +field(10005; "Ship-to UPS Zone"; Code[2])
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10018; "STE Transaction ID"; Text[20])
  • +field(10020; "IRS 1099 Code"; Code[10])
table/5200 "Employee" +2, 2 changed
  • +field(10023; "RFC No."; Code[13])
  • +field(10025; "License No."; Code[20])
  • Δfield(57; "Bank Account No."; Text[30])
  • Δfield(58; "IBAN"; Code[50])
codeunit/11 "Gen. Jnl.-Check Line" +1, 2 removed
  • +local procedure CheckElectronicPaymentFields(GenJnlLine: Record "Gen. Journal Line"; BankAccountNo: Code[20])
  • −local procedure CheckElectronicPaymentFields(GenJnlLine: Record "Gen. Journal Line")
  • −local procedure CheckTransmitted(GenJnlLine: Record "Gen. Journal Line"): Boolean
codeunit/444 "Purchase-Post Prepayments" +3
  • +local procedure CheckTaxGroupCodeOnLines(PurchaseHeader: Record "Purchase Header")
  • +procedure PrepmtAmount(PurchLine: Record "Purchase Line"; DocumentType: Option Invoice,"Credit Memo",Statistic; IncludeTax: Boolean): Decimal
  • +procedure UpdateSalesTaxOnLines(var PurchLine: Record "Purchase Line"; IncludeTax: Boolean; PurchHeader: Record "Purchase Header"; DocumentType: Option Invoice,"Credit Memo",Statistic)
codeunit/57 "Document Totals" +3
  • +local event OnBeforePurchaseCalculateTotalsNoRounding(var TempCurrentPurchaseLine: Record "Purchase Line"; var VATAmount: Decimal; var TempTotalPurchaseLine: Record "Purchase Line"; var TaxAreaCode: Code[20]; var IsHandled: Boolean)
  • +local procedure SalesCalculateTotalsNoRounding(var TempCurrentSalesLine: Record "Sales Line"; var VATAmount: Decimal; var TempTotalSalesLine: Record "Sales Line"; TaxAreaCode: Code[20])
  • +procedure PurchaseCalculateTotalsNoRounding(var TempCurrentPurchaseLine: Record "Purchase Line"; var VATAmount: Decimal; var TempTotalPurchaseLine: Record "Purchase Line"; var TaxAreaCode: Code[20])
codeunit/6620 "Copy Document Mgt." +3
  • +local procedure SalesCalcSalesTaxLines(ToSalesHeader: Record "Sales Header")
  • +local procedure InsertTempLineBufer(OldLineNo: Integer; NewLineNo: Integer)
  • +local procedure UpdateRetentionSalesLines(ToSalesHeader: Record "Sales Header")
page/404 "Check Preview" +2, 1 removed
  • +local event OnBeforeFormatTextFieldsForCheck(var CheckToAddr: array[8] of Text[100]; CheckAmount: Decimal; var GenJournalLine: Record "Gen. Journal Line"; var Customer: Record Customer; var BankAccount: Record "Bank Account"; Employee: Record Employee; var Vendor: Record Vendor; Rec: Record "Gen. Journal Line"; var IsHandled: Boolean; var BankAccount2: Record "Bank Account"; CheckDateFormat: Option; DateSeparator: Option; CheckLanguage: Integer; CheckStyle: Option; CheckDateText: Text[30])
  • +local procedure ConcAddr(Addr: array[8] of Text[100]): Text
  • −local event OnBeforeFormatTextFieldsForCheck(var CheckToAddr: array[8] of Text[100]; CheckAmount: Decimal; var GenJournalLine: Record "Gen. Journal Line"; var Customer: Record Customer; var BankAccount: Record "Bank Account"; var Employee: Record Employee; var Vendor: Record Vendor; Rec: Record "Gen. Journal Line"; var IsHandled: Boolean)
report/1305 "Standard Sales - Order Conf." +3
  • +local event OnLineOnAfterGetRecordOnBeforeCalcTotals(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var VATAmountLine: Record "VAT Amount Line")
  • +local procedure CreateUSReportTotalLines()
  • +local procedure GetTaxSummarizedLines(var TempSalesTaxAmountLine: Record "Sales Tax Amount Line" temporary)
table/115 "Sales Cr.Memo Line" +3
  • +field(10000; "Package Tracking No."; Text[50])
  • +field(10001; "Retention Attached to Line No."; Integer)
  • +field(10002; "Retention VAT %"; Decimal)
table/1222 "Data Exch. Def" +2, 1 changed
  • +procedure EFTPaymentUpdateCodeunits(): Boolean
  • +local procedure CheckEFTExportFileType()
  • Δprocedure PositivePayUpdateCodeunits(): Boolean
table/222 "Ship-to Address" +3
  • +field(10004; "UPS Zone"; Code[2])
  • +field(27009; "SAT Address ID"; Integer)
  • +procedure GetSATPostalCode(): Code[20]
table/309 "No. Series Line" +3
  • +field(10000; "Series"; Code[10])
  • +field(10001; "Authorization Code"; Integer)
  • +field(10002; "Authorization Year"; Integer)
table/318 "Tax Area" +3
  • +field(10010; "Country/Region"; Option)
  • +field(10011; "Round Tax"; Option)
  • +field(10012; "Use External Tax Engine"; Boolean)
table/32 "Item Ledger Entry" +2, 1 changed
  • +key(Key22; "Item No.", "Variant Code", "Location Code", "Posting Date")
  • +key(Key23; "SystemModifiedAt")
  • Δkey(Key21; "Entry Type", "Item No.", "Variant Code", "Source Type", "Source No.", "Posting Date")
table/320 "Tax Jurisdiction" +3
  • +field(10010; "Country/Region"; Option)
  • +field(10020; "Print Order"; Integer)
  • +field(10030; "Print Description"; Text[30])
codeunit/367 "CheckManagement" +2
  • +local procedure GetVoidingDocumentType(OriginalDocumentType: Enum "Gen. Journal Document Type"): Enum "Gen. Journal Document Type"
  • +local procedure ShouldClearApplnVendorLedgerEntries(GenJournalLine: Record "Gen. Journal Line"): Boolean
codeunit/5987 "Serv-Posting Journals Mgt." +2
  • +local event OnPostSalesTaxToGLOnBeforeGenJnlPostLineRunWithCheck(var GenJnlLine: Record Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"; ServiceHeader: Record "Service Header"; var TempSalesTaxAmtLine: Record Microsoft.Finance.SalesTax."Sales Tax Amount Line" temporary)
  • +procedure RunOnPostSalesTaxToGLOnBeforeGenJnlPostLineRunWithCheck(var GenJnlLine: Record Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"; ServiceHeader2: Record "Service Header"; var TempSalesTaxAmtLine: Record Microsoft.Finance.SalesTax."Sales Tax Amount Line" temporary)
page/132 "Posted Sales Invoice" +2
  • +local event OnBeforeCalculateSalesTaxStatistics(var SalesInvoiceHeader: Record "Sales Invoice Header")
  • +local procedure UpdateSATCertificateFields()
page/134 "Posted Sales Credit Memo" +2
  • +local event OnBeforeCalculateSalesTaxStatistics(var SalesCrMemoHeader: Record "Sales Cr.Memo Header")
  • +local procedure UpdateSATCertificateFields()
page/232 "Apply Customer Entries" +1, 1 removed
  • +local event OnBeforeHandledChosenEntries(Type: Option Direct,GenJnlLine,SalesHeader; CurrentAmount: Decimal; CurrencyCode: Code[10]; PostingDate: Date; var AppliedCustLedgerEntry: Record "Cust. Ledger Entry"; var IsHandled: Boolean; var CustLedgEntry: Record "Cust. Ledger Entry"; GenJournalLine: Record "Gen. Journal Line"; var PaymentDiscountAmount: Decimal; var AppliedAmount: Decimal)
  • −local event OnBeforeHandledChosenEntries(Type: Option Direct,GenJnlLine,SalesHeader; CurrentAmount: Decimal; CurrencyCode: Code[10]; PostingDate: Date; var AppliedCustLedgerEntry: Record "Cust. Ledger Entry"; var IsHandled: Boolean; var CustLedgEntry: Record "Cust. Ledger Entry")
page/379 "Bank Acc. Reconciliation" +2
  • +procedure SetSharedTempTable(var TempBankAccReconciliationOnList: Record "Bank Acc. Reconciliation" temporary)
  • +local procedure RefreshSharedTempTable()
page/50 "Purchase Order" +1, 1 removed
  • +local procedure FillRemitToFields(ExecuteCurrPageUpdate: Boolean)
  • −local procedure FillRemitToFields()
page/51 "Purchase Invoice" +1, 1 removed
  • +local procedure FillRemitToFields(ExecuteCurrPageUpdate: Boolean)
  • −local procedure FillRemitToFields()
report/402 "Purchase Document - Test" +1, 1 removed
  • +procedure AddDimToTempLine(PurchLine: Record "Purchase Line"; var TempDimSetEntry: Record "Dimension Set Entry")
  • −procedure AddDimToTempLine(PurchLine: Record "Purchase Line")
report/5902 "Service Quote" +2
  • +local event OnAfterCalculateSalesTax(var ServiceHeaderParm: Record "Service Header"; var ServiceLine: Record "Service Line"; var SalesTaxAmountLineParm: Record "Sales Tax Amount Line")
  • +procedure RunOnAfterCalculateSalesTax(var ServiceHeaderParm: Record "Service Header"; var ServiceLine: Record "Service Line"; var SalesTaxAmountLineParm: Record "Sales Tax Amount Line")
table/1224 "Data Exch. Mapping" 2 changed
  • Δprocedure InsertRecForImport(DataExchDefCode: Code[20]; DataExchLineDefCode: Code[20]; TableId: Integer; NewName: Text[250]; DataExchNoFieldId: Integer; DataExchLineFieldId: Integer)
  • Δprocedure PositivePayUpdateCodeunits(): Boolean
table/125 "Purch. Cr. Memo Line" +2
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10022; "IRS 1099 Liable"; Boolean)
table/1829 "Consolidation Account" +2
  • +procedure PopulateAccountsForCA()
  • +procedure PopulateAccountsForUS()
table/204 "Unit of Measure" +2
  • +field(27000; "SAT UofM Classification"; Code[10])
  • +field(27001; "SAT Customs Unit"; Code[10])
table/242 "Source Code Setup" +2
  • +field(10002; "Bank Rec. Adjustment"; Code[10])
  • +field(10003; "Deposits"; Code[10])
table/273 "Bank Acc. Reconciliation" +2
  • +procedure GetTempCopy(var BankAccReconciliation: Record "Bank Acc. Reconciliation")
  • +procedure InsertRec(StatementType: Option; BankAccountNo: Code[20])
table/289 "Payment Method" +2
  • +field(27000; "SAT Payment Method Code"; Code[20])
  • +field(27001; "SAT Method of Payment"; Code[10])
table/312 "Purchases & Payables Setup" +2
  • +field(10000; "Combine Special Orders Default"; Option)
  • +field(10001; "Use Vendor's Tax Area Code"; Boolean)
table/5110 "Purchase Line Archive" +2
  • +field(10017; "Provincial Tax Area Code"; Code[20])
  • +field(10022; "IRS 1099 Liable"; Boolean)
table/5741 "Transfer Line" +2
  • +field(10003; "Custom Transit Number"; Text[30])
  • +field(10004; "SAT Customs Document Type"; Code[10])
table/5745 "Transfer Shipment Line" +2
  • +field(10003; "Custom Transit Number"; Text[30])
  • +field(10004; "SAT Customs Document Type"; Code[10])
table/8627 "Config. Setup" +1, 1 changed
  • +field(10010; "Tax Area Code"; Code[20])
  • Δfield(11; "Giro No."; Text[20])
table/9054 "Finance Cue" +2
  • +field(10120; "Bank Reconciliations to Post"; Integer)
  • +field(10121; "Bank Acc. Reconciliations"; Integer)
codeunit/1752 "Data Class. Eval. Data Country" +1
  • +local procedure ClassifyDIOT()
codeunit/1814 "Assisted Setup Subscribers" +1
  • +local procedure UpdateTaxSetupCompleted()
codeunit/229 "Document-Print" +1
  • +procedure PrintBankRecStmt(PostedBankRecHdr: Record "Posted Bank Rec. Header")
codeunit/5912 "ServLedgEntries-Post" 1 removed
  • −local procedure OnPreviewableLedgerEntry(TableNo: Integer; var IsPreviewable: Boolean)
codeunit/5986 "Serv-Amounts Mgt." +1
  • +procedure DivideAmount(QtyType: Option General,Invoicing,Shipping; ServLineQty: Decimal; var ServiceHeader: Record "Service Header"; var ServiceLine: Record "Service Line"; var TempVATAmountLine: Record "VAT Amount Line"; var TempVATAmountLineRemainder: Record "VAT Amount Line"; var TempServiceLineForSalesTax: Record "Service Line" temporary)
codeunit/815 "Sales Post Invoice" +1
  • +local procedure GetGenPostingSetup(var GenPostingSetup: Record "General Posting Setup"; SalesLine: Record "Sales Line")
codeunit/816 "Purch. Post Invoice" +1
  • +local procedure GetGenPostingSetup(var GenPostingSetup: Record "General Posting Setup"; PurchLine: Record "Purchase Line")
page/130 "Posted Sales Shipment" +1
  • +local procedure UpdateSATCertificateFields()
page/1803 "Assisted Company Setup Wizard" +1
  • +local procedure SetTaxAreaCodeVisible()
page/507 "Blanket Sales Order" 1 removed
  • −local procedure ActivateFields()
page/5743 "Posted Transfer Shipment" +1
  • +local procedure UpdateSATCertificateFields()
report/1322 "Standard Purchase - Order" +1
  • +local procedure FormatBreakdownAmounts(BreakdownLabel: Text; BreakdownAmount: Decimal): Text
report/1408 "Bank Acc. Recon. - Test" +1
  • +local event OnBeforeCopyFromBankAccLedgerEntryOnRemainingAmt(var BankAccReconciliation: Record "Bank Acc. Reconciliation"; var BankAccountLedgerEntry: Record "Bank Account Ledger Entry"; var OutstandingBankTransaction: Record "Outstanding Bank Transaction"; var TempOutstandingBankTransaction: Record "Outstanding Bank Transaction" temporary)
report/29 "Export Acc. Sched. to Excel" +1
  • +local procedure IncludeRow(AccSchedLine: Record "Acc. Schedule Line"): Boolean
report/35 "Document Entries" +1
  • +procedure SetExternal()
report/5900 "Service Order" +1
  • +local event OnAfterCalculateSalesTax(var ServiceHeader: Record "Service Header"; var ServiceLine: Record "Service Line"; var SalesTaxAmountLine: Record "Sales Tax Amount Line")
table/120 "Purch. Rcpt. Header" +1
  • +field(10005; "Ship-to UPS Zone"; Code[2])
table/1200 "Bank Export/Import Setup" 1 changed
  • Δfield(3; "Direction"; Option)
table/271 "Bank Account Ledger Entry" +1
  • +procedure ResetStatementFields(BankAccountNo: Code[20]; StatementNo: Code[20]; StatementType: Option)
table/3 "Payment Terms" +1
  • +field(27000; "SAT Payment Term"; Code[10])
table/319 "Tax Area Line" 1 changed
  • Δfield(4; "Calculation Order"; Integer)
table/327 "Tax Jurisdiction Translation" +1
  • +field(10020; "Print Description"; Text[30])
table/5108 "Sales Line Archive" +1
  • +field(10000; "Package Tracking No."; Text[50])
table/5800 "Item Charge" +1
  • +field(27000; "SAT Classification Code"; Code[10])
table/5902 "Service Line" +1
  • +procedure CalcServSalesTaxLines(var ServiceHeader: Record "Service Header"; var ServiceLine1: Record "Service Line")
table/6661 "Return Receipt Line" +1
  • +field(10000; "Package Tracking No."; Text[50])
table/84 "Acc. Schedule Name" +1
  • +field(10000; "Financial Period Description"; Text[80])
table/9 "Country/Region" +1
  • +field(27000; "SAT Country Code"; Code[10])
table/92 "Customer Posting Group" +1
  • +local procedure IsVATInUse(): Boolean
table/93 "Vendor Posting Group" +1
  • +local procedure IsVATInUse(): Boolean
enum/1222 "Data Exchange Definition Type" body changes only
enum/8 "Country/Region Address Format" body changes only
enum/85 "Acc. Schedule Line Totaling Type" body changes only
enum/89 "Gen. Journal Template Type" body changes only
page/1284 "Outstanding Bank Transactions" body changes only
page/131 "Posted Sales Shpt. Subform" body changes only
page/248 "VAT Registration Config" body changes only
page/9030 "Account Manager Activities" body changes only
page/9036 "Bookkeeper Activities" body changes only
permissionset/1001 "LOCAL" body changes only
permissionset/1002 "LOCAL READ" body changes only
permissionset/3602 "Payables Journals - Post" body changes only
permissionset/8824 "Payables Journals - Edit" body changes only
report/1005 "Job Journal - Test" body changes only
report/110 "Customer - Labels" body changes only
report/120 "Aged Accounts Receivable" body changes only
report/24 "Sales Taxes Collected" body changes only
report/319 "Payments on Hold" body changes only
report/322 "Aged Accounts Payable" body changes only

BC29 · country layer against W1 · Learn: local functionality · narrative reviewed (checked by Opus)

Overview

The Canadian layer is built on the sales tax model: Tax Area, Tax Jurisdiction, Tax Detail and Tax Group. Codeunit 398 “Sales Tax Calculate” gains events and an external tax engine hook. Sales-Post and Purch.-Post gain procedures that post sales tax to G/L, and Purch.-Post also calculates and posts provincial sales tax. On the service side, Serv-Documents Mgt. adds sales tax calculation events and Serv-Posting Journals Mgt. adds an event for posting sales tax to G/L. Purchases add provincial tax area codes, GST/HST fields and a Tax To Be Expensed field. Learn documents sales tax, GST/HST reporting, use and purchase tax, unrealized sales tax and sales payment discounts.

Banking adds deposits, bank reconciliation worksheets and EFT export. The EFT export has codeunits for ACH, RB, Cecoban and IAT formats, with fields on Bank Account, Customer/Vendor Bank Account and Gen. Journal Line. GIFI codes are added to G/L Account and documented on Learn, including export of balances for tax preparation software. Also added are many NA reports (purchases, inventory, jobs, resources), Yodlee bank feeds, Ceridian payroll import, PEPPOL 3.0 NA and a Shopify tax match feature.

The package also holds Mexican objects: CFDI e-invoicing with PAC and SAT catalogs, DIOT, and many fields on sales, transfer and company tables. The code summary does not tie these to Canadian requirements, and no Learn page in the input covers them.

Key points

  • Sales tax engine: Tax Area, Tax Jurisdiction and Tax Detail changes, with an external tax engine interface and codeunit 398 events.
  • GST/HST and provincial tax: GST/HST fields on G/L Entry, VAT Entry and Purchase Line, provincial tax area codes, and purchase/use tax handling.
  • GIFI codes on G/L Account with a GIFI Codes page, documented on Learn for tax filing export.
  • Deposits and bank reconciliation: Posted Deposit/Bank Rec. codeunits and permission sets, plus Navigate support for deposits.
  • EFT electronic payments in ACH, RB, Cecoban and IAT formats via Export Payments/EFT codeunits and bank account fields.
  • Check printing changes: Check Ledger Entry, Check Preview and Print Check Helper.
  • NA report set for purchases, inventory, jobs and resources, plus Yodlee, Ceridian payroll and a Shopify tax match feature.
  • Mexican CFDI, SAT and DIOT objects are also present in the code.

Narrative written by Sonnet from the code diff and 8 Learn page summaries. In numbers: Canada (CA) localization of Business Central in BC29: 612 objects of its own, 147 W1 objects changed (526 fields and 103 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 28 104 84
eServices 0 124 0
Bank 14 108 22
Sales 35 74 237
Purchases 24 42 66
Inventory 10 31 75
Service 8 31 0
Integration 0 24 0
(no namespace) 0 22 0
Projects 2 15 4
Foundation 10 6 26
Payroll 0 14 0
Utilities 6 5 0
Peppol 0 5 0
IO 4 0 1
Microsoft 0 4 0
Security 4 0 0
HumanResources 1 2 2
ExpenseAgent 0 1 0
FixedAssets 1 0 9

Finance

Core sales tax engine: events and external tax engine procedures in Sales Tax Calculate, the Sales Tax Journal, and an External Tax Engine interface. Fields are added to Tax Area, Tax Jurisdiction, Tax Detail, G/L Account (GIFI Code), VAT Entry (GST/HST) and journal lines. Gen. Jnl.-Post Line gains unrealized VAT and EFT checks.

Why: Learn documents sales tax with up to four jurisdictions per document, GST/HST reporting, unrealized sales tax and GIFI codes for tax filing.

Objects: codeunit/398 “Sales Tax Calculate”, table/318 “Tax Area”, table/320 “Tax Jurisdiction”, table/322 “Tax Detail”, table/15 “G/L Account”, table/254 “VAT Entry”, codeunit/12 “Gen. Jnl.-Post Line”, page/10101 “Sales Tax Journal” (own).

All 132 objects of Finance in the diff

eServices

Mexican CFDI e-invoicing objects: E-Invoice Mgt., PAC communication codeunits, SAT catalog pages, a CFDI wizard and export accounts.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/10145 “E-Invoice Mgt.” (own), codeunit/10146 “EInvoice Communication” (own), codeunit/27030 “SAT Utilities” (own), page/10457 “MX Electronic Invoice Setup” (own), page/27010 “Mexican CFDI Wizard” (own), codeunit/27000 “Export Accounts” (own), interface/einvoice communication v2 “EInvoice Communication V2” (own), page/10455 “PAC Web Services” (own).

All 124 objects of eServices in the diff

Bank

Adds EFT export (ACH, RB, Cecoban, IAT), deposits, bank reconciliation, and check changes. Bank Account gets many e-pay fields, and Check Ledger Entry and Bank Account Card are extended.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: table/270 “Bank Account”, codeunit/10098 “Generate EFT” (own), codeunit/10090 “Export Payments (ACH)” (own), codeunit/10091 “Export Payments (RB)” (own), codeunit/10331 “EFT Export Mgt” (own), table/272 “Check Ledger Entry”, page/370 “Bank Account Card”, report/10408 “Bank Reconciliation” (own).

All 122 objects of Bank in the diff

Sales

Sales tax calculation and posting on sales documents, with tax area, tax exemption and rounding fields. Adds NA statistics pages and post codeunits, and adds retention and CFDI/e-document fields on headers and lines.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/80 “Sales-Post”, table/36 “Sales Header”, table/37 “Sales Line”, codeunit/442 “Sales-Post Prepayments”, table/18 “Customer”, table/112 “Sales Invoice Header”, report/1306 “Standard Sales - Invoice”, page/10038 “Sales Order Stats.” (own).

All 109 objects of Sales in the diff

Purchases

Purchase posting adds provincial sales tax, GST/HST and expense or capitalize handling. Purchase Header, Line and Vendor get tax fields, and NA purchase reports and statistics are added. DIOT page extensions are included.

Why: Learn documents use tax and purchase tax setup for purchases from vendors without local presence.

Objects: codeunit/90 “Purch.-Post”, table/39 “Purchase Line”, table/38 “Purchase Header”, table/23 “Vendor”, codeunit/444 “Purchase-Post Prepayments”, table/288 “Vendor Bank Account”, page/10043 “Purchase Stats.” (own), report/10085 “Aged Accounts Payable NA” (own).

All 66 objects of Purchases in the diff

Inventory

Adds NA inventory reports, vendor locations, and SAT/CFDI fields on Item, Transfer Header and shipment tables.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: table/27 “Item”, table/5740 “Transfer Header”, table/5744 “Transfer Shipment Header”, report/10139 “Inventory Valuation” (own), report/10138 “Inventory to G/L Reconcile” (own), table/10013 “Vendor Location” (own), page/10013 “Vendor Locations” (own), table/5741 “Transfer Line”.

All 41 objects of Inventory in the diff

Service

Service documents get sales tax calculation events, external tax engine support and NA page and table extensions. Statistics pages and sales tax reports are added.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/5988 “Serv-Documents Mgt.”, codeunit/5987 “Serv-Posting Journals Mgt.”, codeunit/10288 “Serv-Documents Mgt. NA” (own), table/5902 “Service Line”, report/10470 “Service Order-Sales Tax” (own), page/10053 “Service Stats.” (own), report/5915 “Service Document - Test”.

All 39 objects of Service in the diff

Integration

Shopify tax match feature that matches order tax lines to tax areas and jurisdictions, with review pages, events and table extensions.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/30471 “Shpfy TMA Matcher” (own), codeunit/30472 “Shpfy Tax Area Builder” (own), page/30471 “Shpfy TMA Review” (own), tableextension/30470 “Shpfy TMA Shop” (own), pageextension/30470 “Shpfy TMA Shop Card” (own), codeunit/30470 “Shpfy TMA Register” (own), enum/30471 “Shpfy Tax Match Review Mode” (own).

All 24 objects of Integration in the diff

(no namespace)

Bank reconciliation and deposit permission sets, role profiles, bank reconciliation report, CFDI Subject to Tax objects and upgrade codeunits.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: report/10408 “Bank Reconciliation” (own), permissionset/27004 “BANKREC-POST” (own), permissionset/27002 “BANKDEPOSIT-POST” (own), codeunit/10124 “BankRec-Printed” (own), table/27008 “CFDI Subject to Tax” (own), profile/credit manager “CREDIT MANAGER” (own).

All 22 objects of (no namespace) in the diff

Projects

NA job and resource reports, plus extra budget fields on the Job Difference Buffer.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: table/1019 “Job Difference Buffer”, report/10210 “Job Actual to Budget (Cost)” (own), report/10211 “Job Actual to Budget (Price)” (own), report/10216 “Job List” (own), report/10220 “Job Cost Transaction Detail” (own).

All 17 objects of Projects in the diff

Foundation

Company Information gets Canada fields (QST Registration No., provincial tax area) and an IsCanada check. Source Code Setup and No. Series Line are extended, and Navigate finds deposits.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: table/79 “Company Information”, table/242 “Source Code Setup”, page/344 “Navigate”, table/309 “No. Series Line”, codeunit/229 “Document-Print”.

All 16 objects of Foundation in the diff

Payroll

Ceridian payroll import: setup table and page, import xmlport and codeunits, and permission set extensions.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/1666 “MS Ceridian Payroll import” (own), codeunit/1668 “MS Ceridian Payroll Mgt.” (own), page/1665 “MS - Ceridian Payroll Setup” (own), table/1665 “MS Ceridian Payroll Setup” (own), xmlport/1661 “Import Ceridian Payroll” (own).

All 14 objects of Payroll in the diff

Utilities

Document totals, copy document and assisted setup are adjusted for sales tax lines and retention. Adds a Data Dictionary report.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/57 “Document Totals”, codeunit/6620 “Copy Document Mgt.”, codeunit/1814 “Assisted Setup Subscribers”, page/1803 “Assisted Company Setup Wizard”, report/10315 “Data Dictionary” (own).

All 11 objects of Utilities in the diff

Peppol

PEPPOL 3.0 North America format with install, upgrade and subscriber codeunits, and an enum extension.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/37350 “PEPPOL30 NA” (own), codeunit/37353 “PEPPOL30 NA Subscribers” (own), enumextension/37350 “PEPPOL 3.0 Format NA” (own).

All 5 objects of Peppol in the diff

IO

Data exchange definitions are extended for EFT export, with checks of EFT file type and a new definition type enum value. Config. Setup gets a Tax Area Code.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: table/1222 “Data Exch. Def”, table/1224 “Data Exch. Mapping”, enum/1222 “Data Exchange Definition Type”, table/8627 “Config. Setup”.

All 4 objects of IO in the diff

Microsoft

B10 Adjustment table and page, and Declaration 347 and 349 label reports.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: table/10240 “B10 Adjustment” (own), page/10240 “B10 Adjustments” (own), report/14022 “Declaration 347 Labels” (own), report/14023 “Declaration 349 Labels” (own).

All 4 objects of Microsoft in the diff

Security

Local and payables journal permission sets are changed.

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”, permissionset/3602 “Payables Journals - Post”, permissionset/8824 “Payables Journals - Edit”.

All 4 objects of Security in the diff

HumanResources

Employee gets RFC No. and License No. fields. HR and Payroll role center pages are added.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: table/5200 “Employee”, page/36600 “Human Resources Role Center” (own), page/36601 “Payroll Role Center” (own).

All 3 objects of HumanResources in the diff

ExpenseAgent

Adds an Expense Event Subscriber CA codeunit.

Why: not explained by a Learn page in the input; the code shows the change, not the requirement.

Objects: codeunit/6916 “Expense Event Subscriber CA” (own).

All 1 objects of ExpenseAgent in the diff

FixedAssets

Fixed Asset gets vehicle and SAT transport fields.

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

Objects of its own

612 objects only this country has.

Other versions

  • BC30: 759 objects differ from W1 (526 fields, 104 events added)

Source: country layer of the Base Application compared with W1 of the same version (data/code/diffs/country/).