Newrecord

ich hab mir selbst navibuttons gebastelt. jetzt wollte ich, dass wenn ich grad einen neuen datensatz angelegthabe der button für neuen ds deaktiviert ist.

if me.newrecord then me.schneu.enabled = false

der button wird zwar deaktiviert aber beim wechsel zu einem bereits vorhandenen ds nicht wieder aktiviert. das ereignis ist beim anzeigen des forms.

kann jmd helfen?

me!schneu.enabled = Not me.newrecord 

Gruß aus dem Norden
Reinhard Kraasch (http://www.kraasch.de - Access Tipps & Tricks)

ich hab mir selbst navibuttons gebastelt. jetzt wollte ich,
dass wenn ich grad einen neuen datensatz angelegthabe der
button für neuen ds deaktiviert ist.

if me.newrecord then me.schneu.enabled = false

der button wird zwar deaktiviert aber beim wechsel zu einem
bereits vorhandenen ds nicht wieder aktiviert. das ereignis
ist beim anzeigen des forms.

Du hattest nur einen Zustand definiert (AUS). Du mußt aber die Taste auch wieder Einschalten, wenn’s nicht so ist:

if me.newrecord then ’ wenn NEU
me.schneu.enabled = false ’ dann AUS
else 'sonst
me.schneu.enabled = TRUE ’ dann AN
end if

DAS ist die ausführliche Schulversion. Geht natürlich auch viel kürzer: siehe Posting von Rainhard.

Gruß Wolfgang

jut, dankeschön! wenn ich jetzt einen neuen anlege u. den ds wechsel kann ich wieder neue eingeben.

jetzt müßte ich es noch schaffen, dass es kein newrecord mehr ist, wenn ich im neuen ds in zb. mind. 1 feld etwas eingegeben hab.

hast du da vielleicht auch nochn tip?

jawoll alles klar, dank reinhard gehts jetzt.

Du könntest den Datensatz jeweils nach den Feldänderungen speichern (Docmd.Runcommand acCmdSaveRecord). Ist aber nicht so ganz das Gelbe vom Ei…

Aber warum läßt du den Knopf nicht einfach immer enabled - wenn jemand 2x draufdrückt, ist er halt selber schuld. (Oder du kannst im Form_AfterUpdate nachschauen, ob der Datensatz überhaupt irgendetwas enthält und ihn ggf. dann einfach weglöschen).

Gruß aus dem Norden
Reinhard Kraasch

saverecord speichert zwar den datensatz, aber newrecord wird dadurch noch nich auf 0 gesetzt.

wenn nichts eingegeben wurde wird der ds doch eh nicht gespeichert oder seh ich das falsch? man kann ja 6x auf neu klicken, aber solang nix eingegeben wird gibts keinen neuen ds.
im moment mach ichs mit gotorecord acnewrecord. ist wahrscheinlich auch nich das beste?!

könnte ja bei neu button n kleines form aufmachen wo man eingeben kann u. dann entweder speichert u. schließt u. ds übernimmt oder nix speichert u. schließt. aber dann brauch ich son form für neue für jedes form wo man neue ds anlegen muss, auch suboptimal…