Gracias por la pronta contestacion.
En casa y con un poco de calma he variado un poco el codigo, ya que el ASDATETIME no me funcionaba. Lo hice como sigue:
Código Delphi
[-]
ADOQDatos.Close;
ADOQDatos.SQL.Clear;
ADOQDatos.SQL.Add('SELECT F_Mov, B1, B2, B3, Ord_Eje_Inc, Ord_Noeje, Ord_Bien, Observac FROM MOV_SCADA WHERE F_Mov = :ParFecha ORDER BY B1');
ADOQDatos.Parameters.ParamByName('ParFecha').DataType := ftDateTime;
ADOQDatos.Parameters.ParamByName('ParFecha').Value := MCalendario.Date;
ADOQDatos.Open;
Yo antes de esto hacia un apaño, ya que me di cuenta que lo cambiaba solo en los 12 primeros dias y lo estaba haciendo con strings. Una chapuza como un templo (hay que tener dos variables en la funcion de tipo string, busco y buscom).
Código Delphi
[-]
busco:=datetostr(MCalendario.Date);
if strtoint(copy(datetostr(MCalendario.Date), 0, 2)) < 13 then
begin
buscom:=trim(copy(busco, 4, 2)+'/'+copy(busco, 0, 2)+copy(busco, length(busco)-4, 5));
busco:=buscom;
end;