Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: mad am Juni 06, 2021, 08:59:40

Titel: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: mad am Juni 06, 2021, 08:59:40
Hallo Zusammen,

aktuell habe ich ein "UFSerie" (Endlosformular) in einem "HFSerie" aus dem heraus ich die Daten des "UFSerie" über ein ungebundenes Kombifeld im "HFSerie" vorfiltere.

Nun würde ich gerne diverse Datensätze aus dem "UFSerie" per Kontrollkästchen (KK) markieren um nur diese in einem Bericht angezeigt/gedruckt zu bekommen. Das KK gibt es nicht in der Ursprungstabelle und somit auch nicht in der Abfrage für das "UFSerie". Würde auch keinen Sinn machen, den die Auswahl soll ja nicht dauerhaft gespreichert werden sondern eigentlich nur temporär, solange das Formular geöffnet ist.

Ist es überhaupt möglich im "UFSerie" ein KK pro DS mit anzuzeigen um diese Auswahl durchführen zu können?
Ich habe das natürlich mal versucht, kann aber die KK nicht anklicken.

Hätte jemand eine Idee/Lösung dafür?


Gruss
mad
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: MzKlMu am Juni 06, 2021, 09:22:13
Hallo,
das KK muss in die Tabelle, anders geht es nicht, die Auswahl muss ja gespeichert werden, sonst kannst Du den Bericht nicht filtern. Du kannst nach Ausdruck des Berichts alle KK wieder auf False setzen.
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: mad am Juni 06, 2021, 10:53:38
Hallo Klaus,

habe jetzt ein KK "KKAuswahl" in die "tblArtikel" hinzugefügt.

Warscheinlich denke ich mir das etwas zu einfach,
ZitatDu kannst nach Ausdruck des Berichts alle KK wieder auf False setzen.

Ich habe jetzt beim Schliessen des Formulars folgenden Code eingefügt:
Private Sub Form_Close()
 KKAuswahl.Value = 0
End Sub

Da kommt aber ein LZF2448 "Sie können diesem Objekt keinen Wert zuweisen".

Wie gesagt, vermutlich zu einfach gedacht.


Dann hätte ich noch weiteres Anliegen:
Beim Laden des "UFSerie" wende ich folgenden Filter an:
Private Sub Form_Load()
Me.Filter = "Ausgemustert = 0"
Me.FilterOn = True
End Sub

Wenn ich jetzt aber meinen Filter mit dem Kombi-Feld aus dem "HFSerie" anwende, wird der obige Filter wieder zurückgesetzt. Heißt es erscheinen auch alle ausgemusteren Artikel.

Hier der Kombi-Feld-Code:
Private Sub SuchenKennzeichen_AfterUpdate()
      Dim strFilter As String
     strFilter = "KfzKenn = " & Me!SuchenKennzeichen
     Debug.Print strFilter
     With Me!UFSerie.Form
         .Filter = strFilter
         .FilterOn = True
     End With

End Sub

Wie könnte ich jetzt den Filter "Beim Laden" in diesen Code integrieren?


Gruss
mad
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: Beaker s.a. am Juni 06, 2021, 11:27:54
Einfach verketten
strFilter = "Ausgemustert = 0 AND KfzKenn = " & Me!SuchenKennzeichen
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: mad am Juni 06, 2021, 14:00:08
Hallo Kluas,

danke für den Code.

Bei meinem anderen Thema:
ZitatDu kannst nach Ausdruck des Berichts alle KK wieder auf False setzen.

Bin ich jetzt wie folgt vorgegangen:
Ich habe nachfolgende Aktualisierungsabfrage erstellt:
UPDATE tblArtikel SET tblArtikel.KKAuswahl = False
WHERE (((tblArtikel.KKAuswahl)=True));

Dann habe ich bei der Ereignisprozedur "Formular "Beim schliessen" folgenden Code angewendet:
Private Sub Form_Close()
DoCmd.OpenQuery "aktqryAuswahl"
End Sub

Jetzt kommen immer diese beiden Bestätigungsfenster, siehe Anhang. Kann man diese für diesen Fall ausschalten?


Gruss
Manfred
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: HB9876 am Juni 06, 2021, 14:56:16
Zitat von: mad am Juni 06, 2021, 14:00:08Jetzt kommen immer diese beiden Bestätigungsfenster, siehe Anhang. Kann man diese für diesen Fall ausschalten?


Application.DisplayAlerts = False
or
DoCmd.SetWarnings False
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: mad am Juni 06, 2021, 15:27:17
Bin mir nicht sicher ob ich das richtig anwende bzw. an der richtigen stelle einsetze.

1. Versuch:
Private Sub Form_Close()
DoCmd.OpenQuery "aktqryAuswahlEtikettDruck"
Application.DisplayAlerts = False
End Sub
Fehler beim Kompillieren: Methode oder Datenobjekt nicht gefunden!

2. Versuch (Punkt (.) gegen ! ersetzt):
Private Sub Form_Close()
DoCmd.OpenQuery "aktqryAuswahlEtikettDruck"
Application!DisplayAlerts = False
End Sub
Beide Bestätigungsfenster werden noch angezeigt und es kommt der LZF438: Objekt unterstützt diese Eigenschaft oder Methode nicht.

3. Versuch
Private Sub Form_Close()
DoCmd.OpenQuery "aktqryAuswahlEtikettDruck"
DoCmd.SetWarnings False
End Sub
Beide Bestätigungsfenster werden noch angezeigt.


Gruss
mad
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: mad am Juni 06, 2021, 15:36:15
Habe meine Antwort gelöscht.
Hat sich nicht bestätigt.

mad
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: Beaker s.a. am Juni 06, 2021, 17:52:48
Hallo Manfred,
Ein einfaches
Private Sub Form_Close()
    CurrentDb.Execute "aktqryAuswahlEtikettDruck", 128
End Sub
tut's auch ohne Warnings, dafür aber mit einer aussagekräftigen
Fehlermeldung, wenn mit der Abfrage was nicht stimmt.

gruss ekkehard
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: MzKlMu am Juni 06, 2021, 17:59:22
Hallo,
und die extra Aktualisierungsabfrage braucht es auch nicht.
Private Sub Form_Close()
    CurrentDb.Execute "UPDATE tblArtikel SET KKAuswahl = False", DbFailOnerror '=128
End Sub
Ebenso kann hier auch auf die Where Klausel verzichtet werden.
Titel: Re: Datensatz markieren/auswählen per Kontrollkästchen
Beitrag von: mad am Juni 06, 2021, 19:12:37
Hallo Alle Zusammen,

vielen Dank mal wieder für die Unterstützung.


ZitatJetzt kommen immer diese beiden Bestätigungsfenster, siehe Anhang. Kann man diese für diesen Fall ausschalten?
Habe festgestellt das die anderen Befehle auch funktionieren. Allerdings um diese Wirksam werden zu lassen muß die DB neu gestartet werden.


Danke
mad