Подтвердить что ты не робот

Как понять файл EDI?

Я видел XML раньше, но я никогда не видел ничего подобного EDI.

Как мне прочитать этот файл и получить нужные мне данные? Я вижу такие вещи, как ~, REF, N1, N2, N4, но понятия не имею, что означает любой из этих материалов.

Я ищу примеры и документы. Где я могу их найти?

АОЛО Руководство EDI, которое я нашел, говорит, что оно основано на "ANSI ASC X12/ver. 4010". Должен ли я искать форму X12?

Просьба помочь.

4b9b3361

Ответ 1

Ничего себе, воспоминания. Прошло более шестнадцати лет...

В принципе, каждая строка представляет собой "сегмент", а идентификаторы - это начало строки, это идентификатор сегмента. Каждый сегмент содержит "элементы", которые являются по существу позиционными полями. Они разделены "разделителями элементов".

Различные сегменты означают разные вещи и могут указывать на конструкции циклов, повторы и т.д.

Вам нужно получить текущую версию стандарта для основного анализа, а затем вам нужен словарь данных для описания содержимого документа, с которым вы имеете дело, и тогда вам может понадобиться отраслевой профиль, руководство по внедрению или аналогично рассмотрению соглашений для конкретного типа документа в вашей среде.

Примеры? Не в настоящее время, но я уверен, что вы можете найти целую кучу, используя свой поисковый движок. После того, как вы выполните базовый анализ сегмента/элемента, вы имеете дело со своими данными уровня приложения, и я не знаю, насколько общий пример поможет вам там.

Ответ 2

Некоторые из этих других ответов очень хороши. Я постараюсь заполнить некоторые вещи, которые они не упомянули.

EDI - это набор стандартов, наиболее распространенными из которых являются:

  • ANSI X12 (популярный в штатах)
  • EDIFACT (популярный в Европе)

Похоже, вы смотрите на X12 версии 4010. Это наиболее широко используемая (по моему опыту, во всяком случае) версия. Есть много разных версий.

Файл, или, по сути, "обмен", состоит из сегментов и элементов (и иногда подэлементов). Каждый сегмент начинается с идентификатора two- или трех слов (ISA, GS, ST, N1, REF).

Структура всех документов начинается и заканчивается конвертом. Конверт обычно состоит из сегмента ISA и сегментов GS. В одном файле может быть более одного сегмента GS, но в каждом файле должен быть только один сегмент ISA (обратите внимание, что не все играют по правилам).

ISA - это особый сегмент. В то время как все остальные сегменты разделены и, следовательно, могут иметь различную длину, сегмент ISA имеет фиксированную ширину. Это потому, что он говорит вам, как прочитать остальную часть файла.

Начните с последних трех символов сегмента ISA. Они расскажут вам разделитель элемента, разделитель подэлемента и разделитель сегмента. Вот пример строки ISA.

ISA: 00:: 00:: 01:1515151515: 01: 5151515151: 041201:1217: U: 00403: 000032123: 0: P: * ~

В этом случае ":" - это разделитель элемента, "*" - разделитель субэлемента, а "~" - разделитель сегмента. Намного проще, если вы просто пытаетесь посмотреть на файл, чтобы поставить разрывы строк после каждого разделителя сегмента (~).

ISA также сообщает, от кого и из какого документа, какая версия (00403, также известная как 4030) и контрольный номер обмена (0000321233). Другие вещи, вероятно, не важны для вас на данном этапе.

Этот документ от отправителя "01:1515151515" и от получателя "01: 5151515151". Так что с "01:"? Что ж, это вводит важную концепцию в EDI, классификатор. Несколько элементов имеют квалификаторы, которые сообщают вам, к какому типу данных относится следующий элемент. В этом случае 01 должен быть числом Данна и Брэдстрита. Другими квалификаторами для элементов ISA05 и ISA07 являются 12 для номера телефона и ZZ для "пользовательского". Вы найдете концепцию классификаторов во всех сегментах EDI. Приличное эмпирическое правило заключается в том, что если в нем два символа, то это классификатор. Чтобы узнать, что означают все квалификаторы, вам потребуется руководство по стандартам (либо в печатном виде из органа по стандартам EDI, либо в каком-либо программном обеспечении).

Следующая строка - GS. Это функциональная группа (способ группировки похожих документов в рамках обмена). Например, у вас может быть несколько заказов на покупку и несколько функциональных подтверждений в ISA. Они должны быть помещены в отдельные функциональные группы (сегменты GS). Вы можете выяснить, какие типы документов находятся в сегменте GS, посмотрев на первый элемент GS01.

GS: РО: 9988776655: 1122334455: 20041201:1217: 128: X: 004030

Помимо типа документа, вы можете увидеть от (9988776655) и (1122334455) снова. На этот раз они используют разные идентификаторы, что является законным, потому что вы можете получать обмен от имени кого-то другого (например, если вы посредник). Вы также можете увидеть номер версии снова, на этот раз с завершающим "0" (0004030). Используйте значительную логику цифр, чтобы убрать начальные нули. Почему здесь есть дополнительный ноль, а не в ISA? Я не знаю. Наконец, этот сегмент GS также имеет свой собственный идентификатор 128.

Что это за начало конверта. После этого будет цикл документов, начинающийся с ST. В этом случае все они будут PO, которые имеют код (850), поэтому строка будет начинаться с ST: 850: blablabla

Материал конверта заканчивается сегментом GE, который ссылается на идентификатор GS (128), чтобы вы знали, какой сегмент закрывается. Затем приходит IEA, который аналогичным образом закрывает ISA.

GE: 1:128 ~ IEA: 1: 000032123 ~

Это обзор структуры и как ее читать. Чтобы понять это, вам понадобится справочник или программное обеспечение, чтобы вы понимали коды, много-много времени и много-много практики. Удачи, и напишите снова, если у вас есть более конкретные вопросы.

Ответ 3

EDI - это формат файла для структурированных текстовых файлов, используемый многими крупными организациями и компаниями для стандартного обмена базами данных. Он, как правило, намного короче, чем XML, который был отличным, когда пакеты данных были небольшими. Многие организации все еще используют его, поскольку многие системы мэйнфреймов используют EDI вместо XML.

С сообщениями EDI вы имеете дело с текстовыми сообщениями, которые соответствуют определенному формату. Это было бы похоже на схему XML, но EDI на самом деле не имеет стандартизованного языка схемы. EDI-сообщения сами по себе не являются удобочитаемыми для человека, в то время как большинство спецификаций не являются машиносчитываемыми. Это в основном преимущество XML, где и XML, и его схема могут быть прочитаны людьми и машинами.

Скорее всего, когда вы занимаетесь электронным банковским обслуживанием через какое-то клиентское программное обеспечение (а не на основе браузера), у вас может быть уже несколько файлов EDI в вашей системе. Банки по-прежнему предпочитают EDI через XML для отправки данных транзакций, хотя многие также используют свои собственные текстовые форматы.

Чтобы понять EDI, вам сначала нужно понять данные, а также стандарт EDI, который вы хотите использовать.

Ответ 4

Предполагая, что поток данных начинается с "ISA", к началу должен быть раздел "~ ST *", за которым следуют три числовые цифры. Если вы можете опубликовать эти три цифры, я могу, возможно, предоставить вам дополнительную информацию. Кроме того, знание отрасли было бы полезно. Например, здравоохранение использует 270, 271, 276, 277 и несколько других.