понедельник, 22 февраля 2016 г.

Многострадальным пользователям программы m.e.doc посвящается! Часть №0

Читать, но до прочтения продолжения не воплощать :-)
Наверное многие сталкивались с программой  m.e.doc для сдачи электронной отчетности. В целом ничего плохого о ней сказать не могу, но вот только по моему мнению не рассчитана она на очень большой документооборот.
Начал наш медок со временем, все сильнее и сильнее тормозить. Интенсивное общение с техподдержкой не приносило желаемых результатов. Одним из советов техподдержки было предложение сделать бэкап программы с установленной опцией проверка базы данных.
В итоге бэкап-менеджер выдал сообщение об ошибке в базе. После этого, служба технической поддержки предложила решить проблему на платной основе, от чего мы отказались.
Ниже приводится мой способ решения проблемы(очень затратный по времени):
Программа в своем составе имеет 2 способа создания резервных копий, нам потребуются оба. 
1-й этап: запускаем BackupManager,  с правами администратора. 
Опция "Проверка базы" должна быть снята.
Нажимаем "Создать архив", по прошествии достаточно большого промежутка времени мы получим файл с расширением .BKZ. Запомните его местоположение.

2-й этап: Запускаем программу, авторизуемся и сразу закрываем нас интересует вот это:
Выбираем "Создать копию предприятия", если предприятий несколько проделать только для проблемного. Нажимаем "ок".
У меня процес длился 5 часов.
Ждем.
На выходе получаем файл с расширением .ZBK

3-й этап: Думаю не обязательный, но я проделал. Через диспетчер программ удаляем медок и перегружаем компьютер, после чего снова устанавливаем и обновляем медок. Важное замечание: обновляться необходимо до версии с которой делали бэкап и резервную копию.
 4-й этап: с помощью BackupManager восстанавливаем программу из архива, полученного на первом этапе. Процесс займет некоторое время.
5-й этап: Запускаем программу, авторизуемся, но не входим в предприятие а нажимаем плюсик "Создать предприятие", выбираем вариант восстановление резервной копии, жмем "дальше", выбираем созданную на втором этапе резервную копию, снова "далее",
выбираем предприятие и выставляем опцию заменить предприятие из резервной копии.

Ждем.
У меня процес занял 16 часов.
Теперь объясню почему так сложно:
Бэкап создаваемый бэкап-менеджером, представляет собой обычный архив и при восстановлении из него, вы восстанавливаете и все ошибки, которые имеются в вашей базе, но это единственный способ перенести настройки пользователей и роли на новую установку. Кстати, если вы устанавливаете медок на новую машину, или у вас меняется имя/сетевой адрес компьютера, бэкап-менеджер сообщит вам, что бэкап успешно восстановлен, после чего безнадежно повиснет. Лечение: не снимая процесса бэкапа, идем в корневую папку медка и запускаем ConnectionSetup.exe, исправляем имя/адрес на главной вкладке и в настройках базы данных, сохраняем и перезапускаем службу ZvitGrp1.
Резервная копия предприятия, создаваемая при выходе из программы, очевидно сохраняет все документы в каком то формате типа XML и при восстановлении соответственно происходит обратный процес, возможно сопряженный с переиндексацией базы, а может индексы просто создаются по новой, одним словом ошибки уходят. Для проверки можно запустить "бэкап-менеджер" с установленной опцией проверки базы данных. Наслаждаемся работой программы. После успешного ремонта базы, очень рекомендую настроить автоматический ежедневный бэкап через встроенный планировщик программы.
До следующих глюков!





3 комментария:

  1. Под WINE корректной работы не добились.
    Оно под родной виндовс еле работает :)

    В целях безопасности у нас медок изолирован в VirtualBox.

    Здесь статья, как установить на виртуальную машину VirtualBox
    под Линукс. Удобно делать копии целой виртуальной машины.
    Пошаговая установка, доступ к электронным токенам USB, автозагрузке виртуалке.

    http://oster.com.ua/blog/VirtualBox_Medok_Linux

    ОтветитьУдалить
    Ответы
    1. До выхода .NET версии я добивался работы под WINE, современную версию не пробовал

      Удалить
  2. Хороша стаття як забрати помилки в базі. Автору за муки 5+ до карми. Ще деякі спостереження по програмі, якщо Вам треба бистро перенести медок або fredo з настройками користувачів, то можна перенести цілу папку db по замовчуванню вона тут C:\ProgramData\Medoc\MedocSRV\db\. Ну і ще такий нюанс перед оновленням не нехтуйте архівом або хоча б бекапом. Вже два рази після оновлення були глюки і приходилось відкатувати назад базу. Всім успіхів

    ОтветитьУдалить