База знаний BILLmanager

Как сделать поля плательщика обязательными для заполнения

Статья содержит инструкцию, как сделать обязательным заполнение полей всех типов плательщиков:

  • физических лиц;
  • ИП;
  • юридических лиц.

Описание

Требуется сделать поля обязательными для заполнения при создании или редактировании плательщика.

В BILLmanager нет встроенной возможности сделать обязательными некоторые поля, например, параметры адреса для физического лица (поле Фактический адрес). Отдельные поля можно сделать обязательными для заполнения, но эта настройка не покрывает все необходимые параметры. Решение добавить новое поле и сделать его обязательным для заполнения не подходит, потому что приведёт к дублированию поля у плательщика.

Решение

Проверьте встроенную возможность настройки обязательного заполнения:

  1. Перейдите в раздел СправочникиСтраны.
  2. Выберите нужную страну.
  3. Нажмите кнопку Параметры.
  4. Выберите нужный параметр.
  5. Нажмите кнопку Изменить.
  6. Включите опцию Обязательный параметр.
  7. Нажмите Ok.

Если необходимые поля нельзя сделать обязательными через настройки страны, создайте плагин:

  1. Подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  2. Создайте в каталоге /usr/local/mgr5/etc/xml файл с именем вида billmgr_mod_<module_name>.xml (например, billmgr_mod_required.xml).
  3. Добавьте в файл следующее содержимое:
    <mgrdata>
    <metadata name="profile.edit" type="form" mgr="billmgr">
    <form>
    <page name="physical_address">
    <field name="country_physical">
    <select name="country_physical" required="yes"/>
    </field>
    <field name="state_physical">
    <select depend="country_physical" sorted="asc" name="state_physical" required="yes"/>
    </field>
    <field name="postcode_physical">
    <input type="text" name="postcode_physical" required="yes"/>
    </field>
    <field name="city_physical">
    <input type="text" name="city_physical" required="yes"/>
    </field>
    <field name="address_physical">
    <textarea rows="2" name="address_physical" required="yes"/>
    </field>
    </page>
    </form>
    </metadata>
    </mgrdata>
  4. Перезагрузите BILLmanager с очисткой кеша:
    rm /usr/local/mgr5/var/.db.cache* -rf
    rm /usr/local/mgr5/var/.xmlcache/* -rf
    /usr/local/mgr5/sbin/mgrctl -m billmgr -R
Может быть полезно

Связанные статьи:

В планах развития продукта есть задача по доработке встроенной возможности обязательного заполнения всех полей. Вы можете следить за реализацией в Changelog BILLmanager.

Дата последнего обновления статьи: 03.07.2025. Статья подготовлена техническими писателями ISPsystem