Бизнес-правила, созданные с помощью мастеров
Glossary Item Box
Общие сведения
Начиная с версии 7.10.0 в приложении кроме бизнес-правил, создаваемых средствами разработки, существуют бизнес-правила, сгенерированные мастерами разделов и деталей.
- Бизнес-правила, которые сгенерированы мастером, добавляются в свойство businessRules клиентского модуля.
- Сгенерированные бизнес-правила имеют более высокий приоритет при выполнении.
- При описании сгенерированного бизнес-правила не используются перечисления модуля бизнес-правил BusinessRuleModule.
Более подробно о настройке бизнес-правил с помощью мастера читайте в статье "Настройка бизнес-правил". Особенности ручной настройки сгенерированных бизнес-правил описаны в статье "Бизнес-правила. Свойство businessRules".
Дополнительные свойства
Дополнительные свойства бизнес-правил, созданных с помощью мастеров, приведены в таблице 1.
Табл. 1. — Дополнительные свойства
Свойство | Описание |
---|---|
uId | Уникальный идентификатор правила. Значение типа "GUID". |
enabled | Признак активности. Может принимать значения true или false. |
removed | Признак, указывающий является ли правило удаленным. Может принимать значения true или false. |
invalid | Признак, указывающий является ли правило корректным. Может принимать значения true или false. |
Примеры
Пример созданного мастером бизнес-правила, связанного со свойством поля (видимость, активность, обязательность):
define("SomePage", [], function() { return { // ... businessRules: /**SCHEMA_BUSINESS_RULES*/{ // Набор правил для колонки [Type] модели представления. "Type": { // Сгенерированный мастером код правила. "ca246daa-6634-4416-ae8b-2c24ea61d1f0": { // Уникальный идентификатор правила. "uId": "ca246daa-6634-4416-ae8b-2c24ea61d1f0", // Признак активности. "enabled": true, // Признак, указывающий является ли правило удаленным. "removed": false, // Признак, указывающий является ли правило корректным. "invalid": false, // Тип правила. "ruleType": 0, // Код свойства, которое регулирует правило. "property": 0, // Логическая взаимосвязь между несколькими условиями правила. "logical": 0, // Массив условий, при выполнении которых срабатывает правило. // Сравнивает значение [Account.PrimaryContact.Type] со значением в колонке [Type] "conditions": [ { // Тип операции сравнения. "comparisonType": 3, // Выражение левой части условия. "leftExpression": { // Тип выражения — колонка (атрибут) модели представления. "type": 1, // Название колонки модели представления. "attribute": "Account", // Путь к колонке в справочной схеме [Account], значение // которой сравнивается в выражении. "attributePath": "PrimaryContact.Type" }, // Выражение правой части условия. "rightExpression": { // Тип выражения — колонка (атрибут) модели представления. "type": 1, // Название колонки модели представления. "attribute": "Type" } } ] } } }/**SCHEMA_BUSINESS_RULES*/ // .. }; });
Пример созданного мастером бизнес-правила фильтрации поля:
define("SomePage", [], function() { return { // ... businessRules: /**SCHEMA_BUSINESS_RULES*/{ // Набор правил для колонки [Type] модели представления. "Account": { // Сгенерированный мастером код правила. "a78b898c-c999-437f-9102-34c85779340d": { // Уникальный идентификатор правила. "uId": "a78b898c-c999-437f-9102-34c85779340d", // Признак активности. "enabled": true, // Признак, указывающий является ли правило удаленным. "removed": false, // Признак, указывающий является ли правило корректным. "invalid": false, // Тип правила. "ruleType": 1, // Путь к колонке для фильтрации в справочной схеме [Account], // на которую ссылается колонка [Type] модели представления // страницы редактирования. "baseAttributePatch": "PrimaryContact.Type", // Тип операции сравнения в фильтре. "comparisonType": 3, // Тип выражения — колонка (атрибут) модели представления. "type": 1, // Название колонки модели представления, // по значению которой будет выполняться фильтрация. "attribute": "Type" } } }/**SCHEMA_BUSINESS_RULES*/ // .. }; });
Смотрите также:
- Бизнес-правила и их применение
- Правило BINDPARAMETER. Как заблокировать поле на странице редактирования по определенному условию
- Правило BINDPARAMETER. Как скрыть поле на странице редактирования по определенному условию
- Правило BINDPARAMETER. Как сделать поле обязательным для заполнения по определенному условию
- Пример применения правила FILTRATION