Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Export der Kassendaten für Statistiken (https://www.delphipraxis.net/167682-export-der-kassendaten-fuer-statistiken.html)

Sir Rufo 13. Apr 2012 00:14

AW: Export der Kassendaten für Statistiken
 
Wer mehr Statistik benötigt (als Kunde) als die Software beinhaltet und der Softwarehersteller implementieren möchte, sollte sich darauf einstellen eine separate DB für dieses Vorhaben zu bemühen.

Eine MegaMonsterAuswertung auf ein Produktiv-System loszulassen kommt dem digitalen Selbstmord gleich.

Nicht umsonst gibt es Software a la QlikView die genau zu diesem Zweck geschaffen wurde.
Und für diese Art von Software würde ich Schnittstellen anbieten.

Furtbichler 13. Apr 2012 07:00

AW: Export der Kassendaten für Statistiken
 
Nun ja. Es wird doch möglich sein, für die Datenbank einen Treiber auf dem System des Kunden zu installieren. Was daran so schlimm sein soll, erschließt sich mir nicht.

Und dann zeigt man ihm, wie man über EXCEL an die Daten rankommt. Fertig.

Geld verdient ihr damit, das ihr dem Kunden die Views zur Verfügung stellt, die seinen Vorstellungen entsprechen.

Bei einer Kassensoftware sollte es aber reichen, z.B. die Tagesergebnisse als CSV-Datei zur Verfügung zu stellen. So viele Daten sind das ja nicht, weder an Zeilen noch an Spalten.

Wir erzeugen z.B. Logdateien im CSV-Format. Der Dateiname ist dabei das Tagesdatum. Der Kunde kann jederzeit auf die letzten N (default = 30) Tage zugreifen. Wenn er sie längerfristig speichern will, bitte sehr. Nichts spricht dagegen, das er sich eine Access-oder-wie-auch-immer-DB bastelt und die Daten dort einbläst. Benötigt er Unterstützung? Klar, machen wir.

s.h.a.r.k 13. Apr 2012 08:09

AW: Export der Kassendaten für Statistiken
 
Wobei ich hier Sir Rufo schon Recht geben muss. Bietet man Views an, so werden alle Queries auf dem Produktiv-System ausgeführt. Jetzt lasst mal so einen Pfuscher auf dem System arbeiten, der non-stop die DB pollt und es halt einfach nicht besser weiß. Wollt ihr wirklich Support für die Fehler anderer spielen? Klar, wenn dafür extra Geld rausspringt wäre das noch unter Umständen okay, aber von dieser Fehlerquelle würde ich definitiv Abstand nehmen und die Daten einfach regelmäßig exportieren. Als Hersteller der Software muss man doch sicherstellen, dass die Funktionalität der Software nicht durch Spielereien gefährdet wird. Ob das genannte Beispiel übertrieben ist, darf jeder für sich entscheiden, nur habe ich echt schon viel zu viel gesehen, als dass ich das für gut heißen würde.

Fazit: das einfachste ist es alles regelmäßg in eine CSV zu klopfen. Ansonsten kann man sich überlegen, ob man nicht noch eine SQLite-DB füttert. Aber diese externe Auswertung hat im eigentlichen System nicht viel zu suchen, wenn ein fremder User darauf zugreifen soll. Jedenfalls wäre ich auch sehr vorsichtig damit.

Und zu dieser Treibergeschichte: bietet man eine ordentliche Schnittstelle à la CSV, Access-DB, SQLite, MySQL an, so wird es wohl für den Kunden kein Problem sein einen entsprechenden Treiber oder dergleichen zu installieren. Das sollte dann definitiv nicht das Problem des Herstellers sein.

jf_stgt 13. Apr 2012 08:56

AW: Export der Kassendaten für Statistiken
 
Guten Morgen zusammen,

Danke für eure echt guten Antworten.
Also ich fasse mal zusammen und ergänze meine persönliche Meinung dazu.

Views möchte ich ungern anbieten. Erstmal muss der Kunde spezielle Datenbanktreiber haben und zweites müssen wir da noch aufpassen dass der Kunde nicht die DB crasht durch polling etc..
Außerdem wird er über Änderungen nicht so informiert falls es neue Kassendaten gibt.

Ich stelle mir mehrere Exports vor.
1. Export der Kassendaten in Kopfdaten, Detaildaten und eine gemeinsame Datei direkt nach dem Kassiervorgang.
2. Export der Tagesabrechnung die dann die Umsätze zusammen enthält.

Alles als CSV Datei mit dem Datum als Dateinamen damit die einzelne Datei nicht zu voll wird. Plattenplatz spielt eine untergeordnete Rolle.
Der Kunde kann dann diese Datei parsen und in eine eigene DB schreiben oder direkt in Excel etc. verarbeiten.

Ich denke damit ist das Thema ausreichend erörtert, oder?

Viele Grüße,
Jürgen

s.h.a.r.k 13. Apr 2012 10:11

AW: Export der Kassendaten für Statistiken
 
Zitat:

Zitat von jf_stgt (Beitrag 1161661)
Views möchte ich ungern anbieten. Erstmal muss der Kunde spezielle Datenbanktreiber haben und zweites müssen wir da noch aufpassen dass der Kunde nicht die DB crasht durch polling etc..
Außerdem wird er über Änderungen nicht so informiert falls es neue Kassendaten gibt.

Hatte ich mich falsch ausgedrückt? Die DB crasht doch nicht. Es geht evtl. nur die Performance des DBMS runter. Und sowas auf einem Produktiv-System wäre einfach nicht wünschenswert. Der sichere und störungsfreie Betrieb muss ja gewährleistet werden. Aber das passiert halt auch nur unter gewissen Umständen und hier ist einfach Vorsicht geboten, denn der Kunde schimpft dann auf deine Software und nicht unbedingt auf das evtl. dumm programmierte Auswertsystem.

Das Problem mit dem Treiber ist doch eigentlich kein Problem, da man doch eigentlich keine speziellen Treiber verwendet, oder? Man verwendet nur eine entsprechende Version, die doch überall installierbar ist. und das in einer Doku zu erwähnen ist doch kein Problem. Oder passt ihr Treiber für den DB-Zugriff an, dass kein anderer das nutzen kann? Hm...

Zitat:

Zitat von jf_stgt (Beitrag 1161661)
Ich stelle mir mehrere Exports vor.
1. Export der Kassendaten in Kopfdaten, Detaildaten und eine gemeinsame Datei direkt nach dem Kassiervorgang.
2. Export der Tagesabrechnung die dann die Umsätze zusammen enthält.

Warum so kompliziert? Alles in eine Datei rein klatschen, eine Doku dazu schreiben, wie diese Datei aufgebaut ist und dem Kunden so ausliefern. Man muss es sich extra für den Kunden doch nicht schwerer machen, als es sein muss. Zudem weiß man eh nicht genau, was der Kunde später dann aus den Daten machen will, d.h. einfach eine Maximaldatei liefern und alles ist erledigt. Selbst anpassbar würde ich diese Export nicht machen, da die Daten später ja immer noch vom Kunden gefiltert werden können -- lieber zu viel, als zu wenig liefern.

Zitat:

Zitat von jf_stgt (Beitrag 1161661)
Alles als CSV Datei mit dem Datum als Dateinamen damit die einzelne Datei nicht zu voll wird. Plattenplatz spielt eine untergeordnete Rolle.
Der Kunde kann dann diese Datei parsen und in eine eigene DB schreiben oder direkt in Excel etc. verarbeiten.

Das Verhalten kannst du ja mit dem Kunden abklären. Wobei ich da nicht zu viel Aufwand rein stecken würde. Will er nur die letzten x Tage in einem Verzeichnis stehen haben, so kann er sich ja einen CronJob basteln. Deine Anwendung liefert halt Tag für Tag alle Daten in ein Verzeichnis. Alles andere ist imho nice-to-have.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:59 Uhr.
Seite 2 von 2     12   

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