Bulkmarcimport.pl: відмінності між версіями
Dubyk (обговорення | внесок) (→Опис) |
Dubyk (обговорення | внесок) |
||
(Не показано 14 проміжних версій цього користувача) | |||
Рядок 25: | Рядок 25: | ||
'''-a, -authorities''' |
'''-a, -authorities''' |
||
— тип імпорту: авторитетні записи (файли) |
— тип імпорту: авторитетні записи (файли) ([http://git.koha-community.org/gitweb/?p=koha.git;a=blobdiff;f=misc/migration_tools/bulkmarcimport.pl;h=b1c2340f2db783cea5a6c08185101ae434a0c8e9;hp=a6611b1f01487976592531b5451901e5c2358c92;hb=7eca37db4f788ca2e9c8f77cc37bc394870c1c4e;hpb=0a50277f804b09aa6f187ec6d2bb1c7c69b80a09 ±]) |
||
'''-file='''''ФАЙЛ'' |
'''-file='''''ФАЙЛ'' |
||
Рядок 51: | Рядок 51: | ||
— ''КІЛЬКІСТЬ'' записів, на які потрібно чекати, перш ніж виконати операцію „commit“ (вставки в БД). |
— ''КІЛЬКІСТЬ'' записів, на які потрібно чекати, перш ніж виконати операцію „commit“ (вставки в БД). |
||
'''-l''' |
'''-l='''''ФАЙЛ'' |
||
— журналюються у |
— журналюються у ''ФАЙЛ'' події, виконані для кожного запису та його статусу([http://git.koha-community.org/gitweb/?p=koha.git;a=blobdiff;f=misc/migration_tools/bulkmarcimport.pl;h=b1c2340f2db783cea5a6c08185101ae434a0c8e9;hp=a6611b1f01487976592531b5451901e5c2358c92;hb=7eca37db4f788ca2e9c8f77cc37bc394870c1c4e;hpb=0a50277f804b09aa6f187ec6d2bb1c7c69b80a09 ±]) |
||
'''-append''' |
'''-append''' |
||
Рядок 79: | Рядок 79: | ||
— вхідний ''ФОРМАТ'' файлу: MARCXML або ISO2709 (типово ISO2709). |
— вхідний ''ФОРМАТ'' файлу: MARCXML або ISO2709 (типово ISO2709). |
||
'''-authtypes''' |
'''-authtypes='''''ФАЙЛ'' |
||
— yaml- |
— yaml-''ФАЙЛ'' з authtypecode та відмітним полем запису для того, щоб зберегти правильний тип авторитетного джерела. (Приклад файлу є [https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=14504 тут]) ([https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=16364&action=diff ±], [https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5635 b]) |
||
'''-yaml''' |
'''-yaml='''''ФАЙЛ'' |
||
— yaml- |
— yaml-''ФАЙЛ'' для виводу ідентифікаторів. (Значення biblionumber authid підполя 2..-полів) ([https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=16364&action=diff ±], [https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5635 b]) |
||
'''-filter''' |
'''-filter''' |
||
— список полів, які не будуть імпортовані. Може бути будь-яке з 000 до 999 полів, підполів чи відповідність підполя значенню, наприклад, 200aзначення |
— список полів, які не будуть імпортовані. Може бути будь-яке з 000 до 999 полів, підполів чи відповідність підполя значенню, наприклад, 200aзначення. Параметр -filter може повторюватися.([https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=16364&action=diff ±], [https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5635 b]) |
||
'''-insert''' |
'''-insert''' |
||
— якщо вибрано, намагатися лише вставляти, коли це можливо |
— якщо вибрано, намагатися лише вставляти, коли це можливо. ([https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=16364&action=diff ±], [https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5635 b]) |
||
'''-update''' |
'''-update''' |
||
— якщо вибрано, лише оновлювати (кожен бібліографічний запис повинен мати відповідний запис) |
— якщо вибрано, лише оновлювати (кожен бібліографічний запис повинен мати відповідний запис). ([https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=16364&action=diff ±], [https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5635 b]) |
||
'''-all''' |
'''-all''' |
||
— якщо вибрано, робити все, що потрібно |
— якщо вибрано, робити все, що потрібно. (-insert та -update) ([https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=16364&action=diff ±], [https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5635 b]) |
||
'''-k, -keepids='''''<ПОЛЕ>'' |
'''-k, -keepids='''''<ПОЛЕ>'' |
||
— зберігати |
— зберігати ідентифікатор запису у ''ПОЛІ'' (напр. 009 чи 900a) (корисно для авторитетних записів, коли поле 001 містить ідентифікатор „authid“ Koha, водночас джерельне 001 може містити цінну інформацію про авторитетні записи, що надходять з БК (LOC) або НБФ (BNF). Мало користі для бібліографічних записів).([http://git.koha-community.org/gitweb/?p=koha.git;a=blobdiff;f=misc/migration_tools/bulkmarcimport.pl;h=b1c2340f2db783cea5a6c08185101ae434a0c8e9;hp=a6611b1f01487976592531b5451901e5c2358c92;hb=7eca37db4f788ca2e9c8f77cc37bc394870c1c4e;hpb=0a50277f804b09aa6f187ec6d2bb1c7c69b80a09 ±]) |
||
'''-match='''''<ПОЛЕ>'' |
'''-match='''''<ПОЛЕ>'' |
||
— ''ПОЛЕ'' |
— ''ПОЛЕ''= індекс_відповідності,поле_для_відповідності, що використовується для дедублікації поля_для_відповідності. Поле для відповідності зазначається як від 001 до 999 або поле і список підполів на кшталт 100abcde. Параметр -match може повторюватися. ([http://git.koha-community.org/gitweb/?p=koha.git;a=blobdiff;f=misc/migration_tools/bulkmarcimport.pl;h=b1c2340f2db783cea5a6c08185101ae434a0c8e9;hp=a6611b1f01487976592531b5451901e5c2358c92;hb=7eca37db4f788ca2e9c8f77cc37bc394870c1c4e;hpb=0a50277f804b09aa6f187ec6d2bb1c7c69b80a09 ±]) |
||
'''-i,-isbn''' |
'''-i,-isbn''' |
||
— якщо вибрано, відбуватиметься пошук за ISBN, і якщо знайдено такий самий ISBN, біб-запис не буде додано. Це ще один спосіб |
— якщо вибрано, відбуватиметься пошук за ISBN, і якщо знайдено такий самий ISBN, біб-запис не буде додано. Це ще один спосіб дедублікації. Параметри -match та -isbn можуть використовуватися разом. |
||
'''-cleanisbn''' |
'''-cleanisbn''' |
||
— очищати ISBN-поля при внесенні у бібліографічні записи, тобто вилучати дефіси. Типово ISBN очищатимуться. |
— очищати ISBN-поля при внесенні у бібліографічні записи, тобто вилучати дефіси. Типово ISBN очищатимуться. ([http://git.koha-community.org/gitweb/?p=koha.git;a=blobdiff;f=misc/migration_tools/bulkmarcimport.pl;h=ddfa5e0a96391ad73104fa1a159d85664e11b0e1;hp=1d31382f537095f286b2abc7a20c036c415676d4;hb=c9d082bcdc353d5f49703cd598d5f3cc1f0f55da;hpb=2ea74bef65a9c5e14a6026aa2c9942fe511a87b3 ±]) |
||
'''-nocleanisbn''' |
'''-nocleanisbn''' |
||
— збереже ISBN без змін. |
— збереже ISBN без змін (за умовчанням). |
||
'''-x='''''ОЗНАКА'' |
'''-x='''''ОЗНАКА'' |
||
Рядок 146: | Рядок 146: | ||
— цей параметр дозволяє використовувати локальний модуль із підпрограмою налаштування, яка викликається для кожного MARC-запису. Якщо ім’я файлу не вказано, використовуватиметься LocalChanges.pm (пр. [https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=23063&action=diff тут]), що знаходиться у теці „migration_tools“. Ви можете передати абсолютне ім'я файлу або ім'я файлу з теки „migration_tools“. |
— цей параметр дозволяє використовувати локальний модуль із підпрограмою налаштування, яка викликається для кожного MARC-запису. Якщо ім’я файлу не вказано, використовуватиметься LocalChanges.pm (пр. [https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=23063&action=diff тут]), що знаходиться у теці „migration_tools“. Ви можете передати абсолютне ім'я файлу або ім'я файлу з теки „migration_tools“. |
||
== Приклади == |
|||
* https://lists.katipo.co.nz/public/koha/2017-May/047965.html |
|||
./bulkmarcimport.pl -b -file serial-01.mrc -v -framework SER -all -match Control-number,001 001Code |
|||
* https://lists.katipo.co.nz/public/koha/2012-March/032286.html |
|||
./bulkmarcimport.pl -d -fk -match=barcode,999c -commit 1000 -v -file /tmp/newer40_77000.mrc |
|||
* https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5635 |
|||
export KOHA_CONF=/home/koha/etc/koha-conf.xml && export PERL5LIB=/home/src && /usr/bin/perl /home/koha/src/misc/migration_tools/bulkmarcimport.pl -s \ |
|||
-yaml /path_to_the_extract_directory_of_test5635/TR728R39C001.RAW.yaml -match ident,001 -keepids 009 \ |
|||
-l /path_to_the_extract_directory_of_test5635/log/ILN2011-10-04-02-c.csv -a -file /path_to_the_extract_directory_of_test5635/fichiers/TR728R39C001.RAW \ |
|||
-authtypes /path_to_the_extract_directory_of_test5635/authtypes.yml |
|||
== Джерела == |
== Джерела == |
Поточна версія на 12:26, 25 березня 2018
Назва
bulkmarcimport.pl — імпорт бібліографічних та авторитетних записів у Коха
Використання
$ export KOHA_CONF=/etc/koha.conf $ perl misc/migration_tools/bulkmarcimport.pl -d -commit 1000 \\ -file /home/jmf/koha.mrc -n 3000
Застереження
Не використовуйте цей сценарій, перш ніж внесли та перевірили ваші таблиці MARC-ознак двічі (чи більше!). Інакше імпорт не буде працювати правильно, і Ви отримаєте зіпсовані дані.
Опис
-h
— екран з цією довідкою (англійською)
-b, -biblios
— тип імпорту: бібліографічні записи
-a, -authorities
— тип імпорту: авторитетні записи (файли) (±)
-file=ФАЙЛ
— ФАЙЛ, який імпортуємо
-v
— багатослівний режим. 1 означає „деяку інформацію“, 2 означає „MARC-видрук“
-fk
— відключає перевірку зовнішніх (foreign) ключів під час імпорту.
-n=КІЛЬКІСТЬ
— КІЛЬКІСТЬ записів записів для імпорту. Якщо відсутня, весь файл імпортується.
-o, -offset=КІЛЬКІСТЬ
— зміщення у файлі перед імпортом, тобто КІЛЬКІСТЬ записів, які потрібно пропустити.(±)
-commit=КІЛЬКІСТЬ
— КІЛЬКІСТЬ записів, на які потрібно чекати, перш ніж виконати операцію „commit“ (вставки в БД).
-l=ФАЙЛ
— журналюються у ФАЙЛ події, виконані для кожного запису та його статусу(±)
-append
— якщо вказано, журнальний файл буде доповнений даними. Якщо ні, файл журналу витиратиметься перед кожним виконанням.
-t, -test
— режим тестування: аналізує файл, повідомляє що буде робити, але нічого не робить.
-s
— пропускає автоматичне перетворення MARC-8 в UTF-8. Ця опція передбачена для відлагодження.
-c=РІЗНОВИД
— РІЗНОВИД MARC-стандарту. На даний момент підтримуються лише MARC21 та UNIMARC. MARC21 за умовчанням.
-d
— вилучити усе, що стосується бібліографічних записів у БД Koha перед імпортом. Таблиці: biblio та biblioitems (біб-записи), items (примірники).
-m=ФОРМАТ
— вхідний ФОРМАТ файлу: MARCXML або ISO2709 (типово ISO2709).
-authtypes=ФАЙЛ
— yaml-ФАЙЛ з authtypecode та відмітним полем запису для того, щоб зберегти правильний тип авторитетного джерела. (Приклад файлу є тут) (±, b)
-yaml=ФАЙЛ
— yaml-ФАЙЛ для виводу ідентифікаторів. (Значення biblionumber authid підполя 2..-полів) (±, b)
-filter
— список полів, які не будуть імпортовані. Може бути будь-яке з 000 до 999 полів, підполів чи відповідність підполя значенню, наприклад, 200aзначення. Параметр -filter може повторюватися.(±, b)
-insert
— якщо вибрано, намагатися лише вставляти, коли це можливо. (±, b)
-update
— якщо вибрано, лише оновлювати (кожен бібліографічний запис повинен мати відповідний запис). (±, b)
-all
— якщо вибрано, робити все, що потрібно. (-insert та -update) (±, b)
-k, -keepids=<ПОЛЕ>
— зберігати ідентифікатор запису у ПОЛІ (напр. 009 чи 900a) (корисно для авторитетних записів, коли поле 001 містить ідентифікатор „authid“ Koha, водночас джерельне 001 може містити цінну інформацію про авторитетні записи, що надходять з БК (LOC) або НБФ (BNF). Мало користі для бібліографічних записів).(±)
-match=<ПОЛЕ>
— ПОЛЕ= індекс_відповідності,поле_для_відповідності, що використовується для дедублікації поля_для_відповідності. Поле для відповідності зазначається як від 001 до 999 або поле і список підполів на кшталт 100abcde. Параметр -match може повторюватися. (±)
-i,-isbn
— якщо вибрано, відбуватиметься пошук за ISBN, і якщо знайдено такий самий ISBN, біб-запис не буде додано. Це ще один спосіб дедублікації. Параметри -match та -isbn можуть використовуватися разом.
-cleanisbn
— очищати ISBN-поля при внесенні у бібліографічні записи, тобто вилучати дефіси. Типово ISBN очищатимуться. (±)
-nocleanisbn
— збереже ISBN без змін (за умовчанням).
-x=ОЗНАКА
— біб-ОЗНАКА джерельного біб-номера (±)
-y=ПІДПОЛЕ
— ПІДПОЛЕ джерельного біб-номера (використовується для ознак >= 10) (±)
-idmap=ФАЙЛ
— ФАЙЛ-мапа з експортом джерельних біб-номерів та biblionumber з Koha (±)
-dedupbarcode
— якщо вибрано, то у випадку коли виявляється дублікат штрих-коду, він видаляється, і повторюється спроба додати запис, тим самим даючи запис з порожнім штрих-кодом. Це корисно, коли хтось встановлював штрих-коди відповідні ідентифікаторам біб-записів чи якось подібно (зазвичай це прийшло з іншого ПЗ).
-framework
— це код структури, до якої запитані записи будуть додаватися, коли вони будуть створені. Якщо не вказано, тоді використовуватиметься структура за умовчанням.
-custom=МОДУЛЬ
— цей параметр дозволяє використовувати локальний модуль із підпрограмою налаштування, яка викликається для кожного MARC-запису. Якщо ім’я файлу не вказано, використовуватиметься LocalChanges.pm (пр. тут), що знаходиться у теці „migration_tools“. Ви можете передати абсолютне ім'я файлу або ім'я файлу з теки „migration_tools“.
Приклади
./bulkmarcimport.pl -b -file serial-01.mrc -v -framework SER -all -match Control-number,001 001Code
./bulkmarcimport.pl -d -fk -match=barcode,999c -commit 1000 -v -file /tmp/newer40_77000.mrc
export KOHA_CONF=/home/koha/etc/koha-conf.xml && export PERL5LIB=/home/src && /usr/bin/perl /home/koha/src/misc/migration_tools/bulkmarcimport.pl -s \ -yaml /path_to_the_extract_directory_of_test5635/TR728R39C001.RAW.yaml -match ident,001 -keepids 009 \ -l /path_to_the_extract_directory_of_test5635/log/ILN2011-10-04-02-c.csv -a -file /path_to_the_extract_directory_of_test5635/fichiers/TR728R39C001.RAW \ -authtypes /path_to_the_extract_directory_of_test5635/authtypes.yml
Джерела
- https://perldoc.koha-community.org/misc/migration_tools/bulkmarcimport.html
- http://git.koha-community.org/gitweb/?p=koha.git;a=blob;f=misc/migration_tools/bulkmarcimport.pl;h=9a3b44c2826b71067abe58ab98f7bd6cd58f35ce;hb=refs/heads/master
- https://github.com/Koha-Community/Koha/blob/master/misc/migration_tools/bulkmarcimport.pl