Электронная библиотека (CCK+MARC)

Главные вкладки

Аватар пользователя Jolly.Wimp@drupal.org Jolly.Wimp@drup... 6 октября 2010 в 20:12

Создаю электронную библиотеку. Требуется импортировать данные из файла MARC 21 в поля, созданные CCK. Использую модуль MARC версии 6.x-2.0-beta3. Выбираю тип документа, поля, в которые нужно импортировать данные. Нажимаю Import MARC. Документы создаются, но поля в них пустые. Как исправить?

Заранее спасибо.

Комментарии

Аватар пользователя kyky kyky 7 октября 2010 в 2:51

Трахался с этим марком в пятой ветке, аж страшно вспомнить.
Проблема, возможно, в том, что модуль в бете.
В пятерке у меня получилось хакингом модуля.
Возможно, будет проще разобрать ваш файл сторонним MARC-парсером в XML или CSV и потом загнать в Друпал.

Аватар пользователя Jolly.Wimp@drupal.org Jolly.Wimp@drup... 7 октября 2010 в 15:30

"kyky" wrote:
Возможно, будет проще разобрать ваш файл сторонним MARC-парсером в XML или CSV и потом загнать в Друпал.

Как вариант. Попробовать стоит. А вы не встречали, случайно, этих MARC-парсеров?

В коде модуля есть такие строки (2 написал для примера, на самом деле их больше):

$bib->loc_code = marc_clean_field(marc_value($marc, '856|a'));
$bib->edition = marc_clean_field(marc_value($marc, '250|a'));

Как я понял, "856|a", "250|a" - это строки MARC-файла ,из которых выбираются значения, чтобы потом вставлять их в поля CCK. В моем MARC-файле эти строки пустые. Я заменил "856|a", "250|a" на нужные значения, но это не помогло.

Я, вообще, верно мыслю?