Kjeld Sørensen <kjeld.s@mobilixnet.dk> skrev i en
nyhedsmeddelelse:h2Gc6.122$Wv6.27375668@news.mobilixnet.dk...
> Hjælp Hvad gør jeg galt?
> Jeg har brug for at formatere en dato lagret i en tabel i kort datoformat
> (fx '15-06-00')
> Men det lykkes kun når jeg formatere dagsdato, ved brug af 'Date' fx. . .
>
> procedure xx;
> var
> Dato: String;
> begin
> DateTimeToString(Dato, 'dddd" den "d". "mmmm yyyy', Date);
> Dato[1]:= upcase(Dato[1]);
> end;
>
> . . . virker ok, men hvis 'Date' udskiftes med en variabel indeholdende
det
> korte datoformat får jeg følgende fejl:
> [Error] xx: Incompatible types: 'TDateTime' and 'String'
> eller når jeg retter i typebetegnelserne en eller anden dato fra det 1800
> århundrede!
Bruger du rigtig Type ? - Jeg har konventeret lidt frem og tilbage så du kan
se idden med det
procedure TForm1.Button1Click(Sender: TObject);
Var
tmpDate: TDateTime;
tmpString: String;
begin
tmpString := '1-1-2001 13:00';
tmpDate := StrToDateTime(tmpString);
DateTimeToString(tmpString, 'dddd" den "d". "mmmm yyyy', tmpDate);
edit1.Text := tmpString; file://Kan også være en DBEdit1.Text
end;
Et alternertiv er at bruge en TMaskedit komponent (Under Additional), men du
skal så selv sørge for den peger i din database....
>
> Jeg har datoen i et DBEdit-felt som altid viser den rigtige dato (i det
> korte format) og i virkeligheden er det vel nemmere at formatere
> DBEdit1.Text direkte, men ak - det kan jeg heller ikke finde ud af. Er der
> noget håb for mig?
>
> Mvh Kjeld
>
>
Mvh
Ulrik