Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Check Box Wert speichern geht nicht

Begonnen von herb54, Mai 09, 2019, 18:52:44

⏪ vorheriges - nächstes ⏩

herb54

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

MzKlMu

Hallo,
ist die Check Box auch in der Tabelle bzw. an das entsprechende Tabellenfeld gebunden ?
Gruß Klaus

herb54

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

herb54

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

Beaker s.a.

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
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

herb54

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

Beaker s.a.

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
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

herb54

Hallo zusammen,
vielen Dank noch mal für die Hilfe zu diesem Thema!
Gruß
Herbert