Variable in SetFilterDirectSQL

Hallo,
ich versuche in eine SetFilterDirectSQL Abfrage eine Variable einzubinden:

sStart = "01.06.2024" 
bFilter = oRecordSet.SetFilterDirectSQL("SELECT ""ID"" FROM ""SalesDocuments"" WHERE CONVERT(date, ""SalesDocuments"".""Date"") <= CONVERT(date, '2024-09-01 00:00:00', 120) AND CONVERT(date, ""SalesDocuments"".""Date"") >= CONVERT(date, " & sStart & ", 104) ")

Bekomme aber die Fehlermeldung :
42000 Falsche Syntax in der Nähe von ".2024".

Wo liegt der Fehler ?

Sie müssen sStart noch in einfache Anführungszeichen einschließen.

CONVERT(date, '" & sStart & "', 104)

Hier ist übrigens noch eine potentielle kleine Stolperfalle drin:

Falls dieses Belegdatum bei neuen Belegen mit „now()“, „getdate()“, „CURRENT_TIMSTAMP“ oder ähnlichem befüllt würde, also evtl. einen (ggf. in der Oberfläche unsichtbaren) Uhrzeitanteil enthält, dann würde trotz <= kein einziger am 01.09.2024 erzeugte Beleg im Ergebnis sein, weil die Uhrzeit dieser Belege ziemlich sicher > 00:00:00.000 wäre.

In den combit CRM-Solution passt das mit dem Belegdatum, dort ist der Uhrzeitanteil immer fest „0:00“, so dass das <= für alle am 01.09.2024 erstellten Belege zutrifft.

Vielen Dank, so klappts.