Hallo,
ich möchte einen Datensatz abspeichern der mehrere Felder und eine Check Box enthält.
Über die Check Box (Name: chkRechnung_erstellt) möchte ich anzeigen, dass für diesen Datensatz bereits eine Rechnung erstellt wurde. Über einen Button speichere ich den Datensatz ab mit folgendem Code:
'Eingabe erlauben
Me.AllowEdits = True
Me.AllowAdditions = True
Me.AllowDeletions = True
lngStore = Me.ID
'Datensatz speichern
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
DoCmd.Requery 'Akutalisieren
DoCmd.GoToRecord , MPU, acLast ' Letzten Datensatz anspringen
DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70
'Den aktuellen Datensatz anspringen
Me.Recordset.FindFirst "ID=" & lngStore
'Eingabe sperren
Me.AllowEdits = False
Me.AllowAdditions = False
Me.AllowDeletions = False
Außer der Check Box wird alles wunderbar gespeichert. Die Check Box zeigt auch an, dass sie selektiert ist. Gehe ich aber aus dem Programm raus oder wechsele das Formular ist die Check Box wieder deaktiviert dh. der Wert wurde nicht gespeichert. An was könnte das den liegen?
Im Voraus erstmal Danke!
Grüße
Herbert
Hallo,
ist die Check Box auch in der Tabelle bzw. an das entsprechende Tabellenfeld gebunden ?
Hallo Klaus,
oh Mann! Das hatte ich wirklich nicht gemacht - die Check Box existierte nur im Formular ohne Bezug zur Tabelle. Jetzt lässt sie sich zwar speichern aber ich habe leider ein neues Problem: Einmal aktiviert lässt sie sich nicht mehr deaktivieren d.h. wenn man evtl. fälschlicherweise angeklickt hat bleibt sie aktiv. Normalerweise müsste sie doch beim zweiten mal Klicken wieder deaktiviert werden oder??
Gruß
Herbert
Ok, hat sich geklärt! Da war im Formular keine Check Box sondern ein Optionsfeld eingestellt. Habe das leider zu spät gemerkt!
Vielen Dank für die Hilfe!
Gruß
Herbert
Hallo Herbert,
Das Ja/Nein-Feld ist völlig überflüssig. Ob es schon eine Rechnung
für einen Vorgang gibt, ergibt sich aus der Zählung des FK-Feldes
(VorgangID) in der Tabelle Rechnungen.
gruss ekkehard
Hallo Ekkehard, erst mal Danke für den Tipp! Verstehe jedoch nicht ganz wie du das meinst.
Die Rechnung (Bericht mit Datensatzquelle Abfrage) wird in diesem Programm über einen Button im Formular aufgerufen d.h. es wird hier kein Datensatz angelegt der nur die Rechnung ausgibt. Die Check Box ist im Formular der einzige Hinweis, ob die Rechnung schon gedruckt wurde oder nicht.
Insofern verstehe ich nicht wie du das meintest mit der Zählung des FK-Feldes??
Gruß
Herbert
Hallo Herbert,
Na ja, ich kenne deine Daten-Struktur nicht. Bei mir, und darauf bezog
sich mein Hinweis, gibt es eine Tabelle "Vorgaenge" mit eindeutiger
VorgangsID. Deren Anlage (neuer Vorgang) wird mit einem Angebot
oder einem Auftrag gestartet. Alle dann mit diesem Vorgang zusam-
menhängenden Belege (Auftragsbestätigung, Lieferschein, Rechnung)
besitzen einen FK auf diese VorgangsID. Mit dieser VorgangsID_F kann
ich dann mit einem einfachen DCount in Erfahrung bringen welche Belege
bereits erstellt sind. Ob die schon gedruckt sind ist mir erstmal ziemlich
egal, da ich jeden Beleg jederzeit nachdrucken kann.
If DCount("*"; "BelegTabelle"; "BelegArt = " & KZBelegArt & " AND VorgangIF_F = " & VorgangID
Die beiden Variablen werden aus einem Formular geholt.
gruss ekkehard
Hallo zusammen,
vielen Dank noch mal für die Hilfe zu diesem Thema!
Gruß
Herbert