Понятие контекста всегда используется для настройки бизнес-логики и вычислений в Comindware Business Application Platform. В первую очередь, у любой информационной системы есть база данных, и чтобы получить какие-то данные из нее, нужно написать запрос к базе.
Контекст — это отправная точка запроса к базе данных. Границами контекста являются шаблоны записи, шаблоны процессов и пользовательские задачи, в которых пишется запрос (в форме вычисляемых атрибутов, правил на форме, фильтров и т.д.), и их нужно различать для правильного написания формулы.
$ — обозначение изначального контекста.
Для смены контекста используются атрибуты с типом данных «Запись» или выражения типа «from a in db». Чтобы поменять контекст на связанную запись, используются системные имена атрибутов с типом данных «Запись» после «$» и символы «->» после системного имени атрибута. В сценариях можно менять контекст по самим атрибутам с типом данных «Запись» или по выражению типа «from a in db».
Примеры смены контекста
Пример 1: искомый атрибут находится в другом шаблоне записи, и в текущем контексте (шаблоне записи) есть ссылка на другой шаблон записи.
$link->atribut |
где link — системное имя атрибута с типом данных «Запись», а atribut — системное имя атрибута в связанной записи.
Пример 2: искомый атрибут находится в другом шаблоне записи, но в текущем контексте (шаблоне записи) нет ссылки на другой шаблон записи.
from a in db->sistemnoe_imya_shablona_zapisi where EQUALS(a->atirbut1, $atribut2) select a->id |
где sistemnoe_imya_shablona_zapisi— системное имя искомого шаблона записи, atribut1 — системное имя атрибута в искомом шаблоне записи, а atribut2 — системное имя атрибута в текущем шаблоне записи, с которым нужно сравнить atribut1.
Пример 3: текущий контекст — это контекст задачи, а искомый атрибут находится в связанном с шаблоном процесса шаблоне записи.
$cmw.task.objectId->op.11 |
где op.11 — ИД атрибута в связанном шаблоне записи.
Пример 4: текущий контекст — это контекст процесса, а искомый атрибут находится в связанном шаблоне записи.
$$BusinessObject->atribut |
где atribut — системное имя атрибута в связанном шаблоне записи.
Номер Статьи: 2104
Размещено: Wed, Aug 10, 2022
Последнее обновление: Thu, Aug 1, 2024
Online URL: https://kb.comindware.ru/article/kontekst-vychisleniya-formul-ponyatie-i-izmenenie-2104.html