вторник, 23 апреля 2013 г.

Консультант+ в Linux.

При переводе бухгалтерии на Xubuntu 12.04 возникла проблема с Консультантом. Предыдущий админ его и 1С настраивал через подключение к терминальному серверу, но это не наш метод!
Итак, вводная. Имеем честно купленную сетевую верси Консультант+, установленную на терминальном сервере с размещением данных на Samba-шаре. Виндовые клиенты спокойно регистрируются и работают. Для регистрации станций создан ярлык вида \\files\cons\CONS.exe /adm /inet. Запускаем программу с этими ключами, а потом выполняем запуск на клиентской машине (это если кто не в курсе как Консультант работает).
Первым делом решаю пойти по проторенному пути. Подключаюсь с машины под openSUSE 12.1 r samba серверу и с помощью wine запускаю экзешник. Вываливается куча ошибок, регистрация не проходит, ничего не работает. Увы... 8((
Чтож - google, google, google. Странно, но самая свежая найденная информация, которая мне встречается, датирована 2011 годом. Работающего рецепта, кстати, я так и не нашел. Но надо же проверить на практике.
На этот раз использую тестовую машину с рабочим конфигом сотрудников -  Xubuntu 12.04 и wine 1.5.28. Пробую все способы сразу.
Монтирую шару с Консультантом по nfs (можно и по smb, без разницы)

vim /etc/fstab
files:/cons     /mnt/cons       nfs     defaults 0 0
mkdir /mnt/cons
mount -a

Указываем в wine полученный каталог как отдельный диск

Потом я пробовал не указывать отдельный диск - вроде тоже работает.
Открываем в файловом менеджере каталог Консультанта и запускаем его в wine

Тут вываливается ошибка

К сожалению, я не смог найти ресурс, на котором нашел способ ее убрать. Вроде бы это был форум Консультанта, ссылку привести не могу. Чтобы это сообщение не появлялось, нужно выполнять запуск приложения с ключом /yes. Еще где-то видел информацию про ключ /LINUX. Позднее я выяснил, что он используется на машине администратора при регистрации станций (если она тоже на linux), но субъективно с этим ключом программа становится несколько отзывчивей, поэтому я его использую везде. Таким образом строка запуска принимает вид

 wine /mnt/cons/cons.exe /LINUX /yes
или
 wine Y:\\cons.exe /LINUX /yes
если вы диск подключили.

На радостях, что все работает, тут же устанавливаю приложение всей бухгалтерии. Ярлык на подключение к терминалу удаляю. И тут начинается...
При сворачивании окна Консультанта иногда его размер уменьшается до стандартного при использовании кнопки "Восстановить положение окна". При этом содержимое окна остается прежним, то есть видно только верхний угол без элементов управления. Лечится щелчком правой кнопки на заголовке и нажатием "Восстановить", а затем разворачиванием окна.
 
Вторая проблема гораздо серьезней. Консультант в wine не может взаимодействовать с установленным в основной системе офисным пакетом. В результате нет возможности просматривать формы, представленные в .doc и .xls (rtf и прочие открывает вайновский notpade).

Сохранение тоже не работает - файлы просто не создаются. Гугл советует заняться правкой реестра в wine, чтобы сделать ассоциации с бинарниками офиса в /usr, но у меня это не получилось. В конце концов плюнул и установил в wine виндовый libreoffice. Маразм, конечно, но тем не менее все сразу заработало.

Скорость работы libreoffice в wine никакая, поэтому бухгалтерам рекомендовано не использовать функции просмотра форм в Консультанте, а вначале просто сохранить их на рабочий стол, а уже оттуда открыть.

Вот и все. Бухгалтерия работает, а я доволен, что еще одно препятствие в переходе на linux устранено.