Создаю электронную библиотеку. Требуется импортировать данные из файла MARC 21 в поля, созданные CCK. Использую модуль MARC версии 6.x-2.0-beta3. Выбираю тип документа, поля, в которые нужно импортировать данные. Нажимаю Import MARC. Документы создаются, но поля в них пустые. Как исправить?
Заранее спасибо.
Комментарии
Трахался с этим марком в пятой ветке, аж страшно вспомнить.
Проблема, возможно, в том, что модуль в бете.
В пятерке у меня получилось хакингом модуля.
Возможно, будет проще разобрать ваш файл сторонним 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" на нужные значения, но это не помогло.
Я, вообще, верно мыслю?
Да, в самом модуле нужно указать поля MARC-файла, которые он будет брать.
MARC-парсеры — в гугле.