Hola Agustin.
Según tengo entendido SQLServerSQL asigna el formato de la fecha segun el idioma que esté configurado en la base de datos.
Es decir que si tenés definido un idioma que usa yyyy/mm/dd vas a tener que cambiar la configuración del lenguaje en la base
de datos, o hacer las conversiones al leer y asignar.
Si te decidis por esto último, te hice una función simple para convertir la fecha en ambos formatos de acuerdo a un parámetro:
Código Delphi
[-]
function Fecha_Esp_Eng(const F:string; const Esp: Boolean): string;
begin
if Esp then
Result:= Copy(F,7,4) + '-' + Copy(F,4,2) + '-' + Copy(F,1,2)
else
Result:= Copy(F,9,2) + '-' + Copy(F,6,2) + '-' + Copy(F,1,4);
end;
En tu caso usala:
Código Delphi
[-]
EdFEcha.Text:=Fecha_Esp_Eng(Temp.Fields[1].AsString, False); Temp.Fields[1].AsString:= Fecha_Esp_Eng('14-12-2010', True);
Saludos.