viernes, 13 de mayo de 2016

[JDE Edwards] JDETables - Web Referencia de Tablas

Tanto para los analistas funcionales como para los desarrolladores de JD Edwards es muy importante conocer las tablas con las que trabajamos y sus características: columnas, prefijos, campos, claves primarias, índices, etc. Y también es muy importante conocer los tipos de datos y sus características de cada columna (las definidas en el Diccionarios de Datos), así como las relaciones de las tabla.

E incluso para los que desarrollamos, es muy útil conocer la posición de cada columna en la tabla cuando tenemos que hacer alguna operación (fetch single, select, fetch next, update, etc) - sobre todo con tablas formadas por muchas columnas.-

Yo vengo utilizando para ello desde hace bastante tiempo una página web muy útil llamada JDETables:


Nos permite buscar las tablas en las distintas versiones de JDE (actualmente 8.12, 9.10 y 9.12), y nos detalla todas las características tales como las columnas que compone la tabla (con el alias, descripción, tipo de dato, etc), prefijo, clave primaria, índices, código de sistema al que pertenece, descripción de la tabla, número de columnas e índices, etc. E incluso nos permite construir sentencias SQL (select, update e insert).





Podemos ver todas las tablas de cada código de sistema, las tablas más consultadas, todas las tablas que utilizan un campo cuando clickamos en él, etc.


Y además es gratuita y no es necesario registrarse.


¡Una herramienta imprescindible para nuestro día a día!





9 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
    Respuestas
    1. Hola Alfredo,

      estoy comenzando con el JD y esto de las tablas me ha servido de gran ayuda, ¡GRACIAS! pero tengo varias dudas:
      - ¿cómo puedo distinguir en la tabla cuál es la clave primaria?
      - ¿existe alguna forma de ver la relación entre las tablas?
      - por ejemplo, el campo AN8 tiene que ser igual en todas las tablas en las que sale ese campo, o en cada tabla es independiente?
      Y por último, si pudieras recomendarme alguna lectura para entender todo esto de las tablas, te lo agradecería.
      Un saludo.

      Eliminar
    2. Hola Raquel,
      Entiendo que la nomenclatura y la arquitectura de la base de datos de JDE al principio pueda ser lioso, pero todo tiene su explicación. Tenemos que recordar que ésta arquitectura viene de AS400 y no ha cambiado (por el coste que ello supondría).
      A tus preguntas:
      - ¿cómo puedo distinguir en la tabla cuál es la clave primaria?: en jdetables siempre la que está en los índices la primera, la que indica ((Primary/Unique). En tu JDE entrando en el diseñador de la tabla, en la cuadrícula de los índices aquella que aparece con la llave y un p en la esquina inferior derecha, abres el desplegable y te aparecerán los campos.
      - ¿existe alguna forma de ver la relación entre las tablas? A tu pregunta, la respuesta es NO. En base de datos en JDE no tenemos foreign key, la relación se hace a nivel de lógica de software. Ésto tiene sus defensores y detractores, y da para mucho que debatir..
      - por ejemplo, el campo AN8 tiene que ser igual en todas las tablas en las que sale ese campo, o en cada tabla es independiente? En todas las tablas cada campo es igual. En JDE los campos se definen en el diccionario de datos, por lo cual, será igual en todas las tablas. Si se cambia algo del campo en el diccionario de datos hay que regenerar éste (y en ocasiones regenerar las tablas). Es algo común en algunos sitios con los decimales cuando se necesita más precisión. No obstante, te recomiendo que cuando sean campos para programas tuyos, crees un nuevo campo y no modifiques alguno existente (por el impacto que tiene).
      - si pudieras recomendarme alguna lectura para entender todo esto de las tablas, te lo agradecería: en learnjde.com, en el support de oracle, etc. (en mi blog -acepto propuestas-... ;) )
      PD: perdona, no me llegaron las notificaciones y no pude verlo antes. De todas formas para otra si te urge y ves que no te contesto, en el blog está mi linkedin, twitter, etc.
      Gracias y un saludo!

      Eliminar
  2. si por ejemplo tengo una tabla f.. PERO a esa tabla le agrego dos campos .. .cuando almacene información y afecte a esa tabla ..los campos que le agregue afectan a mas tablas ? o solo a esa ya que los que tiene de defaul si involucra mas tablas. .
    si alguien pudiera contestar mi pregunta .. ?

    ResponderEliminar
    Respuestas
    1. Buenas, si añades campo a una tabla y almacenes información sólo afectará a esa tabla. Recuerda realizar backup previamente, regenerar la tabla y volcar el backup.
      Saludos.

      Eliminar
  3. Hola buenas tardes, Alfredo,

    estoy comenzando con el JD y necesito identificar en la Generación del Libro legalizado de LM cuentas (R76A8020) información de algunas tablas, para ser mas especifica necesito saber donde se alojan las fechas de registro donde se guarda en que tabla puede ver ese tipo de dato?, tengo dos fecha la fecha de registro y la fecha del la factura o asiento.

    ResponderEliminar
  4. Hola, perdona por la tardanza en contestar, estuve con cierre de proyectos y luego unos días de vacaciones :)
    El batch que me comentas por lo que he podido ver es para localización de Argentina, la cual no he trabajado. Pero he visto con Object Browser (no sé si utilizas ésta herramienta, es muy práctica te recomiendo instalarla en tu fat client, ya pondré un post acerca de ello) que utiliza la vista V0911Y que está basada en F0911 de contabilización. Bien, esta tabla tiene -como la gran mayoría- unos campos de auditoría: USER, UPMJ, UPMT, PID, JOB que te indican la última actualización del registro: usuario, fecha, hora, programa y trabajo/servidor. Y la fecha de contabilización/asiento/LM es la DGJ. Puedes verlo aquí: http://www.jdetables.com/?schema=920&table=f0911
    De todas formas, mi perfil es más técnico aunque pues con el tiempo vas adquiriendo conocimiento funcional. Así que te recomiendo usar el support de oracle, donde en los whitepaper especificarán más en detalle.
    Espero haberte ayudado. Un saludo.

    ResponderEliminar