Due benötigst ein CAST, der in QRY so ggf. nicht möglich ist:

timestamp('2005-03-15-12.00.00.000001')

bzw. in QM-SQL:
timestamp(&DATETIME)

also
STRQMQRY SETVAR((DATETIME '''2005-03-15-01.02.03.000001'''))

Beachte die Hochkomma, der Timestamp muss als Zeichenkette übergeben werden, da ansonsten Rechenoperationen angenommen werden:

2005 - 03 - 15 - 01.02.03.000001

Da SQL sowohl Komma als auch Punkt als Dezimaltrenner erkennt, ist die Zahl 01.02.03.000001 eben ab .03 falsch (2. Dezimalpunkt).