Switzerland (CH)
Switzerland (CH) localization of Business Central 29. It covers Swiss electronic payments (QR-bill, ESR, LSV+, SEPA with Swiss rules), Swiss VAT statements with ciphers and VAT exchange rates, delivery reminders, quote management, physical inventory, and bank and post code directories. It answers how Swiss payment, VAT and document features are built.
What CH changes in W1 118 objects, BC29
table/79 "Company Information"
- +
field(11000; "Area"; Code[10]) - +
field(11001; "Place of Dispatcher"; Code[10]) - +
field(11002; "Place of Receiver"; Code[10]) - +
field(11003; "Sales Authorized No."; Code[8]) - +
field(11004; "Purch. Authorized No."; Code[8]) - +
field(11005; "Company No."; Text[10]) - +
field(11006; "Special Agreement"; Text[20]) - +
field(11007; "Agency No."; Text[10]) - +
field(11008; "Tax Office Name"; Text[50]) - +
field(11009; "Tax Office Name 2"; Text[50]) - +
field(11010; "Tax Office Address"; Text[50]) - +
field(11011; "Tax Office Address 2"; Text[50]) - +
field(11012; "Tax Office City"; Text[50]) - +
field(11013; "Tax Office Post Code"; Code[20]) - +
field(11014; "Tax Office Country/Region Code"; Code[10]) - +
field(11015; "Tax Office County"; Text[30]) - +
field(11016; "Tax Office Area"; Option) - +
field(11019; "VAT Representative"; Text[45]) - +
field(11050; "Participant No."; Text[10]) - +
field(11100; "Statistic No."; Code[20]) - +
field(11101; "Control No."; Code[20]) - +
field(11102; "DVR Number"; Code[20]) - +
field(11103; "Tax Office Number"; Code[4]) - +
field(11500; "UID Number"; Text[30]) - +
field(11501; "BUR Number"; Text[30]) - Δ
field(11; "Giro No."; Text[20]) - Δ
field(14; "Bank Account No."; Text[30]) - Δ
field(38; "IBAN"; Code[50])
table/254 "VAT Entry"
- +
field(11000; "G/L Account No."; Code[20]) - +
field(11500; "VAT %"; Decimal) - +
field(11501; "Currency Factor"; Decimal) - +
field(11502; "Amount (FCY)"; Decimal) - +
field(11503; "Currency Code"; Code[10]) - +
field(11504; "Unadjusted Exchange Rate"; Boolean) - +
field(11510; "Base (FCY)"; Decimal) - +
field(11511; "Exchange Rate Adjustment"; Boolean) - +
key(Key14; "Posting Date", "Type", "Closed", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Reversed", "G/L Acc. No.", "VAT Reporting Date") - +
key(Key16; "Document Date") - +
key(Key17; "G/L Acc. No.") - +
key(Key18; "Type", "Closed", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Reversed", "Posting Date", "G/L Acc. No.", "VAT Reporting Date") - Δ
key(Key9; "Bill-to/Pay-to No.", "EU 3-Party Trade", "Type", "Posting Date") - Δ
key(Key10; "Closed by Entry No.") - Δ
key(Key11; "Type", "Closed", "VAT Bus. Posting Group", "VAT Prod. Posting Group", "Tax Jurisdiction Code", "Use Tax", "Posting Date", "G/L Acc. No.") - Δ
key(Key12; "Country/Region Code", "Posting Date") - Δ
key(Key13; "Gen. Prod. Posting Group", "Posting Date")
table/37 "Sales Line"
- +
field(3010501; "Customer Line Reference"; Integer) - +
field(3010801; "Level"; Integer) - +
field(3010802; "Position"; Integer) - +
field(3010803; "Quote Variant"; Option) - +
field(3010804; "Subtotal Net"; Decimal) - +
field(3010805; "Subtotal Gross"; Decimal) - +
field(3010806; "Title No."; Integer) - +
field(3010807; "Classification"; Code[20]) - +
local event OnInsertOnAfterCheckInventoryConflict(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line"; var SalesLine2: Record "Sales Line"; SalesLineBuffer: Record "Sales Line") - +
local event OnUpdateVATOnLinesOnBeforeModifySalesLine(var SalesLine: Record "Sales Line"; VATAmount: Decimal; var TempVATDiff: Decimal) - +
local event OnCalcVATAmountLinesOnAfterCalcShouldProcessRounding(var VATAmountLine: Record "VAT Amount Line"; Currency: Record Currency; var TempVATDiff: Decimal; var IsHandled: Boolean; var SalesLine: Record "Sales Line"; var TotalVATAmount: Decimal) - +
local event OnBeforeCalcPosition(var SalesLine: Record "Sales Line"; var Position: Integer; var IsHandled: Boolean) - +
procedure CalcPosition(FixedNumber: Integer) - +
local procedure CheckQuoteMgtPermission(): Boolean - −
local event OnInsertOnAfterCheckInventoryConflict(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line"; var SalesLine2: Record "Sales Line") - −
local event OnUpdateVATOnLinesOnBeforeModifySalesLine(var SalesLine: Record "Sales Line"; VATAmount: Decimal) - −
local event OnCalcVATAmountLinesOnAfterCalcShouldProcessRounding(var VATAmountLine: Record "VAT Amount Line"; Currency: Record Currency; var IsHandled: Boolean; var SalesLine: Record "Sales Line"; var TotalVATAmount: Decimal)
table/288 "Vendor Bank Account"
- +
field(11580; "Payment Fee Code"; Option) - +
field(3010541; "Clearing No."; Code[5]) - +
field(3010542; "Payment Form"; Option) - +
field(3010543; "ESR Type"; Option) - +
field(3010544; "Giro Account No."; Code[11]) - +
field(3010545; "ESR Account No."; Code[11]) - +
field(3010546; "Bank Identifier Code"; Code[21]) - +
field(3010547; "Balance Account No."; Code[20]) - +
field(3010548; "Invoice No. Startposition"; Integer) - +
field(3010549; "Invoice No. Length"; Integer) - +
field(3010550; "Debit Bank"; Code[20]) - +
key(Key2; "ESR Account No.") - +
procedure GetPaymentType(var PaymentType: Option; CurrencyCode: Code[10]): Boolean - Δ
field(14; "Bank Account No."; Text[30]) - Δ
field(24; "IBAN"; Code[50])
table/5107 "Sales Header Archive"
- +
field(3010801; "Quote Status"; Option) - +
field(3010802; "Probability %"; Decimal) - +
field(3010803; "Expected Order Inflow"; DateFormula) - +
field(3010804; "Followup Date"; Date) - +
field(3010805; "Decision Date"; Date) - +
field(3010806; "Competition"; Text[30]) - +
field(3010807; "Competitor Price"; Decimal) - +
field(3010808; "Filed Date"; Date) - +
field(3010809; "Filed User ID"; Code[50]) - +
field(3010810; "Quote valid until"; Text[30]) - +
key(Key5; "Document Type", "Bill-to Customer No.") - +
key(Key6; "Incoming Document Entry No.") - Δ
key(Key2; "Document Type", "No.", "Quote Status") - Δ
key(Key3; "Document Type", "Sell-to Customer No.", "Bill-to Customer No.") - Δ
key(Key4; "Document Type", "Sell-to Customer No.")
codeunit/597 "Exch. Rate Adjmt. Subscribers"
- +
local procedure OnAfterAdjustCustomerLedgerEntryOnAfterCalcAdjmtAmount(CustLedgerEntry: Record "Cust. Ledger Entry"; ExchRateAdjmtParameters: Record "Exch. Rate Adjmt. Parameters"; AdjmtAmount: Decimal; Application: Boolean; var ShouldExit: Boolean) - +
local procedure OnAfterAdjustVendorLedgerEntryOnAfterCalcAdjmtAmount(VendLedgerEntry: Record "Vendor Ledger Entry"; ExchRateAdjmtParameters: Record "Exch. Rate Adjmt. Parameters"; AdjmtAmount: Decimal; Application: Boolean; var ShouldExit: Boolean) - +
local procedure CalculateBilMoG(var AdjAmt2: Decimal; RemAmtLCY: Decimal; OrigRemAmtLCY: Decimal; DueDate: Date; DueDateTo: Date): Boolean - +
local procedure CustCalcRemOrigAmtLCY(CustLedgEntry2: Record "Cust. Ledger Entry"; PostingDate: Date): Decimal - +
local procedure VendCalcRemOrigAmtLCY(VendLedgEntry2: Record "Vendor Ledger Entry"; PostingDate: Date): Decimal - +
local procedure OnBeforeAdjustGLAccountsAndVATEntries(ExchRateAdjmtParameters: Record "Exch. Rate Adjmt. Parameters"; var Currency: Record Currency; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line") - +
local procedure AdjustVATEntries(var ExchRateAdjmtParameters: Record "Exch. Rate Adjmt. Parameters" temporary; var Currency: Record Currency; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line") - +
local procedure ProcessVATEntryAdjustment(var VATEntry: Record "VAT Entry"; ExchRateAdjmtParameters: Record "Exch. Rate Adjmt. Parameters"; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line") - +
local procedure GetGLSetup() - +
local procedure GetAdditionalReportingCurrency(): Code[10] - +
local procedure AdjustVATRate(VATEntry: Record "VAT Entry"; ExchRateAdjmtParameters: Record "Exch. Rate Adjmt. Parameters"; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line") - +
local procedure UpdateGLRegToVATEntryNo(var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line") - +
local procedure PostGenJnlLine(var GenJnlLine: Record "Gen. Journal Line"; var DimSetEntry: Record "Dimension Set Entry"; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line"; ExchRateAdjmtParameters: Record "Exch. Rate Adjmt. Parameters"): Integer - +
local procedure GetGlobalDimVal(GlobalDimCode: Code[20]; var DimSetEntry: Record "Dimension Set Entry"): Code[20]
table/36 "Sales Header"
- +
field(3010802; "Probability %"; Decimal) - +
field(3010803; "Expected Order Inflow"; DateFormula) - +
field(3010804; "Followup Date"; Date) - +
field(3010805; "Decision Date"; Date) - +
field(3010806; "Competition"; Text[30]) - +
field(3010807; "Competitor Price"; Decimal) - +
field(3010808; "Filed Date"; Date) - +
field(3010809; "Filed User ID"; Code[50]) - +
field(3010810; "Quote valid until"; Text[30]) - +
local procedure UpdateDefaultCompressPrepaymentValue() - +
procedure CheckIfCompressPrepaymentCanBeUsed() - Δ
field(60; "Amount"; Decimal) - Δ
field(5752; "Completely Shipped"; Boolean)
table/263 "Intrastat Jnl. Line"
- +
key(Key3; "Type", "Country/Region Code", "Tariff No.", "Transaction Type", "Transport Method", "Area", "Entry/Exit Point", "Transaction Specification", "Country/Region of Origin Code", "Partner VAT ID") - +
key(Key4; "Internal Ref. No.") - +
key(Key8; "Document No.") - Δ
field(14; "Amount"; Decimal) - Δ
field(15; "Quantity"; Decimal) - Δ
field(18; "Statistical Value"; Decimal) - Δ
field(22; "Total Weight"; Decimal) - Δ
key(Key5; "Journal Template Name", "Journal Batch Name", "Type", "Internal Ref. No.") - Δ
key(Key6; "Journal Template Name", "Journal Batch Name", "Type", "Country/Region Code", "Tariff No.", "Transaction Type", "Transport Method", "Area", "Transaction Specification", "Country/Region of Origin Code", "Partner VAT ID") - Δ
key(Key7; "Type", "Internal Ref. No.")
table/5108 "Sales Line Archive"
- +
field(3010501; "Customer Line Reference"; Integer) - +
field(3010801; "Level"; Integer) - +
field(3010802; "Position"; Integer) - +
field(3010803; "Quote Variant"; Option) - +
field(3010804; "Subtotal net"; Decimal) - +
field(3010805; "Subtotal gross"; Decimal) - +
field(3010806; "Title No."; Integer) - +
field(3010807; "Classification"; Code[20]) - +
key(Key7; "Document No.", "Document Type", "Doc. No. Occurrence", "Version No.") - Δ
key(Key6; "Document Type", "Blanket Order No.", "Blanket Order Line No.")
table/21 "Cust. Ledger Entry"
- +
field(3010831; "LSV No."; Integer) - +
key(Key24; "Salesperson Code") - +
key(Key25; "SystemModifiedAt") - Δ
key(Key18; "Posting Date", "Customer No.") - Δ
key(Key19; "LSV No.", "Customer No.") - Δ
key(Key20; "Document Type", "Posting Date") - Δ
key(Key21; "Document Type", "Customer No.", "Open", "Due Date") - Δ
key(Key22; "Customer Posting Group") - Δ
key(Key23; "Document Type", "Open", "Posting Date", "Closed at Date")
table/81 "Gen. Journal Line"
- +
field(11580; "Payment Fee Code"; Option) - +
field(3010531; "ESR Information"; Text[100]) - +
field(3010541; "Reference No."; Code[35]) - +
field(3010543; "Checksum"; Code[2]) - +
field(3010544; "ESR/ISR Coding Line"; Code[70]) - +
field(3010545; "Debit Bank"; Code[20]) - +
field(3010546; "Clearing"; Code[5]) - +
procedure ChangePostingDateWarning()
codeunit/1240 "Read Data Exch. from File"
- +
local procedure XMLSplitPaymentPerInvoices(var TempBlob: Codeunit "Temp Blob") - +
local procedure XMLCheckInvoices(InvoiceXMLNodeList: DotNet XmlNodeList; AmountNodeName: Text; CurrencyAttributeName: Text; PaymentAmount: Decimal; PaymentCurrency: Text): Boolean - +
local procedure XMLRemoveAllChildNodes(var XmlDocument: DotNet XmlDocument; ChildNodeName: Text) - +
local procedure XMLFindFirstChild(var XMLNode: DotNet XmlNode; XmlDocument: DotNet XmlDocument; ChildName: Text): Boolean - +
local procedure XMLImportAppendChild(var XmlDocument: DotNet XmlDocument; ParentXMLNode: DotNet XmlNode; XMLNode: DotNet XmlNode) - +
local procedure XMLReadAmountNodeWithAttributeText(var Amount: Decimal; var AttributeText: Text; XmlDocument: DotNet XmlDocument; NodeName: Text; AttributeName: Text): Boolean - +
local procedure XMLWriteAmountNode(XmlDocument: DotNet XmlDocument; NodeName: Text; Amount: Decimal): Boolean
codeunit/13 "Gen. Jnl.-Post Batch"
- +
local event OnBeforeCheckPmtApplnAllowed(var PaymentApplication: Boolean; var PaymentBalanceVAT: Boolean; GenJournalLine: Record "Gen. Journal Line"; var IsHandled: Boolean) - +
local procedure CheckCorrection(GenJournalLine: Record "Gen. Journal Line"; var PaymentApplication: Boolean; var PaymentBalanceVAT: Boolean; LastGenJournalLine: Record "Gen. Journal Line") - +
local procedure GetGenJnlLineParameters(var PaymentApplication: Boolean; var PaymentBalanceVAT: Boolean; GenJnlLine: Record "Gen. Journal Line") - +
local procedure CheckPmtApplnAllowed(var PaymentApplication: Boolean; var PaymentBalanceVAT: Boolean; GenJournalLine: Record "Gen. Journal Line") - +
local procedure IsPaymentApplication(GenJnlLine: Record "Gen. Journal Line"): Boolean - +
local procedure IsPaymentBalanceVAT(GenJnlLine: Record "Gen. Journal Line"): Boolean - −
local procedure CheckCorrection(GenJournalLine: Record "Gen. Journal Line")
table/113 "Sales Invoice Line"
- +
field(3010501; "Customer Line Reference"; Integer) - +
field(3010801; "Quote-Level"; Integer) - +
field(3010802; "Position"; Integer) - +
field(3010804; "Subtotal net"; Decimal) - +
field(3010805; "Subtotal gross"; Decimal) - +
field(3010806; "Title No."; Integer) - +
field(3010807; "Classification"; Code[20])
table/115 "Sales Cr.Memo Line"
- +
field(3010501; "Customer Line Reference"; Integer) - +
field(3010801; "Quote-Level"; Integer) - +
field(3010802; "Position"; Integer) - +
field(3010804; "Subtotal net"; Decimal) - +
field(3010805; "Subtotal gross"; Decimal) - +
field(3010806; "Title No."; Integer) - +
field(3010807; "Classification"; Code[20])
table/181 "Posted Gen. Journal Line"
- +
field(11580; "Payment Fee Code"; Option) - +
field(3010531; "ESR Information"; Text[100]) - +
field(3010541; "Reference No."; Code[35]) - +
field(3010543; "Checksum"; Code[2]) - +
field(3010544; "ESR/ISR Coding Line"; Code[70]) - +
field(3010545; "Debit Bank"; Code[20]) - +
field(3010546; "Clearing"; Code[5])
table/83 "Item Journal Line"
- +
field(11500; "Customer No."; Code[20]) - +
field(11501; "Ship-to Address Code"; Code[10]) - +
field(11502; "Customer Salesperson Code"; Code[20]) - +
field(3010801; "Quote-Level"; Integer) - +
field(3010802; "Position"; Integer) - +
field(3010805; "Title No."; Integer) - +
field(3010806; "Classification"; Code[20])
page/475 "VAT Statement Preview Line"
- +
local event OnBeforeCalcColumnValue(VATStmtLine2: Record "VAT Statement Line"; var TotalAmount: Decimal; var TotalEmpty: Decimal; var TotalBase: Decimal; var TotalUnrealizedAmount: Decimal; var TotalUnrealizedBase: Decimal; Level: Integer; var IsHandled: Boolean; Selection: Enum "VAT Statement Report Selection"; PeriodSelection: Enum "VAT Statement Report Period Selection"; PrintInIntegers: Boolean; UseAmtsInAddCurr: Boolean; var VATStatementLine: Record "VAT Statement Line") - +
local procedure CalcColumnValue(VATStmtLine2: Record "VAT Statement Line"; var TotalAmount: Decimal; var TotalEmpty: Decimal; var TotalBase: Decimal; var TotalUnrealizedAmount: Decimal; var TotalUnrealizedBase: Decimal; Level: Integer) - +
procedure DrillDownOnEntries() - −
local event OnBeforeCalcColumnValue(VATStatementLine: Record "VAT Statement Line"; var TotalAmount: Decimal; Level: Integer; var IsHandled: Boolean; Selection: Enum "VAT Statement Report Selection"; PeriodSelection: Enum "VAT Statement Report Period Selection"; PrintInIntegers: Boolean; UseAmtsInAddCurr: Boolean) - −
local event OnUpdateFormOnBeforeVatStatementInitializeRequest(var NewVATStatementName: Record "VAT Statement Name"; var NewVATStatementLine: Record "VAT Statement Line"; NewSelection: Enum "VAT Statement Report Selection"; NewPeriodSelection: Enum "VAT Statement Report Period Selection"; NewPrintInIntegers: Boolean; NewUseAmtsInAddCurr: Boolean) - −
local procedure CalcColumnValue(VATStatementLine: Record "VAT Statement Line"; var ColumnValue: Decimal; Level: Integer)
table/1226 "Payment Export Data"
- +
field(11500; "Swiss Payment Form"; Option) - +
field(11501; "Swiss Payment Type"; Option) - +
procedure SetSwissExport(NewSwissExport: Boolean) - +
local procedure FillSwissFieldsFromCustomerBankAccount(CustomerBankAccount: Record "Customer Bank Account") - +
local procedure FillSwissFieldsFromVendorBankAccount(VendorBankAccount: Record "Vendor Bank Account") - Δ
field(31; "Sender Bank Account No."; Text[50])
table/38 "Purchase Header"
- +
field(11000; "Registration No."; Text[20]) - +
field(3010541; "Reference No."; Code[35]) - +
field(3010542; "Bank Code"; Code[20]) - +
field(3010543; "Checksum"; Code[2]) - +
field(3010544; "ESR/ISR Coding Line"; Code[70]) - +
field(3010545; "ESR Amount"; Decimal)
table/98 "General Ledger Setup"
- +
field(11003; "Currency Code For EURO"; Code[10]) - +
field(11004; "Post Pmt.Disc Tol. to Pmt.Disc"; Boolean) - +
field(11011; "Sales VAT Advance Notif. Nos."; Code[20]) - +
procedure RoundPmtDiscLCY(InvoiceAmt: Decimal; OrigPmtDiscAmt: Decimal; CurrCode: Code[10]): Decimal - Δ
field(49; "Adjust for Payment Disc."; Boolean) - Δ
field(151; "Prepayment Unrealized VAT"; Boolean)
codeunit/1221 "SEPA CT-Fill Export Buffer"
- +
local procedure GetBatchBooking(SwissExport: Boolean; BankExportImportSetup: Record "Bank Export/Import Setup"; LineCount: Integer): Boolean - +
local procedure ValidatePaymentExportData(var PaymentExportData: Record "Payment Export Data"; var GenJnlLine: Record "Gen. Journal Line"; SwissExport: Boolean) - +
local procedure ValidateRecipientBankAccNo(var PaymentExportData: Record "Payment Export Data"; var GenJournalLine: Record "Gen. Journal Line"; SwissExport: Boolean) - +
local procedure ValidateSEPAChargeBearer(var PaymentExportData: Record "Payment Export Data"; GenJournalLine: Record "Gen. Journal Line"; SwissExport: Boolean) - −
local procedure ValidatePaymentExportData(var PaymentExportData: Record "Payment Export Data"; var GenJnlLine: Record "Gen. Journal Line")
table/111 "Sales Shipment Line"
- +
field(3010501; "Customer Line Reference"; Integer) - +
field(3010801; "Quote-Level"; Integer) - +
field(3010802; "Position"; Integer) - +
field(3010806; "Title No."; Integer) - +
field(3010807; "Classification"; Code[20])
table/15 "G/L Account"
- +
field(11000; "VAT Amount"; Decimal) - +
field(3010536; "Currency Code"; Code[10]) - +
field(3010537; "Balance (FCY)"; Decimal) - +
field(3010538; "Balance at Date (FCY)"; Decimal) - +
field(3010539; "Movement (FCY)"; Decimal)
table/27 "Item"
- +
field(11500; "No Stockkeeping"; Boolean) - +
field(11501; "Location Code"; Code[10]) - +
field(11503; "Sale blocked"; Boolean) - +
field(11504; "Purchase blocked"; Boolean) - +
field(11505; "Inventory Price"; Decimal)
table/287 "Customer Bank Account"
- +
field(3010831; "Giro Account No."; Code[11]) - +
procedure GetPaymentType(var SwissPaymentType: Option " ","1","2.1","2.2","3","4","5","6"; CurrencyCode: Code[10]): Boolean - Δ
field(13; "Bank Branch No."; Code[5]) - Δ
field(14; "Bank Account No."; Text[30]) - Δ
field(24; "IBAN"; Code[50])
table/311 "Sales & Receivables Setup"
- +
field(11501; "Line Amt. Round LCY"; Decimal) - +
field(11502; "Apply Inv. Round. Amt. To VAT"; Boolean) - +
field(11510; "Shipment on Ship and Invoice"; Boolean) - +
field(11511; "Automatic Interaction Log"; Boolean) - +
field(3010801; "Automatic recalculate Quotes"; Boolean)
table/5109 "Purchase Header Archive"
- +
field(11000; "Registration No."; Text[20]) - +
key(Key5; "Incoming Document Entry No.") - Δ
key(Key2; "Document Type", "Buy-from Vendor No.", "Pay-to Vendor No.") - Δ
key(Key3; "Document Type", "Buy-from Vendor No.") - Δ
key(Key4; "Document Type", "Pay-to Vendor No.")
codeunit/2 "Company-Initialize"
- +
procedure GetSwissSEPACT09Code(): Code[20] - +
procedure GetSwissSEPACT09Name(): Text[100] - +
procedure GetSwissSEPADD08Code(): Code[20] - +
procedure GetSwissSEPADD08Name(): Text[100]
codeunit/80 "Sales-Post"
- +
local event OnBeforeUpdatePostingDescriptionOnInvoice(var SalesHeader: Record "Sales Header"; PostingNo: Code[20]; var ModifyHeader: Boolean; var IsHandled: Boolean) - +
procedure UpdateVATDiff(SalesHeader: Record "Sales Header"; var TempCombinedSalesLine: Record "Sales Line" temporary; var TempVATAmountLine: Record "VAT Amount Line" temporary) - +
local procedure UpdatePostingDescriptionOnInvoice(PostingNo: Code[20]; var SalesHeader: Record "Sales Header"; var ModifyHeader: Boolean) - +
local procedure CheckQuoteMgtPermission(): Boolean
report/393 "Suggest Vendor Payments"
- +
procedure InitializeRequest2(LastPmtDate: Date; FindPmtDisc: Boolean; NewAvailableAmount: Decimal; NewSkipExportedPayments: Boolean; NewPostingDate: Date; NewStartDocNo: Code[20]; NewSummarizePerVend: Boolean; BalAccType: Option "G/L Account",Customer,Vendor,"Bank Account"; BalAccNo: Code[20]; BankPmtType: Option; NewExcludeCreditMemos: Boolean) - +
local procedure SetTempPaymentBufferSummarized(var TempPayableVendorLedgerEntrySum: Record "Payable Vendor Ledger Entry" temporary; var TempPayableVendorLedgerEntry: Record "Payable Vendor Ledger Entry" temporary) - +
local procedure GetVendorEntryNoSummarized(var TempPayableVendorLedgerEntrySum: Record "Payable Vendor Ledger Entry" temporary; TempPayableVendorLedgerEntry: Record "Payable Vendor Ledger Entry" temporary): Integer - +
local procedure FilterPayableVendorEntriesSummarized(var TempPayableVendorLedgerEntrySum: Record "Payable Vendor Ledger Entry" temporary; TempPayableVendorLedgerEntry: Record "Payable Vendor Ledger Entry" temporary)
table/325 "VAT Posting Setup"
- +
field(6201; "Non-Ded. Sales VAT Account"; Code[20]) - +
field(26100; "Sales VAT Stat. Cipher"; Code[20]) - +
field(26101; "Purch. VAT Stat. Cipher"; Code[20]) - Δ
field(6; "Adjust for Payment Discount"; Boolean)
table/475 "Vendor Payment Buffer"
- +
field(3010541; "Reference No."; Code[35]) - +
local event OnCopyFieldsToGenJournalLine(VendorPaymentBufferSource: Record "Vendor Payment Buffer"; var GenJournalLineTarget: Record "Gen. Journal Line"; PaymentBufferSource: Record "Vendor Payment Buffer") - Δ
local event OnCopyFieldsFromVendorLedgerEntry(VendorLedgerEntrySource: Record "Vendor Ledger Entry"; var VendorPaymentBufferTarget: Record "Vendor Payment Buffer") - −
local event OnCopyFieldsToGenJournalLine(PaymentBufferSource: Record "Vendor Payment Buffer"; var GenJournalLineTarget: Record "Gen. Journal Line")
codeunit/1223 "SEPA CT-Check Line"
- +
local procedure AddFieldEmptyError(var GenJnlLine: Record "Gen. Journal Line"; TableCaption2: Text; FieldCaption: Text; FieldCaption2: Text; KeyValue: Text) - +
local procedure CheckSwissExportVendorBankPaymentType(GenJnlLine: Record "Gen. Journal Line"; VendorBankAccount: Record "Vendor Bank Account"; var SwissIgnoreIBAN: Boolean) - +
local procedure CheckSwissExportCustomerBankPaymentType(GenJnlLine: Record "Gen. Journal Line"; CustomerBankAccount: Record "Customer Bank Account")
codeunit/1261 "Imp. SEPA CAMT Bank Rec. Lines"
- +
procedure SetImportType(NewImportType: Option W1,CH053,CH054) - +
procedure InitNodeText() - +
procedure InitBalTypeDescriptor()
codeunit/229 "Document-Print"
- +
procedure PrintSalesVATAdvNotAccProof(VATStatementName: Record "VAT Statement Name") - +
procedure PrintVATStatementSchedule(VATStatementName: Record "VAT Statement Name") - +
local procedure CheckQuoteMgtPermission(): Boolean
codeunit/5063 "ArchiveManagement"
- +
procedure ArchSalesWithQuote(var SalesHeader: Record "Sales Header"; ArchiveType: Option) - +
procedure ArchSalesNoConfirmWithQuote(var SalesHeader: Record "Sales Header"; ArchiveType: Option) - +
procedure ResetQuoteStatus(SalesHeader: Record "Sales Header")
page/425 "Vendor Bank Account Card"
- +
procedure UpdateView() - +
local procedure IBANCheck() - +
local procedure UpdateSuggestedSwissPaymentType()
report/596 "Exch. Rate Adjustment"
- +
procedure SetValuationMethod(NewValuationMethod: Integer; NewDueDateTo: Date; NewValuationPeriodEndDate: Date) - +
procedure SetAdjustVATEntries(NewAdjVATEntries: Boolean) - +
local procedure UpdateControls()
table/1383 "Vendor Templ."
- +
field(11000; "Registration No."; Text[20]) - +
field(5055250; "Liq. Payment Terms Code"; Code[10]) - Δ
field(14; "Our Account No."; Text[20])
table/312 "Purchases & Payables Setup"
- +
field(5005230; "Arch. Orders and Ret. Orders"; Boolean) - +
field(5005232; "Archiving Purchase Quote"; Option) - +
field(5005233; "Archiving Blanket Purch. Order"; Boolean)
table/32 "Item Ledger Entry"
- +
field(11500; "Customer No."; Code[20]) - +
field(11501; "Ship-to Address Code"; Code[10]) - +
field(11502; "Customer Salesperson Code"; Code[20])
table/5600 "Fixed Asset"
- +
field(11101; "BWR Depr. Book Code"; Code[10]) - +
field(11102; "Prem Depr. %"; Integer) - +
field(11103; "Prem. Depr. Amount"; Decimal)
table/5821 "Item Statistics Buffer"
- +
field(11500; "Inv. Valuation Actual"; Decimal) - +
field(11501; "Inv. Valuation Exp."; Decimal) - +
field(11502; "Inv. Posted to GL"; Decimal)
table/596 "Exch. Rate Adjmt. Parameters"
- +
field(11000; "Valuation Method"; Integer) - +
field(11001; "Valuation Period End Date"; Date) - +
field(11002; "Due Date To"; Date)
table/743 "VAT Report Setup"
- +
field(11006; "Company Name"; Text[100]) - +
field(11007; "Company Address"; Text[30]) - +
field(11008; "Company City"; Text[30])
codeunit/104000 "Upgrade - BaseApp"
- +
local procedure UpgradeGLAmountFCYAndCurrencyCode() - −
local procedure UpgradeICGLAccountNoInStandardGeneralJournalLine()
codeunit/365 "Format Address"
- +
procedure TaxOffice(var AddrArray: array[8] of Text[100]; var CompanyInfo: Record "Company Information") - +
local procedure SetCountyTextForDACH(var CountyText: Text[50]; County: Text[50]; CountryCode: Code[10])
codeunit/90 "Purch.-Post"
- +
local event OnBeforeUpdPostingDescriptiononInvoice(var PurchaseHeader: Record "Purchase Header"; PostingNo: Code[20]; var ModifyHeader: Boolean; var IsHandled: Boolean) - +
local procedure UpdPostingDescriptiononInvoice(PostingNo: Code[20]; var PurchaseHeader: Record "Purchase Header"; var ModifyHeader: Boolean)
page/344 "Navigate"
- +
local event OnAfterSetTrackingFiltersOnBeforeFindTrackingRecords(var ItemTrackingFilters: Record Item) - −
local event OnFindTrackingRecordsOnAfterSetTrackingFilters(var ItemTrackingFilters: Record Item)
page/46 "Sales Order Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat(Text: Text[1024])
page/47 "Sales Invoice Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat()
page/508 "Blanket Sales Order Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat()
page/5160 "Sales Order Archive Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat(Text: Text[1024])
page/5163 "Sales Quote Archive Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat(Text: Text[1024])
page/6631 "Sales Return Order Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat()
page/95 "Sales Quote Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat(Text: Text[1024])
page/96 "Sales Cr. Memo Subform"
- +
local procedure DescriptionOnFormat() - +
local procedure LineAmountOnFormat(Text: Text[1024])
report/208 "Sales - Shipment"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/210 "Blanket Sales Order"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/404 "Purchase - Quote"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/405 "Order"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/406 "Purchase - Invoice"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/407 "Purchase - Credit Memo"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/408 "Purchase - Receipt"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/410 "Blanket Purchase Order"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/6631 "Return Order Confirmation"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
report/6641 "Return Order"
- +
procedure PrepareHeader() - +
procedure PrepareFooter()
table/1207 "Direct Debit Collection"
- +
field(3010830; "Source Table ID"; Integer) - +
procedure IdentifyErrorGenJnlBatch(var GenJnlLine: Record "Gen. Journal Line")
table/1381 "Customer Templ."
- +
field(5055250; "Liq. Payment Terms Code"; Code[10]) - Δ
field(14; "Our Account No."; Text[20])
table/1382 "Item Templ."
- +
field(11501; "Location Code"; Code[10]) - +
field(11505; "Inventory Price"; Decimal)
table/225 "Post Code"
- +
field(11502; "Priority"; Code[10]) - +
key(Key5; "Priority")
table/23 "Vendor"
- +
field(11000; "Registration No."; Text[20]) - +
field(5055250; "Liq. Payment Terms Code"; Code[10])
table/313 "Inventory Setup"
- +
field(5005350; "Phys. Inv. Order Nos."; Code[20]) - +
field(5005352; "Posted Phys. Inv. Order Nos."; Code[20])
table/330 "Currency Exchange Rate"
- +
field(11500; "VAT Exch. Rate Amount"; Decimal) - +
field(11501; "Relational VAT Exch. Rate Amt"; Decimal)
table/39 "Purchase Line"
- +
field(5005396; "Order No. (Old)"; Code[20]) - +
field(5005397; "Order Line No. (Old)"; Integer)
table/5110 "Purchase Line Archive"
- +
key(Key6; "Document No.", "Document Type", "Doc. No. Occurrence", "Version No.") - Δ
key(Key5; "Document Type", "Blanket Order No.", "Blanket Order Line No.")
table/85 "Acc. Schedule Line"
- Δ
field(12; "Dimension 1 Filter"; Code[20]) - Δ
field(13; "Dimension 2 Filter"; Code[20])
codeunit/12 "Gen. Jnl.-Post Line"
- +
local procedure IsVendorPayableAccount(GLAccNo: Code[20]): Boolean
codeunit/1233 "SEPA DD-Check Line"
- Δ
local procedure AddFieldEmptyError(var DirectDebitCollectionEntry: Record "Direct Debit Collection Entry"; TableCaption2: Text; FieldCaption: Text; KeyValue: Text)
codeunit/1901 "Report Selection Mgt."
- +
procedure InitDACHReportSelection()
codeunit/426 "Payment Tolerance Management"
- +
procedure SetBatchMode(NewBatchMode: Boolean)
codeunit/5626 "FA General Report"
- +
procedure SetExclReclEntries(ExclReclEntries1: Boolean)
codeunit/6 "Fiscal Year-Close"
- +
procedure AdjustAllowPostingFrom()
codeunit/884 "ReadSoft OCR Master Data Sync"
- Δ
local event OnBeforeSendRequest(var Body: Text)
page/131 "Posted Sales Shpt. Subform"
- +
local procedure DescriptionOnFormat()
page/135 "Posted Sales Cr. Memo Subform"
- +
local procedure DescriptionOnFormat()
page/256 "Payment Journal"
- +
local procedure RunReportWithCurrentRec(ReportID: Integer)
page/471 "VAT Product Posting Groups"
- +
procedure GetSelectionFilter(): Text
table/122 "Purch. Inv. Header"
- +
field(11000; "Registration No."; Text[20])
table/124 "Purch. Cr. Memo Hdr."
- +
field(11000; "Registration No."; Text[20])
table/17 "G/L Entry"
- +
field(3010536; "Amount (FCY)"; Decimal)
table/179 "Reversal Entry"
- +
field(3010536; "Amount (FCY)"; Decimal)
table/18 "Customer"
- +
field(5055250; "Liq. Payment Terms Code"; Code[10])
table/242 "Source Code Setup"
- +
field(5005270; "Delivery Reminder"; Code[10])
table/25 "Vendor Ledger Entry"
- +
field(3010541; "Reference No."; Code[30])
table/256 "VAT Statement Line"
- +
field(26100; "VAT Statement Cipher"; Code[20])
table/257 "VAT Statement Name"
- +
field(11000; "Sales VAT Adv. Notification"; Boolean)
table/260 "Tariff Number"
- Δ
field(2; "Description"; Text[250])
table/274 "Bank Acc. Reconciliation Line"
- +
field(11500; "ESR Reference No."; Text[100])
table/285 "Transaction Specification"
- Δ
field(2; "Text"; Text[200])
table/324 "VAT Product Posting Group"
- +
procedure LookupVATProductPostingGroupFilter(var FilterString: Text): Boolean
table/372 "Payment Buffer"
- +
field(3010541; "Reference No."; Code[35])
table/5611 "Depreciation Book"
- Δ
field(33; "Mark Errors as Corrections"; Boolean)
table/746 "VAT Reports Configuration"
- Δ
field(1; "VAT Report Type"; Option)
xmlport/1000 "SEPA CT pain.001.001.03"
- +
local procedure UpdateRemittanceInfo(PaymentExportData: Record "Payment Export Data")
xmlport/1001 "SEPA CT pain.001.001.09"
- +
local procedure UpdateRemittanceInfo(PaymentExportData: Record "Payment Export Data")
BC29 · country layer against W1 · Learn: local functionality · narrative reviewed (checked by Opus)
Overview
The Swiss layer centers on payments. QR-bill objects (codeunits 11502, 11512 to 11514 and 11516 to 11519, pages 11510 to 11518) create, scan, decode and print QR-bills and handle incoming documents. ESR (EsrMgt), LSV+ (LSVMgt, LSV journal pages) and DTA (DtaMgt) cover the other Swiss payment methods. Swiss rules are added to SEPA credit transfer and direct debit export, and to CAMT 053 and 054 import. Fields on vendor and customer bank accounts, journal lines and purchase headers carry ESR, giro, clearing and payment form data.
In finance, the Swiss VAT statement uses cipher codes (pages 11023 "VAT Cipher Codes" and 11024 "VAT Cipher Setup", plus cipher fields on VAT posting setup and VAT statement lines). The layer also adds codeunit 26100 "Update VAT-CH". VAT entries, G/L accounts and currency exchange rates gain foreign currency and VAT exchange rate fields, and the Exch. Rate Adjustment report gets a valuation method and VAT entry adjustment. Provisional G/L balances and DACH report selections are also added. Several objects carry DACH naming or come from the German and Austrian localizations, such as VAT Statement Germany, VAT Statement AT and Update VAT-AT.
Other additions are delivery reminders for vendors, sales quote management (quote status, subtotals, levels, positions), physical inventory orders, and Swiss post code and bank directory imports. Learn documents these under "Switzerland local functionality" and its sub-pages.
Key points
- QR-bill management: generate, print, scan and import QR-bills, with IBAN/QR-IBAN, payment reference types and billing information (codeunit 11518 “Swiss QR-Bill Mgt.”, page 11514 “Swiss QR-Bill Setup”).
- ESR, LSV+ and DTA payment methods: ESR file import and printing, LSV collection journals with file export, DTA setup.
- SEPA credit transfer and direct debit exports with Swiss payment form and payment type fields on table 1226 “Payment Export Data”, plus Swiss CAMT 053/054 import.
- Swiss VAT statement with VAT cipher setup, VAT exchange rate fields and VAT exchange rate adjustment on table 254 “VAT Entry” and the Exch. Rate Adjustment report.
- Delivery reminders for vendors: terms, levels, text, issuing and a test report, with their own pages, codeunits and page extensions.
- Sales quote management and posting changes: quote status, probability, subtotals, levels and positions on sales lines and archives.
- Foreign currency balances on G/L accounts and provisional balance view for journals.
- Imports of Swiss post codes and bank clearing numbers (Bank Directory).
Narrative written by Sonnet from the code diff and 34 Learn page summaries. In numbers: Switzerland (CH) localization of Business Central in BC29: 279 objects of its own, 118 W1 objects changed (196 fields and 10 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 |
|---|---|---|---|
| Bank | 9 | 106 | 4 |
| Finance | 25 | 52 | 45 |
| Purchases | 24 | 52 | 32 |
| Sales | 27 | 11 | 63 |
| Inventory | 9 | 25 | 22 |
| Foundation | 10 | 12 | 27 |
| (no namespace) | 0 | 8 | 0 |
| FixedAssets | 4 | 2 | 3 |
| Security | 4 | 2 | 0 |
| Service | 0 | 4 | 0 |
| CRM | 2 | 0 | 0 |
| Microsoft | 0 | 2 | 0 |
| Upgrade | 1 | 1 | 0 |
| Utilities | 1 | 1 | 0 |
| EServices | 1 | 0 | 0 |
| IO | 1 | 0 | 0 |
| Manufacturing | 0 | 1 | 0 |
Bank
Adds the Swiss payment stack: QR-bill (encode, decode, image, setup wizard, scan, billing info), ESR, DTA and LSV management, a Bank Directory, and Swiss SEPA CT and DD export files. It also adds CAMT 053 and 054 import and Swiss fields and checks on the W1 SEPA codeunits and Payment Export Data.
Why: Learn describes ESR, LSV+, SEPA credit transfers and QR-bills with IBAN and QR-IBAN as the Swiss electronic payment methods, and bank clearing number import from SIX Interbank Clearing files.
Objects: table/1226 “Payment Export Data”, codeunit/11518 “Swiss QR-Bill Mgt.” (own), codeunit/11513 “Swiss QR-Bill Encode” (own), codeunit/11512 “Swiss QR-Bill Decode” (own), page/11514 “Swiss QR-Bill Setup” (own), codeunit/3010531 “EsrMgt” (own), codeunit/3010831 “LSVMgt” (own), codeunit/11520 “Swiss SEPA CT-Export File” (own).
All 115 objects of Bank in the diff
Finance
Adds the Swiss VAT statement with cipher setup and codes, VAT exchange rate fields on VAT Entry and G/L Account, and the Exch. Rate Adjustment changes. It also adds provisional G/L balance, data export objects and ESR fields on journal lines. Some objects are shared with Germany and Austria.
Why: Learn says Swiss VAT uses official exchange rates for foreign currency and adjusts VAT amounts for payment discounts, and describes foreign currency balances and temporary journal balances.
Objects: table/254 “VAT Entry”, table/81 “Gen. Journal Line”, codeunit/597 “Exch. Rate Adjmt. Subscribers”, report/596 “Exch. Rate Adjustment”, table/596 “Exch. Rate Adjmt. Parameters”, page/11023 “VAT Cipher Codes” (own), page/11024 “VAT Cipher Setup” (own), codeunit/26100 “Update VAT-CH” (own).
All 77 objects of Finance in the diff
Purchases
Adds ESR, giro, clearing and payment form fields to Vendor Bank Account, reference fields on Purchase Header, and Suggest Vendor Payments changes. It adds a full delivery reminder feature for vendors, with tables, pages, codeunits and enum, and Swiss vendor reports.
Why: Learn documents delivery reminders (codes, terms, levels, text, generation, issue, test report) and the Vendor Payments List report.
Objects: table/288 “Vendor Bank Account”, table/38 “Purchase Header”, report/393 “Suggest Vendor Payments”, codeunit/5005271 “Create Delivery Reminder” (own), codeunit/5005270 “Issue Delivery Reminder” (own), page/5005270 “Delivery Reminder” (own), page/5005273 “Issued Delivery Reminder” (own), report/11507 “Vendor Payments List” (own).
All 76 objects of Purchases in the diff
Sales
Adds quote management fields (probability, follow-up, competition, validity) to Sales Header and archive. It adds position, level, subtotal and classification fields to sales lines and posted lines, posting description events, and Swiss customer reports.
Why: Learn lists subtotals with begin and end totals, enhanced posting descriptions and invoice rounding with payment discounts for Swiss sales documents.
Objects: table/36 “Sales Header”, table/37 “Sales Line”, codeunit/3010801 “QuoteMgt” (own), codeunit/80 “Sales-Post”, table/5107 “Sales Header Archive”, table/311 “Sales & Receivables Setup”, table/287 “Customer Bank Account”, report/3010801 “Quote Analysis” (own).
All 38 objects of Sales in the diff
Inventory
Adds a physical inventory order feature with its own tables, plus fields on Item, Item Ledger Entry and Item Journal Line for default location, customer and salesperson. It also adds Swiss item reports and dispatcher and receiver places.
Why: Learn says Swiss inventory uses default location codes from the item card and tracks invoices with multiple shipments.
Objects: table/27 “Item”, table/83 “Item Journal Line”, table/32 “Item Ledger Entry”, table/313 “Inventory Setup”, table/5005350 “Phys. Inventory Order Header” (own), table/5005351 “Phys. Inventory Order Line” (own), report/11503 “Item ABC Analysis” (own), table/11000 “Place of Dispatcher” (own).
All 34 objects of Inventory in the diff
Foundation
Extends Company Information with Swiss fields including tax office data and authorized numbers. Adds DACH report selections, address formatting for the tax office, post code priority and a post code import report.
Why: Learn describes importing the latest Swiss Post post code file into the Post Code table.
Objects: table/79 “Company Information”, report/11502 “Import Post Codes” (own), table/225 “Post Code”, table/26100 “DACH Report Selections” (own), codeunit/365 “Format Address”, codeunit/1901 “Report Selection Mgt.”, codeunit/2 “Company-Initialize”, tableextension/11511 “Swiss QR-Bill Company Info.” (own).
All 22 objects of Foundation in the diff
(no namespace)
Holds the Swiss SEPA direct debit pain.008.001.02.ch03 XMLport, the PURCHASE-DEL.REMIND. permission set, data export setup and the Intrastat item list report. Upgrade and sandbox cleanup codeunits are not covered.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: xmlport/11501 “SEPA DD pain.008.001.02.ch03” (own), table/11009 “Data Export Setup” (own), report/11001 “Intrastat - Item List” (own), permissionset/26001 “PURCHASE-DEL.REMIND.” (own).
All 8 objects of (no namespace) in the diff
FixedAssets
Adds Swiss depreciation fields on Fixed Asset (BWR depreciation book, premium depreciation) and a Swiss book value report. Also changes FA General Report to exclude reclassification entries.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: table/5600 “Fixed Asset”, report/11011 “Fixed Asset - Book Value 03” (own), codeunit/5626 “FA General Report”, table/5612 “FA Depreciation Book”.
All 6 objects of FixedAssets in the diff
Security
Adds permission set extensions for delivery reminders and changes the LOCAL and LOCAL READ sets and the payables journal sets.
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”, permissionsetextension/5005270 “DR LOCAL” (own), permissionsetextension/5005271 “DR LOCAL READ” (own), permissionset/3602 “Payables Journals - Post”, permissionset/8824 “Payables Journals - Edit”.
All 6 objects of Security in the diff
Service
Adds Swiss fields through table extensions on service lines, service invoice lines and service line archive. Also adds a service document management codeunit.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/11524 “Serv. Document Mgt. CH” (own), tableextension/11550 “Service Line CH” (own), tableextension/11551 “Service Invoice Line CH” (own), tableextension/11552 “Service Line Archive CH” (own).
All 4 objects of Service in the diff
CRM
Changes the Export Contact and Export Segment Contact XMLports.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: xmlport/5050 “Export Contact”, xmlport/5051 “Export Segment Contact”.
All 2 objects of CRM in the diff
Microsoft
Adds an ELM Interop Input page and a Certificate table.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: page/35563 “ELM Interop Input” (own), table/11014 “Certificate” (own).
All 2 objects of Microsoft in the diff
Utilities
Adds a general management codeunit and archive procedures that archive sales documents together with the quote status.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/5063 “ArchiveManagement”, codeunit/11501 “GeneralMgt” (own).
All 2 objects of Utilities in the diff
EServices
Changes the ReadSoft OCR master data sync codeunit for the Swiss layer.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/884 “ReadSoft OCR Master Data Sync”.
All 1 objects of EServices in the diff
IO
Adds XML handling procedures to Read Data Exch. from File, used to split payments per invoice and read amount nodes in bank files.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: codeunit/1240 “Read Data Exch. from File”.
All 1 objects of IO in the diff
Manufacturing
Adds a page extension for the Manufacturing Manager role center shared with the DACH layers.
Why: not explained by a Learn page in the input; the code shows the change, not the requirement.
Objects: pageextension/11010 “Manufacturing Manager RC DACH” (own).
All 1 objects of Manufacturing in the diff
Objects of its own
279 objects only this country has.
- codeunit/355 “Local Navigate Handler”
- codeunit/1883 “Sandbox Cleanup local”
- codeunit/9997 “Upgrade Tag Def - Country”
- codeunit/11000 “Data Export Management”
- codeunit/11004 “Report Sel. Purch. Subscribers”
- codeunit/11110 “Update VAT-AT”
- codeunit/11500 “BankMgt”
- codeunit/11501 “GeneralMgt”
- codeunit/11502 “Swiss QR-Bill Purchases”
- codeunit/11503 “CHMgt”
- codeunit/11504 “Swiss QR - Setup Mgt.”
- codeunit/11512 “Swiss QR-Bill Decode”
- codeunit/11513 “Swiss QR-Bill Encode”
- codeunit/11514 “Swiss QR-Bill Image Mgt.”
- codeunit/11515 “CH Report Management”
- codeunit/11516 “Swiss QR-Bill Incoming Doc”
- codeunit/11517 “Swiss QR-Bill Install”
- codeunit/11518 “Swiss QR-Bill Mgt.”
- codeunit/11519 “Swiss QR-Bill Billing Info”
- codeunit/11520 “Swiss SEPA CT-Export File”
- codeunit/11521 “SEPA CAMT 053 Bank Rec. Lines”
- codeunit/11522 “SEPA CAMT 054 Bank Rec. Lines”
- codeunit/11523 “Serv. Bank Payment Mgt.”
- codeunit/11524 “Serv. Document Mgt. CH”
- codeunit/11530 “Swiss SEPA DD-Export File”
- codeunit/14060 “UPG Data Out Of Geo. Apps”
- codeunit/26100 “Update VAT-CH”
- codeunit/35517 “CH Upgrade Tag Def.”
- codeunit/104100 “Upg Local Functionality”
- codeunit/3010531 “EsrMgt”
- codeunit/3010541 “DtaMgt”
- codeunit/3010801 “QuoteMgt”
- codeunit/3010831 “LSVMgt”
- codeunit/5005270 “Issue Delivery Reminder”
- codeunit/5005271 “Create Delivery Reminder”
- codeunit/5005272 “Deliv.-Rem. Ext. Text Transfer”
- codeunit/5005273 “Iss. Delivery Remind. printed”
- codeunit/5005274 “DR Data Class. Eval. Data”
- codeunit/5005396 “Print Document Comfort”
- codeunit/5005397 “Format Adress Comfort”
- enum/11003 “Data Export File Encoding”
- enum/11503 “SEPA CT Batch Booking”
- enum/11510 “Swiss QR-Bill Address Type”
- enum/11511 “Swiss QR-Bill IBAN Type”
- enum/11512 “Swiss QR-Bill Payment Reference Type”
- enum/11513 “Swiss QR-Bill Umlaut Encoding”
- enum/11515 “Swiss QR-Bill Reports”
- enum/11516 “Swiss QR-Bill Billing Detail”
- enum/5005272 “Delivery Reminder Date Type”
- enumextension/26101 “Report Selection Usage Del. Rem.”
- enumextension/26102 “Report Sel. Usage Purch. DACH”
- page/11000 “Place of Dispatchers”
- page/11001 “Place of Receivers”
- page/11002 “Data Exports”
- page/11003 “Data Export Record Definitions”
- page/11004 “Data Export Record Source”
- page/11007 “Data Export Table Relation”
- page/11008 “Data Export Table Relation Sub”
- page/11009 “Data Export Field List”
- page/11014 “Data Export Record Types”
- page/11023 “VAT Cipher Codes”
- page/11024 “VAT Cipher Setup”
- page/11026 “Data Export Table Keys”
- page/11027 “Data Export Record Fields”
- page/11500 “G/L Acc. Provisional Balance”
- page/11501 “Bank Directory”
- page/11502 “Swiss QR-Bill Create Vend Bank”
- page/11510 “Swiss QR-Bill Scan”
- page/11511 “Swiss QR-Bill Manual Print”
- page/11512 “Swiss QR-Bill Print Select Doc”
- page/11513 “Swiss QR-Bill Billing Info”
- page/11514 “Swiss QR-Bill Setup”
- page/11515 “Swiss QR-Bill Layout”
- page/11516 “Swiss QR-Bill Setup Wizard”
- page/11517 “Swiss QR-Bill Reports”
- page/11518 “Swiss QR-Bill Billing Details”
- page/35516 “Cash Receipt Journal FactBox”
- page/35517 “Payment Journal FactBox”
- page/35561 “Modify Posting Day Input”
- page/35562 “Modify Document Number Input”
- page/35563 “ELM Interop Input”
- page/3010531 “ESR Setup”
- page/3010532 “ESR Setup List”
- page/3010541 “DTA Setup”
- page/3010542 “DTA Setup List”
- page/3010543 “DTA EZAG Pictures”
- page/3010830 “LSV Setup List”
- page/3010831 “LSV Setup”
- page/3010832 “LSV Journal List”
- page/3010834 “LSV Journal”
- page/3010835 “LSV Journal Line List”
- page/5005270 “Delivery Reminder”
- page/5005271 “Delivery Reminder Sub.”
- page/5005272 “Delivery Reminder List”
- page/5005273 “Issued Delivery Reminder”
- page/5005274 “Issued Delivery Reminder Sub”
- page/5005275 “Issued Delivery Reminders List”
- page/5005276 “Deliv. Reminder Ledger Entries”
- page/5005277 “Delivery Reminder Comment Line”
- page/5005278 “Deliv. Rem. Comment Line List”
- page/5005279 “Delivery Reminder Terms”
- page/5005280 “Delivery Reminder Terms List”
- page/5005281 “Delivery Reminder Levels”
- page/5005283 “Delivery Reminder Text”
- pageextension/11010 “Manufacturing Manager RC DACH”
- pageextension/11510 “Swiss QR-Bill Incoming Doc”
- pageextension/11511 “Swiss QR-Bill Incoming Docs”
- pageextension/11512 “Swiss QR-Bill Company Info.”
- pageextension/11513 “Swiss QR-Bill Payment Method”
- pageextension/11514 “Swiss QR-Bill Vend.BankAccCard”
- pageextension/11515 “Swiss QR-Bill Purchase Journal”
- pageextension/11516 “Swiss QR-Bill Purchase Invoice”
- pageextension/11517 “Swiss QR-Bill Purchase Order”
- pageextension/11518 “Swiss QR-Bill Bank Account”
- pageextension/11553 “Bank Export/Import Setup CH”
- pageextension/5005270 “SourceCodeSetupDACH”
- pageextension/5005271 “DRVendorTemplCard”
- pageextension/5005272 “DRPurchSetup”
- pageextension/5005273 “DRExtendedText”
- pageextension/5005274 “DRPurchMgrRoleCenter”
- pageextension/5005275 “DRPurchAgentRoleCenter”
- pageextension/5005276 “DRPurchaseOrder”
- pageextension/5005277 “DRVendorCard”
- permissionset/26001 “PURCHASE-DEL.REMIND.”
- permissionsetextension/11501 “D365 BASIC ISV - QR-Bill Management for Switzerland”
- permissionsetextension/11502 “D365 BASIC - QR-Bill Management for Switzerland”
- permissionsetextension/11503 “D365 BUS FULL ACCESS - QR-Bill Management for Switzerland”
- permissionsetextension/11504 “D365 BUS PREMIUM - QR-Bill Management for Switzerland”
- permissionsetextension/11505 “D365 FULL ACCESS - QR-Bill Management for Switzerland”
- permissionsetextension/11506 “D365 READ - QR-Bill Management for Switzerland”
- permissionsetextension/11507 “D365 TEAM MEMBER - QR-Bill Management for Switzerland”
- permissionsetextension/11508 “INTELLIGENT CLOUD - QR-Bill Management for Switzerland”
- permissionsetextension/5005270 “DR LOCAL”
- permissionsetextension/5005271 “DR LOCAL READ”
- report/11001 “Intrastat - Item List”
- report/11002 “G/L Total-Balance”
- report/11003 “Customer Total-Balance”
- report/11004 “Vendor Total-Balance”
- report/11005 “VAT Statement Germany”
- report/11006 “Vendor Detailed Aging”
- report/11007 “VAT-Vies Declaration Tax - DE”
- report/11010 “VAT Statement Schedule”
- report/11011 “Fixed Asset - Book Value 03”
- report/11015 “Export Business Data”
- report/11100 “Fixed Assets - List AT”
- report/11108 “VAT - VIES Declaration XML”
- report/11109 “Paragraph 131 Export”
- report/11110 “VAT Statement AT”
- report/11111 “Crossborder Services”
- report/11112 “Update VAT Statement Template”
- report/11500 “Provisional Trial Balance”
- report/11502 “Import Post Codes”
- report/11503 “Item ABC Analysis”
- report/11504 “Import Bank Directory”
- report/11505 “SR Item Acc Sheet Net Change”
- report/11506 “SR Item Acc Sheet Inv. Value”
- report/11507 “Vendor Payments List”
- report/11509 “Vendor Payment Order”
- report/11510 “Swiss QR-Bill Print”
- report/11512 “Sales Picking List”
- report/11514 “G/L Setup Information”
- report/11517 “Inventory Value (Help Report)”
- report/11518 “Old Swiss VAT Statement”
- report/11521 “SR G/L Entries Foreign Currenc”
- report/11529 “SR Account Interest”
- report/11535 “SR Cust. Orders per Period”
- report/11537 “SR Cust. Due Amount per Period”
- report/11539 “SR Cust. Ranking”
- report/11540 “SR Cust. - Balance to Date”
- report/11553 “SR Ven. Due Amount per Period”
- report/11554 “SR Vendor Orders per Period”
- report/11557 “SR Vendor Ranking”
- report/11559 “SR Vendor - Balance to Date”
- report/11561 “SR Vendor Payment Advice”
- report/11563 “SR G/L Acc Sheet Bal Account”
- report/11564 “SR G/L Acc Sheet Foreign Curr”
- report/11565 “SR G/L Acc Sheet Reportig Cur”
- report/11566 “SR G/L Acc Sheet Posting Info”
- report/11567 “SR G/L Acc Sheet VAT Info”
- report/11568 “SR Cust. Paymt List Standard”
- report/11569 “SR Cust. Paymt List FCY Amount”
- report/11570 “SR Cust. Paymt List Posting In”
- report/11577 “SR Item Ranking”
- report/11581 “SR Item Vendor Shipping Rem.”
- report/26100 “Swiss VAT Statement”
- report/3010531 “Customer ESR Journal”
- report/3010532 “Sales Invoice ESR”
- report/3010533 “ESR Coupon”
- report/3010534 “Service - Invoice ESR”
- report/3010535 “Service - ESR Coupon”
- report/3010541 “DTA File”
- report/3010542 “EZAG File”
- report/3010543 “DTA Payment Order”
- report/3010544 “EZAG Payment Order”
- report/3010545 “DTA Payment Journal”
- report/3010546 “DTA Suggest Vendor Payments”
- report/3010801 “Quote Analysis”
- report/3010831 “LSV Suggest Collection”
- report/3010832 “LSV Collection Journal”
- report/3010833 “LSV Close Collection”
- report/3010834 “Write LSV File”
- report/3010835 “LSV Collection Order”
- report/3010836 “LSV Collection Authorisation”
- report/3010837 “LSV Customerbank List”
- report/3010838 “LSV Collection Advice”
- report/3010839 “LSV Write DebitDirect File”
- report/5005272 “Delivery Reminder - Test”
- report/5005273 “Issued Delivery Reminder”
- report/5005340 “Create Delivery Reminder”
- report/5005341 “Issue Delivery Reminder”
- table/11000 “Place of Dispatcher”
- table/11001 “Place of Receiver”
- table/11002 “Data Export”
- table/11003 “Data Export Record Definition”
- table/11004 “Data Export Record Source”
- table/11005 “Data Export Record Field”
- table/11006 “Data Export Table Relation”
- table/11007 “Data Export Record Type”
- table/11008 “Data Export Buffer”
- table/11009 “Data Export Setup”
- table/11010 “Data Exp. Primary Key Buffer”
- table/11014 “Certificate”
- table/11015 “Key Buffer”
- table/11016 “Number Series Buffer”
- table/11017 “VAT Cipher Code”
- table/11018 “VAT Cipher Setup”
- table/11500 “Bank Directory”
- table/11501 “VAT Currency Adjustment Buffer”
- table/11510 “Swiss QR-Bill Buffer”
- table/11511 “Swiss QR-Bill Billing Info”
- table/11512 “Swiss QR-Bill Setup”
- table/11513 “Swiss QR-Bill Layout”
- table/11514 “Swiss QR-Bill Reports”
- table/11518 “Swiss QR-Bill Billing Detail”
- table/26100 “DACH Report Selections”
- table/3010531 “ESR Setup”
- table/3010541 “DTA Setup”
- table/3010831 “LSV Setup”
- table/3010832 “LSV Journal”
- table/3010834 “LSV Journal Line”
- table/5005270 “Delivery Reminder Header”
- table/5005271 “Delivery Reminder Line”
- table/5005272 “Issued Deliv. Reminder Header”
- table/5005273 “Issued Deliv. Reminder Line”
- table/5005274 “Delivery Reminder Ledger Entry”
- table/5005275 “Delivery Reminder Comment Line”
- table/5005276 “Delivery Reminder Term”
- table/5005277 “Delivery Reminder Level”
- table/5005278 “Delivery Reminder Text”
- table/5005350 “Phys. Inventory Order Header”
- table/5005351 “Phys. Inventory Order Line”
- table/5005352 “Phys. Invt. Recording Header”
- table/5005353 “Phys. Invt. Recording Line”
- table/5005354 “Post. Phys. Invt. Order Header”
- table/5005355 “Posted Phys. Invt. Order Line”
- table/5005356 “Posted Phys. Invt. Rec. Header”
- table/5005357 “Posted Phys. Invt. Rec. Line”
- table/5005358 “Phys. Inventory Comment Line”
- table/5005359 “Posted Phys. Invt. Track. Line”
- table/5005360 “Phys. Invt. Tracking Buffer”
- table/5005361 “Expect. Phys. Inv. Track. Line”
- table/5005362 “Post. Exp. Ph. In. Track. Line”
- table/5005363 “Phys. Invt. Diff. List Buffer”
- tableextension/11510 “Swiss QR-Bill Incoming Doc”
- tableextension/11511 “Swiss QR-Bill Company Info.”
- tableextension/11512 “Swiss QR-Bill Payment Method”
- tableextension/11513 “Swiss QR-Bill Purchase Header”
- tableextension/11514 “Swiss QR-Bill Gen Journal Line”
- tableextension/11515 “Swiss QR-Bill Bank Account”
- tableextension/11550 “Service Line CH”
- tableextension/11551 “Service Invoice Line CH”
- tableextension/11552 “Service Line Archive CH”
- tableextension/11553 “Bank Export/Import Setup CH”
- tableextension/5005270 “SourceCodeSetupDACH”
- tableextension/5005280 “DRVendor”
- tableextension/5005281 “DRVendorTempl”
- tableextension/5005282 “DRPurchSetup”
- tableextension/5005283 “DRExtendedTextHeader”
- xmlport/11501 “SEPA DD pain.008.001.02.ch03”
Other versions
- BC30: 397 objects differ from W1 (196 fields, 10 events added)
Source: country layer of the Base Application compared with W1 of the same version (data/code/diffs/country/).