Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   DsFinV-K Kassenabschluss vor Update (https://www.delphipraxis.net/205141-dsfinv-k-kassenabschluss-vor-update.html)

bernau 4. Aug 2020 16:33

DsFinV-K Kassenabschluss vor Update
 
Laut DsFinV-K muss vor einem Update der Software ein Kassenabschluss durchgeführt werden.

Ich habe dazu schon einige Gedankengänge im Kopf. Aber nicht etwas, was mich zufrieden stellt.

Wie habt Ihr das gelöst?

Ein Update der Kassensoftware ist im Zweifel eine EXE-Datei kopieren. Ggf. auch um eine ältere Version zurück zu kopieren. Aber dieses "Einfach kopieren" müsste ja eigentlich verhindert werden. Theoretisch müsste die neue Kassensoftware den Start abbrechen, nachdem diese Festgestellt hat, dass die bisherigen Daten mit einer anderen Version erstellt wurden und noch kein Kassenabschluss durchgeführt wurde. Fragen über Fragen.

Frickler 4. Aug 2020 18:49

AW: DsFinV-K Kassenabschluss vor Update
 
Das Updaten der Kasse besorgt eine Batchdatei. Diese ruft nacheinander auf:
  • Ein Programm, welches testet, ob die Kasse gerade läuft. In dem Fall wird das Update abgebrochen.
  • Das Programm, welches die neue EXE runterlädt und in einem temporären Ordner speichert
  • Die Kasse mit dem Parameter "-autoabschluss": damit startet die Kasse, macht einen Abschluss und beendet sich wieder
  • Am Ende wird die Kasse.exe aus dem temporären Ordner an die richtige Position kopiert

noisy_master 5. Aug 2020 08:44

AW: DsFinV-K Kassenabschluss vor Update
 
Hi zusammen,

ich muss zugeben: ich verstehe dein Problem hier nicht so genau: Wenn du z.B. die TMS WebUpdate Komponente(nein, keine Schleichwerbung) in deiner Kassensoftware benutzt, kannst du doch innerhalb deines "Kassenprogramms" sehr genau steuern, wann das Update stattfinden soll(mache Update erst nach Abschluß, verweigere Update solange Abschluß noch nicht erfolgt,...)

Gruß

bernau 5. Aug 2020 10:56

AW: DsFinV-K Kassenabschluss vor Update
 
Zitat:

Zitat von noisy_master (Beitrag 1471195)
Hi zusammen,

ich muss zugeben: ich verstehe dein Problem hier nicht so genau: Wenn du z.B. die TMS WebUpdate Komponente(nein, keine Schleichwerbung) in deiner Kassensoftware benutzt, kannst du doch innerhalb deines "Kassenprogramms" sehr genau steuern, wann das Update stattfinden soll(mache Update erst nach Abschluß, verweigere Update solange Abschluß noch nicht erfolgt,...)

Gruß

Wenn man das Kassenprogramm für sich alleine sieht.... Dann ist das kein Problem.

Wenn das Komplettpaket aber aus mehreren Programmen besteht und das im Netzwerk mit mehreren Computern, dann ist das ggf. schon ein Problem. Das (externe) Updateprogramm soll die Programme neu installieren und nicht direkt auf die Daten zugreifen.

Die einfachste Lösung wäre natürlich bei einem Kassenabschluss eine Datei zu schreiben und diese zu löschen sobald der nächste Kassiervorgang durchgeführt wurde. Das Installationsprogramm schaut nach, ob diese Datei vorhanden ist. Wenn nicht, dann kein Update.

Aber es gibt ja ganz viele andere Szenarien, die ggf. berücksichtigt werden müssen. Was passiert, wenn manuell eine andere Kassenversion (älter oder neuer) kopiert wird. Soll dann die Kasse den Start verhindern? Also ich hab da keine Vorgaben vom BMF gefunden.

Frickler 5. Aug 2020 13:57

AW: DsFinV-K Kassenabschluss vor Update
 
Zitat:

Zitat von bernau (Beitrag 1471201)
Aber es gibt ja ganz viele andere Szenarien, die ggf. berücksichtigt werden müssen. Was passiert, wenn manuell eine andere Kassenversion (älter oder neuer) kopiert wird. Soll dann die Kasse den Start verhindern? Also ich hab da keine Vorgaben vom BMF gefunden.

Das würde ich generell so machen. Wenn Software- und Datenbankversion nicht zusammenpassen, kann jeder Murks passieren.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz