Перейти к содержанию

Примеры выражений на языке N3

Атрибут типа «Список значений». Вычисление текстового значения и фильтрация с помощью N3 и формул

Содержание Введение Прикладная задача Исходные данные Настройка получения текстового значения атрибута типа «Список значений» на определённом языке Настройка распределения заявок по значению атрибута типа «Список значений» Фильтрация записе... Подробнее


Атрибут типа «Список значений». Фильтрация связанных записей по значению атрибута с помощью N3

Содержание Введение Прикладная задача Исходные данные Распределение заявок по значению атрибута список значений Тестирование Связанные статьи Введение В ряде случаев требуется отображать записи с определённым значением атрибута ... Подробнее


Выгрузка всех документов стенда

Для выгрузки всех документов стенда в один атрибут, введите следующее выражение:   @prefix cmwassert: <http://comindware.com/logics/assert#>. @prefix cmwtimeL: <http://comindware.com/logics/time/utc#>. @prefix session: <http://comindware.com/ontology/session#>. @prefix cmw:  <http://comindware.com/logics#>. @prefix docum... Подробнее


Вычисление аккаунтов, входящих в роль

Чтобы получить список всех аккаунтов (пользователей), входящих в определенную роль (например, для назначения задачи), используйте следующее выражение на языке N3: @prefix cmwui: <http://comindware.com/ontology/ui#>.@prefix account: <http://comindware.com/ontology/account#>.@prefix role: <http://comindware.com/ontology/role#>.{ ... Подробнее


Вычисление всех пользователей группы

Для вычисления пользователей, входящих в определённую группу без учета подгрупп и их участников (в случае, если в группе нет вложенности), введите следующее выражение: @prefix account: <http://comindware.com/ontology/account#>.{    ?projectOffice account:groupName "Менеджеры".    ?users account:userGroupMembership ?projectOffice.    ?users ac... Подробнее


Вычисление всех пользователей группы и её подгрупп

Для того, чтобы получить всех пользователей из определенной группы, включая пользователей подгрупп первого уровня, которые включены в состав указанной группы, введите следующее выражение: @prefix account: <http://comindware.com/ontology/account#>.@prefix assert: <http://comindware.com/logics/assert#>.{ ?projectOffice account:groupNam... Подробнее


Вычисление всех пользователей шаблона пользователя

Для того, чтобы получить всех пользователей из определенного шаблона пользователя, введите следующее выражение: @prefix object: <http://comindware.com/ontology/object#>. @prefix account: <http://comindware.com/ontology/account#>. @prefix cmw: <http://comindware.com/logics#>. @prefix account: <http://comindware.com/ontology... Подробнее


Вычисление гиперссылки на историю процесса

Для того, чтобы вычислить ссылку на историю текущего процесса, введите следующее выражение: @prefix cmw: <http://comindware.com/logics#>.@prefix process: <http://comindware.com/ontology/process#>.@prefix string: <http://www.w3.org/2000/10/swap/string#>.@prefix configuration: <http://comindware.com/ontology/configuration#>... Подробнее


Вычисление дочерних записей всех уровней вложенности

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


Вычисление значения атрибута из шаблона пользователя

Для того чтобы получить значение какого-либо атрибута из Шаблона пользователя (через атрибут типа "Пользователь", ссылающийся на данный Шаблон пользователя), введите следующее выражение: @prefix account: <http://comindware.com/ontology/account#>.@prefix object: <http://comindware.com/ontology/object#>.@prefix container: <http://... Подробнее


Вычисление значения из объекта, инициировавшего триггер

Для того, чтобы вычислить какое-либо значение объекта, по которому был запущен текущий триггер (например, чтобы проставить значение из изначальной записи), введите следующее выражение: @prefix object: <http://comindware.com/ontology/object#>. @prefix cmwsession: <http://comindware.com/ontology/session#>. @prefix var: <http://com... Подробнее


Вычисление информации о замещении

В Comindware Platform существует системный функционал замещения, доступный по умолчанию администраторам системы. Данный функционал позволяет назначать заместителей на период отсутствия определенного сотрудника с указанием передаваемых ролей. Заместители могут на период замещения завершать задачи за отсутствующего сотрудника и выполнять другие дейст... Подробнее


Вычисление исполнителя текущей активной задачи

Для того, чтобы вычислить ответственного за текущую задачу по конкретной записи, введите следующее выражение: @prefix cmw: <http://comindware.com/logics#>. @prefix task: <http://comindware.com/ontology/task#>. @prefix taskStatus: <http://comindware.com/ontology/taskStatus#>.   {   ?task task:objectId ?item.   ?task cmw:taskSt... Подробнее


Вычисление объекта, инициировавшего триггер

Для того, чтобы вычислить объект, по которому был запущен текущий триггер (например, чтобы проставить ссылку на изначальную запись), введите следующее выражение: @prefix cmwsession: <http://comindware.com/ontology/session#>.@prefix var: <http://comindware.com/ontology/session/variable#>.{cmwsession:context cmwsession:origin ?value.}... Подробнее


Вычисление объектов, удовлетворяющих условию

Пример задачи: на форме проекта отобразить в коллекции только тех сотрудников, которые обладают необходимыми для проекта навыками. Сотрудник отображается только в том случае, если все запрашиваемые навыки присутствуют. Проект «Космический туризм», необходимые навыки для работы в проекте: Астрономия, Иностранные языки, Логистика. Сотрудник №1 облада... Подробнее


Вычисление отображаемого значения связанного с задачей объекта

В Comindware Platform существует возможность вычисления таблицы системных задач в отдельном шаблоне записи для отображения большего количества параметров задачи и настройки более удобной группировки (например, по связанному объекту). При этом, каждый из параметров-атрибутов должен быть создан в таком шаблоне записи, и в каждом из них должно быть на... Подробнее


Вычисление пользователей с определенным параметром

Для того, чтобы вычислить всех пользователей из Шаблона Пользователя, у которых проставлен какой-либо параметр (чекбокс, в данном случае) для, например, запуска подпроцесса по сотрудникам с определенными характеристиками, введите следующее выражение:   @prefix object: <http://comindware.com/ontology/object#>. @prefix account: <http://co... Подробнее


Вычисление пользователей, у которых есть активные задачи (с учетом замещений)

Для того, чтобы вычислить всех пользователей у которых на данный момент есть активные задачи, учитывая все замещения (чтобы, например, запустить по ним подпроцесс отправки уведомления по задачам (см. эту статью), введите следующее выражение: @prefix xsd: <http://www.w3.org/2001/XMLSchema#>.@prefix log: <http://www.w3.org/2000/10/swap/... Подробнее


Вычисление последней даты изменения записей в древовидной коллекции

Для того, чтобы вывести последнюю дату изменения в рамках записей во вложенной коллекции (например, чтобы показать последнюю дату изменения работы или подработы, входящей в общий план), введите следующее выражение:   @prefix object: <http://comindware.com/ontology/object#>.@prefix math: <http://comindware.com/logics/math#>.@prefix c... Подробнее


Вычисление руководителя подразделения из шаблона пользователя

Для того, чтобы вычислить руководителя подразделения из Шаблона пользователя ( в случае, если руководитель определяется именно там, а не в Шаблоне записи), например, для использования при назначении задач, введите следующее выражение: @prefix cmw: <http://comindware.com/logics#>.@prefix object: <http://comindware.com/ontology/object#&... Подробнее


Вычисление состава группы

Для вычисления пользователей и подгрупп, входящих в определённую группу, введите следующее выражение: @prefix account: <http://comindware.com/ontology/account#>.{    ?projectOffice account:groupName "Менеджеры".    ?value account:userGroupMembership ?projectOffice.  } где: "Менеджеры" — название группы, пользователей которой требуется п... Подробнее


Вычисление суммы значений столбца коллекции

Для того, чтобы рассчитать сумму значений определенного столбца коллекции, за исключением заархивированных записей, введите следующее выражение: @prefix object: <http://comindware.com/ontology/object#>.@prefix math: <http://www.w3.org/2000/10/swap/math#>.@prefix w3math: <http://www.w3.org/2000/10/swap/math#>.@prefix cmwmath: ... Подробнее


Вычисление фактического исполнителя у последней завершенной задачи

Для того, чтобы вычислить пользователя, который завершил последнюю задачу из списка задач связанного с текущим объектом экземпляра процесса, введите следующее выражение: @prefix cmw: <http://comindware.com/logics#>.@prefix task: <http://comindware.com/ontology/task#>.@prefix account: <http://comindware.com/ontology/account#>.... Подробнее


Вычисление элементов из атрибута с типом данных Дата и время

Comindware Platform позволяет хранить данные в формате разных типов атрибутов: «Текст», «Число», «Дата и время», «Аккаунт» и т.д. У каждого атрибута есть свой формат отображения на экранной форме. В частности, атрибут с типом данных «Дата и время» может быть представлен как: 04.09.1986; 4 сентября 1986 г.; 4 сентября; 04.09.1986 07:30 и т.д. В пр... Подробнее


Ограничение отображения дочерних записей в ссылке на родительскую запись

Для того чтобы ограничить возможность выбора дочерних элементов какой-то конкретной записи в ссылке на родительскую запись (например, отфильтровывать дочерние работы в ссылке на родительскую работу данной работы), в частности, чтобы избежать зацикливания, введите следующее выражение: @prefix object: <http://comindware.com/ontology/object#&g... Подробнее


Округление вверх десятичного числа до двух знаков после запятой

Для того, чтобы округлить десятичное число до двух знаков после  запятой (например, 16.782 до 16.79), введите следующее выражение: @prefix w3math: <http://www.w3.org/2000/10/swap/math#>.@prefix object: <http://comindware.com/ontology/object#>.@prefix cmwmath: <http://comindware.com/logics/math#>.{    (        "Work" "Desyatich... Подробнее


Отображение кнопки при отсутствии запущенных процессов по записи

Для того, чтобы отобразить кнопку при условии, что по текущей записи не запущен ни один процесс, введите следующее выражение: @prefix task: <http://comindware.com/ontology/task#>. @prefix process: <http://comindware.com/ontology/process#>. { if { ?processObject process:businessObject ?item.} then {false -> ?value.} else {true -&... Подробнее


Отображение кнопки при пустом исполнителе

Для настройки отображения кнопки в Шаблоне процесса при условии отсутствия назначенного исполнителя, введите данное выражение: на языке выражений:  EMPTY($assignee) на языке N3 @prefix cmw: <http://comindware.com/logics#>.{not{?item cmw:assignee ?.}.true -> ?value.} ... Подробнее


Отображение кнопки только для текущего владельца задачи

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


Отображение поля при определенном значении ссылочного атрибута

Для того, чтобы установить условие на отображение поля / вкладки / столбца и т.д., если в ссылочном поле стоит определенное значение, введите следующее выражение: @prefix object: <http://comindware.com/ontology/object#>.@prefix math: <http://www.w3.org/2000/10/swap/math#>.{("Issue" "IssueTypeLink") object:findProperty ?IssueTypeProp... Подробнее


Отображение последней записи в коллекции

Для того, чтобы в коллекции настроить фильтр на отображение последней/их записи/ей, введите следующее выражение: @prefix object: <http://comindware.com/ontology/object#>. @prefix sort: <http://comindware.com/ontology/dataset/sort#>. @prefix assert: <http://comindware.com/logics/assert#>. @prefix rdf: <http://www.w3.org/199... Подробнее


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

Для того, чтобы вывести true, если пользователь или хотя бы один из пользователей в указанном атрибуте типа "Пользователь" входит в обозначенную системную группу (например, для ограничения видимости полей на экранной форме), введите следующее выражение: @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix object: <http:... Подробнее


Сравнение двух атрибутов типа «Аккаунт»

Для сравнения двух пользователей (например, менеджер проекта и руководитель сотрудника), введите следующее выражение:   #EQUALS($WorkPlanOriginalRef->Curator, $Manager) @prefix sort: <http://comindware.com/ontology/dataset/sort#>. @prefix assert: <http://comindware.com/logics/assert#>. @prefix cmwstring: <http://comindware.com... Подробнее


Фильтр записей в коллекции по заданному параметру

В этой статье будет описано как с помощью языка запросов N3 можно фильтровать данные в коллекции по какому-либо параметру, определённому в текущей записи. Для начала рассмотрим модель данных: Шаблон записи (в нашем примере «Organizatsii»), хранящий мастер-данные, со следующими атрибутами: Атрибут (в нашем примере «Filtrpooblasti» с типом данных «... Подробнее


Фильтр списка по активным задачам текущего пользователя: по всем процессам, по конкретному процессу

Содержание Фильтр списка по активным задачам текущего пользователя Фильтр списка по активным задачам текущего пользователя в рамках конкретного процесса Фильтр списка по активным задачам текущего пользователя Чтобы получить в таблице список всех активных задач, где текущий пользователь является исполнителем (и возможным исполнителем, если задач... Подробнее


Фильтр списка по дате, равной сегодняшней

Для того, чтобы настроить фильтр отображения записей в списке, где какая-либо дата равна сегодняшней (например, для списка сегодняшних заявок) с учетом часового пояса (в данном примере - московского), введите следующее выражение:   @prefix object: <http://comindware.com/ontology/object#>.@prefix session: <http://comindware.com/ontology... Подробнее


Фильтр списка по задачам из нескольких шаблонов процесса

Для того, чтобы получить список всех задач из определенных Шаблонов процесса в настроенном Шаблоне записи, введите следующее выражение: @prefix cmw: <http://comindware.com/logics#>.@prefix container: <http://comindware.com/ontology/container#>.@prefix assert: <http://comindware.com/logics/assert#>.@prefix math: <http://www... Подробнее


Фильтр списка по процессам с ошибками

Для фильтрации списка шаблона процесса, который бы показывал записи процессов с ошибками, введите следующее выражение: @prefix process: <http://comindware.com/ontology/process#>. @prefix cmw: <http://comindware.com/logics#>. {?item process:businessObject ?. ?item process:hasTokenError true.}  ... Подробнее


Фильтр списка по создателю

Для того, чтобы настроить фильтр отображения записей в списке, где текущий пользователь - создатель записи, введите следующее выражение: @prefix cmw: <http://comindware.com/logics#>. @prefix object: <http://comindware.com/ontology/object#>. @prefix user: <http://comindware.com/ontology/user#>. {  ("eventorder" "_creator") obj... Подробнее