Have you tried
ldDate = DATE()
lcSQL = "SELECT Numero FROM News WHERE StartDate=CTOD( '" + DTOC( ldDate) + "')"
Its clunky though - with the CTOD in the expression that will get evaluated.
We use Private variables to pass variables in our SQL expressions - something you probably don't want to do but...
eg.
PRIVATE pdDate
pdDate = DATE()
lcSQL = "SELECT Numero FROM News WHERE StartDate = ?pdDate"
...pass SQL expression
RELEASE pdDate
and then have code to evaluate the variables prefixed with the question mark.
again, it has its downsides with the variable being available in other methods and PRGs, but the lifetime of the variable is usually quite short - and if you have a standard naming convention for the Private vars then they shouldn't really clash with others.
regards
Ian