Перейти в хранилище документации
Обратиться в техническую поддержку
Существует возможность создавать дополнительные поля для объекта Пользователь, используемые в модуле Бюро пропусков (см. Работа с пользователями в Бюро пропусков).
Создание дополнительных полей происходит с помощью текстового редактора, позволяющего просматривать и изменять кодировку текста ASCII.
Дополнительные поля для объекта Пользователь разделяются на 2 группы:
Внимание!
Тип данных SQL | Представление | Обработка по умолчанию |
---|---|---|
BIT | Boolean | Раскрывающийся список со значениями Да/Нет |
INTEGER | Integer | Числовое поле с инкрементом/декрементом и возможностью ручного ввода |
SMALLINT | ||
DATETIME | DateTime | Календарь с возможностью выбора даты и времени |
CHAR | String | Текстовое поле |
TEXT |
Формат | Описание | Синтаксис |
---|---|---|
C | Раскрывающийся список с предопределённым, фиксированным набором возможных значений. Примечание. Тип в БД может быть также числовым, в этом случае весь набор значений должен был числовым | {С%value1|value2|...|valueN} Пример: {C%Официант|Кассир|Кладовщик|Охрана} |
CT | Раскрывающийся список с возможностью ввода произвольных значений. Логика схожа с форматом С, но позволяет вручную заполнить поле текстом в случае необходимости. Используется, если полный список возможных значений слишком велик, но при этом наиболее часто используемых вариантов не так много (они делаются предопределёнными) | {CT%value1|value2|...|valueN} Пример: {CT%Москва|Санкт-Петербург} |
CCI | Раскрывающийся список с предопределёнными значениями и генерацией событий при сохранении. Используется, если изменение ключевых параметров пользователя требуется запротоколировать в БД или «перехватить» диспетчером событий/скриптом. Целесообразно сделать это поле обязательным для заполнения. | {CCI%Descr1(EVENT1)|Descr2(EVENT2)|...||DescrN(EVENTN)} |
S | Числовое поле с инкрементом/декрементом и возможностью ручного ввода. Примечание. Если в БД для поля выбран числовой тип данных, то необходимо учитывать минимальные и максимальные значения в соответствии с диапазонами в синтаксисе | {S%0} или {S%min|max} Пример 1: {S%0} – диапазон значений: min: -2147483648, max 2147483647 Пример 2: {S%100|999} – диапазон значений: min: 100, max 999 |
U | Данный формат является внутрисистемным и не может быть использован для генерации дополнительных полей | - |
UT | Уникальный текст с валидацией (проверкой на соответствие определенным требованиям) по регулярному выражению-шаблону. Является удобным инструментом пользовательской настройки, но требует технической подкованности в написании регулярных выражений. Вводимый оператором текст сверяется с шаблоном, и только при совпадении с шаблоном допускается окончательное изменение значения поля. Также при сохранении пользователя проверяется уникальность введённого значения: не может быть двух пользователей с одинаковым значением этого поля | {UT%pattern_base64} В запакованном в формате Base64 тексте находится следующий шаблон (для русской версии продукта):
В запакованном в формате Base64 тексте находится следующий шаблон (для английской версии продукта):
|
UTS | Уникальный текст. При сохранении пользователя проверяется уникальность введённого значения: не может быть двух пользователей с одинаковым значением этого поля. При попытке ввести в поле ранее указанное значение у другого пользователя будет выдано окно с предупреждением, что такое значение уже имеет другой пользователь | {UTS%0} |
TC | Неуникальный текст, содержащий предопределенные значения, с возможностью добавления новых значений. Позволяет по мере необходимости дополнять набор текстовых значений и выбрать повторно значения из списка. Может иметь фиксированный набор предопределенных значений. Примечание. Перед редактированием поля собираются у всех пользователей все варианты значения этого поля, отсеиваются повторные и добавляются к списку предопределённых значений, если они есть, поэтому: 1) Чтобы из этого списка исчезло определенное кэшированное значение, требуется очистить или поменять его у всех пользователей, которым было установлено данное значение в этом поле. 2) Сохранённое значение с ошибкой будет кэшировано наряду с остальными. То есть варианты «ведро», «вед ро», «вЕдро» или «видро» попадут в кэш и могут фигурировать в списке одновременно | {TC%EMPTY} или {TC%value1|value2|...|valueN} Пример 1: {TC%EMPTY} – предопределённых значений нет. Пример 2: {TC%Инженер|Медик|Бухгалтер} |
TL | Текст с ограничением по длине. Примечание. Следить, чтобы тип поля в БД не превышал допустимый размер. Для примера выше требуется TEXT или CHAR, 10 (или более) | {TL%length} Пример: {TL%10} – ограничение длины строки в 10 символов |
RO | Произвольное readonly (только для чтения) поле. Используется, например, для отображения данных при импорте пользователей из внешней системы или в случае заполнения этого поля скриптом, когда ручной ввод оператором запрещён. Примечание. Этот формат похож на обычное текстовое поле, используемое по умолчанию в настройках Бюро Пропусков, которое помечено как «Только чтение». Отличие в том, что поле остаётся нередактируемым, даже если оно помечено как редактируемое. Также у него есть значение по умолчанию | {RO%def_value} Пример: {RO%Не задано} |
Для создания дополнительных полей объекта Пользователь выполнить следующие действия:
Открыть в текстовом редакторе созданный .dbi файл.
Внимание!
Перед началом внесения данных убедиться, что выбрана кодировка текста Windows-1251, иначе при добавлении дополнительных полей в БД текст будет распознан некорректно.
Внимание!
После сохранения .dbi файла необходимо обновить основную базу данных. Для этого нужно воспользоваться утилитой idb.exe (см. раздел Утилита конвертирования, выбора шаблона и создания резервных копий баз данных idb.exe).
Пример .dbi файла с дополнительными полями объекта Пользователь представлен на рисунке ниже:
В результате созданные поля станут доступны на панели настройки объекта Бюро пропусков на вкладке Дополнительные поля (см. Настройка типа отдела Основной).
В интерфейсном окне Бюро пропусков в области дополнительных полей будут отображаться соответствующие дополнительные поля в зависимости от настроенной видимости и доступности полей для редактирования, а также заданной категории.
Обозначение | Описание |
---|---|
db_name | Имя дополнительного поля (db_name), которое будет занесено в БД |
db_type | Тип данных (db_type) дополнительного поля, размер (если требуется, см. Поддерживаемые типы данных SQL). |
description | Название дополнительного поля, отображаемое в интерфейсном окне Бюро пропусков |
fmt | Модификатор из набора (см. пункт Форматы полей со специальной обработкой). |
prms | Параметры значений поля, вводятся круглыми скобками () |
{ | Начало шаблона поведения дополнительного поля |
% | После % перечислятся названия предопределенных значений дополнительного поля. Примечание. Если указать %EMPTY, то предопределенных значений не будет |
value1, valueN | Названия предопределенных значений дополнительного поля |
| | Разделение предопределенных значений дополнительного поля |
length | Ограничение длины строки |
def_value | Значение по умолчанию |
} | Конец шаблона поведения дополнительного поля |
Создание дополнительных полей объекта Пользователь завершено.