Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Standardwert in Formular wird nicht angezeigt - wegen Steuerelementeinhalt?

Begonnen von mariaz3565, Juli 27, 2015, 09:50:19

⏪ vorheriges - nächstes ⏩

mariaz3565

Guten Morgen liebe Access-Gemeinde!

Wahrscheinlich ist die Frage von mir jetzt ganz banal - aber ich komme nicht weiter. (erstelle gerade meine erste Access-DB  8) ). Ich habe ein Datumsfeld, welches als Standardwert wie folgt befüllt wird:
=Jetzt()

Sobald ich aber bei Steuerelementeinhalt "Datum" auswähle (so heißt meine Spalte in der Tabelle) wird kein Standardwert mehr eingefügt. Ich brauche aber den Steuerelementeinhalt sonst wird der Timestamp (das Datum) nicht in meiner Tabelle gespeichert. Oder kann ich das anders lösen?

Freue mich auf eure Tipps!

lg
Mary

MzKlMu

Hallo,
welcher Datentyp hat denn das Feld Datum in der Tabelle ?

PS:
=Jetzt() beinhalte auch die Uhrzeit, ist Dir das klar ? Brauchst Du diese ?
Wenn Nein, verwende Datum().
PS2:
Datum als Feldname ist zu vermeiden, verwende z.B. Erfassungsdatum oder ähnlich.
Gruß Klaus

mariaz3565

Hallo MzKlMu!

Hallo mein txt_Erfassungsdatum im Formular gibt folgenden Wert als Standardwert zurück: 27.07.2015 10:14:38
Das brauche ich auch so weil es somit ein eindeutiger Timestamp ist.
In der Tabelle ist das Feld Datum als Datum/Uhrzeit definiert.
Danke für den Hinweis - werde das Feld auf "Erfassungsdatum" ändern - schließlich heißt es ja auch im Formular so :-)

lg
Mary

MzKlMu

Gruß Klaus

mariaz3565

Hi,

ich habe als Steuerelementinhalt aus meiner Tabelle das Feld Datum (also jetzt Erfassungsdatum). Dorthin soll gespeichert werden.

lg
Mary

MaggieMay

Hi,

der Standardwert kommt nur bei neu angelegten Datensätzen zum Zuge - ist dir das klar?
Freundliche Grüße
MaggieMay

mariaz3565

Hi MaggieMay,

ja das würde auch so passen. Ich möchte, dass jedem Datensatz ein eindeutiger Timestamp bei Anlage zugeordnet ist. =Jetzt() Und genau dieser Wert soll in die Tabelle unter "Erfassungsdatum" gespeichert werden.
Aber mein Problem ist, dass dieser Standardwert in meinem Formular nicht angezeigt wird, wenn ich als Steuerelementinhalt das Feld "Erfassungsdatum" der Tabelle angebe. Das brauche ich aber (glaube ich halt), damit das Erfassungsdatum auch in meiner Tabelle gespeichert wird. Oder habe ich einen Denkfehler???  :-\

lg
Mary

MaggieMay

Das ist völlig OK so wie du es beschreibst. Kannst du vielleicht einen Screenshot vom Eigenschaftsfenster zeigen, an dem man sieht ob du es auch so umgesetzt hast?
Freundliche Grüße
MaggieMay

mariaz3565

Aahhhh - ich bin auf etwas gestoßen was der Grund sein könnte. Solange meine Tabelle noch leer ist, macht er das mit dem Standardwert. Sobald ich schon Daten in meiner Tabelle habe nimmt er (logischerweise) den ersten Datensatz - somit auch das dort erfasste Datum. Also stelle ich meine Frage jetzt anders:
Wie sage ich dem Formular, dass es beim Öffnen immer einen neuen Datensatz anlegen soll und mir nicht die bereits bestehenden zeigt!  :D

Sorry für das "Wirr-Warr"...

MaggieMay

Hi,

das bekommst du über die Formulareigenschaft "Daten eingeben = Ja".
Freundliche Grüße
MaggieMay

bahasu

Hi Mary,

Zitat von: mariaz3565 am Juli 27, 2015, 09:50:19
Oder kann ich das anders lösen?

Die Antwortet lautet ja.
Im Formular wird das Ereignis "Vor Aktualisierung" genutzt.

Private Sub Form_BeforeUpdate(Cancel As Integer)
    If Me.NewRecord Then Me.EingabeDatum = Now
End Sub

Die obige Zeile speichert im Datumsfeld nur bei neu angelegten Daten das Datum.
Siehe Beispiel im Anhang.

Hilft das?


Und am Rande bemerkt: Vermeide access-interne Bezeichnungen für Felder: "Datum" gehört dazu.

Harald
Servus