Hallo,
ich habe folgendes Problem: Ich habe ein Dropdown Menu mit 5 Auswahlmöglichkeiten. Sobald vom Anwender "erledigt" oder "nicht notwendig" ausgewählt wurde, soll in einem anderen Feld das heutige Datum erscheinen. Das soll sich allerdings nicht aktualisieren am nächsten Tag.
Aktuell habe ich folgende Bedingung als Steuerelemntinhalt für das Datumsfeld aufgestellt:
=Wenn([Status1]="erledigt" Oder [Status1]="nicht notwendig";Datum();"")
Da habe ich jetzt natürlich das Problem, dass der Status auf "erledigt" oder "nicht notwendig" bleibt und am nächsten Tag das nächste Datum angezeigt wird.
Hat jemand eine Idee wie ich das Datum "fixieren" kann sobald der Status einmal ausgewählt wurde?
Danke schonmal,
Gruß Caro
Hallo,
das Datumsfeld muss an ein Tabellenfeld gebunden sein. Zum Setzen des Datums ist dann etwas VBA notwendig.
Hallo Klaus,
danke für deine Antwort. Das Datumsfeld ist ein Tabellenfeld genau. Setze ich das Datum mit VBA wird es sich aber auch mit aktualisieren wenn das Systemdatum sich ändert oder kann ich das Datum mit VBA fixieren?
Gruß Caro
Hallo,
wie machst Du das mit VBA ?
Hallo,
Wahrscheinlich beim falschen Ereignis; - "Form_Current" ist da nicht
so geeignet, besser "Form_AfterUpdate". Dann ändert sich ein Feldinhalt,
der per VBA gesetzt wurde, nur wenn am DS etwas geändert wurde.
Frage, haben die Status keine ID?
Dann würde ich die für einen "Select Case" verwenden.
Ich würde aber vorher nochmal das Datenmodell checken, denn der Feldname
"Status1" lässt auf weitere Felder mit Nummerierung schliessen. Und das
ist nach der "reinen Lehre" falsch.
gruss ekkehard
Hallo,
genau, es gibt auch weitere Felder mit "Status2, Status3,..." Der DS hat als ID eine Auftragsnummer. Für jeden Auftrag müssen also mehrere Status gesetzt werden für verschiedene Aufgaben.
Wenn ich das mit "Form_AfterUpdate" mache habe ich dann das Problem, dass wenn ich irgendetwas am DS ändere und zB Status 1 schon auf "erledigt" gesetzt war sich für Status1 wieder das heutige Datum einträgt oder?
@klaus mit einer einfachen If-Bedingung
Vielen Dank,
Gruß Caro
Hallo,
Zitatgenau, es gibt auch weitere Felder mit "Status2, Status3,...
Das ist ein ganz schlimmer fehler. Die Erfassung des Status muss in einer extra Tabelle erfolgen. Dazu wird auch eine Tabellen mit den möglichen Status benötigt, mit einem Primärschlüsselfeld. Dann braucht es noch eine Tabelle zur Zuordnung der Status zum Auftrag in je einem Datensatz. In die Tabelle kommt auch das Datumsfeld. Das Datum setzt man dann einmalig, wenn ein neuer Status erfolgt.
Das Konzept muss dringend überarbeitet werden.
Zitat@klaus mit einer einfachen If-Bedingung
Das ist eine völlig sinnlose unbrauchbare Erklärung. Entschuldige die drastischen Worte. Wie glaubst Du kann man mit einer solchen Antwort eine Fehlersuche betreiben ?
Hallo Caro,
Zitatam DS ändere und zB Status 1 schon auf "erledigt" gesetzt war sich für Status1 wieder das heutige Datum einträgt oder?
Ja, stimmt >:( . Das könnte man aber mit ".NewRecord" abfangen.
Zum Datenmodell hat Klaus schon Einiges geschrieben. Ich vermute jedoch, dass
es möglicherweise nicht so einfach ist
ZitatFür jeden Auftrag müssen also mehrere Status gesetzt werden für verschiedene Aufgaben.
Da muss noch drüber nachgedacht werden.
gruss ekkehard
Hallo,
ZitatDa muss noch drüber nachgedacht werden.
Dazu wäre dann ein Bild des Beziehungsfensters nicht schlecht.
Hallo,
danke für den Input auch zum Datenmodell, das werde ich mir nochmal anschauen.
Für die If-Bedingung brauche ich auch keine Fehlersuche. Ich habe nur eine Idee gebraucht wie ich das Datum fixieren kann. Ich versuche es mal mit ".NewRecord".
Vielen Dank für eure Hilfe,
Gruß Caro
Ps.: Ein freundlicher Ton ist nie verkehrt ;)
Hallo,
ZitatFür die If-Bedingung brauche ich auch keine Fehlersuche.
Es geht ja nicht um einen fehler in der Bedingung, sondern um den logischen Ablauf. Und da müsste man halt mal sehen, wie das Datum gesetzt wird. Auch das verwendete Ereiegnis wäre wichtig, aber das unterschlägst Du weiterhin. So kann man doch nicht helfen.
Ich finde es einfach ärgerlich, wenn man helfen will und die notwendigen Informationen selbst auf Nachfrage nicht bereitgestellt werden.