- Мой блог (Дмитрий Харций) - https://wifi-hotspot.zp.ua/wp -

Линух, «мускул», Дебет Плюс v12

Действительно, и что тут писать? Там же на сайте «море документации»! Только вот прочтение ее мало приближает к пониманию. Может в этом и есть весь сакральный смысл open-source?…

Итак, прочтение  всего того вороха, что размещен непосредственно на сайте Дебет Плюс, особого «прозрения» не принесло. Какие-то сбивчивые пояснения, обильно перемешанные картинками из виндовса, «дисками C:\ и D:\», обязательными разрешениями открытого беспарольного доступа рута к мускулу с любого компьютера сети, и т.д.

Короче говоря, отстреляться в моем любимом режиме «побороть за 5 минут и забыть» у меня не вышло…

Посему, решил расписать тут процесс этот, может кто потом спасибо скажет…

1.  Вводные

Есть у меня одна организация, активно переходящая на использование линукса. Причина банальна, платить за честный майкрософт они не хотят, а проверки по городу регулярно выискивают — «кто тут снова авторские права злостно нарушает?!». Посему, стоит у них на всех компьютерах Ubuntu, Open Office и т.д. и т.п… И почти все хорошо, но вот понадобилась им программа даже не для бухгалтерии в полном понимании этого слова, а всего лишь для ведения склада. Но такая, чтобы работало в ней несколько человек, на нескольких компьютерах, по сети, из-под под Ubuntu, ну и, естественно, даром…

Первой «подопытной» для демонстрации заказчику мной была выбрана Open ERP. Установка и настройка её — еще та песня, окончательная настройка стабильно работающей системы «сожрала» у меня несколько дней (основная проблема была с установкой и настройкой ее веб-сервера и веб-клиентов), если будет как-нибудь не лень, тоже распишу тут. Но, не понравился заказчику показанный продукт — «очень монстровская программа», «все слишком правильно», «нам бы попроще и подоходчивей», «мы не сможем наших бабушек обучить ей», и т.д. и т.п. И тут «пало око» на Дебет Плюс. Первые ознакомительные потыкивания в установленной на виндовсе версии закончились резолюцией заказчика: «Нормально, чем-то похоже на 1С, если вы утверждаете, что на линуксе оно точно такое же, то нам пойдет».  И вот теперь заказчиком было озвучено желание — «поставьте нам ее такую же, но на линукс и сетевую»…

Я тоже лентяй, разбираться с «клиентами» и «серверами» самого Дебет Плюса не захотел и решил, что «серверность» будем делать банально — через единую базу в MySQL. Вот на этом, собственно, моя вводная и заканчивается…

2. Сервер, подготовка

В данном случае, под «сервером»  я подразумеваю тот компьютер, на котором будет установлен сам сервер MySQL и размещена база «Дебета». Во всем остальном — он мало чем отличается от остальных «соседних» компьютеров. И более того, по «вводной от заказчика» на этом компьютере также будет работать один человек. На всякий случай напоминаю — это компьютер с установленной на нем ОС Ubuntu-desktop (кстати, оказывается в Украине на бубунту какой-то шустрый киевский предприниматель продает предприятиям сертификаты, я выпал!!!). Сама версия дистрибутива выбиралась мной, и я установил 10.04 LTS только потому, что  LTS  — это дистрибутив «с длительной поддержкой» (лениво мне каждые полгода с новыми багами разбираться)…

Для начала нужен сам сервер MySQL. Способов установить его — в интернете описано превеликое множество. Единственная моя «отсебятина», заключается в том, что я иногда люблю заглядывать в базы с помощью PhpMyAdmin (хотя стартовые действия — создание баз, импорт дампов, назначение привилегий — предпочитаю делать в консоли мускульного клиента — как-то и быстрей и понятней получается). Поэтому, (с поправкой на желание PhpMyAdmin-а) я сходу установил на «сервер» LAMP. Как я обычно это делаю, уже описано мной ранее в заметке Зажигаем «LAMP-очку» [1]. Дублировать тут ее смысла не вижу абсолютно — просто кликните по ссылке и прочтите…

3. Импорт дампа базы данных

После того, как сервер MySQL установлен и работает, наступило время вкинуть в него базу для Дебет Плюс. Для этого в первую очередь понадобится сам  Дебет Плюс. Идем на сайт программы в раздел «Скачать» и качаем версию для линукса.

http://www.debet.kiev.ua/download-program [2]

После того, как файл скачан, его нужно распаковать (tar -zxf в помощь…). С учетом того, что (как я говорил выше) «сервер» будет одновременно еще и рабочим местом, я распаковал архив в домашнюю папку пользователя, который работает на этом компьютере. Кстати, кому не нравится такой вариант, тот может распаковать архив и в любое другое месторасположение. В данном случае, указание того, куда я распаковывал файл имело под собой одну лишь цель — создание «единой точки отсчета» при выполнении приведенных ниже консольных команд.

Итак, после того как архив был распакован, в домашней папке пользователя появилась папка DebetPlusV12. Переходим в папку, в которой расположен дамп базы данных (в консоли (терминале) вводим команду):

cd ~/DebetPlusV12/base/org2

(В данном случае «~» обозначает как раз домашнюю папку пользователя, вместо нее можно еще указать $HOME. )

В обозначенной папке убеждаемся в том, что в ней присутствует файл dpbase.arh (это и есть искомый дамп базы данных программы Дебет Плюс!). Если файл присутсвует, идем в консоль сервера MySQL, для этого вводим команду:

mysql -uroot -p

..и в ответ на запрос вводим пароль root-а (для сервера MySQL). После того, как попали в консоль MySQL, вводим команду для импорта дампа:

source dpbase.arh;

(данная команда приведена с учетом того, что мы перед входом в консоль мускула находились ИМЕННО в той самой папке, где располагался сам файл дампа dpbase.arh, иначе — в команде нужно прописать полный путь к файлу dpbase.arh, например, /home/dmitry/DebetPlusV12/base/org2/dpbase.arh). Дополнительно обращаю внимание, что предварительно саму базу мы не создаем — команда на ее создание уже присутсвует в дампе. Там же, в дампе, указано и то имя, с которым новая база будет создана — dpbase.

В результате процедуры импорта на сервере MySQL будет создана новая база — dpbase и в ней — (примерно) 1000 таблиц. Однако, программе Дебет Плюс для работы нужна ЕЩЕ ОДНА база (уж зачем она ей нужна — я не разбирался, но без нее, увы никак!). Имя этой базы dpadmin. Поэтому, создаем сразу же и ее:

CREATE DATABASE `dpadmin` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 

Импортировать в эту базу ничего не нужно, программе достаточен сам факт ее существования. После того, как в сервере MySQL будут присутствовать обе требующиеся для работы программы базы, им нужно назначить владельцев, и предоставить им права. Для этого вводим две  комманды (баз-то две):

GRANT ALL PRIVILEGES ON dpadmin.* TO "DPADMIN"@"%" IDENTIFIED BY "password" WITH GRANT OPTION; 
GRANT ALL PRIVILEGES ON dpbase.* TO "DPADMIN"@"%" IDENTIFIED BY "password" WITH GRANT OPTION; 

Как видите, в данных командах мы для двух баз (dpadmin и dpbase) назначаем владельцем пользователя (DPADMIN), который будет подключаться с помощью пароля password (причем в данном случае указанное в примере слово «password» — это ИМЕННО ЗНАЧЕНИЕ пароля, поставьте свое собственное, выполняя данные инструкции), и получать при этом полный доступ. Имя пользователя — DPADMIN, причем, именно так — БОЛЬШИМИ буквами, это имя, прописанное по умолчанию в программе Дебет плюс.  И именно с этим именем по умолчанию программа будет пытаться подключаться. Вместо адреса сервера, с которого пользователь DPADMIN будет подключаться к серверу баз данных в команде указано «%» — то есть, с любого адреса. Желающие повысить безопасность могут прописать конкретные адреса, или диапазоны адресов…

Все, базы готовы, консоль мускула нам больше ни к чему, выходим из нее командой quit или exit — кому как больше нравится…

4. Непосредственно сама программа

Тут действительно, практически все уже готово (с учетом того, что ранее программу мы уже разархивировали), и ее нужно просто запустить. Для этого вводим в консоли команду

~/DebetPlusV12/DebetPlus

Программа стартует, причем, полностью готовая к работе, как говорится «из коробки»! Спрашивается, а зачем тогда весь этот талмуд, если ее надо было просто запустить?… Отвечаю — ведь мы ж хотели «сетевую», а если «вот так просто стартануть» — то программа работает с локальной Derby-базой. То есть — пока еще не спешим пользоваться программой — сначала ее нужно перенастроить на использование базы, лежащей в сервере MySQL, и уж тогда будет нам «счастье сетевое»!…

По этому, последний шаг:

5. Настройка на использование базы MySQL

В этой части инструкции я покажу скриншоты, сделанные уже на «внешнем» рабочем месте — стоящем по соседству в сети компьютере. Причем, так уж вышло, что скриншоты делались на компьютере с ОС Windows, но в случае использования ОС Linux все настройки будут происходить точно также.

После того, как программа запустилась, выполняем следующее:

[3]
Рис. 1 — Выбираем добавление базы данных

То есть, в Правой части в меню выбираем закладку «Дебет Плюс»,  правой кнопкой мыши щелкаем на пункте «База DERBY» и в контекстном меню выбираем пункт «Добавить новую».

В открывшемся меню:

[4]
Рис. 2 — Выбираем добавление уже существующей базы данных

 

…выбираем пункт «Добавить в список существующую».

Откроется вот такое меню настройки параметров базы:

[5]
Рис. 3 — Настройки параметров базы данных

В этом меню нам предстоит выполнить ряд действий.

  1. Введите произвольное имя для данного подключения к базе. То есть, это просто то имя, под которым данное подключение к базе будет фигурировать в настройках программы Дебет Плюс. Причем, как показывают и используемое по умолчанию в программе имя «База DERBY», и официальная дока с сайта программы, здесь вы вольны использовать в том числе и кирилицу (правда, лично я не люблю этого, и посему назвал подключение не мудрствуя лукаво — mysql).
  2. Щелкните на стрелку и в выпадающем вписке выберите пункт «MySQL» (надеюсь, вы еще помните в каком сервера баз данных мы создавали нашу базу 🙂 )..
  3. Адрес (сетевой) того компьютера, на котором расположен сервер баз данных MySQL, в котором размещена интересующая нас база программы Дебет Плюс.  В данном случае на скриншоте показан IP-адрес сервера.  Если у вас в сети есть и используется локальный сервер DNS, который для локальных компьютеров хранит имена, можете указать вместо IP-адреса сетевое имя. Ну и напоследок, для случая, когда Дебет плюс запускается на том же компьютере, где расположена и сама база, вполне логичным будет указать в этом поле значение localhost (естественно, что «таких» компьютеров в «сетевой» инсталяции м.б. всего один 🙂 ).
  4. Номер порта. По умолчанию MySQL слушает подключения на порту 3306. Если вы не меняли это значение в настройках сервера MySQL (или даже не знаете, о чем идет речь), остатвьте как есть — 3306. Если меняли — смените и тут… Имя базы. При импорте дампа базы (как было описано выше) мы «автоматом» получаем, что создаваемая для «Дебет Плюс» база будет иметь имя dpbase (оно жестко прописано в файле дампа dpbase.arh, и его смена предполагает ручное редактирование файла dpbase.arh перед импортом). Если вы «ничего такого не делали», оставьте как есть — dpbase.
  5. В поле «Использовать авторизацию Дебет Плюс» мы птичку ставим для того, чтобы избежать необходимости при каждом запуске программы вручную вводить пароль, с которым Дебет Плюс подключается к базе данных. (Заказчик очень просил — «Не мучайте наших бабушек! Не надо, чтобы они еще и пароли запоминали!»).  Если же вы приверженец того, чтобы в целях безопасности пользователь все-таки вводил пароль вручную — не ставьте эту «птичку»!
  6. В поле «Настройки в базе данных» ОБЯЗАТЕЛЬНО ставьте «птичку»! Для сетевой работы — это необходимо. Иначе, при работе с сетевой базой данных Дебет Плюс будет постояннно пытаться искать «какие-то» настройки в своих локальных папках, находить их там естественно не будет, и вместо нормальной работы вы будете просто читать кучи сообщений об ошибках…
  7. Когда все выполнено, нажмите кнопку «Готово». Новое подключение (база данных) появится в списке рядом с пунктом «База DERBY».

Теперь нам нужно задействовать (активировать) эту самую новую (сетевую) базу данных, хранящуюся в сервере MySQL. Для этого выполните следующее:

[6]
Рис. 4 — Активация нового подключения к базе

То есть, просто щелкните на ней правой кнопкой мыши, и в меню выберите пункт «Сделать активной».  В ответ на это вы получите два сообщения.

Первое — это сообщение об ошибке:

[7]
Рис. 5 — Сообщение о невозможности подключиться к базе данных

… которое гласит о том, что программа не смогла подключиться к базе данных. Не пугайтесь. Причина его в том, что, во-первых, ранее вы поставили птичку в поле «Использовать авторизацию Дебет Плюс» (см. рис. 3 выше), во вторых, назначая права пользователей базы (см раздел «3. Импорт дампа базы данных» выше), вы указали использовать пароль (password), и в третьих, самой программе «Дебет Плюс» об этом пока что ничего не известно — ни о факте использования пароля, ни его (пароля) значение. По этому, программа и пытается подключиться к базе с пустым паролем. На что сервер MySQL ей вполне естественно и отвечает, что мол, «низзя сюды без паролю-то!»… Не огорчайтесь, все будет хорошо, нас же просили «не мучать бабушек»…

Второе сообщение — это как раз приглашение ввести пароль:

[8]
Рис. 6 — Ввод пароля для подключения к базе

Вводим тот самый пароль, который указали во время процедуры назначения прав на базы данных — «password» (надеюсь, вы ж его сменили на какой-то другой, свой собственный? 😉 ).

После того, как пароль принят, вы можете приступать к работе непосрадственно в программе Дебет Плюс! (И кстати, на этом этапе, при желании, можно уже и удалить не используемую теперь «Базу DERBY»).

Однако, условие «не мучать бабушек» все еще не выполнено: если на данном этапе оставить все как есть, окно с предложением ввести пароль, показанное на рис. 6 выше, будет выпрыгивать при каждом запуске программы. По этому, будем настраивать дальше…

Выполните следующее:

[9]
Рис. 7 — Вход в меню «Администрирование»

То есть,  щелкните сначала «Администрирование» в списке на закладке «Дебет плюс», а потом просто на самой вкладке «Администрирование» вверху.

В открывшейся вкладке нас интересует пункт Пользователи.

[10]
Рис. 8 — Выбираем меню «Пользователи»

Вот его и щелкнем. Откроется меню настройки пользователей программы:

[11]
Рис. 9 — Меню настроек пользователя

В нем выполните следующее:

  1. «Щелкните плюсик», чтобы открыть список пользователей.
  2. В списке будет всего один пользователь — DPADMIN. Вот его и выберите. Кстати, вот мы добрались до того, и с каким именем программа «ходит» в базу данных,  и почему оно набрано большими буквами… Кстати, желающие могут сменить, но учтите, что менять придется и в сервере MySQL (см. выше про назначение прав).
  3. Но мы сюда пришли с единственной целью — сменить пароль, с которым программа пытается подключаться к базе.  Поэтому, ставим «птичку» в поле «Сменить пароль».
  4. После этого у вас появится возможность ввода в поле «Пароль для пподключения к БД». Вводим туда то самое «password» (или какое там вы указали у себя) значение пароля.
  5. Щедлкаем кнопку «Сохранить». При этом пропадут и «звезды» в поле пароля, и «птица» в поле «Сменить пароль». Не переживайте — дело уже сделано, программа запомнила новый пароль.
  6. Щелкаем кнопку Закрыть» и выходи из меню.

ВСЁ!

Для проверки — выйдите из программы Дебет Плюс. А потом запустите ее снова. Вы должны попасть в программу без ввода каких бы то ни было дополнительных паролей, по умолчанию должна быть выбрана база MySQL, и все должно прекрасно работать.

Вот теперь, на мой взгляд, наконец-то это похоже на иструкцию по запуску программы за пять минут!!! 😉

Ах, да! Чуть не забыл…

6. Важное замечание по серверу MySQL

По умолчанию, обычно, сразу после установки сервера MySQL, доступ извне (из сети) к нему ограничен! За это отвечает обычно специальная настройка в файле my.ini. Зачастую (раньше) использовался специальный параметр — skip-networking. Если он активирован в файле настроек, право подключения к серверу дается лишь запросам, поступающим с адреса localhost. В таком случае, наши сетевые клиенты не смогут работать.  Чтобы все было хорошо, указанную строку нужно закомментировать.

Однако, в Ubuntu последнее время вместо параметра skip-networking используется другой — bind-address =127.0.0.1. Он также не позволяет подключаться к серверу никому, кроме localhost-а. По этому, его как и рассматривавшийся выше параметр skip-networking тоже нужно закомментировать.

После того, как данное ограничение в настройках сервера будет исправлено, сервер MySQL нужно перезапустить.

И вот теперь ваша сетевая версия Дебет Плюс будет прекрасно работать…

Успехов!

Комментарии закрыты (Открыт | Закрыть)

Комментарии закрыты На "Линух, «мускул», Дебет Плюс v12"

#1 Комментарий Автор: Ultra - 2 января, 2012 @ 12:11

Описание просто Супер!
Осталось только проверить и работать.
Не смотря на то что документацию Дебет Плюс составляли специалисты, им есть чему поучиться у Вас.
Большая Благодарность от меня!

#2 Комментарий Автор: Ultra - 2 января, 2012 @ 15:05

Не могу запустить ДебетПлюс,когда запускаю в командной строке, во второй строке после команды сообщается, что нет файла debet.ini там где он должен быть, далее много строк.
За время запуска появляется заставка Дебета, сам дебет мелькает большим окном, которое исчезает, и в итоге появляется маленькое окошко, типа как для ввода паролей, но оно чисто белое без текста и кнопок, на Enter и ввод пароля не реагирует и не закрывается(но через продолжительное время это окно исчезает).
Вы не писали в статье что надо устанавливать дополнительные пакеты, типа xuluner и т.п., может этого мне не хватает или что то другое?

#3 Комментарий Автор: dmitry - 2 января, 2012 @ 17:15

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

#4 Комментарий Автор: Ultra - 2 января, 2012 @ 22:40

Не знаю решена ли моя проблема, но я смог запустить Дебет.
Пишу сейчас, но еще не пробовал пользоваться номенклатурой и остальным.
Решил установить xulunner, как советовали на оф.сайте Дебета.
Не знаю что это за файл, но как я понял, если его установить, будет работать справка в Дебете.
Установить этот файл мне было сложно, на сайте Дебета не объясняют что скачивать из множества ссылок на той веб-странице.
Пробовал устанавливать с расширением .deb двух версий, т.к. не совсем мог понять установилась ли с первого раза, в Центре приложений Ubuntu это не совсем понятно, там было написано что не все зависимости удовлетворены.
Далее запустил Дебет и наконец получил хотя бы ошибку на англ.яз «типа дальше будет окно с объяснениями», но после подтверждения ошибки появилось окошко для ввода пароля.
Пароль не решил проблем и читая на форуме Дебета статьи я решил использовать совет и исправил файл(текстовым ред.) …/JDebet/syspar.xml, в этом файле есть параметр который нужно изменить на default=»false»
().

Вот после этого Дебет запустился(с ошибкой и паролем) и стал предлагать окно уже с известной всем постоянным пользователям ошибкой «обновления» чего то, от чего я отказался(может зря, но потом напишу).
Далее настроил Дебет как описал Дмитрий, перезапустил и он легко запустился без дополнительных ошибок. Вот и все, пока.
Сейчас полагаю буду искать/встречать еще ошибки и доставлять еще какие либо пакеты, которые указаны на оф.сайте Дебет Плюс.

#5 Комментарий Автор: Ultra - 9 января, 2012 @ 12:50

Это снова я!
Будут ещё проблемы! И тут я решил что не смогу их решить и думал уже забросить все это, но я написал на форум Дебета, о том что программа запустилась, а меню у программы нет и когда мне ответили, то я смог решить и эту проблему. И похоже, возможно, наконец то я смогу пользоваться Дебет Плюсом полноценно! Ладно, могут встретиться ещё какие либо проблемы, но как я решил последнюю сложную для меня проблему(т.е. мне помогли) читайте по [12] Дебет+. Мой ник на форуме «Ultra», поэтому мои вопросы и решения ищите по моему нику.

#6 Комментарий Автор: envetsInseree - 11 февраля, 2012 @ 03:39

Мне понравилось. Кстати написано супер просто, аж заводит.