Требуемая структура документов

После проверки каждого документа о поездке вы определяете, какие страницы обязательные, а какие - дополнительные.

Например, в документах об аренде машины:
  • Страница соглашения об аренде - обязательная.
  • Страница о страховании - дополнительная.
Для документов о поездке с несколькими страницами могут понадобиться требования к количеству или порядку страниц в документе каждого типа. В этой таблице приводится сводка по структуре всех типов документов о поездке.
Тип документа Тип страницы Число Обязательно? Порядок
Аренда автомобиля   Любое количество в пакете Нет Любая позиция в пакете
  Соглашение об аренде Одна на документ Да Должна быть первой в документе
  Дополнительное страхование Одна на документ Нет Должна быть второй в документе
Hotel (Гостиница)   Любое количество в пакете Нет Любая позиция в пакете
  Чек за оплату номера Одна на документ Да Должна быть первой в документе
  Питание Любое число на документ Нет Не может быть первой в пакете
  Other_Charges (Прочие расходы) Любое число на документ Нет Не может быть первой в пакете
Flight   Любое количество в пакете Нет Любая позиция в пакете
  Билет на самолет Одна на документ Да Должна быть первой в документе
Эта структурная информация - важный элемент требований к схеме, используемой при реализации иерархии документов прикладной программы. При реализации в рабочем потоке стадии сборки документов вы используете эту информацию для определения, удовлетворяют ли страницы в пакете структурным требованиям.
В примере прикладной программы предполагается, что вы вводите пакеты смешанных документов о поездке с несколькими последовательными страницами, расположенными в правильном порядке. Например, пакет может включать в себя любое количество документов об аренде машины, документов о рейсах и документов о гостиницах. Кроме этого, все страницы внутри каждого документа расположены последовательно и в правильном порядке. Если пакет удовлетворяет структурным требованиям, прикладная программа будет собирать документы автоматически. Однако если в пакете содержатся бесхозные страницы или страницы, не удовлетворяющие правилам целостности документа, потребуется вмешательство оператора.
В следующем примере в пакете нет ошибок, и вмешательство оператора не требуется.
Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы
Соглашение об аренде Дополнительное страхование Билет на самолет Чек за оплату номер Чек за оплату номер Питание Соглашение об аренде Дополнительное страхование Билет на самолет
Во втором примере пакет содержит три ошибки, и требуется вмешательство оператора.
Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы Тип страницы
Дополнительное страхование (1) Чек за оплату номер Чек за оплату номер Билет на самолет Питание (2) Соглашение об аренде Дополнительное страхование (3) Дополнительное страхование (3) Билет на самолет
  1. Бесхозная страница дополнительного страхования должна следовать после страницы соглашения об аренде.
  2. Бесхозная страница питания должна следовать после страницы чека за оплату номера.
  3. Две страницы о дополнительном страховании в документе об аренде машины не допускаются.