250 Fibu Export Buchhaltung » Historie » Revision 28
Revision 27 ([S] Dominik G, 19.06.2020 11:44) → Revision 28/29 ([X] Jens M, 15.11.2024 10:19)
h1. 250 Fibu Export Buchhaltung {{toc}} h2. Inhaltliche Eckpunkte # Horizontale Berechnungsmethode: #11229 # Umsatzübergabe ## Steuercode / Steuerschlüssel + Kontierung Steuer ## Kontierung Umsatz ((Dienstleistung nach Schweiz = Umsatzkonto "Dienstleistung Export) ## Kontierung Kostenrechnung (Dienstleistung Schulung = KostenRechnungskonto Kostenrechnugnskonto Schulung) ## Kontierung Aufwand / Erlös https://help.prodat-erp.de/erloes.html https://help.prodat-erp.de/anbindung_externe_buchhaltung.html h2. Datenfluss & Debugging * Angebot/Auftrag > Rechnung ## Steuerschlüssel hat Kontierung ## Belegzeile (Rechnung) hat Kontierung ## Evtl Umschlüsselung auf anderes Konto > https://help.prodat-erp.de/erloes.html *** Dienstleistung und Umsatzsteuerfrei nicht EU wird zu Kontierung Umsatz "Exportierte Dienstleistung". Diese Aufteilung ist vom Gesetzgeber vorgegeben. * Rechnung > @FUNCTION Tfaktura.fibu__export__data_preparation@ <> @FUNCTION TFaktura.belkopf__horizontal_tax_values@ > Exportschnittstelle (CSV) <pre><code class="sql"> FUNCTION Tfaktura.fibu__export__data_preparation IN in_be_bnr VARCHAR DEFAULT NULL, IN group_by_konto BOOLEAN DEFAULT True, IN group_by_ks BOOLEAN DEFAULT false, IN group_by_an_nr BOOLEAN DEFAULT false </code></pre> h3. Debugging * @SELECT * FROM TFaktura.belkopf__horizontal_tax_values('RG19-01575')@ * @SELECT * FROM Tfaktura.fibu__export__data_preparation('RG19-01575')@ h2. Nachbearbeitung von Daten * *Aktualisierung aller offenen Angebote/Aufträge: Kontierung* <pre><code class="sql"> SELECT * INTO z_99_drop.auftg_save_konto FROM auftg; BEGIN; ALTER TABLE auftg DISABLE TRIGGER ALL; -- UPDATE auftg SET ag_konto = COALESCE(ak_zeko, ac_konto_erl) SELECT ag_astat, ag_nr, ag_pos, ag_aknr, ak_ac, ac_konto_erl, ag_konto FROM art, artcod, auftg -- FROM art, artcod WHERE ag_aknr = ak_nr AND ak_ac = ac_n AND ag_konto IS NULL AND COALESCE(ak_zeko, ac_konto_erl) IS NOT NULL AND ag_astat IN ('E', 'A') /*AND NOT ag_done*/; ALTER TABLE auftg ENABLE TRIGGER ALL; COMMIT; </code></pre> * *Zurücksetzen* (für den Fall das falsche Kontierungen bzw. Kontierung überhaupt nicht gewünscht) <pre><code class="sql"> BEGIN; ALTER TABLE auftg DISABLE TRIGGER ALL; UPDATE auftg SET ag_konto = NULL WHERE NOT ag_done AND ag_konto IS NOT NULL; ALTER TABLE auftg ENABLE TRIGGER ALL; COMMIT; </code></pre> * *Aktualisierung aller Ausgangsrechnungen: kontierung* <pre><code class="sql"> BEGIN; ALTER TABLE belzeil_grund DISABLE TRIGGER ALL; ALTER TABLE belzeil_auftg_lif DISABLE TRIGGER ALL; ALTER TABLE belzeil_frei DISABLE TRIGGER ALL; --*/ --/* -- UPDATE belzeil_grund SET bz_zeko = COALESCE(ak_zeko, ac_konto_erl) SELECT bz_be_bnr, bz_aknr, ak_ac, ac_konto_erl, bz_zeko FROM belzeil_grund, art, artcod, belkopf -- FROM art, artcod, belkopf WHERE be_bnr = bz_be_bnr AND bz_aknr = ak_nr AND ak_ac = ac_n AND bz_zeko IS NULL AND COALESCE(ak_zeko, ac_konto_erl) IS NOT NULL AND be_bdat >= current_date - 180 --*/ ALTER TABLE belzeil_grund ENABLE TRIGGER ALL; ALTER TABLE belzeil_auftg_lif ENABLE TRIGGER ALL; ALTER TABLE belzeil_frei ENABLE TRIGGER ALL; COMMIT; </code></pre> * *Zurücksetzen* (für den Fall das falsche Kontierungen bzw. Kontierung überhaupt nicht gewünscht) <pre><code class="sql"> SELECT * INTO z_99_drop.belzeil_grund_save_konto FROM belzeil_grund; ROLLBACK; BEGIN; ALTER TABLE belzeil_grund DISABLE TRIGGER ALL; ALTER TABLE belzeil_auftg_lif DISABLE TRIGGER ALL; ALTER TABLE belzeil_frei DISABLE TRIGGER ALL; --EXPLAIN ANALYSE VERBOSE UPDATE belzeil_grund SET bz_zeko = NULL FROM belkopf WHERE bz_zeko IS NOT NULL AND be_bnr = bz_be_bnr AND be_bdat >= current_date - 180; -- SELECT bz_be_bnr FROM belzeil_grund, belkopf WHERE bz_zeko IS NOT NULL AND be_bnr = bz_be_bnr AND be_bdat >= current_date - 180; ALTER TABLE belzeil_grund ENABLE TRIGGER ALL; ALTER TABLE belzeil_auftg_lif ENABLE TRIGGER ALL; ALTER TABLE belzeil_frei ENABLE TRIGGER ALL; COMMIT; </code></pre>