Обработка событий для неанализируемых IDoc

Адаптер может обрабатывать неанализирумые события ALE для приложений или компонентов, в которых есть функция синтаксического анализа. Процедура обработки неанализируемых IDoc аналогична процедуре обработки анализируемых IDoc, за исключением того, что адаптер не анализирует компонент данных IDoc. Прямой обмен документами IDoc в адаптере делает возможным высокопроизводительное асинхронное взаимодействие с SAP, поскольку анализ и сериализация IDoc происходит вне адаптера.

Процедура обработки данных адаптером зависит от того, какой это пакет IDoc (разделяемый или неделимый), и требуется ли анализировать данные.
  • Адаптер может обрабатывать пакет IDoc как целое или как отдельные IDoc. Если IDoc принимается адаптером от системы SAP в виде пакета IDoc, то этот пакет либо разбивается и обрабатывается как отдельные IDoc, либо обрабатывается как пакет. Как именно должен обрабатываться данный IDoc, определяется значением метаданных SplitIDocPacket на уровне бизнес-объектов.

    В случае разделяемых IDoc оболочка содержит только один неанализируемый объект IDoc.

  • Метаданные Type указывают, следует ли анализировать данные. Для неанализируемых IDoc это значение равно UNPARSEDIDOC, для анализируемых - IDOC. Это значение устанавливается в ходе поиска служб предприятия.

Формат неанализируемых данных

В формате неанализируемого IDoc с фиксированной шириной поля данные сегмента IDoc задаются в поле IDocData бизнес-объекта. Это массив байтов данных фиксированной длины.

Вся длина сегмента может не использоваться. Адаптер добавляет пробелы в поля, содержащие данные; остальные поля игнорируются, и устанавливается конец сегмента. Конец сегмента обозначается символом NULL.

На следующем рисунке показан сегмент, поля которого для удобства разделены символом ‘|’.
Рис. 1. Пример сегмента до обработки
Неанализируемый сегмент; показано несколько пустых полей в конце сегмента.
При обработке такого сегмента в неанализируемых данных адаптер учитывает только поля, содержащие данные. Ширина каждого поля сегмента сохраняется. Когда адаптер находит последнее поле с данными, то добавляет символ NULL для обозначения конца сегмента.
Рис. 2. Пример сегмента после обработки
Неанализируемый сегмент после обработки; пустые поля в конце сегмента заменены символом NULL.

Следующий обработанный сегмент неанализируемых данных должен добавляться после символа NULL.

Ограничения

Возможность обработки неанализируемых событий накладывает определенные ограничения на тип IDoc в приложении J2EE.
  • Для данного типа IDoc или типа сообщения приложение J2EE поддерживает либо анализируемый, либо неанализируемый формат бизнес-объекта.
  • Если для данного типа IDoc выбирается неанализируемый формат бизнес-объекта для входящих запросов, то в одном и том же файле EAR нельзя использовать входящие и исходящие интерфейсы, так как обработка исходящих запросов основана на анализируемых бизнес-объектах.

Условия использования |


(c) Copyright IBM Corporation 2005, 2006.
Данная справочная система Information Center создана на основе технологии Eclipse (http://www.eclipse.org)