4. August 2010 10:47
Hallo Community,
Ich sitze gerade an einem besonderen Problem:
Ich programmiere gerade unsere Personalkostenrechung:
Hierfür habe ich 2 Tabellen angelegt (Kopf/Zeile). Im Kopf befinden sich die Stammdaten für einen Mitarbeiter in den Zeilen befinden sich die spezifischen Lohn/Gehaltsdaten für alle Mitarbeiter. (Bis hierhin noch standard)
Leider kann ich diese Beiden Tabellen nich wie gewöhnlich mit einem einfachen Schlüssel verbinden. natürlich kann ich in den Zeilen die Personalnummer mitgeben damit ich für jeden Mitarbeiter nur die relevanten Zeilen angezeigt bekomme, jedoch würden dann auch Zeilen angezeigt werden, die bereits "alt sind".
EIn Beispiel:
Tabelle LohnZeilen:
PersNo. Lohnart Gültigab Wert
'021' x2 01.01.09 2.400€
'021' x2 01.06.09 2.500€
'021' x2 01.01.10 2.600€
'021' x5 01.01.09 500€
Ich möchte nun, angenommen ich befinde mich in der Periode 01.07.09 nur die folgenden Bestandteile angezeigt bekommen:
PersNo. Lohnart Gültigab Wert
'021' x2 01.06.09 2.500€
'021' x5 01.01.09 500€
Ich möchte also immer nur die Lohnart mir dem aktuellsten Datum angezeigt bekommen aber nur bis zu der ausgewählten Periode!
Da mir kein einfacher Weg eingefallen ist, habe ich mir hierfür eine Funktion ausgedacht, die zuerst alle Datensätze analysiert und in einem FLAG Feld die relevanten Daten markiert. Somit kann ich dann über eine gemütliche SETRANGE abfrage gemütlich Filtern.
Leider steckt hier das Problem:
Mein Formular besteht derzeit aus einem Main (Personalkopf) und einem Subform (Personalzeilen)
(SubFormLink = Personalnummer=FIELD(Personalnummer),Flag=CONST(Yes))
Um die Flags zu setzen muss ich einen Record auf die PersonalZeilen setzen und ggf die Zeile via MODIFY maipulieren. Und hier knallt die ganze Sache. ich bekomme die Fehlermeldung:
"Sie können keine Änderungen an der Datenbank vornehmen, ehe eine Transaktion gestartet wurde."Habe versucht den Modify im Subform, sowie im Mainform aufzurufen. Leider jedoch ohne Erfolg...
Hat vielleicht jemand von euch eine Idee, wie ich das entweder alles viel einfacher strukurieren kann? Oder wo der Fehler liegt???
Beste Grüße und vielen Dank!
Simon
Zuletzt geändert von AIDeton am 4. August 2010 11:43, insgesamt 1-mal geändert.