Функции модуля (__call)


НАЧАЛО >> Оглавление >> Сервер приложений ИРБИС 64/128 >> Описание модулей системы >> MergeRecords - Слияние записей >> Функции модуля (__call)📄 Скачать в DOCX


Функции могут быть вызваны как UseModule("MergeRecords")->function(parameter1,parameter2,...);

Имя функцииОписаниеПараметры
GetResultВозвращает запись в которую производилось слияние командой MergeRecords::Merge
Подробнее... 
Возвращает текущую запись-приемник, сохраненную в состоянии модуля MergeRecords после запуска слияния.
Отсутствуют
MergeСлияние записи r с записью sr
Подробнее... 
Запускает слияние записи-источника с записью-приемником и подготавливает контекст связанных записей J/NJ.
ТипПараметрПо умолчаниюОписание
Record$sr''

Запись-приемник

Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния

Элементы массива:

  • dbn - Имя БД записи-источника
  • jssh - Шифр сводной записи на журнал (передается при слиянии записей номеров журнала)
  • njssh - Шифр сводной записи на номер журнала (передается при слиянии записей статей журнала)
RetChangedВозвращает true если запись-источник или запись-приемник изменились. иначе false
Подробнее... 
Устанавливает флаги изменения записи-приемника и записи-источника в состоянии MergeRecords.
ТипПараметрПо умолчаниюОписание
Bool$schanged'true'

Установить что запись-приемник изменилась

Bool$cchanged'false'

Установить что запись-источник изменилась

SetFieldСлияние полей записи r с полями записи sr. Функция пытается использовать соответствующий мергер для слияния полей (см MergeRecords::TryToLoadMerger). Если мергера нет, то возвращает false. Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Обрабатывает поле целиком по правилам fieldRules или через специализированный мергер MergeField.
ТипПараметрПо умолчаниюОписание
Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

String$rectype''

Значение поля 920 записи-источника

Record$r''

Запись-источник

Number$fld''

Номер поля для слияния

SetFieldOccСлияние конкретного номера повторения поля записи r с полями записи sr. Функция пытается использовать соответствующий мергер типа MergeOcc для слияния полей (см MergeRecords::TryToLoadMerger). Если мергера нет и номер повторения поля записи-источника больше чем количество повторений поля в записи-приемнике, поле добавляется в запись-приемник. Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Обрабатывает конкретное повторение поля через MergeOcc или добавляет недостающее повторение в запись-приемник.
ТипПараметрПо умолчаниюОписание
Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

String$rectype''

Значение поля 920 записи-источника

Record$r''

Запись-источник

Number$fld''

Номер поля для слияния

Number$occ''

Номер повторени поля записи-источника для слияния

TryToLoadMerger

Функция пытается загрузить мергер. Мергеры - это специальные классы с именем CSpiderFieldMerger_type_fld, которые могут содержать в своем составе несколько функций:

  • function MergeField($res,$rectype,&$r,&$sr) - Алгоритм слияния повторения поля fld записи-источника $r с записью-приемником sr. Возвращает true если запись изменилась и false если изменений нет.
  • function MergeOcc($res,$rectype,&$r,&$sr,$occ) - Алгоритм слияния повторения $occ поля fld записи-источника $r с записью-приемником sr. Возвращает true если запись изменилась и false если изменений нет.

Поиск класса мергера происходит в файле fld.inc, расположенному в каталоге modules/MergeRecords/FieldMergers/type

Подробнее... 
Загружает специализированный класс слияния поля по типу записи и номеру поля.
ТипПараметрПо умолчаниюОписание
String$type''

Тип записи. Обычно соответствует содержимому поля 920

Number$fld''

Номер поля для слияния

UnsetStatFieldУдаление поля из списка полей, подлежащих слиянию на основе частотных характеристик
Подробнее... 
Помечает поле как обработанное специальной логикой, чтобы исключить его из статистического выбора значений.
ТипПараметрПо умолчаниюОписание
number$fldОбязательный

Поле, подлежащее исключению

UrlFilterFunctionФункция - фильтр ссылок для импорта в сводный каталог
Подробнее... 
Базовый фильтр ссылок полного текста; разрешает импорт любой проверяемой ссылки.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник в которой проверяется ссылка

Array$params''

Ассоциативный массив с информацией о проверяемой ссылке.

Элементы массива:

  • sourceDbn - Имя БД записи-источника
  • sourceLinkType - Тип ссылки. Значения: 951A - ссылка из подполя A, 951I - ссылка из подполя I 951 поля
  • sourceLink - ссылка на полный текст
  • sourceText - текст подписи для ссылки
  • destinationDbn - имя выходной БД
  • destinationSid - SID записи в которую необходимо произвести импорт полного текста
UrlFilterFunctionGPNTBФункция - фильтр ссылок для импорта в сводный каталог
Подробнее... 
Фильтр ГПНТБ для импорта ссылок полного текста; пропускает только ссылки с разрешенным FTP-префиксом.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник в которой проверяется ссылка

Array$params''

Ассоциативный массив с информацией о проверяемой ссылке.

Элементы массива:

  • sourceDbn - Имя БД записи-источника
  • sourceLinkType - Тип ссылки. Значения: 951A - ссылка из подполя A, 951I - ссылка из подполя I 951 поля
  • sourceLink - ссылка на полный текст
  • sourceText - текст подписи для ссылки
  • destinationDbn - имя выходной БД
  • destinationSid - SID записи в которую необходимо произвести импорт полного текста
lВывод информации в лог-файл MergeRecords.log (см описание Log::Write)
Подробнее... 
Записывает диагностическое сообщение процесса слияния в лог CSpider_Stage13.log.
ТипПараметрПо умолчаниюОписание
String$str''

Текст сообщения для лог-файла

String$code'ERR'

Тип сообщения (см. описание Log::Write)

sprepare330Функция слияния поля 330 (Аннотация). Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Заменяет поле 330 в сводной записи, если в записи-источнике больше повторений аннотации.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepare691Функция слияния поля 691 (книгообеспеченность). Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Исключает поле 691 из статистического слияния; фактический перенос поля сейчас не выполняется.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepare902Функция слияния поля 902 (Держатель). Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Добавляет или обновляет сведения о держателе документа в поле 902 по базе-источнику и шифру записи.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepare922Функция слияния поля 922 (Оглавление). Выбирает оглавление с наибольшим количеством повторений поля 922. Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Заменяет поле 922 в сводной записи, если в записи-источнике больше повторений оглавления.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepareASPФункция слияния записей ASP (Аналитика). Устанавливает связи между 903 полем записи типа NJ и 463^W записи ASP Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Для аналитической записи ASP устанавливает связь с записью номера журнала через подполе 463^W.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepareMergeClientRecordФункция слияния записей с использованием мергеров. Сначала для каждого поля записи-источника пытается использовать MergeRecords::SetField. Если изменений записей не произошло, для каждого повторения этого поля пытается вызвать MergeRecords::SetFieldOcc Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Проходит по всем полям записи-источника и применяет полевые мержеры или обработку повторений.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepareNJФункция слияния записей NJ (Номер журнала). Устанавливает связи между 903 полем записи типа J и 933 записи NJ Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Для записи NJ обновляет связь с журналом, пересобирает шифр номера и при необходимости переносит 922 из MARS.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepareRDRФункция слияния записей RDR (пользователь). Переносит информацию об учетных данных пользователя. Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Для записей RDR/RDRU добавляет служебное поле AUTH с логином и хэшем идентификатора читателя.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)

sprepareRecordФункция слияния записей. Сначала вызывает общую функцию слияния MergeRecords::sprepareMergeClientRecord, затем последовательно соответствующие функции для NJ, ASP, слияния полей 330, 691, и для RDR. Возвращает true если запись-источник или запись-приемник изменились. Иначе false.
Подробнее... 
Координирует полный сценарий слияния, включая эталонные записи, специализированные функции и статистический выбор значений.
ТипПараметрПо умолчаниюОписание
Record$r''

Запись-источник

Array$res''

Ассоциативный массив с информацией о записи-источнике из подсистемы слияния (см. описание MergeRecords::Merge)