Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как получить дату по Юлианскому календарю?

01.01.2007
function julian(year, month, day: Integer): real;
var
  yr, mth: Integer;
  noleap, leap, days, yrs: Real;
begin
  if year < 0 then yr := year + 1 else yr := year;
  mth := month;
  if (month < 3) then
    begin
      mth := mth + 12;
      yr := yr - 1;
    end;
  yrs := 365.25 * yr;
  if ((yrs < 0) and (frac(yrs) <> 0)) then yrs := int(yrs) - 1 else yrs := int(yrs);
  days := int(yrs) + int(30.6001 * (mth + 1)) + day - 723244.0;
  if days < -145068.0 then julian := days
  else
  begin
    yrs := yr / 100.0;
    if ((yrs < 0) and (frac(yrs) <> 0)) then yrs := int(yrs) - 1;
    noleap := int(yrs);
    yrs := noleap / 4.0;
    if ((yrs < 0) and (frac(yrs) <> 0)) then yrs := int(yrs) - 1;
    leap := 2 - noleap + int(yrs);
    julian := days + leap;
  end;
end;

Взято с Delphi Knowledge Base: https://www.baltsoft.com/