Автоматическое заимствование аналитических записей в АБИС ИРБИС

advertisement
Автоматическое
заимствование
аналитических
записей в АБИС ИРБИС
Возможная предварительная работа - получение из ИС МАРС списка
кодов журналов, на которые подписана библиотека. В ближайшее время на
сайте МАРС должна появиться кнопка, по которой такой список может
получить каждый желающий. Список - текстовый файл с перечислением
кодов. Такой список можно получить на каждый подписной период.
Вторая подготовительная часть - получение описаний журналов
(верхний уровень) и кодов. Эту информацию также можно получить из ИС
МАРС (однократная выгрузка). В феврале (2009г) мы постараемся
договориться о том, чтобы эту информацию тоже можно было бы получить.
Есть две основные технологии работы библиотек-участниц:
-
А - библиотека формирует в локальном варианте полную сводную
базу и в ней делает служебную отметку о том, выписывает ли она
тот или иной журнал.
-
Б - библиотека работает с двумя базами. Одна - на выписываемые
журналы, другая - на остальные журналы.
Подготовительный этап
1. По полученным из ИС МАРС сформировать ядро записей первого
уровня.
2. Настроить почтовый клиент на автоматическую запись приходящих с
адреса mag@mars.udsu.ru файлов.
-
1А - все файлы складываются в фиксированную папку
-
1Б - файлы делятся на "свои" и "чужие" в зависимости от того,
выписывает библиотека тот или иной журнал, или нет. В теме
письма указан код журнала, деление идет путем сопоставления
кода и списка кодов расписываемых журналов.
СГУ работает по 1А. Для 1Б, скорее всего, надо будет один раз внести
таблицу в почтовый клиент руками.
3. Средствами сервера локальной сети обеспечивается разархивирование
сложенных в определенную папку файлов и их объединение в один файл с
фиксированным именем.
4. Командой АБИС (пакетное задание) обеспечивается импорт файла
(вариант 1А) или файлов (1Б) в базу/базы и актуализация (индексирование) с
записью протокола во внешний файл. У нас в ИРБИСе на эти операции при
нынешнем входном потоке, объеме сводной базы около 900 тыс. записей и
довольно слабеньком сервере уходит около часа, с 2 до 3 ночи, когда точно
нет текущих поступлений.
Все идет через пакетные задания (предварительно все поступившие
файлы разархивированы).
bat-файл:
copy d:\_0\*.iso /B d:\_00\1111.iso
del /Q d:\_0\*.iso
d:\irbis-demo-7-2\irbis64\irbisa.exe irbisa_m.ini
- запускается
АРМ
Администратор с соответствующим ini-файлом
del /Q d:\_00\1111.iso
В ini-файле есть ссылка на файл с пакетным заданием. Само пакетное
задание выглядит примерно так:
OpenDB MARS - открыть базу
ImportDB 0,marc_irb,0,1,d:\_00\1111.iso - импортировать записи,
находящиеся
Windows,
без
в
файле
1111.iso,
в
формально-логического
формате
контроля
RUSMARC,
с
кодировке
использованием
конвертора
marc_irb
ActualIf - актуализировать БД
CloseDB - закрыть БД
Exit d:\_00\protocol1.txt - записаь протокол в указанный файл
Сам импорт возможен в двух режимах.
1. Когда участник работает только с записями 3-го уровня ("плоская"
база). В этом случае все просто. Импорт, проверка на дублетность по
правилам ИРБИС "на лету". Удаление дублетов. В этом пока загвоздка, т.к.
стандартно удаляется новое дублетное поступление, но по технологии
МАРСа могут поступать исправленные записи, тогда удалить надо как раз
старые дублеты. Дублетов не так много и проблема пока решается вручную.
В протоколе отображаются такие дублеты, они удалены логически.
Логически удаленные записи восстанавливаются, а соответствующие им
"предшественники" удаляются.
Другой вариант работы с дублетами - грузить все. И периодически
запускать задание, которые ищет дублеты и удаляет дублетные записи,
физически записанные ранее.
2. Если участник работает с трехуровневыми записями. То при
очередной записи 3-го уровня проверяется наличие соответствующих
записей 1-го и 2-го уровней. Минимально необходимая для записей 1-го и 2го уровня информация есть и в записи третьего уровня.
Например, анализируем запись alma08_no8_ss1 (журнал Альма-матер, №
8 за 2008 год). Ищется запись первого уровня с кодом (поле 001, alma). Если
такой записи нет, то она создается. Заглавие журнала и ISSN есть в записи 3го уровня. Далее ищется запись второго уровня (001 - alma08_no8). Если ее
нет, то она создается. И далее загружается запись третьего уровня.
Связь этих записей в ИРБИСе устанавливается автоматически, по коду в
поле "Шифр".
1-й уровень - alma
2-й уровень - alma/2008/8 (уровень описания - журнал)
3-й уровень - alma/2008/8 (уровень описания - статья)
При импорте по варианту А (полная сводная база) мы еще сравниваем
код журнала с таблицей выписываемых журналов и ставим в одно из 900-х
полей 1 или 0 в зависимости от того, выписываем ли мы этот журнал. В
формате показа это поле анализируется. Если стоит 1, то выводится надпись
"Журнал имеется в библиотеке", если 0 - "Статья можно заказать по МБА, к.
202".
Download