Инструкция по переходу на версию 2.5
Инструкция по тестированию программы версии 2.0, релиз 700 и обновления структуры базы данных версии 44
Для системных администраторов и продвинутых пользователей - краткая инструкция в конце страницы.
Для тех, кто не чувствует себя крутым администратором, ниже - подробная инструкция.
Типовая конфигурация работы в "серверном" варианте программы «Движение товара», требует выполнения определенных требований к размещению самой программы, базы данных и рабочих каталогов программы на клиентских компьютерах.
Прим.
Если в качестве сервера будет использоваться компьютер, на котором создали и заполнили базу данных в однопользовательском режиме, требуется выполнить перенастройку в соответствии с инструкцией.
ОДНОПОЛЬЗОВАТЕЛЬСКИЙ И СЕРВЕРЕНЫЙ РЕЖИМЫ РАБОТЫ ПРОГРАММЫ НЕСОВМЕСТИМЫ!!!.
Если принудительно заставить работать БД в "смешанном режиме", база данных будет испорчена!
Прим. Если другие компьютеры не смогут увидеть на нем сервер FB, то необходимо проверить и настроить, либо отключить брандмауэр (firewall).
Прим. Выполнить эту операцию даже в том случае, когда база данных была создана на компьютере-сервере в однопользовательском режиме. Базу следует переместить во вновь созданный каталог.
Прим. Файл клиентской библиотеки в однопользовательском варианте называется fbembed.dll. Этот файл и файл клиент-серверного варианта несовместимы и не взаимозаменяемы. Файл в однопользовательском варианте, фактически, исполняет функции, как клиента, так и сервера БД. Размер его больше, чем у многопользовательской клиентской библиотеки.
Прим. В каждой ОС для размещения данных приложений есть стандартный каталог, доступный по чтению и записи. Например, для Windows 7/8/8.1
C:\Users\<ИмяПользователя>\AppData\Roaming\DT
Размещение программы на сервере позволяет легко решать проблему обновления версий. В случае получения новой версии программы достаточно заменить исполняемый файл на сервере. После перезапуска программы на клиентских компьютерах будет запущен уже новая версия программы.
В том случае, если текущая версия еще используется кем-то из клиентов и переписать файл не удается, перед копированием файл с программой старой версии можно переименовать, например в Invoice0.exe, затем на ее место скопировать новый.
Такой вариант замещения сработает, если новой версии программы не требуется изменения версии базы данных. В этом случае есть только один путь – «выгнать» всех клиентов и запустить новую версию в монопольном режиме, иначе возможны ошибки перехода на новую версию базы данных.
Для пользователей, уже использующих многопользовательский вариант (МПВ) программы на сервере БД версии 1.5 предлагается выполнить переход одним из трех доступных вариантов.
Если у вас однопользовательский вариант (ОПВ) программы, можете переходить к конвертированию базы данных.
Сначала нужно заменить сервер баз данных Firebird 1.5 на версию Firebird 2.5.
Прим. Все операции выполняются с правами администратора системы.
Операцию по смене версии сервера нужно производить после закрытия программы всеми пользователями.
Имеет смысл после этого остановить службу сервера
Firebird. Это гарантирует целостность базы данных.
Сначала нужно деинсталлировать сервер версии 1.5 штатными средствами через панель управления или пункта деинсталляции в меню пользователя. Убедитесь, что службы сервера исчезли из списка служб. Если служба только помечена на удаление, но из списка не пропала, придется перезагрузить сервер. После перезагрузки убедитесь, что службы Firebird нет в списке служб.
После деинсталляции сервера предыдущей версии установите сервер версии 2.5.
Прим. На 64-разрядные системы рекомендуется устанавливать 64-разрядный сервер. Этот сервер содержит 32-разрядные клиентские библиотеки для совместимости.
ВНИМАНИЕ: В случае установки 64-разрядного сервера конвертирование базы первым вариантом (средствами самой программмы) не получится. Придется использовать следующие варианты.
Выбирайте все параметры по умолчанию. На странице дополнительных задач установите флажок копирования клиентской библиотеки в системный каталог.
На последнем окне по завершению установки убедитесь, что установлен флажок запуска службы сервера. Если по какой-то причине вы отказались от запуска службы, перезагрузите сервер или запустите службу вручную.
Клиентские библиотеки будут скопированы в системную папку Windows. Для использования в локальном варианте, когда программа запускается на самом сервере с консоли или в сеансе сервера терминалов, этого достаточно.
Если же программа запускается по локальной сети на компьютере клиента из "расшаренной" папки на сервере, следует 32-разрядную клиентскую библиотеку вновь установленного сервера скопировать в папку с исполняемым файлом программы. То же самое придется сделать на каждом компьютере клиентов, если программа запускается не с сервера, а из локальных папок на компьютерах клиентов.
Сервер баз данных устанавливается по умолчанию в папку "Program files" системного диска, если иное не указано при установке. Обычно это путь:
"C:\Program Files\Firebird\Firebird_2_5\"
Аналогично для 64-разрядных систем и 64-разрядного сервера, но это может быть и
"C:\Program Files (x86)\Firebird\Firebird_2_5\"
в том случае, если установлена 32-разрядная версия сервера.
Клиентскую 32-разрядную (программа 32-разрядная, а разрядность программы и клиентской библиотеки должна совпадать) библиотеку можно найти в папке \bin\ установленного 32-разрядного сервера и в папке \WOW64\ для 64-разрядного варианта сервера баз данных.
По завершении установки сервера версии 2.5 можно проверить правильность установки. Убедитесь в том, что служба сервера баз данных запущена и запустите программу. Серверы Firebird версии 1.5 и 2.5 совместимы снизу вверх, то есть, сервер баз данных большей версии должен работать с базами данных, созданными серверами меньших версий.
После запуска программа должна сообщить о несовпадении версий сервера и базы данных, но при этом продолжит работать в нормальном режиме.
После переустановки и проверки сервера можно перейти к конвертированию версии базы данных. Хотя версии серверов и совместимы, в случае "старой структуры базы данных" с ней не будут работать расширения, появившиеся в новой версии сервера. Для обеспечения совместимости потребуется конвертировать (преобразовать версию) базу данных.
При любом варианте конвертирования, операции перехода нужно выполнять в следующей последовательности:
Варианты 2 и 3 полностью автономны, то есть, для выполнения конвертирования нет необходимости установки какой либо версии сервера баз данных на компьютер, где производится конвертирование.
Самый простой по применению вариант, так как производится самой программой без привлечения сторонних инструментов (см. Примечание). Преобразование производится при выполнении обработки сжатия базы данных.
Внимание! Конвертирование при сжатии обеспечивается только на релизе 635 и выше.
Эта операция полезна сама по себе, когда начинают наблюдаться "тормоза" в выполнении запросов и увеличивается время на формирование отчетов.
После сжатия будет выполнено завершение работы программы.
Прим. По причине несовместимости структуры 32-разрядной БД версии 1.5 (ODS 10) c 64-разрядным сервером Firebird, конвертирование базы методом сжатия не получится, поскольку база не может быть открыта. Придется использовать другие варианты конвертирования.
Скачайте с сайта архив FDBConvertPortable.zip и распакуйте во временную папку программу конвертирования БД в версию 2.5.
Запустите программу, укажите путь к базе данных и выполните предлагаемую последовательность шагов преобразования версии. Все установки/настройки оставьте в значениях по умолчанию.
Прим. Выражаю благодарность разработчикам платформы Гедымин за предоставленную программу.
Этот вариант для продвинутых пользователей и любителей командной строки, желающих "всё держать под контролем". Хотя этим вариантом может воспользоваться любой пользователь, способный в командной строке указать путь к базе данных.
Скачайте с сайта архив Convert_15_to_25.zip и распакуйте во временную папку содержимое архива. Запустите командный файл, передав ему в качестве параметра путь к базе данных.
convert_15_to_25.bat [диск:][путь\]SHOP.FDB
Дождитесь окончания операции.
Прим. Прочитав командный файл можно узнать, какие операции и в какой последовательности выполняются при преобразовании версии базы данных.
Запустите программу и убедитесь в успешности преобразований. Должно пропасть предупреждение о разных версиях сервера и базы данных. Также на вкладке "Значения" конфигуратора будут указаны одинаковые версии сервера и базы данных.
ВНИМАНИЕ! Тем пользователям, которые давно и успешно используют программу!
При обновлении меняется как состав таблиц, так и набор полей в существующих таблицах.
Для исключения проблем перехода на новую версию программы и обновленную структуру базы данных, прошу выполнить тест на проверку обновления и выявления возможных проблем.
Прим. Папка должна быть доступна по чтению и записи. Если есть проблемы с созданием папки на диске, то можно создать такую папку на рабочем столе.
Прим. Рабочую базу данных можно копировать только при выполнении условия полного отключения от нее всех пользователей (для многопользовательского варианта) или закрытия основной программы для однопользовательского варианта. Это же требование обязательно при выполнении операций резервного копирования базы данных.
Рабочую базу можно взять из последней резервной копии, если она есть, и нет возможности остановить основную программу и/или обеспечить отключение всех пользователей
Прим. Если после запуска программа сообщает, что не находит базу данных, это означает, что либо файла с таким именем там действительно нет, либо он недоступен по записи/чтению.
Возможно, базу или саму программу заблокировал антивирус. Включите программу в исключения из проверки или отключите антивирус на время обновления.
Еще одной причиной проблемы может оказаться защита папки от записи. Необходимо разрешить любые действия (чтение/изменение/запись/удаление) с папкой.
Прим. К письму необходимо прикрепить файлы логов и ошибок программы:
Invoice.log
Invoice.elf
Дальнейшие действия необходимо предпринять, если вы удовлетворены результатом обновления и необходимо переходить на работу с обновленной базой в рабочем варианте.
Прим. При выполнении обновления программа, если файл базы данных до сих пор не обновлялся и соответствует версии Firebird 1.5, автоматически повышает версию файла базы данных до версии Firebird 2.5.
Обойтись без повышения версии сервера БД невозможно, так как все будущие релизы будут поддерживать только эту версию сервера или выше.