УстановкаИнсталляции не требует, в реестр и системные папки ничего не прописывает.Просто распакуйте соответствующий архив. WindowsДолжна быть предварительно установлена Java. (например Sun Java)Распаковываете в любое место и запускаете booklet.bat Если не запускается - скорее всего, у вас не прописалась системная переменная JAVA_HOME, из которой берется путь к Java. В этом случае проще всего отредактировать батник - заменить в нем %JAVA_HOME%\bin\javaw.exe на полный путь, к этому файлу (куда он записался при установке Java). Если в пути есть пробелы - его надо записать с кавычками. Например C:\"Program Files"\Java\jre1.6.0_04\bin\javaw.exe LinuxJava устанавливается отдельно. Для запуска используйте скрипт booklet.sh , отредактируйте в нем пути к папкам, куда вы распаковали программу.PocketPCJava входит в комплект (используется Java машина - j9 от IBM).Распаковываете архив и копируете на устройство папку Meryb с содержимым. Если скопировали непосредственно во внутреннюю память устройства - запускать программу ярлыком booklet.lnk Если на карточку (Storage Card) - запускать ярлыком booklet_card.lnk Если в другое место (или карточка у Вас называется по другому) - соответственно отредактируйте пути в ярлыке. (Откройте его в текстовом редакторе, там в общем-то все понятно). Требуется ~10 Mb на диске при установке. Для запуска необходимо не менее 10 Mb свободной оперативной памяти (где-то 15 Mb для комфортной работы). Вообще по ресурсам - программа и java-машина берет ~ 5 Mb + sql-server с базой ~ 5 Mb, если база большая соответственно больше. При загрузках еще xml-парсер отъедает то больше, то меньше ~ 3-10 Mb. Большинство ошибок стараюсь корректно обрабатывать, если все же слетает без всяких сообщений можно в ярлыке для запуска исправить запуск j9w.exe на j9.exe - при запуске программы в фоне будет открываться окно консоли java машины, в нем при таких внезапных падениях все-таки будет выводиться сообщение об ошибке. Mac OS X, и дрДля запуска на Mac OS X, и др. надо использовать соответствующую версию swt-библиотеки пользовательского интерфейса. Вот тут подробно расписан запуск java и swt-приложений на Mac OS.ОбновленияПеред обновлением программы сохраните папку Data с данными в надежном месте.Скопируйте файлы новой версии программы поверх предыдущей (папку Booklet предыдущей версии можно просто удалить). После копирования новых файлов замените содержимое папки Data на сохраненное ранее. При запуске программы, она проверяет версию базы данных и обновляет ее структуру (если нужно). После обновления может потребоваться пересчет данных (на закладке [Инструменты - Замены] нажмите кнопку [Пересчитать]) СтруктураВся информация распределяется по следующей структуре:Люди - все люди, которые упоминаются в каталоге: авторы, составители, переводчики, художники, артисты и т.д. Разделять их на разные списки не получается, т.к. переводчики часто бывают авторами, авторы - составителями и т.д. Но всем людям при их выборе устанавливается роль (автор, переводчик...). Она отображается в списке во второй колонке. Так же в фильтре перед показом списка можно ее выбрать в классификаторе, например: Люди - Кем(Произв) - Автор , покажет список авторов (людей, которые в произведениях указаны авторами). Произведения - то что создано людьми (рассказ, роман, песня ...). В списке отображаются главные признаки - название и авторы. В карточке заноситься все что интересно для учета, там же аннотация, ключевые слова и т.д. Серии автора (или альбомы для музыки) заносят как отдельные произведения и ставят ей соответствующий тип. Когда вносятся романы, входящие в эту серию, на закладке "Связи" его присоединяют к этой серии. Соответственно оно появиться на закладке "Связи" серии. Книги - это список бумажных носителей, или файлов в которых содержаться произведения. Для них указывается название - лучше в формате [Авторы; Название] для удобного отображения по алфавиту, и остальные нужные нам поля. В закладке "Содержание" вводиться список произведений, входящих в эту книгу. Для бумажной книги - указывается произведение, название (если в этой редакции оно отличается от названия произведения), страница, переводчик (если есть) и другую информацию, которая интересует по этой редакции. Для электронных книг в каждый файл (книгу) обычно входит одно произведение, оно и указывается в содержании под номером 1. Во "Вложения" в книге можно присоединить файл с картинкой обложки (отображается прямо в программе), файл с содержанием книги. Собрания сочинений, или серии книг издательства удобно заносить сначала отдельной позицией, а за тем присоединять к ней отдельные тома. При этом при выборе этой серии в закладке "Связи" отобразятся все эти книги. По клику на этом списке установится соответствующий фильтр, они загрузятся в список и можно просмотреть их карточки. А при переходе от книг к произведениям будут показаны произведения, входящие во все книги этого собрания сочинений Вложения - к каждой позиции (человек, произведение, книга) можно присоединить файл. Например для людей - фотографию, файл с биографией; произведений - файл с аннотацией, иллюстрации; книги - обложка, файл с содержанием. Вложения могут храниться непосредственно в базе и как ссылки на файл. Ссылки хранятся относительно корневой точки, если путь к файлу не входит в эту точку хранится абсолютный путь. Путь хранится во внутреннем формате и корректно вызывается в разных OS, для использования общего сетевого хранилища файлов. Вложение можно запустить на выполнение, при этом файл копируется из базы или пути из ссылки на устройство, если в настройках указано куда. Если не указано - открывается с текущего места, если из базы или web-сервера - копируется в папку work и потом открывается. На каждый тип файла (расширение, даже составное) можно назначать свой просмотрщик. Связи - добавляются ссылки на позиции из этого же списка. Для чего нужно описано выше. Кем - для книг, произведений, редакций. Указываются люди, создатели. Для произведений - авторы, (в музыке - певец, композитор). Для книг - составитель, иллюстратор, художник и т.д. Для электронных книг - кто сканировал, кто вычитывал. (Если не нужно, то в общем-то можно и не заносить, но создателям будет обидно :) . Типы - здесь указываются списочные значения. При настройке каталога каждому объекту (люди, произведения, носители) указываются списочные поля - классификаторы. Для людей - страна; произведений - язык, тема(жанр); книги - издательство, формат и т.д. Эти поля можно настраивать непосредственно в программе - например можно добавить список <Оценка> со значениями <Отстой, Неплохо, Это вещь!> и присваивать их произведениям. Эти списки автоматически появляются в фильтре. По нему можно загрузить список произведений <Это вещь!>, через экспорт сохранить его в текстовый файл, распечатать или отослать его другу (это уже через почтовик или внешний редактор) Работа с программойВ дальнейшем при описании приводятся скриншоты экранов на PocketPC. На Windows, Linux экраны аналогичные, за исключением меню - оно показывается сверху и отображается не картинками, а текстом.ЗапускПри запуске программы считываются настройки из файла booklet.ini (его имя передается в параметрах запуска). Он содержит основные параметры, их подробное описание дано в комментариях непосредственно в файле. Один из главных - имя файла с профилем для соединения с базой данных (по умолчанию booklet.db).В профиле указывается тип базы данных, место где она расположена, имя и пароль пользователя для соединения, и другие параметры работы с конкретной базой (описание параметров см. в файле). Если имя и пароль пользователя заданы в профиле, программа автоматически подключится к базе. Если нет - показывается окно с запросом. В нем также можно выбрать другой профиль. Файлы профилей (с расширением .db) должны лежать в корневом каталоге программы. По умолчанию в программе создан один пользователь с именем sa и пустым паролем. В меню доступно: [Закрыть] - отменяет запуск. [Настройка] - программа запускается в настроечном режиме. В нем можно создать новую пустую базу данных через меню [Инструменты-Создание БД]. Параметры БД (тип, местоположение) будут взяты из файла профиля, выбранного на этапе запуска. Если база с таким профилем уже существует - появится сообщение об ошибке. [Установить] - выполняется подключение к базе данных. Стартовое окноПосле соединения с БД появляется стартовое окно.В нем показывается название каталога и краткая сводка по каталогу - количество людей, произведений, носителей (книг) в базе. Через меню доступны следующие операции: [Файл-Выход] - закрытие программы. [Файл-О программе] - показывает окно с информацией о программе, основное - версия программы и базы. [Файл-Справка] - показывает документацию программы (этот файл). [Файл-Настройки] - показывает окно файлов настроек booklet.ini или booklet.db с возможностью редактирования. [Файл-Обновить] - обновляет информацию о каталоге и внутренние кэши программы информацией из БД. [Инструменты-Отчеты] - показывает окно утилиты по созданию и запуску произвольных отчетов (запросов по БД). [Инструменты-Импорт] - показывает окно для импорта информации в каталог. [Инструменты-Замены] - показывает окно групповых операций (замена и пересчет информации во всем каталоге). [Инструменты-Конфигурация] - показывает окно с настройками классификаторов. [Инструменты-Создание БД] - показывает окно для создания новой пустой базы данных. [Список] - открывается окно со списком книг. Если список большой, то перед его показом появляется окно фильтра (для ограничения). При двойном клике (или Enter) на позиции в дереве (Люди, Произведения, Книги) также открывается соответствующий список. [Обзор] - открывается окно просмотра каталога по Авторам-Произведениям со сводной информацией по произведениям. ОбзорОкно для быстрого просмотра каталога в режиме Авторы - Произведения.Слева вверху расположено поле фильтра авторов. При вводе одной или двух букв - ищутся авторы, начинающиеся с этих букв, если больше - идет поиск по вхождению в любом месте имени. Если поле пустое - выводятся все авторы. Под фильтром - список авторов. Он загружается/обновляется при нажатии кнопки [Обновить]. Количество найденых авторов и произведений показывается в соответствующей таблице. Справа отображается список произведений выделенного автора. Внизу - карточка выделенного произведения. В карточке показывается вся информация о произведении, занесенная в каталог. Отображается обложка, название, авторы, серия, жанры, аннотация и т.д. Кроме этого показывается информация о книгах, в которые входит это произведение - обложка, название, издательство и т.д. При двойном клике на любой строке она отображается в большом окне для удобного чтения. Двигать карточку можно мышкой (стилусом). Из меню доступны следующие операции: [Закрыть] - закрывает окно обзора. [Обновить] - обновляет список авторов в соответствии с фильтром. [Открыть] - выбранное произведение загружается из каталога и открывается для чтения. [Экспорт] - карточка выбранного произведения сохраняется в файл. [Перейти] - окно обзора закрывается, а выделенное произведение открывается в окне списка записей. Список записейОсновное окно для просмотра записей (Люди, Произведения, Носитель) каталога. Поддерживается 2 режима просмотра - в виде таблицы с двумя колонками и в виде списка с картинками-обложками. Таблица отображается очень быстро, на экране умещается больше информации. Список с картинками - красивый, но отрисовывается медленней (заметно на PocketPC и медленных web-базах) из-за получения картинок из базы.В таблице/списке поддерживается управление мышкой-стилусом и кнопками (стрелки, ввод и т.д.). Первое поле таблицы (верхняя строка в списке с картинками) - это Название+Дополнение из карточки. Это основное поле для идентификации записи в списке. Оно должно быть уникальным, если такое название уже есть - уточните его (допишите в дополнение, что отличает его от другого такого же). Второе поле содержит сводную информацию о записи - его содержание настраивается в файле скриптов (res\scripts.ini). По умолчанию для списка людей отображается кем они являются в каталоге (Автор; Составитель; Переводчик и т.д.), для списка произведений отображаются его авторы, для списка книг - размер и когда они были созданы. Сверху отображается количество записей в списке и текущий фильтр. Через меню доступны следующие операции: [Файл-Закрыть] - закрывает окно и переходит к стартовой странице. [Файл-Экспорт] - сохраняет содержимое таблицы в текстовый файл, удобно т.к. она уже отфильтрована и отсортирована (в отличие от отчетов, где запрос надо сочинять самому). [Файл-Сортировать-Название] - сортирует таблицу по первой колонке (Название). [Файл-Сортировать-Доп] - сортирует таблицу по второй колонке (Доп информация). [Файл-Вид-Таблица] - отображает информацию в виде таблицы. [Файл-Вид-Обложки] - отображает информацию в виде списка с картинками. [Запись-Карточка] - открывает карточку с подробной информацией о текущей записи. Карточка также открывается при двойном клике на позиции в списке. [Запись-Добавить] - открывает пустую карточку для добавления записи. [Запись-Удалить] - удаляет запись из каталога, при этом идет проверка и если на нее есть ссылки из других (или этого же) списка - выдается сообщение об ошибке. [Запись-Клон] - добавляется новая запись, при этом в поля карточки копируется содержимое текущей записи. [Запись-Пересчет] - пересчитывает содержимое колонки с доп. информацией и картинку для отображения в списке. Только для текущей записи, для пересчета по всему каталогу используйте [Пересчитать] на странице Замены. [Люди] - переходит к списку людей. При переходах устанавливается автоматический фильтра по текущей записи (см раздел Фильтр). [Произв] - переходит к списку произведений. [Книги] - переходит к списку книг. [Обновить] - открывает окно Фильтра с текущими условиями выбора записей. ФильтрИспользуется для поиска записей и перед показом списков для ограничения их размера. Может отображаться при переходе от одного списка к другому и при нажатии кнопки [Обновить]. Так же появляется при редактировании карточки при показе списков присоединения.Форма "Фильтр" состоит из 3-х секций. В текстовом поле рядом с меткой отображается выбранное условие, а кнопками [Х] соответствующий фильтр сбрасывается. 1 - этот фильтр устанавливается автоматически при переходе от одного списка к другому. При переходах применяются следующие условия: 1.Люди-Произведения - отбираются произведения, автором которых является выделенный человек. 2.Люди-Книги - отбираются книги, которые создал человек или в которые входят произведения, которые он написал. 3.Произведения-Книги - отбираются книги, в содержание которых входит данное произведение. 4.Произведения-Люди - отбираются люди, создавшие произведение. 5.Книги-Люди - отбираются люди, создавшие книгу (составители, переводчики) и написавшие произведения. 6.Книги-Произведения - отбираются произведения, входящие в содержание книги. 7.Связи-Родители - отбираются родительские объекты. 8.Связи-Дети - отбираются дочерние объекты (например произведения, входящие в серию). При отборе показываются списки не только текущего объекта, но и связанных с ним по иерархии (псевдоним, серии и т.д.) 2 - поле для полнотекстового поиска. При вводе одной или двух букв - отбираются объекты, начинающиеся с этих букв, если больше - идет поиск по вхождению в любом месте в полях, отмеченных галочкой. Первые 3 поля (Название, Доп, Прим), входят непосредственно в карточку. 4-е поле (В типах) обеспечивает поиск в поле "Примечание" классификаторов записи. 3 - поиск по классификаторам. В дереве отображаются классификаторы данного объекта (настраиваются на странице конфигурация). По двойному клику, выбранный классификатор добавляется в условие. Можно добавлять несколько классификаторов. Например для списка людей - выбираем классификатор "Кем(Произв) - Автор" - отобразится список людей, являющихся авторами произведений. В дереве можно выбрать условие отсутствия выделенного классификатора у объекта - удобно для контроля полноты заполнения. Комбинируя эти три типа фильтров, можно составить практически любое условие отбора\поиска. При наборе фильтров в верхней строке окна сразу показывается количество записей, найденных по этим условиям, таким образом еще до загрузки списка в таблицу можно оценить его размер и по необходимости подкорректировать фильтр. В опциях параметр classif_max_count задает максимальное количество записей в списке. Если по фильтру отбирается больше записей, выводится предупреждение с предложением ограничить список. Это необходимо, т.к. на PocketPc при загрузке большого списка в таблицу возможны падения программы из-за нехватки памяти, так же большие списки загружаются довольно долго. Кроме того есть еще параметр classif_min_count - если при переходах по стрелкам (автоматические фильтры), количество записей меньше этого значения - окно фильтра не показывается, если превышает - показывается, в нем мы можем ограничить список или подтвердить, что его нужно грузить. Если при переходе по автоматическому фильтру ничего не найдено (0 записей) так же покажется окно фильтра, для корректировки запроса или отмены перехода. При просмотре списков при нажатии кнопки [Обновить] появляется форма фильтра, содержащая текущие условия отбора. Их можно сбросить и ввести новые для отбора\поиска объектов. Карточка записиНа каждый объект учета (Люди, Произведения, Книги) в программе своя карточка учета, но т.к. они однотипные - описывается на примере карточки Произведения.Необходимые для заполнения поля выделены красным цветом, обычно это поле "Название". Другие поля заполняются при необходимости. Чем больше информации заполнено, тем удобней будет искать произведение. В поле "Доп" обычно вводится дополнительное название, например оригинала на иностранном языке. В поле "Прим" заносим описание, для произведения это аннотация. По этим полям ведется полнотекстовый поиск на форме "Фильтр". Поле "Создано" - дата создания произведения (дата рождения для людей). Значение дат можно выбрать из всплывающего календаря или ввести непосредственно в поле. Формат ввода "дд/мм/гггг", если введено просто число - оно считается годом и сохраняется в виде даты "01/01/гггг". Поле "Размер" - размер произведения (для книг - количество страниц, для фильмов - длина в минутах и т.д.). При двойном клике на любом текстовом поле его содержимое отображается в большом окне. В нем удобно читать/редактировать длинные строки, особенно на PocketPC. Поле "Типы" - содержит список значений классификаторов, привязанных к этой записи. При нажатии кнопки [...] можно перейти к редактированию этого списка. В начале перечня показывается количество привязанных классификаторов. Если на карточке не хватает места для перечня - он выносится в меню [Далее]. При этом количество указывается в скобках после названия (например "Типы (3)") Поле "Кем" - список создателей (авторов для произведений). Поведение аналогично полю "Типы". Поле "Связи" - список связей с другими записями из этого же списка. Позволяет учитывать синонимы, псевдонимы, а также вводить серии произведений. (См. раздел Связи). Поле "Вложения" - список файлов, присоединенных к произведению. Для носителей(Книг) так же есть список "Содержание" - содержит список произведений, входящих в книгу. (См. раздел редакции) Из меню доступны следующие стандартные операции: [Закрыть] - закрывает карточку и возвращается к просмотру списка. [Редактировать] - переходит в режим редактирования полей карточки. [Сохранить] - сохраняет введенные значения в базе. [Отменить] - отменяет режим редактирования без сохранения данных. [Поиск] - открывает окно поиска информиции в Интернете. Поиск on-lineПри вызове из карточки on-line поиска показывается окно для ввода параметров.В нем выбирается место поиска (поле "Источник") и параметры поиска. В большенстве случаев достаточно использовать "Простой поиск" и просто ввести искомую строчку. Для ввода сложных условий нужно выбрать "Набор условий" и заполнить нужные. Список условий зависит от места поиска. По умолчанию в поле "Простой поиск" подставляется содержимое текстового поля из карточки, которое имело фокус в момент вызова поиска. [Закрыть] - закрывает окно поиска и возвращается к карточке. [Установить (V)] - при выборе в меню этого пункта производится поиск. [Добавить (+)] - редактирует выделенное условие поиска при использовании "Набора условий". Неактивна при простом поиске. [Информация (?)] - показывается краткая информация по источнику поиска. Результаты поиска отображаются в таблице. В строке меню выводится информация о результатах поиска - общее количество записей, количество записей возвращенных сервером и др., зависит от места поиска. Если сервер возвращает результат порциями (например books.google.com) нажатием меню [Обновить] загружается следующая порция данных. Если при поиске найдено много записей, при загрузке списка иногда выдаются ошибки. В этом случае ограничте условия поиска. При выборе [Установить (V)] - открывает окно с подробной информацией о найденной записи (также показывается при двойном клике на позиции в списке). В нем показывается картинка/обложка (если передается сервером) и описание (формат и наполнение зависит от места поиска). Здесь можно или вернуться обратно к списку результатов поиска ([Закрыть]) или добавить отмеченную информацию в карточку ([Установить]). Картинка добавляется во вложения с типом "Фото", а описание добавляется в поле "Прим" - от туда его можно скопировать в другие поля. При добавлении мы позвращаемся в карточку. [Открыть] - скачивается файл с содержанием книги, сохраняется в папке /work/. Источники для поиска подключаются в виде расширений (plugin). Список плагинов указан в файле res\find.ini . Сейчас доступны для поиска
ИнструментыСоздание БДПо умолчанию для хранения данных используется СУБД HSQLDB, файлы бд лежат в папке Data.Для создания нового (пустого) каталога необходимо:
На странице [Создание БД] доступны шаблоны для Книги, Музыка, Фильмы. При этом в каталоге будут созданы немного разные наборы классификаторов. Этот набор потом можно будет отредактировать на странице [Конфигурация]. Путь к файлам базы данных указывается в файле профиля для соединения с базой данных (по умолчанию booklet.db) в параметре db_url. Можно создать несколько файлов-профилей с разными путями к БД (разными каталогами) и при запуске выбирать нужный. Файлы профилей (с расширением .db) должны лежать в корневом каталоге программы. Для использования внешней СУБД нужно
КонфигурацияНа странице Конфигурация производится настройка каталога для учета всех необходимых свойств объектов.В верхней строке показывается название каталога. Его можно изменить нажав кнопку [...] В дереве ниже отображаются классификаторы объектов (они же пользовательские поля). К каждому объекту учета (люди, произведения, книги) привязаны списочные поля - классификаторы. Они могут описывать связи между объектами (Вложения, Кем, Связи), например связь между человеком и произвидением - Автор, Художник и т.д. Или быть отдельным словарным полем (Оценка, Тема) - в этом случае оно добавляется в группу Типы. Внизу отображается классификатор произведения, который вместе с названием произведения будет отображаеться в Содержании в карточке Книги (для удобства). Кнопками из меню можно: [Закрыть] - Закрывает страницу Конфигурация. [Редактировать] - Редактирует название групп. [Добавить] - Добавляет в группу классификатор из общего списка. [Удалить] - Удаляет классификатор из группы. [Установить] - Устанавливает выделенный классификатор для описания произведения в содержании книги. При добавлении классификатора в группу появляется окно для его выбора из общего списка классификаторов доступных для этой группы (окно Типы). Если нужного в списке нет - в этом же окне можно создать новый, а также изменять содержащийся в нем список. При редактировании типов из окна конфигурации дерево типов отображается с самого верхнего уровня, т.е. включая заголовки классификаторов - при пустой группе создается новый классификатор. А при редактировании типов из карточки объектов, верхний уровень (если поставить группу пустой) подвязывается к заголовку классификатора. ЗаменыНа странице Замены собраны операции, проводимые над всем каталогомГрупповые замены - позволяет заменить один объект другим такого же типа. При этом все ссылки и связи будут указывать на новый объект, а старый можно будет удалить из каталога. Типы - тип заменяемых объектов (Люди, Произведения, Книги, Типы привязок и др.). Было, Станет - выбор соответствующего объекта. Полезно после импорта данных, когда в базе появляется например два одинаковых автора: один правильный, а другой с орфографической ошибкой в имени и их надо объединить. Пересчет информации о записях - обновляет описание объекта в списках и его картинку (обложку) по всем записям в катологе. Информация в описании задается с помощью скриптов (см. файл res\scripts.ini). По умолчанию для людей - получает их тип как создателей, произведений - получает их авторов, носителей - размер и дата его создания. Обработки каталога - запускается соответствующий скрипт из файла res\scripts.ini для пакетной обработки данных. По умолчанию доступны: Удаление вложений из БД - при этом размер базы на порядок уменьшается. Удаление все, кроме людей - перед повторной загрузкой данных в чистую базу, но мы хотим оставить уже созданные синонимы людей. Установка пароля 'pas' - устанавливает пароль для входа в каталог. Пароль можно изменить в тексте скрипта. ИмпортЗагрузка данных в католог производится на странице Импорт.В поле [Загрузить из] указывается полное имя файла, откуда загружается информация, или папка, в этом случае будут обработаны все файлы в ней и ее подпапках. Поддерживаются так же zip - обрабатываются все файлы в архиве. [Запустить] - при нажатии этой кнопки начнется загрузка данных. На странице отображается информация о загрузке - текущий файл, количество обработанных файлов и т.д. [Файл-Закрыть] - закрывает окно импорта и возвращает к стартовому окну. [Файл-Просмотр] - показывает окно лог файла и файла ошибок. [Файл-Настройки] - показывает окно файла настроек импорта. Описание импортаИмпорт данных реализован в виде набора модулей (плагинов), обрабатывающих файлы соответствующих типов. Список этих плагинов а так-же остальные параметры указываются в файле настроек res\import.ini . В нем же даны подробные описания параметров.По умолчанию импорт производится на основе имени файла: - в базу добавляется носитель(книга) с именем построенным по шаблону в настройках - дата создания - дата изменения файла - размер - размер файла - формат - расширение файла - url - метка диска (если есть) К ней добавляется ссылка на загружаемый файл. Для файлов форматов: fb2 - электронные книги ePub - электронные книги cue - музыкальные альбомы реализованы свои обработчики, добавляющие информацию на основе содержимого файлов. В настройках можно указать типы(расширения) пропускаемых файлов и типы загружаемых файлов (будут обрабатываться файлы только из этого списка). Сначала проверяются пропускаемые, затем загружаемые файлы. При загрузке создается лог-файл с подробной информацией - что добавили, какие ошибки были. Ошибки также сохраняются в отдельном логе. В настройках можно указать максимальный размер лог-файла, по достижении которого создается новый файл лога. Просмотреть содержимое можно прямо из программы "Импорт - Файл - Просмотр" или как файл \work\imp_дата_время.log Можно запустить импорт в режиме `только лог`. При этом в базу ничего не пишется, а в логе получим список файлов во всех папках. При повторной загрузке, если файл уже загружался, программа пропускает его. Проверяется по [имя файла+размер], при этом если путь к файлу изменился (если меняли структуру папок в хранилище) путь в ссылке обновляется. В настройках можно указать чтобы обрабатывали все файлы - нужно если прерывали импорт и не все произведения из zip-а загрузили. Файлы обложек, хранящиеся в базе, при импорте проверяются на повтор кроме имя+размер еще по контрольной сумме (только для файлов загруженных импортом) При импорте информация только добавляется (если ее нет в базе). Если какие-то файлы удаляли, изменяли - ненужную информацию, загруженную из них ранее в базу нужно удалять ручками. (Или провести полный импорт в чистую базу) Загружать лучше на нормальном компе, на налодоннике дооолго будет (хотя без обложек можно), а потом скопировать на КПК. Если база получилась большая, на КПК может не хватить памяти при ее открытии. Поэтому перед переносом на страничке "Инструменты - Замены" можно запустить обработку "Удаление вложений из БД" - все картинки сотрутся, размер базы очень сильно уменьшится. При загрузке больших объемов книг (более 10000) при работе в режиме встроенной СУБД наблюдается замедление. Поэтому перед загрузкой рекомендуется запускать сервер СУБД отдельным процессом (батником server\net_booklet.bat). После этого при запуске программы выбирать профиль booklet_net.db и производить загрузку в режиме сетевой базы (работает очень шустро). Для штатной остановки сервера на странице [Замены] выполните скрипт [Остановка Hsqldb-сервера]. При закрытии сервер переписывает файлы данных, поэтому на большой базе может отрабатывать долго. Импорт книг в формате fb2Загружается вся информация из описания книги (согласно спецификации fb 2.1).Содержание книги в базу не грузится - только ссылка на файл, по ней можно запустить этот файл на исполнение (открыть вьюером). Алгоритм загрузки: 1. При загрузке людей формируется полное имя (ФИО) и заносится в карточку, вся доп. информация (nik, e-mail...) заносится в классификатор "Типы - Описание". 2. Произведения - грузятся название, аннотация, привязывается к автору(ам) и устанавливаются соответствующие жанры в "Типы - Тема". Если этого жанра еще нет в общем списке, он автоматически добавляется. При загрузке используется файл соответствия жанра, прописанного в fb2 и отображаемого в Теме (чтобы по-человечески показывал) формата: #Фантастика (Научная фантастика и Фэнтези) sf_history=Альтернативная история sf_action=Боевая фантастика sf_epic=Эпическая фантастика sf_heroic=Героическая фантастика ... сейчас в него забиты жанры из fictionbook.org , можно добавлять свои. Если для произведения указана серия, она также заносится как произведение с пометкой /серия и соответствующим типом, жанры прописываются аналогичные. Произведению добавляется связь с этой серией и в ней указывается номер. Если серия уже заведена (ищется по совпадению название+авторы) новая не заводится, а привязывается к найденной. Во "Вложения" грузится обложка книги (если есть и в настройках указано грузить обложки). Картинка сохраняется в базе, показывается прямо в программе, но можно получить как файл. 3. В список "Книги" - формируется название книги как [Авторы; Название произведения], заносится вся информация - кто составитель, id, когда, откуда и т.д. Ставиться метка /e-copy. Во вложения добавляется обложка и ссылка на файл из которого загружаем (если из zip-файла еще имя файла в архиве). В Содержание прописывается ссылка на произведение (загруженное выше) и переводчик (если есть). Если в настройках стоит флаг `добавлять печатное издание` - добавляется еще одна книга с названием [Авторы/ Название книги из файла] и меткой /e-master. В нее заносятся издательство, год, обложка, содержание и добавляется связь с e-copy. Если флага нет - вся эта информация добавляется непосредственно к электронной книге. Если в издании указана серия, она также заносится как еще одна книга с названием серии + метка /серия и прописывается издательство. Добавляются ссылки на соответствующие книги /e-master и /e-copy. Если такая серия уже есть (Название+Издательство), новая не создается, а привязывается к существующей. |