Документация iSZN

Реквизит (техническая информация)

Для вида элемента структуры персонального документа «Реквизит» доступны следующие свойства:

Свойство Описание
Abbr Краткое наименование элемента структуры персонального документа.
Align Выравнивание элемента интерфейса.
Anchors Анкеры элемента интерфейса (служат для управления отображением элемента интерфейса в случае, если окно обработчика персонального документа изменяет свои размеры).
Attributes Атрибуты элемента структуры персонального документа. Значение свойства определяется с помощью диалога атрибутов элемента структуры.
ControlKind Элемент интерфейса, соответствующий элементу структуры персонального документа:
pdrckNone — отсутствует;
pdrckEdit — однострочный редактор;
pdrckDateEdit — редактор даты;
pdrckMaskEdit — однострочный редактор для ввода по шаблону;
pdrckSpinEdit — редактор числа;
pdrckCheckBox — флажок;
pdrckComboBox — выпадающий список;
pdrckMemo — многострочный редактор;
pdrckRadioGroup — группа переключателей;
pdrckTableGrid — редактор таблицы;
pdrckGroupBox — элемент для группировки элементов интерфейса, соответствующих нижестоящим элементам структуры персонального документа;
pdrckPanel — панель;
pdrckPageControl — набор вкладок;
pdrckTabSheet — вкладка;
pdrckSMEVSendMessagePanel — панель отправки сообщения в СМЭВ;
pdrckSMEVInteractionPanel — панель для работы с историей взаимодействия со СМЭВ;
pdrckCommandButton — командная кпопка.
Datatype Тип данных реквизита:
pdrdString — строка;
pdrdInteger — целое число;
pdrdDate — дата;
pdrdCurrency — денежная сумма;
pdrdFloat — вещественное число;
pdrdLogical — логическое значение;
pdrdLookupID — идентификатор записи в справочнике;
pdrdPeopleCollID — идентификатор человека/коллектива в том же районе, в котором хранится сам документ;
pdrdDocInstanceID — идентификатор экземпляра документа в том же районе, в котором хранится сам документ.
DefaultRawValue Значение реквизита, используемое по умолчанию. Данное выражение может содержать простой текст, который будет подставляться в реквизит персонального документа, например: «1», «100», «31.12.9999», «Да» и тому подобное. Также в данном выражении могут использоваться следующие параметры:
AUTOINCREMENT — максимальное значение реквизитов данного класса в пределах таблицы, увеличенное на 1; применяется только для реквизитов, имеющих тип данных «Целое число»; для реквизитов, не относящихся к таблицам, возвращается значение 1.
CLIENT_DATE — текущая дата на клиентском компьютере;
CLIENT_YEAR — текущий год на клиентском компьютере;
CLIENT_MONTH — текущий месяц на клиентском компьютере;
CLIENT_DAY — текущий день месяца на клиентском компьютере;
SERVER_DATE — текущая дата на сервере (см. «Экземпляр Системы»);
SERVER_YEAR — текущий год на сервере;
SERVER_MONTH — текущий месяц на сервере;
SERVER_DAY — текущий день месяца на сервере;
DOC_CLASS_ID — идентификатор класса персонального документа, к которому относится данный реквизит;
REQ_CLASS_ID — идентификатор класса данного реквизита;
STORAGE_CLASS_ID — идентификатор класса персонального документа или таблицы, содержащей данный реквизит;
IS_TABLE — признак того, что данный реквизит относится к таблице: 0 — не относится; 1 — относится;
PC_REGION_ID — идентификатор района владельца документа;
PC_ID — идентификатор владельца документа в пределах района PC_REGION_ID;
BIRTH_DATE — дата рождения владельца документа;
BIRTH_PLACE — место рождения владельца документа (определяется по документу «Свидетельство о рождении РФ»);
DEATH_DATE — дата смерти владельца документа;
CLOSE_DATE — дата снятия с учёта владельца документа;
SEX — пол владельца документа: 0 — мужской; 1 — женский;
SNILS — СНИЛС (страховой номер индивидуального лицевого счёта) владельца документа;
FIRST_NAME — имя владельца документа;
MIDDLE_NAME — отчество владельца документа;
LAST_NAME — фамилия владельца документа;
PC_DESCRIPTION — описание владельца документа (для коллектива: описание (см. «Техническая информация»), для человека: фамилия, имя, отчество, дата рождения, дата смерти);
IDENTITY_DOC_ID — идентификатор экземпляра основного документа, удостоверяющего личность владельца документа, в пределах района PC_REGION_ID;
IDENTITY_DOC_CLASS_ID — идентификатор класса основного документа, удостоверяющего личность владельца документа;
IS_COLL_INSTANCE — признак человека или коллектива: 0 — человек; 1 — коллектив;
COLL_CLASS_ID — идентификатор класса коллектива (если владельцем документа является коллектив);
TEMP_ACCOUNT — временный номер лицевого счёта;
USER_ORG_KEYslurp-ключ организации, к которой относится текущий пользователь;
USER_NAME — имя пользователя СУБД текущего пользователя;
USER_FIRST_NAME — имя текущего пользователя;
USER_MIDDLE_NAME — отчество текущего пользователя;
USER_LAST_NAME — фамилия текущего пользователя;
USER_POST — должность текущего пользователя;
USER_FIO — фамилия и инициалы текущего пользователя;
USER_FIO_POST — фамилия, инициалы и должность текущего пользователя.

Имена параметров необходимо заключать в фигурные скобки, например {SERVER_DATE}. Допускается использование нескольких параметров для одного реквизита, а также чередование параметров и произвольного текста.

Помимо перечисленных параметров используются параметры, предоставляемые задачами Системы.

Мастер добавления роли в коллектив:
OwnerLastName — фамилия владельца документа;
OwnerFirstName — имя владельца документа;
OwnerMiddleName — отчество владельца документа;
OwnerBirthDate — дата рождения владельца документа;
OwnerSex — пол владельца документа (0/1).

Мастер создания межведомственных запросов:
StateSvcRequestID — идентификатор обращения за государственной услугой;
StateSvcRegionID — идентификатор района государственной услуги;
StateSvcID — идентификатор государственной услуги;
StateSvcVariantID — идентификатор варианта оказания государственной услуги.

Мастер регистрации человека:
OwnerLastName — фамилия владельца документа;
OwnerFirstName — имя владельца документа;
OwnerMiddleName — отчество владельца документа;
OwnerBirthDate — дата рождения владельца документа;
OwnerSex — пол владельца документа (0/1).

Перед именами этих параметров необходимо использовать символ «&», например {&OwnerLastName}.

Кроме того, если данное выражение начинается с символа «@», то все символы, стоящие после него, трактуются как SQL-запрос. Система подставляет реальные значения перечисленных параметров (если они используются в выражении) и выполняет полученный запрос. Результат запроса используется как значение данного реквизита. Запрос должен возвращать только одну строку, например:
@SELECT Add_Months(To_Date({SERVER_DATE},'dd.mm.yyyy'),6) FROM dual -- NOCACHE

Это SQL-выражение возвращает дату, которая получается прибавлением к текущей дате 6 месяцев. Значения параметров имеют тип данных «Строка».

В конце запроса после символов « -- » могут указываться ключевые слова. Ключевые слова указываются через пробел и не чувствительны к регистру. Поддерживаемые ключевые слова:
NOCACHE — запретить системе управления базой данных кешировать запрос.

Если в фигурных скобках указан идентификатор класса реквизита, то в запрос будет подставлено введённое пользователем значение этого реквизита, например:

@SELECT uszn.pkGen.GetTruncatedDate(To_Date({3936}),1,1,0) FROM dual

Это SQL-выражение возвращает дату начала следующего месяца относительно даты, введённой пользователем (например, если пользователь ввёл для класса реквизита 3936 значение 15.12.2009, то запрос вернёт дату 01.01.2010).

Допускаются ссылки на следующие реквизиты:
• скалярный реквизит, то есть не относящийся ни к одной из таблиц (в запрос подставляется введённое пользователем значение указанного класса скалярного реквизита);
• реквизит, относящийся к той же таблице (или к вышестоящей таблице), к которой относится данный реквизит (в запрос подставляется введённое пользователем значение указанного класса реквизита, относящееся к той же строке таблицы, к которой относится рассчитываемое значение данного реквизита).

Для разделения нескольких выражений используется символ перевода строки, например для определения пола человека можно использовать выражение:

{&OwnerSex}
{SEX}
@SELECT uszn.pkGen.GetSexFromName({11},{13}) FROM dual

Это выражение приводит к тому, что в качестве значения реквизита подставляется значение параметра персонального документа {&OwnerSex}. Если значение этого параметра не задано, то используется значение параметра {SEX}. Если это значение также не задано, то используется запрос к базе данных для определения пола по фамилии (значение, введённое пользователем для реквизита класса 11) и отчеству (значение, введённое пользователем для реквизита класса 13).

Чтобы сослаться на столбец, содержащий значение по умолчанию, запроса DefRawValues.Queries, нужно использовать выражение {@.column_name}, где column_name представляет собой наименование столбца.

Description Описание элемента структуры персонального документа.
EditMask Маска ввода. Используется, если ControlKind равно pdrckMaskEdit.
Height Высота элемента интерфейса, соответствующего элементу структуры персонального документа, в пикселах. Если равно 0, то используется значение по умолчанию.
ID Идентификатор элемента структуры персонального документа. Только чтение.
JointNullability Общее ограничение на значения реквизитов, действующее на данный класс реквизита и указанный класс реквизита (в пределах одного класса персонального документа). Значение свойства определяется с помощью диалога совместного поведения при пустых значениях.
Может быть указано одно из следующих ограничений:
• отсутствует;
• оба реквизита одновременно либо пустые, либо заданы;
• должен быть пустым, если указанный реквизит пустой;
• должен быть задан, если указанный реквизит пустой;
• пустой, если указанный реквизит задан; задан, если указанный - пустой;
• должен быть задан, если второй реквизит задан;
• должен быть пустым, если второй реквизит задан.

• Для скалярного реквизита (не относящегося ни к одной из таблиц) может быть установлено общее ограничение с другим скалярным реквизитом.
• Для табличного реквизита может быть установлено общее ограничение с реквизитом, относящимся к той же самой таблице.
LabelText Текст, поясняющий назначение элемента интерфейса. Если не задан, то используется наименование элемента структуры персонального документа (свойство Name).
Чтобы задать клавишу, при нажатии которой в сочетании с клавишей Alt в режиме редактирования документа происходит переход к реквизиту, используется символ «&», который вводится перед соответствующим символом (в режиме редактирования документа этот символ подчёркивается). Например, если задано «Основ&ание», то при нажатии в режиме редактирования документа клавиш Alt+А произойдёт переход к данному реквизиту (режим клавиатуры Caps Lock должен быть отключён, а язык ввода должен быть русским). В случае прописных букв необходимо дополнительно нажимать клавишу Shift (если режим клавиатуры Caps Lock отключён), например для «О&КАТО» необходимо нажать Alt+Shift+К. Если символ «&» не используется, то клавиша, используемая для перехода к реквизиту, определяется автоматически.
Left Координата X левого верхнего угла элемента интерфейса, соответствующего элементу структуры персонального документа (смещение вправо), в пикселах. Значение координаты задаётся относительно родительского элемента структуры персонального документа.
LogInfo_Created Имя пользователя СУБД, создавшего запись в базе данных, соответствующую элементу структуры персонального документа, дата и время создания записи в виде «user, 01.01.0001 00:00». Только чтение.
LogInfo_Modified Имя пользователя СУБД, изменившего запись в базе данных, соответствующую элементу структуры персонального документа, дата и время изменения записи в виде «user, 01.01.0001 00:00». Только чтение.
Lookup.CriterionValuesSQL Специализированное SQL-выражение (SQL-запрос) для выборки возможных значений реквизита для критерия запросной системы.
Lookup.CustomSQL Расширенное SQL-выражение (SQL-запрос) для выбора списка значений реквизита.
Lookup.FilterRules Правила фильтрации значений реквизита.
Lookup.SQL SQL-выражение (SQL-запрос) для выбора списка значений реквизита.
MaxValue Максимальное значение реквизита. Значение свойства определяется с помощью диалога значения реквизита документа. Может быть указано для следующих типов данных реквизита:
• Строка;
• Целое число;
• Вещественное число;
• Денежная сумма;
• Дата.
Не применяется для остальных типов данных (логическое значение, ссылка, человек/коллектив, документ).
Текстовые значения сравниваются без учёта регистра символов.

Вместо непосредственного значения (числа, строки или даты) может быть указан идентификатор класса реквизита (в пределах одного класса персонального документа), имеющего такой же тип данных, значение которого используется в качестве максимального значения для данного реквизита. Допускаются ссылки на следующие реквизиты:
• скалярный реквизит, то есть не относящийся ни к одной из таблиц (максимальное значение данного реквизита принимается равным значению указанного скалярного реквизита);
• реквизит, относящийся к той же таблице, к которой относится данный реквизит (максимальное значение данного реквизита принимается равным значению указанного табличного реквизита, относящегося к той же строке таблицы, к которой относится значение данного реквизита);
• реквизит, относящийся к вышестоящей таблице относительно таблицы, к которой относится данный реквизит (максимальное значение данного реквизита принимается равным значению указанного табличного реквизита, относящегося к той же строке таблицы, к которой относится значение данного реквизита).

Дополнительно указывается способ проверки максимального значения реквизита:
• проверка выполняется не включительно (реквизит не может содержать указанное максимальное значение);
• проверка выполняется включительно (реквизит может содержать указанное максимальное значение).
MinHeight Минимальная высота элемента интерфейса, соответствующего элементу структуры персонального документа, в пикселах.
MinValue Минимальное значение реквизита. Значение свойства определяется с помощью диалога значения реквизита документа. Может быть указано для следующих типов данных реквизита:
• Строка;
• Целое число;
• Вещественное число;
• Денежная сумма;
• Дата.
Не применяется для остальных типов данных (логическое значение, ссылка, человек/коллектив, документ).
Текстовые значения сравниваются без учёта регистра символов.

Вместо непосредственного значения (числа, строки или даты) может быть указан идентификатор класса реквизита (в пределах одного класса персонального документа), имеющего такой же тип данных, значение которого используется в качестве минимального значения для данного реквизита. Допускаются ссылки на следующие реквизиты:
• скалярный реквизит, то есть не относящийся ни к одной из таблиц (минимальное значение данного реквизита принимается равным значению указанного скалярного реквизита);
• реквизит, относящийся к той же таблице, к которой относится данный реквизит (минимальное значение данного реквизита принимается равным значению указанного табличного реквизита, относящегося к той же строке таблицы, к которой относится значение данного реквизита);
• реквизит, относящийся к вышестоящей таблице относительно таблицы, к которой относится данный реквизит (минимальное значение данного реквизита принимается равным значению указанного табличного реквизита, относящегося к той же строке таблицы, к которой относится значение данного реквизита).

Дополнительно указывается способ проверки минимального значения реквизита:
• проверка выполняется не включительно (реквизит не может содержать указанное минимальное значение);
• проверка выполняется включительно (реквизит может содержать указанное минимальное значение).
MinWidth Минимальная ширина элемента интерфейса, соответствующего элементу структуры персонального документа, в пикселах.
Name Наименование элемента структуры персонального документа.
OptionalNullability Ограничение на значение реквизита, зависящее от значения указанного класса реквизита (в пределах одного класса персонального документа). Значение свойства определяется с помощью диалога поведения в зависимости от значения другого реквизита.
Может быть указано одно из следующих ограничений:
• отсутствует;
• пустой, если значение второго реквизита - одно из указанных;
• обязателен, если значение второго реквизита - одно из указанных;
• пустой, если значение второго реквизита отлично от указанных;
• обязателен, если значение второго реквизита отлично от указанных;
• пустой, если значение второго реквизита - одно из указанных, иначе обязателен;
• обязателен, если значение второго реквизита - одно из указанных, иначе пустой.

• Для скалярного реквизита (не относящегося ни к одной из таблиц) может быть установлено ограничение с другим скалярным реквизитом.
• Для табличного реквизита может быть установлено ограничение с реквизитом, относящимся к той же самой таблице.

Значения второго реквизита разделяются переводом строки.
Options Опции элемента структуры персонального документа. Значение свойства определяется с помощью диалога опций элемента структуры.
PCXMLDumpImportEntity Сущность для импорта XML-дампов. Используется для реквизитов, имеющих тип данных pdrdLookupID.
Req.ImageIndex Индекс значка реквизита.
Req.ValidationRules Список расширенных правил валидации значения реквизита.
Top Координата Y левого верхнего угла элемента интерфейса, соответствующего элементу структуры персонального документа (смещение вниз), в пикселах. Значение координаты задаётся относительно родительского элемента структуры персонального документа.
VisualHeight Используемая высота элемента интерфейса, соответствующего элементу структуры персонального документа, в пикселах. Только чтение.
VisualWidth Используемая ширина элемента интерфейса, соответствующего элементу структуры персонального документа, в пикселах. Только чтение.
Width Ширина элемента интерфейса, соответствующего элементу структуры персонального документа, в пикселах.

См. также