Главная Обратная связь

Дисциплины:






Структура файла задания



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

Первая строка файла задания – это число, задающее количество параметров, используемых в операторах корректировки.

Последующие пары строк, число пар должно быть равно количеству параметров, используются программой глобальной корректировки. Первая строка пары - значение параметра или пусто, если пользователю предлагается задать его значение перед выполнением корректировки. В этой строке можно задать имя файла меню (с расширением MNU) или имя рабочего листа подполей (с расширением Wss), которые будут поданы для выбора значения параметра. Вторая строка пары – наименование параметра, которое появится в названии столбца, задающего параметр.

Далее следуют группы строк, описывающих операторы корректировки. Первая строка каждой группы – это имя оператора, которое может иметь одно из значений: ADD, REP, CHA, CHAC, DEL, DELR, UNDEL, CORREC, NEWMFN, END, IF, FI, ALL, EMPTY, REPEAT, UNTIL, //.Количество строк, описывающих оператор, зависит от его назначения. Операторы ADD, REP, CHA, CHAC, DEL описываются пятью строками, в которых задаются следующие элементы:

§ ИМЯ ОПЕРАТОРА

§ МЕТКА ПОЛЯ/ПОДПОЛЯ: число, обозначающее метку поля, + разделитель подполя + обозначение подполя. Разделитель подполя с обозначением могут отсутствовать

§ ПОВТОРЕНИЕ ПОЛЯ

§ * - если корректируются все повторения

§ F - если используется корректировка по формату

§ N (число) – если корректируется N-ое повторение поля

§ L – если корректируется последнее повторение поля

§ L-N ( число) – если корректируется N-ое с конца повторение поля

§ ФОРМАТ 1 – формат

§ ФОРМАТ 2 - формат

Для каждого конкретного оператора элементы ФОРМАТ 1 и ФОРМАТ 2 имеют свое назначение. Некоторые из элементов могут не задаваться, когда в конкретной конфигурации они не имеют смысла. Тогда соответствующая строка в задании должна быть пустой или занята символом-заполнителем, как это формирует программа глобальной корректировки.

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

Операторы корректировки

Каждый оператор корректировки занимает одну строку таблицы. Имеются кнопки для вставки пустой строки и удаления строки.

Оператор ADD

Оператор выполняет добавление нового повторения поля или подполя в заданное существующее поле. При этом выполняются следующие правила:



· Если задана МЕТКА ПОЛЯ и не задано подполе, то:

· столбец повторения поля блокируется как не имеющий смысла, соответствующая строка в файле задания заполняется символом-заполнителем;

· все строки, сформированные ФОРМАТОМ 1, записываются как новые повторения поля.

· Если заданы МЕТКА ПОЛЯ с обозначением подполя, то первая строка, которая формируется ФОРМАТОМ 1, записывается как подполе в заданное повторение поля.

· Если заданного повторения нет в записи, то формируется повое повторение метки с заданным подполем.

· Если ПОВТОРЕНИЕ задано признаком F, то:

· ФОРМАТ 1 формирует строки добавляемых данных

· номер строки определяет номер того повторения, в которое будет добавлено заданное подполе с данными строки.

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

Во всех случаях ФОРМАТ 2 не используется и соответствующие строки в файле задания заполняются символом-заполнителем.

Оператор не позволяет приписывать данные в конец поля/подполя. Для этого можно воспользоваться оператором CHA.

Оператор REP

Оператор заменяет целиком поле или подполе на новое значение, которое задается ФОРМАТОМ 1. Выполняются следующие правила:

· Если ПОВТОРЕНИЕ задано не признаком ‘F’, то заданное поле/подполе заменяется на строку, которую формирует ФОРМАТ 1 (используется только первая строка, остальные строки игнорируются).

· Если ПОВТОРЕНИЕ задано признаком ‘F’, то строки, формируемые ФОРМАТОМ 1 заменяют повторения поля или подполя в повторении. Причем, номер строки по формату 1 соответствует номеру корректируемого повторения записи.

· Если повторений в записи больше чем строк формата 1, то корректируются только те, для которых есть строки. Если повторений в записи меньше чем строк ФОРМАТА 1, то лишние строки ФОРМАТА 1 не используются.

· Если ФОРМАТ 1 дает пустую строку, то соответствующее поле/подполе удаляется. Пустую строку следует получать, используя оператор пропуска строки #.

Во всех случаях ФОРМАТ 2 не используется и соответствующие строки в файле задания заполняются символом-заполнителем.

4.3 Оператор CHA/CHAC

Отличие двух операторов в том, что CHAC выполняется с учетом регистра. Оператор выполняет замену данных в поле или в подполе. Для определения заменяемых и заменяющих данных используются ФОРМАТ 1 и ФОРМАТ 2. Выполняются следующие правила:

· Если ПОВТОРЕНИЕ задано не признаком ‘F’, то:

· первая строка ФОРМАТА 1 является той строкой, которая ищется в заданном поле/подполе (в заданном повторении или во всех повторениях) – строка A;

· первая строка ФОРМАТА 2 является строкой, которая должна заменить найденную строку – строка B.

· Если строка А пустая, то строка В приписывается в конец корректируемого поля/подполя.

· Если строка В пустая, то строка А удаляется. Пустую строку следует получать, используя оператор пропуска строки #.

· Если ПОВТОРЕНИЕ задано признаком ‘F’, то:

· строки, получаемые ФОРМАТОМ 1 (строки Ai), ищутся в соответствующих по порядку повторениях поля;

· строки, получаемые ФОРМАТОМ 2 (строки Bi), заменяют в соответствующих их порядку повторениях строки Ai, т.е. строка Bi заменит в i-ом повторении заданного поля или в подполе заданного поля строку Ai;

· если строка Ai пустая, то строка Bi приписывается, если строка Bi пустая, то строка Ai удаляется.

· Если в поле заданное для корректировки подполе встречается несколько раз, то корректируются все подполя.

· Если строка А встречается в поле/подполе несколько раз, то заменяются все строки А.

· Поиск строки A в тексте записи проводится без учета регистра (перед сравнением все переводится в верхний регистр). Строка B пишется в запись в том регистре, в котором задана.

Оператор DEL

Оператор удаляет поле или подполе в поле. Выполняются следующие правила:

· Удаляется заданное повторение поля или в поле заданное подполе. Если в поле несколько заданных подполей, то удаляются все.

· Если ПОВТОРЕНИЕ поля задано не признаком F, то ФОРМАТ 1 и ФОРМАТ 2 не используются, соответствующие столбцы блокируются и соответствующие строки в файле задания заполняются символом-заполнителем.

· Если ПОВТОРЕНИЕ задано признаком F, то удаляются повторения в зависимости от значения строк, полученных ФОРМАТОМ 1. Если значение строки ‘1’, то соответствующее по порядку повторение удаляется, иначе нет. ФОРМАТ 2 не используется.

Оператор DELR

Оператор удаляет записи, поданные на корректировку. Не требует никаких дополнительных данных.

Оператор UNDEL

Оператор восстанавливает записи в диапазоне MFN, который задан в форме ГЛОБАЛЬНОЙ. Не требует никаких дополнительных данных. Операторы, следующие за данным, выполняются на восстановленных записях.

Оператор CORREC

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

1. Имя оператора – CORREC

2. Формат – результатом форматирования текущей записи должна быть текстовая строка, задающая имя той базы данных, в которой следует отобрать записи для пакетной корректировки. Если строка – ‘*’, то этой базой данных останется текущая.

3. Формат – результатом форматирования текущей записи должна быть строка, которая передается в корректируемые записи в виде «модельного» поля с меткой 1001. Т.е. это способ передачи данных от текущей записи в корректируемые. Следует не забывать в последнем операторе группы удалять поле 1001.

4. Формат – результатом форматирования текущей записи должны быть строки, которые будут рассматриваться как термины словаря другой (или той же) базы данных. Записи, связанные с этими терминами, будут далее корректироваться. Если последним символом термина будет символ ‘$’ (усечение), то отбор записей на корректировку будет аналогичен проведению в другой базе данных поиска ‘термин$’

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

Оператор NEWMFN

Оператор создает новую запись в текущей или другой базе данных. Предполагается, что за этим оператором следуют операторы ADD, которые будут наполнять новую запись. Группа операторов ADD завершается оператором END, после которого корректирующие операторы будут относиться к исходной базе данных и к исходной (текущей) записи. В операторах ADD форматирование по ФОРМАТ 1 происходит в исходной записи исходной базы данных. В файле задания оператор описывается двумя строками, которые содержат следующие данные:

1. Имя оператора – NEWMFN

2. Формат – результатом форматирования текущей записи должна быть текстовая строка, задающая имя той базы данных, в которой будет создана новая запись. Если строка – ‘*’, то этой базой данных останется текущая.

Оператор END

Завершает работу с другой базой данных, установленной в операторах CORREC или NEWREC. Состоит из единственной строки – END.

Оператор IF

Определяет условие выполнения операторов, следующих за ним до оператора FI. Состоит из двух строк: первая строка – имя оператора IF; вторая строка – формат, результатом которого может быть строка ‘1’, что означает разрешение на выполнение последующих операторов, или любое другое значение, что означает запрет на выполнение последующих операторов.

Оператор FI

Завершает действие оператора IF. Состоит из одной строки – FI.

Оператор ALL

Оператор можно использовать в группе операторов после операторов NEWMFN или CORREC. Он дополняет записи всеми полями текущей записи. Т.е. это способ, например, создать новую запись и наполнить ее содержимым текущей записи. Или можно вызвать на корректировку другую запись (CORREC), очистить ее (EMPTY) и наполнить содержимым текущей записи.

Оператор EMPTY

Оператор очищает текущую запись.

Оператор REPEAT

Операторы REPEAT-UNTIL организуют цикл выполнения группы операторов. Группа операторов между ними будет выполняться до тех пор, пока формат в операторе UNTIL будет давать значение ‘1’.

Оператор UNTIL

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

4.16 Оператор //

Оператор – комментарий. Может находиться между другими операторами и содержать любые тексты в строках (до 4-х) после себя.





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