Datenvertauschung/-verlust

masterbek

Grünschnabel
hallo allerseits

wir haben ein problem in unserer software (c++). wir haben die erfassung von zeitrapporten von etlichen mitarbeitern. diese teitrapporte werden dann verbucht in den Gehalt (Gehaltsabrechnungen werden erstellt). danach werden diese in die Faktura verbucht (fakturen weden erstellt).

das Problem:
1. Es werden Daten vertauscht oder gehen gar verloren. z.B. eine Woche von Müller ist auf der Gehaltsabrechnung von Schröder. Auf der Gehaltsabrechnung von Pfister fehlen zwei Arbeitswochen, usw.
2. Auf der Faktura fehlen die Mitarbeiter Max und Philipp komplett, und eine Woche von Ulrich, usw.

Hat jemand eine Idee woran das liegen könnte?

Lese- und Schreibeproblem? problem in der Programmierung beim Schritt "Verbuchun"? Hardwareleistung?

ich wäre euch sehr dankbar.
 
Hi

Die eventuell mangelnde Geschwindigkeit etc. der Hardware kann sowas nicht verursachen.
Kaputte Hardware ist möglich, aber wenn sonst nirgends Probleme sind...
ein Programamierfehler (oder mehrere) ist das Wahrscheinlichste.
Genaueres kann man aber ohne Programmcode etc. kaum sagen.
 
Klingt im ersten Moment nach dem Missbrauch von globalen Variablen in Kombination mit Race-Conditions. Aber ohne Code-Auszüge kann man da - wie sheel schon schrieb - nichts sinnvolles beisteuern. Wie sieht es mit Möglichkeiten des Debugging aus? Arbeitet ihr mit Datenbanken? Könnte es im Programmablauf dazu kommen, das verschiedene Sitzungen von verschiedenen Mitarbeitern Referenzen überschreiben? Ist das Erfassung- bzw. Auswertungssystem evtl. mit Threads realisiert? Stehen die Daten schon falsch in den Persistenz-Resourcen oder ist "nur" die Auswertung fehlerhaft?

Du wirst vermutlich auf Grund der Natur der Sache kaum Sourcecode zur Verfügung stellen können oder dürfen. Daher kann ich dir nur raten, fange hinten (also bei der Auswertung) an, und taste dich langsam Richtung Erfassung der Daten. Ich würde erstmal schauen, ob die Datenbanken/Dateien passen. Wenn dem so ist, kannst du den Fehler schon mal auf die Auswertung eingrenzen.

Hardwareleistung schließe ich mal aus. Entweder Hardware-Defekt (unwahrscheinlich) oder Programmierfehler (wahrscheinlicher).
 
Zurück