Макеты

Подпрограмма настраивает макеты текстовых файлов, загружаемых в «Ма-3». Таким образом, ваши данные сохраняются в XML-файлах и хранятся в папке, определенной в параметре MV_LAYMILE.

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

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

Текстовый файл для загрузки клиента. Каждая строка – это запись в реестре клиента.
000001|CUSTOMER TEST 1|12345678901234|100.00
000001|CUSTOMER TEST 2|23456789012345|350.00
 A|000001|CUSTOMER TEST 1|12345678901234|100.00
 B|ADDRESS CUSTOMER 1, 9999|DISTRICT
 C|COLLECTION ADDRESS CUSTOMER 1, 999|DISTRICT
 A|000001|CUSTOMER TEST 2|23456789012345|350.00
 B|ADDRESS CUSTOMER 2, 1111|DISTRICT
 C|COLLECTION ADDRESS CUSTOMER 1, 111|DISTRICT

Обратите внимание, что некоторые данные клиента находятся в строке, начинающейся с A, тогда как адрес и адрес доставки находятся в строках, начинающихся с B и C соответственно. Данные клиента находятся более чем в одной строке, то есть более чем в одном канале. Таким образом, при наличии нескольких каналов для них требуется идентификатор (в данном случае это 1-я позиция строки): A, B и C).

Общее разделение

Отображает общие данные макета со следующими полями:

Макет Код макета.
Описание Описание макета.
Тип адаптера

Тип приложения, обрабатывающего данные. Это может быть:

  • 1 MSExecAuto: обработка выполняется автоматической программой;
  • 2 MVC: обработка выполняется моделью MVC;
  • 3 Функция: обработка выполняется конкретной функцией.

В случае MSExecAuto и MVC данные читаются и отправляются в адаптеры, которые выполняют загрузку. В случае выбора Функции данные только читаются и отправляются в функцию, которая выполняет весь процесс проверки и сохранения состояния данных. Указанная функция получает в качестве параметров следующее:

  • lManual: определяет, выполняется ли запуск вручную или по заданию.
  • aLayOut: данные макета.
  • cArqTXT: имя текстового файла.
  • nCtLineFrom: ссылка начальной строки данных в TXT (для ЖУРНАЛА).
  • nCtLineTo: ссылка конечной строки данных в TXT (для ЖУРНАЛА).
  • aSaidas: данные TXT, читаемые в соответствии с выводом.
  • cPrePro: имя заданной программы предварительной обработки.
  • cPosPro: имя заданной программы последующей обработки.
  • cTdaPro: имя заданной программы обработки данных.

Если в качестве функции выступает FUNCTION, параметры отправляются прямо в функцию. Если USER FUNCTION, их отправляет PARAMIXB.

Адаптер Программа, которая обрабатывает текстовые данные.
TXT-файл

Тип текстового файла. Это может быть один из следующих типов:

  • 1 Фиксированный: у текстовых данных фиксированная позиция.
  • 2 Разделитель: текстовые данные вводятся с символом разделителя.
Разделитель Символ разделителя, если поле TXT-файл содержит опцию Разделитель.
Тип ExecAuto

Тип автоматической программы, если поле Адаптер содержит опцию 1 MSExecAuto. Это может быть

  • 1 Шаблон 1: только одна таблица.
  • 2 Шаблон 2: заголовок и позиция одной и той же таблицы.
  • 3 Шаблон 3: заголовок и позиция разных таблиц.
Начальный разделитель Указывает, есть ли в строке разделитель в начале.
Основная таблица Основная таблица, используемая в автоматической программе или приложении MVC.
Порядок Порядок основной таблицы.
Канал-источник

Если поле TXT-файл1 Фиксированный, введите начальную и конечную позиции, где в тексте находится информация о канале. Пример: 0001-0002 (с позиции 1 до позиции 2).

Если поле TXT-файл2 Разделитель, введите позицию поля, где в тексте находится информация о канале. Пример: 0001 (1-е поле строки).

В макетах без каналов вводите 0000-0000 или 0000 в соответствии с полем TXT-файл .

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

Указывает формат даты в тексте. Это может быть:

1 дд/мм/гг;

2 ггггммдд.

Многоканальный ввод Указывает, есть ли в текстовом файле несколько каналов.
Дополнительные детали Указывает, являются ли дополнительными позиции (детали) в автоматической программе типа Шаблон 2 или Шаблон 3.
Разрешить разделитель в кавычках?

Укажите, может ли использоваться разделитель в кавычках в строке.

Пример:

Считать вертикальную черту разделителем
Field1|Field2|”Field3|still|is|the|Field3”|Field4

Запускается следующим образом:

Field1
Field2
Field3|still|is|the|Field3
Field4
Повторно оценить Modeldef в каждом реестре? Повторная оценка заданной модели в каждой строке (Onera и исключительная производительность)

Разделение канала

Отображает идентификацию канала:

Новый канал Добавляет новый канал, где вводятся идентификаторы канала. Пример: A, 001, ABC и т. д. Этот идентификатор должен быть равен идентификатору в текстовых каналах.
Удалить канал Удаляет канал.

Примечание. Может существовать только один основной канал. Каналы могут создаваться иерархически.

Разделение деталей канала

Отображает детали каждого заданного канала.

Описание Описание канала.
ID места назначения

ID места назначения (вывода) данных канала. Когда поле Тип адаптера:

  • 1 MSExecAuto: это может быть МАСТЕР/ДЕТАЛЬ для Шаблона 2 и Шаблона 3 и МАСТЕР для Шаблона 1;
  • 2 MVC: это могут быть ID компонентов MVC ;
  • 3 Функция: даже если он не используется функцией, введите МАСТЕР.
Событие

Указывает событие канала. Это может быть:

  • 1 Одиночный: канал возникает только один раз для каждой группы информации.
  • 2 Несколько: канал возникает несколько раз для каждой группы информации.
Постзапуск

Указывает программу, в которой читается канал. Указанная функция получает в качестве параметров следующее:

  • lManual: определяет, выполняется ли запуск вручную или по заданию.
  • aLayOut: данные макета.
  • aDados: данные канала.
  • aDados TXT: данные прочитаны.
Если в качестве функции выступает FUNCTION, параметры отправляются прямо в функцию. Если USER FUNCTION, их отправляет PARAMIXB.

Разделение вывода

Отображает заданные ID вывода. Заполняется в соответствии с созданием канала.

См. также: