Конфигурация

Правка конфигурации производится в оснастке Администрирование⇒Конфигурация.

Основная конфигурация ERP определяет большинство параметров функционирования ядра и плагинов.

В основную конфигурацию попадают параметры, определённые в файле bgcrm.properties (имя файла может быть переопределено в скрипте запуска). Далее создаётся соединение с БД по указанным в файле параметрам и загружается активная конфигурация указанная в интерфейсе администратора. После чего файл загружается повторно, это позволяет переопределять в файле любые параметры из конфигурации.

setup 1

Одномоментно может быть активна только одна конфигурация выделенная признаком Активный. Для создания конфигурации - кнопка Создать. Изменении конфигурации применяется "на лету", перезапуск системы не требуется.

В конфигурации указываются параметры ядра и подключённых плагинов. Для ядра доступны указанные ниже параметры. Вы можете использовать данную конфигурацию, как начальную.

#выводится в заголовке окна браузера при работе с ERP
title=ERP TEST
# отключение проверки версии браузера пользователя при авторизации
#check.browser=0
# таймаут активности сессии пользователя в секундах, по-умолчанию сессия отключается через 5 минут
#sessionTimeout=10
ERP
http://avantys.group 20
#sessionTimeout=10
#
# формат адресного параметра, доступны переменные: index, сity, area, quarter, street, house, flat, room, pod, floor, comment
address.format=(${city})(, ${street})(, д. ${house})(, кв. ${flat})( ${room})
#
# шаблон описания контрагента для поиска
# в нём можно указать параметры контрагента подстановками вида (param:<code>); например: (${param:73} г.р.) (, ${param:12})
# customer.reference.pattern=
#
# минимальная длина подстроки в поиске контрагента
searchCustomerTitleMinSubstringLength=2
#
# форматирование параметра типа "phone", общий формат одного номера
param.phone.format=(${number})( [${comment}]);
# форматирование поля ${number} внутри каждого номера, в зависимости от формата
# форматирование определяет разбиение номера по полям в редакторе, f13 - первый символ в первом поле, далее три во втором
param.phone.format.number=+X XXX XXX-XX-XX
param.phone.format.number.f10=+X XXX-XXX-XX-XX
param.phone.format.number.f13=+X (XXX) XXX-XX-XX
param.phone.format.number.f14=+X (XXXX) XX-XX-XX
param.phone.format.number.f15=+X (XXXXX) X-XX-XX
# количество полей в параметре типа "телефон"
param.phone.item.count=4
# префикс по-умолчанию для параметра типа "телефон"
param.phone.default.prefix=3472
# ускорение ввода номеров - подстановка 7 в код страны
param.phone.part.1.default=7
# переход в третье поле при введение во втором кода российского мобильного, без удаление последнего символа
param.phone.part.2.jumpRegexp.1.regexp=^9\d{2}
param.phone.part.2.jumpRegexp.1.moveLastChars=0
# переход в третье поле с переносом последнего введённого во втором поле при наборе во втором поле 3472
param.phone.part.2.jumpRegexp.2.regexp=^3472
param.phone.part.2.jumpRegexp.2.moveLastChars=1
#
# при пробросе запросов на сервер с помощью Proxy сервера - имя HTTP заголовка, в котором передаётся адрес клиента
# header.name.remote.addr=X-Real-IP
#
# роли, в которых контрагент может быть привязан к процессу, роли должны начинаться с customer, например: customer:Контрагент;customerSogl:Согласователь
processCustomerLinkRoles=customer:Контрагент
#
# проверка прав доступа пользователей, 1 - включить
user.permission.check=0
#
# допустимые символы, диапазон длин пароля пользователей
user.password.chars=1234567890qwertyuipasdfghjoklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM_-=[].,
user.password.length.min=5
user.password.length.max=10
#
# роли групп в процессах, добавляются через точку с запятой в виде <id>:<title>
processGroupRoles=0:Выполнение
#
# параметры EMail
mail.from.email=bgcrm@xxxxxxx
mail.from.name=BGCRM
#
mail.smtp.host=
mail.smtp.user=
mail.smtp.pswd=
# SMTP SSL протокол
#mail.transport.protocol=smtps
# порт, если не указано - 25 для SMTP, 465 для SMTP SSL
#mail.smtp.port=
# отладка почтового обмена SMTP
#mail.debug=1
#
#
# теги сообщений
tag.1.title=Реквизиты
tag.1.color=red
tag.2.title=ТЗ
tag.2.color=green
tag.3.title=TODO
tag.3.color=magenta
#
# динамический код и расширение функциональности
dynamic.src.dir=dyn
dynamic.src.encoding=UTF-8
# максимальное время выполнения обработчика события в мс. до принудительного прерывания
event.processTimeout=1000
# перечень через запятую динамических или обычных классов, реализующих интерфейс java.lang.Runnable, запускаемых при старте сервера
#runOnStart=
# перечень через запятую динамических или обычных классов, объекты которых создаются при старте сервера, при перекомпиляции динамических классов создание объектов производится повторно
#createOnStart=
#
# планировщик, запуск - 1
scheduler.start=1
#
# сброс кэша новостей каждые указанное количество секунд, может быть необходимо лишь при импорте
новостей извне в БД BGCRM
#flush.news.everySeconds=
#фильтр по группе типов процессов на вкладке "Процессы"
linkedProcessList.typeGroupsList=11177:IT Обслуживание

# Поведение при обновлении списковых параметров email, phone, address на добавление дублирующихся элементов
# * NONE (по-умолчанию) пропустить проверку дубликатов
# * IGNORE не добавлять дублирующиеся элементы
# * ERROR выводить ошибку при дубликате
dao.update.duplicate.strategy=NONE

Записи параметров плагинов начинаются с префикса <plugin>:, например bgbilling:. Возможно включение в одну конфигурации другой, для этого во включающей конфигурации размещается инструкция include.<configId>=1, где <configId> - код включаемой на данной позиции конфигурации.

Запрет дублирующихся значений в параметрах email, phone, address

В конфигурации можно запретить добавление дублирующихся элементов спискового типа email, phone, address.

# Поведение при обновлении списковых параметров email, phone, address на добавление дублирующихся элементов
# * NONE (по-умолчанию) пропустить проверку дубликатов
# * IGNORE не добавлять дублирующиеся элементы
# * ERROR выводить ошибку при дубликате
dao.update.duplicate.strategy=NONE
Дублирующимся элементом является такой элемент, который по значению является не уникальным. Если рассматривать телефон, повтор цифр телефона является дубликатом. Если электронная почта то повторная последовательность символов является дубликатом. При адресе это совпадение улицы, дома, квартиры и комнаты. При этом если различается подъезд либо этаж, это тоже считается дублем, так как у одной квартиры не может быть разный подъезд, либо этаж. Во всех этих параметрах комментарий не даёт уникальность значениям