Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Abfrage mit mehreren Kriterien u. A. Datum zwischen

Begonnen von NewDigger1970, Dezember 13, 2016, 12:01:10

⏪ vorheriges - nächstes ⏩

NewDigger1970

Hallo Ihr fleissigen Helferlein! Ich würde mich freuen, wenn Ihr mir helfen könntet.
Ich erstelle eine Abfrage über 2 Tabellen, in der das Ergebnis im Ufo eines Hfo angezeigt wird. Es sollen die DS angezeigt werden, die die Bedingungen der Abfrage nicht erfüllen. Das klappt mit 2 Bedingungen hervorragend. (PersonalNr und Baustellenname) Jetzt gibt es noch zwei weitere Bedingungen die jeweils in Zusammenhang mit der PersonalNr und einem Datum stehen. Es ist eine Personalverwaltung uns die Kriterien für die Auswahl sind: Wenn der Mitarbeiter schon auf die Baustelle gebucht ist, soll er nicht angezeigt werden. Wenn er auf eine andere Baustelle gebucht ist, deren geplantes Ende im Gültigkeitszeitraum der Baustelle liegt, soll er nicht angezeigt werden und Wenn er auf eine Baustelle gebucht ist, die im Gültigkeitszeitraum der Baustelle anfängt, soll er nicht angezeigt werden. Realisiert habe ich den ersten Teil mit einer Select from .... Not Exsist Abfrage.  Bei dem Versuch jetzt die Daten ins Spiel zu bringen tue ich mich schwer.

Hier mein Ansatz:
Dim sDatum As String
        Dim eDatum As String
       
        sDatum = Forms!frmAuswahlPers!BaustBeginn
        eDatum = Forms!frmAuswahlPers!BaustEnde
   
   
    sSQL = " SELECT * " & _
            " FROM tblGrundDatPers" & _
            " WHERE Not Exists (SELECT * " & _
                                " FROM tblPersBelegt" & _
                                        " WHERE tblPersBelegt.[PersPlanID] = tblGrundDatPers.[PersID]" & _
                                        " AND tblPersBelegt.BaustNameBelegt = Forms!frmAuswahlPers!BaustName" & _
                                        " OR tblPersBelegt.[PersPlanID] = tblGrundDatPers.[PersID]" & _
                                        " AND tblPersBelegt.DatVonBelegt BETWEEN #" & _
                                        " Format$(sDatum, "m-d-yy") & "# AND #" & _
                                        " Format$(eDatum, "m-d-yy") & "#"")"

Fehlermeldung ist : Fehler beim Kompilieren, Syntaxfehler     
Ich hoffe, Ihr könnt mir helfen ..... Danke im Voraus
Viele Grüße
Peter

el_gomero

Hallo Peter,

den Formularbezug musst du so unterbringen:


... " WHERE tblPersBelegt.[PersPlanID] = tblGrundDatPers.[PersID]" & _
                                        " AND tblPersBelegt.BaustNameBelegt ='" & Forms!frmAuswahlPers!BaustName  & "' ..."
Gruß
Jürgen


Hilfe nach bestem Wissen, ohne Anspruch auf Richtigkeit und Vollständigkeit.
*feedback erwünscht*
Bitte Tipps lesen

NewDigger1970

#2
Hallo Jürgen, Danke für den Tip, Mein Access weiß das wohl genau so wenig, wie ich, denn der Teil läuft ... ;-)
Ich werde das gleich ändern!
Habe es geändert und danach einen Syntaxfehler. Ohne Hochkommata läuft es problemlos .... ???????
Gruß Peter
Viele Grüße
Peter

DF6GL

Hallo,
in welcher Prozedur steht denn der Code?


Zudem: Es gibt noch Fehler bei der Datums-Formatierung:

Dim sDatum As Date
        Dim eDatum As Date
        Dim sSQL As String

        sDatum = Forms!frmAuswahlPers!BaustBeginn  'je nachdem, wo der Code steht:  Me!BaustBeginn
        eDatum = Forms!frmAuswahlPers!BaustEnde  'je nachdem, wo der Code steht:  Me!BaustEnde
   
.
sSQL = " SELECT * " & _
            " FROM tblGrundDatPers" & _
            " WHERE Not Exists (SELECT * " & _
                                " FROM tblPersBelegt" & _
                                        " AND tblPersBelegt.DatVonBelegt BETWEEN " & _
                                         Format(sDatum, "\#yyyy-mm-dd\#") & " AND " & _
                                         Format(eDatum, "\#yyyy-mm-dd\#")  & " )"
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

NewDigger1970

#4
Hallo Franz, der Code steht im Hauptformular und ist die Abfrage zum UF
Und das mit der Formatierung des Datums habe ich mir gedacht. Habe es aber noch nicht gemacht und deswegen um Hilfe gebeten ....

Viele Grüße
Peter

DF6GL

Hallo,

in meinem Post habe ich das doch korrigiert...
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

NewDigger1970

Das weiß ich, Aber es funktioniert noch nicht! Morgen mehr dazu! ;-)
Danke erstmal!
Viele Grüße
Peter