Mehrwertsteuer-Satz Änderung Dynamics 365 Business Central / Dynamics NAV / Navision

Hallo zusammen,

Aufgrund der befristete Senkung der Umsatzsteuer in Deutschland bzw. auch in Österreich hier eine kurze Zusammenfassung bezogen auf Dynamics 365 Business Central / NAV.

Gleich zu Beginn ist mir wichtig zu erwähnen, dass sich die beiden Ländern für unterschiedliche Lösungen entschieden haben. Daher machen auch nicht alle Maßnahmen für beide Länder gleich Sinn.

Für die steuerliche und wirtschaftliche Betrachtung empfehle ich mit dem Steuerberater Kontakt aufzunehmen. Dieser, Sie und ihr IT-Betreuer sollten dann die Situation auch individuell betrachten.

Business Central / Dynamics NAV / Navision

Microsoft hat bereits vor einigen Jahren für solche Vorgänge ein Werkzeug bzw. Funktionen innerhalb von Navision / Dynamics NAV / Business Central zur Verfügung gestellt. Im Gegensatz zu Business Central, mussten diese Funktionen aber für die anderen genannten Produkte individuell importiert werden.

Business Central beinhaltet das MwSt.-Satz-Änderungstool

(VAT Rate Change Tool)

https://docs.microsoft.com/de-de/dynamics365/business-central/finance-how-use-vat-rate-change-tool

Vorgehensweisen

Es gibt verschiedene mögliche Vorgehensweise. Eine davon hat unsere Kollegin Sonja Klimke in diesem PDF zusammengefasst, dass Sie netterweise kostenfrei zur Verfügung stellt.

Nachfolgend hab ich einige relevante Informationen zusammengefasst die einen kompakten Überblick geben.

Sie sind ein

Endkunde der die ERP Software einsetzt

Am besten kontaktieren Sie Ihren Steuerberater und ihren Software Betreuer und führen ein erstes Meeting durch. Zwecks Verständnisses empfehle ich ihnen davor die Dokumentation MwSt.-Satz-Änderungstool und diesen Blogbeitrag zu lesen.

IT-Partner der die Microsoft ERP Software bei Kunden implementiert

Machen Sie sich mit der Dokumentation MwSt.-Satz-Änderungstool vertraut und testen Sie die Einrichtung und Funktionen. Kontaktieren Sie aktiv ihren Kunden und bitten Sie den Kunden auch den Steuerberater mit an Board zu holen.

Beziehen Sie auch die Leitung der Finanzbuchhaltung mit in das Gespräch ein.

Entwicklung Sie ein nachvollziehbares aber wiederholbares Konzept für die neuen Einstellungen, die Umstellung und die Rückkehr zu den alten Einstellungen nach dem die offizielle First abgelaufen ist.

Machen Sie sich mit den nachfolgenden Inhalten vertraut

Die technische Umstellung

Die Funktionen im Standard von Business Central erlauben es zahlreiche Felder „automatisch“ umzustellen.

Trotz allem kann und wird es bestimmte Sonderfälle geben die nur durch einen ausreichend Test identifiziert werden können.

Auch dazu findet man im erwähnten Dokument von Fr. Klimke eine sehr gute Zusammenfassung.

Zusätzlich greife ich ein paar Dinge heraus, über die man sich besonders Gedanken machen sollte. Die Liste ist daher nicht vollständig und soll aber als Gedankenanstoss dienen:

  • Bestehende Gruppen ändern oder neue Steuergruppen anlegen (Anmerkung: auch an die „Rück“ – Umstellung denken)
  • Buchungsmatrix direkt oder indirekt betroffen (je nach Vorgehensweise)
  • Eigene Sachkonten anlegen – Ja oder Nein
  • Die Mehrwertsteuer-Auswertung („UVA“) aktualisieren
  • Teillieferungen / Teilrechnungen durchdenken und testen. Speziell Fälle die in beiden Perioden (vor und nach der Umstellung) fallen
  • Serviceverträge durchsehen
  • Direktlieferungen / Spezialaufträge durchsehen
  • Vorauszahlungsrechnungen durchsehen
  • Logistik Belege durchsehen
  • Datensicherung(en) erstellen
  • Testlauf(e) durchführen

Das MwSt.-Satz-Änderungstool verwenden

Mwst-Satz-Änderungstool – Überblick

Fortsetzung: Learn4D365: Beispiel: Mwst Satz von 7 Prozent auf 5 Prozent ändern

Welche Tabellen zeigt uns der Programmcode

ProgressWindow.Open(Text0001 + Text0002);
with VATRateChangeSetup do begin
ProgressWindow.Update;
UpdateTable(
DATABASE::“Gen. Product Posting Group“,
ConvertVATProdPostGrp(„Update Gen. Prod. Post. Groups“), ConvertGenProdPostGrp(„Update Gen. Prod. Post. Groups“));
TempGenProductPostingGroup.DeleteAll;
if GenProductPostingGroup.Find(‚-‚) then
repeat
TempGenProductPostingGroup := GenProductPostingGroup;
TempGenProductPostingGroup.Insert;
GenProductPostingGroup.“Auto Insert Default“ := false;
GenProductPostingGroup.Modify;
until GenProductPostingGroup.Next = 0;
UpdateItem;
UpdateRessouce;
UpdateGLAccount;
UpdateServPriceAdjDetail;
UpdatePurchase;
UpdateSales;
UpdateService;
UpdateTable(
DATABASE::“Item Template„,
ConvertVATProdPostGrp(„Update Item Templates“), ConvertGenProdPostGrp(„Update Item Templates“));
UpdateTable(
DATABASE::“Item Charge„,
ConvertVATProdPostGrp(„Update Item Charges“), ConvertGenProdPostGrp(„Update Item Charges“));
UpdateTable(
DATABASE::“Gen. Journal Line„,
ConvertVATProdPostGrp(„Update Gen. Journal Lines“), ConvertGenProdPostGrp(„Update Gen. Journal Lines“));
UpdateTable(
DATABASE::“Gen. Jnl. Allocation„,
ConvertVATProdPostGrp(„Update Gen. Journal Allocation“), ConvertGenProdPostGrp(„Update Gen. Journal Allocation“));
UpdateTable(
DATABASE::“Standard General Journal Line„,
ConvertVATProdPostGrp(„Update Std. Gen. Jnl. Lines“), ConvertGenProdPostGrp(„Update Std. Gen. Jnl. Lines“));
UpdateTable(
DATABASE::“Res. Journal Line„,
ConvertVATProdPostGrp(„Update Res. Journal Lines“), ConvertGenProdPostGrp(„Update Res. Journal Lines“));
UpdateTable(
DATABASE::“Job Journal Line„,
ConvertVATProdPostGrp(„Update Job Journal Lines“), ConvertGenProdPostGrp(„Update Job Journal Lines“));
UpdateTable(
DATABASE::“Requisition Line„,
ConvertVATProdPostGrp(„Update Requisition Lines“), ConvertGenProdPostGrp(„Update Requisition Lines“));
UpdateTable(
DATABASE::“Standard Item Journal Line„,
ConvertVATProdPostGrp(„Update Std. Item Jnl. Lines“), ConvertGenProdPostGrp(„Update Std. Item Jnl. Lines“));
UpdateTable(
DATABASE::“Production Order„,
ConvertVATProdPostGrp(„Update Production Orders“), ConvertGenProdPostGrp(„Update Production Orders“));
UpdateTable(
DATABASE::“Work Center„,
ConvertVATProdPostGrp(„Update Work Centers“), ConvertGenProdPostGrp(„Update Work Centers“));
UpdateTable(
DATABASE::“Machine Center„,
ConvertVATProdPostGrp(„Update Machine Centers“), ConvertGenProdPostGrp(„Update Machine Centers“));
UpdateTable(
DATABASE::“Reminder Line„,
ConvertVATProdPostGrp(„Update Reminders“), ConvertGenProdPostGrp(„Update Reminders“));
UpdateTable(
DATABASE::“Finance Charge Memo Line„,
ConvertVATProdPostGrp(„Update Finance Charge Memos“), ConvertGenProdPostGrp(„Update Finance Charge Memos“));
GenProductPostingGroup.DeleteAll;
if TempGenProductPostingGroup.Find(‚-‚) then
repeat
GenProductPostingGroup := TempGenProductPostingGroup;
GenProductPostingGroup.Insert;
TempGenProductPostingGroup.Delete;
until TempGenProductPostingGroup.Next = 0;
end;
ProgressWindow.Close;

Codeunit 550 VAT Rate Change Conversion – gib Aufschluss über die Tabellen welche geändert werden

3 Basis Funktionen für eigene Tabellen

Folgende Funktionen könnten für das konvertieren zusätzlicher Tabellen herangezogen werden.

local procedure ConvertVATProdPostGrp(UpdateOption: Option): Boolean

local procedure ConvertGenProdPostGrp(UpdateOption: Option): Boolean

local procedure UpdateTable(TableID: Integer; ConvertVATProdPostingGroup: Boolean; ConvertGenProdPostingGroup: Boolean)

LG Rene

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert