parsing - logistica - ¿Cómo entender un archivo EDI?
ejemplos de edi (4)
EDI es un formato de archivo para archivos de texto estructurados, utilizado por muchas organizaciones más grandes y compañías para el intercambio de bases de datos estándar. Tiende a ser mucho más corto que XML, que solía ser excelente cuando los paquetes de datos tenían que ser pequeños. Muchas organizaciones todavía lo usan, ya que muchos sistemas de mainframe usan EDI en lugar de XML.
Con los mensajes EDI, se trata de mensajes de texto que coinciden con un formato específico. Esto sería similar a un esquema XML, pero EDI realmente no tiene un lenguaje de esquema estandarizado. Los mensajes EDI en sí mismos no son realmente legibles por humanos, mientras que la mayoría de las especificaciones no son realmente legibles por máquina. Esta es básicamente la ventaja de XML, donde tanto el XML como su esquema pueden ser leídos por humanos y máquinas.
Lo más probable es que cuando está haciendo banca electrónica a través de algún software del lado del cliente (no basado en el navegador), entonces es posible que ya tenga varios archivos EDI en su sistema. Los bancos aún prefieren EDI sobre XML para enviar datos de transacciones, aunque muchos también usan sus propios formatos de texto personalizados.
Para comprender EDI, primero deberá comprender los datos, más el estándar EDI que desea seguir.
He visto XML antes, pero nunca he visto nada como EDI .
¿Cómo leo este archivo y obtengo la información que necesito? Veo cosas como ~, REF, N1, N2, N4 pero no tengo idea de lo que significan estas cosas.
Estoy buscando ejemplos y documentaciones. ¿Donde puedo encontrarlos?
La guía de Aslo EDI que encontré dice que está basada en "ANSI ASC X12 / ver. 4010". ¿Debo buscar el formulario X12?
Amablemente ayuda.
Suponiendo que la secuencia de datos comienza con "ISA", hacia el comienzo debe haber una sección "~ ST *" seguida de tres dígitos numéricos. Si puede publicar estos tres dígitos, probablemente pueda proporcionarle más información. Además, conocer la industria sería útil. Por ejemplo, el cuidado de la salud usa 270, 271, 276, 277 y algunos otros.
Varias de estas otras respuestas son muy buenas. Intentaré completar algunas cosas que no han mencionado.
EDI es un conjunto de stanards, los más comunes son:
- ANSI X12 (popular en los estados)
- EDIFACT (popular en Europa)
Parece que estás viendo la versión 4010 de X12. Esa es la versión más utilizada (en mi experiencia, de todos modos). Hay muchas y muchas versiones diferentes.
El archivo, o "intercambio", está formado por Segmentos y Elementos (y algunos subelementos). Cada segmento comienza con un identificador de dos o tres palabras (ISA, GS, ST, N1, REF).
La estructura para todos los documentos comienza y termina con un sobre. El sobre generalmente está compuesto por el segmento ISA y los segmentos GS. Puede haber más de un segmento GS por archivo, pero solo debe haber un segmento ISA por archivo (tenga en cuenta que debería, no todos cumplen las reglas).
El ISA es un segmento especial. Mientras que todos los demás segmentos están delimitados, y por lo tanto pueden ser de longitud variable, el segmento ISA es de ancho fijo. Esto es porque le dice cómo leer el resto del archivo.
Comience con los últimos tres caracteres del segmento ISA. Esos le indicarán el delimitador del elemento, el delimitador del subelemento y el delimitador del segmento. Aquí hay un ejemplo de línea ISA.
ISA: 00:: 00: 01: 1515151515: 01: 5151515151: 041201: 1217: U: 00403: 000032123: 0: P: * ~
En este caso, el ":" es el delimitador del elemento, "*" es un delimitador del subelemento y "~" el delimitador del segmento. Es mucho más fácil si solo estás tratando de mirar un archivo para poner saltos de línea después de cada delimitador de segmento (~).
El ISA también le dice de quién es el documento y a qué versión (00403, que también se conoce como 4030) y el número de control de intercambio (0000321233). Las otras cosas probablemente no son importantes para ti en esta etapa.
Este documento es de "01: 1515151515" y de "01: 5151515151". Entonces, ¿qué pasa con el "01:"? Bueno, esto introduce un concepto importante en EDI, el calificador. Varios elementos tienen calificadores, que le dicen qué tipo de datos es el siguiente elemento. En este caso, se supone que el 01 es un número de Dunn y Bradstreet. Otros calificadores para los elementos ISA05 e ISA07 son 12 para el número de teléfono y ZZ para "definido por el usuario". Encontrará el concepto de calificadores en todos los segmentos de EDI. Una regla de oro decente es que si se trata de dos caracteres, es un calificador. Para saber qué significan todos los calificadores, necesitará una guía de estándares (ya sea en copia impresa del cuerpo de estándares de EDI o en algún software).
La siguiente línea es la GS. Este es un grupo funcional (una forma de agrupar documentos similares dentro de un intercambio). Por ejemplo, puede tener varias órdenes de compra y varios reconocimientos funcionales dentro de un ISA. Estos deben colocarse en grupos funcionales separados (segmentos GS). Puede averiguar qué tipo de documentos hay en un segmento GS mirando el primer elemento GS01.
GS: PO: 9988776655: 1122334455: 20041201: 1217: 128: X: 004030
Además del tipo de documento, puede ver el desde (9988776655) y (1122334455) nuevamente. Esta vez están usando identificadores diferentes, lo cual es legal, porque es posible que esté recibiendo un intercambio en nombre de otra persona (si usted es un intermediario, por ejemplo). También puede ver el número de versión nuevamente, esta vez con el "0" posterior (0004030). Use la lógica de dígitos significativos para quitar los ceros iniciales. ¿Por qué hay un cero adicional aquí y no en el ISA? No lo sé. Por último, este segmento GS también tiene su propio identificador, 128.
Eso es todo por el principio del sobre. Después de eso, habrá un bucle de documentos que comenzará con ST. En este caso, todos serían PO, que tienen un código (850), por lo que la línea comenzaría con ST: 850: blablabla
El material de la envolvente termina con un segmento GE que hace referencia al identificador GS (128) para que sepa qué segmento se está cerrando. Luego viene una IEA que de manera similar cierra el ISA.
GE: 1: 128 ~ IEA: 1: 000032123 ~
Esa es una descripción general de la estructura y cómo leerla. Para entenderlo necesitarás un libro de referencia o software para que entiendas los códigos, muchísimo tiempo y mucha práctica. Buena suerte, y publique nuevamente si tiene preguntas más específicas.
Wow, flashbacks. Han pasado más de dieciséis años ...
En principio, cada línea es un "segmento", y los identificadores son el comienzo de la línea es un identificador de segmento. Cada segmento contiene "elementos" que son esencialmente campos posicionales. Están delimitados por "delimitadores de elementos".
Diferentes segmentos significan cosas diferentes, y pueden indicar construcciones de bucle, repeticiones, etc.
Necesita obtener una versión actual del estándar para el análisis básico, y luego necesita el diccionario de datos para describir el contenido del documento con el que está tratando, y luego puede necesitar un perfil de la industria, una guía de implementación o algo similar para tratar con las convenciones para el tipo de documento particular en su entorno.
¿Ejemplos? No es actual, pero estoy seguro de que podría encontrar un montón utilizando su motor de búsqueda de elección. Una vez que finalice el análisis básico del segmento / elemento, estará lidiando con los datos de nivel de su aplicación, y no sé cuánto le ayudará un ejemplo general allí.