La Fecha Juliana en JD Edwards
JD Edwards (JDE) utiliza un formato de fecha juliana que puede resultar confuso para quienes no están familiarizados con este software ERP. A diferencia de la fecha juliana astronómica, el formato de JDE tiene una estructura específica que facilita la gestión de fechas dentro del sistema. En este artículo, exploraremos cómo se construye, interpreta y convierte la fecha juliana de JD Edwards.
¿Qué es la Fecha Juliana en JD Edwards?
La fecha juliana que utiliza JDE es utilizada para representar fechas entre el 1 de Enero de 1900 y el 31 de Diciembre de 2899; consta de seis dígitos que tienen la siguiente estructura:
CYYDDD
Donde:
-
C: Representa el siglo (0 para 1900, 1 para 2000, 2 para 2100, etc.)
-
YY: Representa el año dentro del siglo (por ejemplo, 15 para 2015)
-
DDD: Representa el día dentro del año (001 para el 1 de enero, 365 para el 31 de diciembre en años no bisiestos)
Por ejemplo, la fecha juliana 115001 se interpreta como el 1 de enero de 2015.
Cómo Interpretar la Fecha Juliana
Bien, ahora que ya sabemos qué es la fecha juliana, veamos algunos ejemplos de como deberíamos desglosarla para convertirla en el formato gregoriano DD/MM/YYYY que utilizamos diariamente.
Tomemos el ejemplo 115044.
-
C = En esta posición tenemos el valor 1. Entonces partiendo del siglo 19, sumamos este dígito (19 + 1) y multiplicamos por 100 para obtener el siglo. Esto nos da un resultado de 2000
-
YY = En esta posición tenemos el valor 15. Si sumamos este valor al resultado que obtuvimos en el punto anterior; podemos llegar al año. En este caso el año es 2015.
-
DDD = En esta posición tenemos el valor 044. Este valor represente el día 44 dentro del año que obtuvimos en el punto anterior. Si tomamos como 1, el 1 de Enero, y vamos avanzando hasta llegar al día 44 llegaremos al día 13 de Febrero en el calendario gregoriano. Así llegamos al resultado final. El valor 115044 representa la fecha 13/02/2015.
Veamos ahora el ejemplo 114181. Si aplicamos el mismo procedimiento; primero determinaríamos que el año es 2014. Luego tendríamos que ir contando los días hasta confirmar que el día 181 representa el 30 de Junio. Por lo tanto el resultado final sería que 114181 representa la fecha 30/06/2014.
Utilidad en JD Edwards
Los que han trabajado con fechas en programación, saben que manejar fechas sin una librería suele ser un gran dolor de cabeza. La fecha juliana de JDE; al representar las fechas como números, permite ordenar registros de manera eficiente y mantener consistencia en las aplicaciones y reportes. Es comúnmente utilizada en todas las tablas de transacciones, facturas y auditorías.
Herramientas de conversión
Entender y manejar correctamente la fecha juliana de JD Edwards facilita el análisis de datos y evita errores en los reportes. Pero ir contando los días para convertir ese número en una fecha que podamos entender no es un proceso eficiente. Para esto, podemos utilizar algunas herramientas para convertir la fecha juliana al formato gregoriano fácilmente. Por ejemplo:
-
El conversor de este sitio: Conversor de fecha juliana
-
Excel: Podemos utilizar la siguiente fórmula para convertir la fecha juliana con Excel:
=FECHA(1900+IZQUIERDA(A2;3);1;1) + RESIDUO(A2;1000)-1
-
SQL: Si estamos trabajando directamente en la base de datos. Podemos utilizar la siguiente sentencia para convertir la fecha en SQL.
- Base de datos DB2:
select to_date(1900000 + PDTRDJ, 'yyyyddd') fecha from PRODDTA.F4311
- Base de datos Oracle:
select To_date(decode(PDTRDJ, 0, null, 1900000 + PDTRDJ), 'YYYDDD') fecha from PRODDTA.F4311