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

Дисциплины:






Примеры составления заданий на пакетную корректировку



Пример 1.Для каждой записи заданного фрагмента выполнить следующие действия:

· В повторениях поля экземпляров (метка поля 910) удалить те повторения, у которых в подполе статуса экземпляра (подполе ^A) содержится значение “6”, т.е. экземпляр списан.

· Удаляемые из поля 910 повторения сохранить в поле архивных данных о выбытии (метка поля 940).

· Перенести в поле общего примечания (метка поля 300), предварительно его очистив, некоторые данные о первом авторе (метка поля 700): фамилию (подполе ^A), через пробел инициалы (подполе ^B), через знак тире неотъемлемую часть имени (подполе ^1) и в скобках даты жизни (подполе ^F).

· Заменить в повторениях поля экземпляров (метка поля 910), у которых значение места хранения “ФО-26” (подполе ^D), дату поступления (подполе ^C) на новую дату “20021206”.

· Заменить во всех повторениях поля экземпляров (метка поля 910) значение места хранения “ФМЗ” (подполе ^D) на новое значение “ФМЗ-1”.

Задание на пакетную обработку:

ADD

 

(if p(v910) then if v910^A='6' then v910 fi fi/)

 

REP

F

(if p(v910) then if v910^A='6' then # else v910 fi fi/)

 

DEL

*

 

 

ADD

 

v700^A," "v700^B," - "v700^1,"("v700^F")"

 

CHA

F

(v910^C/)

(if p(v910) then if v910^D: 'ФО-26' then '20021206' else v910^C fi fi/)

CHA

910^D

*

'ФМЗ'

'ФМЗ-1'

Пример 2. Для каждой записи заданного фрагмента выполнить следующие действия:

Если в одном из повторений поля ГРНТИ (метка поля 964) содержится значение “14”, то выполнить несколько операторов:

· добавить поле 621 со значением “141”;

· добавить поле 606 со значением “Физика”;

· удалить поле 690.

Если в одном из повторений поля УДК (метка поля 675) содержится индекс “37(470.311)”, то создать новую запись в базе данных CMPL, в которой надо сформировать поля:

· метка 675 – значение этого индекса;

· метка 920 – значение ‘PAZK’;

· метка 200 – значение из исходной записи;

· метка 700 – значение из исходной записи;

· метка 910 – все повторения из исходной записи.

Задание на пакетную обработку:

IF

if (v964|!|): '14!' then '1' else '0' fi

ADD

 

'141'

 

ADD

 

'Физика'

 

DEL

*

 

FI

NEWMFN

if (v675|!|): '37(470.311)!' then 'CMPL' else '' fi

ADD

 

'37(470.311)'

 

ADD

 

'PAZK'

 

ADD

 

v200

 

ADD

 

v700

 

ADD

 



(v910/)

 

END

Пример 3. Для каждой записи заданного фрагмента выполнить следующие действия:

· Если в поле кода рабочего листа (метка поля 920) содержится значение “SPEC”, то для всех значений индекса УДК (метка поля 675) отобрать в той же БД записи с этими индексами УДК (значения индексов без усечения).

· В отобранные записи добавить все повторения поля экземпляров (метка поля 910) из основной записи.

· В основной же записи повторения поля экземпляров удалить.

Задание на пакетную обработку:

CORREC

if v920='SPEC' then '*' else '' fi

(v910/)

(|U=|v675/)

ADD

 

(v1001/)

 

DEL

*

 

 

END

DEL

*

 

Пример 4. Для каждой записи заданного фрагмента выполнить следующие действия:

Во всех экземплярах (метка поля 910) заменить значение места хранения (подполе ^D) “XP” на значение “ОФ” и значение “ФМЗ” на значение “БИНТ”. Это можно выполнить с помощью задания, в котором жестко указываются эти значения, а именно

CHA

910^D

*

‘ХР’

‘ОФ’

CHA

910^D

*

‘ФМЗ’

‘БИНТ’

Можно составить задание для общего случая замены старых значений мест хранения на новые, используя возможность работы с параметрами. Например, для замены значений двух разных мест хранения на новые значения нужно определить 4 параметра, причем вводить их можно, используя справочник с именем mhr.mnu.

Задание на пакетную обработку:

mhr.mnu

Старое значение (1)

mhr.mnu

Новое значение (1)

mhr.mnu

Старое значение (2)

mhr.mnu

Новое значение (2)

REP

910^d

F

(if p(v910) then if v910^d='%1' then '%2'else if v910^d='%3' then '%4' else v910^d fi fi fi/)

Пример 5.Для каждой записи заданного фрагмента выполнить следующие действия:

Создать в БД ‘CMPL’ новую запись, которая является копией исходной, изменив в ней:

· Код рабочего листа (метка поля 920) заменить на ‘ZK’.

· Год издания (метка поля 210, подполе ^D) заменить на 2002.

· Объем (метка поля 215, подполе ^A) заменить на 500.

· Удалить все повторения поля “Каталогизатор, дата” (метка поля 907) и добавить новое значение, задав этап работы, дату и ФИО.

Исходную запись при этом удалить.

Задание на пакетную обработку:

NEWMFN

'CMPL'

ALL

REP

*

'ZK'

 

REP

210^D

*

'2002'

 

REP

215^A

*

'500'

 

DEL

*

 

 

ADD

 

'^CПК^A20020524^BДСМ'

 

END

 

DELR





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