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
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.
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 SubDa 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 SubWenn 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
Einfach verketten
strFilter = "Ausgemustert = 0 AND KfzKenn = " & Me!SuchenKennzeichen
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 SubJetzt kommen immer diese beiden Bestätigungsfenster, siehe Anhang. Kann man diese für diesen Fall ausschalten?
Gruss
Manfred
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
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 SubFehler beim Kompillieren: Methode oder Datenobjekt nicht gefunden!
2. Versuch (Punkt (.) gegen ! ersetzt):
Private Sub Form_Close()
DoCmd.OpenQuery "aktqryAuswahlEtikettDruck"
Application!DisplayAlerts = False
End SubBeide 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 SubBeide Bestätigungsfenster werden noch angezeigt.
Gruss
mad
Habe meine Antwort gelöscht.
Hat sich nicht bestätigt.
mad
Hallo Manfred,
Ein einfaches
Private Sub Form_Close()
CurrentDb.Execute "aktqryAuswahlEtikettDruck", 128
End Subtut's auch ohne Warnings, dafür aber mit einer aussagekräftigen
Fehlermeldung, wenn mit der Abfrage was nicht stimmt.
gruss ekkehard
Hallo,
und die extra Aktualisierungsabfrage braucht es auch nicht.
Private Sub Form_Close()
CurrentDb.Execute "UPDATE tblArtikel SET KKAuswahl = False", DbFailOnerror '=128
End SubEbenso kann hier auch auf die Where Klausel verzichtet werden.
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