W delphi 7 było tak, że jak tworzyłeś projekt i na formę położyłeś DateTimePicker
data była zawsze w dniu utworzenia projektu. czasami zdarzało się, że data była liczona od 31 grudnia starego roku. Wówczas stosowałem dzień - 1; U mnie działa Twój kod poprawnie.
https://4programmers.net/Delphi/Gotowce/Zabawa_z_dat%C4%85_;)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
DataRozpoczeciaDzialalnosciFirmy : TDateTime;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
DataRozpoczeciaDzialalnosciFirmy := EncodeDate(1899,12,31);
Showmessage(datetostr(DataRozpoczeciaDzialalnosciFirmy));
DataRozpoczeciaDzialalnosciFirmy := EncodeDate(2000,01,01);
Showmessage(datetostr(DataRozpoczeciaDzialalnosciFirmy));
end;
end.