Does anybody know how to convert today's Julian date (2456425) to JDE Julian date (113133)?
Thanks
Does anybody know how to convert today's Julian date (2456425) to JDE Julian date (113133)?
Thanks
To me it looks like todays Julian date (at least in Oracle's view) should be 2456426. But, OK, if in your terms today (May 13, 2013) is Julian date 2456425 then the following code should get you what you want:
DECLARE
nJulian NUMBER := 2456425;
nCentury NUMBER;
nYear NUMBER;
nDay NUMBER;
nJDEdate NUMBER;
BEGIN
DBMS_OUTPUT.PUT_LINE('Date=' || TO_DATE(nJulian+1, 'J'));
nCentury := TRUNC(TO_NUMBER(TO_CHAR(TO_DATE(nJulian+1, 'J'), 'YYYY')) / 100) - 19;
DBMS_OUTPUT.PUT_LINE('nCentury=' || nCentury);
nYear := TO_NUMBER(TO_CHAR(TO_DATE(nJulian+1, 'J'), 'YYYY')) -
(TRUNC(TO_NUMBER(TO_CHAR(TO_DATE(nJulian+1, 'J'), 'YYYY')) / 100) * 100);
DBMS_OUTPUT.PUT_LINE('nYear=' || nYear);
nDay := TO_NUMBER(TO_CHAR(TO_DATE(nJulian+1, 'J'), 'DDD'));
DBMS_OUTPUT.PUT_LINE('nDay=' || nDay);
nJDEdate := (nCentury * 100000) + (nYear * 1000) + nDay;
DBMS_OUTPUT.PUT_LINE('nJDEdate=' || nJDEdate);
END;
Share and enjoy.