![]() |
kein Aktueller Datensatz
Hallo alle zusammen,
ich beschäftige mich gerade mit einer Zeierfassung. Ich trage begin und endzeiten in eine ParadoxTabelle ein. das sieht ungefähr so aus (aus dem Kopf geschrieben). bei Begin: Table1.last; table1.edit; Table1.append; Table1['Begin'] := time; Table1.post; Table1.refresh; bei ende: Table1.last; Table1.edit; Table1['Ende'] := time; Table1.post; Table1.refresh; Das ganze geht ein par mal gut. irgendwan wenn ich mich öfter hintereinander ein und auslogge bekomme ich die Fehlermeldung "kein aktueller Datensatz". wo ist das problem? ich gebe im doch alle informationen. Wenn ich mich einlogge soll er zum letzten datensatz gehen und einen neuen datensatz anfügen. in diesem neuen datensatz soll er nun die Beginzeit eintragen und das ganze dann speichern. beim ausloggen soll er in den letzten datensatz gehen und Endzeit eintragen un auch wieder speichern. Im zweifelsfall kann ich auch den ganzen code reinsetzen (nur Login Procedure ca. 5 Seiten). Warum geht es mal und dan mal wieder nicht??? :wall: :wall: :gruebel: :wall: :wall: |
Re: kein Aktueller Datensatz
Hai No Voices,
ich würde da ganz anders vorgehen. Beim einlogen wird ein Datensatz mit deiner Benutzer-ID und einer ID für den Datensatz angelegt. Die ID des Datensatzes speicherst Du einfach in einer Variablen. Beim auslogen setzt Du jetzt einfach die END-Zeit für diesen Datensatz. Ausserdem würde ich nicht mit der Uhrzeit deines Rechners arbeiten sondern immer die Zeit des Datenbankservers verwenden. |
Re: kein Aktueller Datensatz
nun ist es so das dafür ein rechner abgestelt wurde zu testzwecken.
was meinst du mit der ID? Eine nur einmal vorkomende nummer oder was? ist das nicht die RecNo? Ich habe keinen index, eine einfache ParadoxTabelle. Datum; Begin; Ende; Gesamt; Aber trotzdem weis ich nicht woran das liegen kann, das er irgendwann unvorhersehbar und nicht lokalisirbar, die fehlermeldung schmeist. Ich habe schon mehrere test gemacht aber ohne erfolg. Wo ligt eigentlich der unterschied zwischen Table1.Open und Table1.Active := True; oder in welcher Reienfolge mußte ich vorgehen? Hängt das vieleicht mit irgendeinem speicher zusammen? Ich habe das mal beobachtet und festgestellt, das wenn ich den fehler ignoriere un weiter mache, ist die tabelle sozusagen eingefrohren. Er fügt keinen daten ein und erstelt auch keine neue zeile. Erst wenn ich mich wieder auslogge und wieder einlogge geht es wieder. Beim einloggen öffne ich die tabelle erst und beim ausloggen schließe ich sie. |
Re: kein Aktueller Datensatz
Hallo Voice,
mit einer Id ist eine (meistens) Nummer gemeint, die dazu dient jeden Datensatz eindeutig zu identifizieren, also ein künstlicher Primärschlüssel, viele Datenbanksysteme verfügen über eine Funktion die diese Id-Nummern automatisch hochzählen, um die Eindeutigkeit zu garantieren. IMO ist sharkys Vorschlag effektiver und auch "Datenabnktypischer" als deiner. Czapie. |
Re: kein Aktueller Datensatz
mir würde es aber reichen wenn er einfach nur zum letzten datensatz gehen würde und das macht er ja auch.
Aber woher kann der fehler den kommen? |
Re: kein Aktueller Datensatz
Das ding hat sich erledigt. Ich sollte auch mal dran denken das ich 3 mit Tabellen arbeite. Der Fehler kam natürlich aus einer anderen Tabelle. nur dum dasDelphi mir das nicht sagen konnte. Danke trotzdem.
Gruß NoVoices |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz