Условие маршрутизации

1. Aliyah 15.03.22 14:05 Сейчас в теме
Доброго времени суток! Пытаюсь настроить условие маршрутизации для бизнес-процесса согласования договора. В блоке с согласующими лицами указано 2 пользователя Автор документа(Автоподстановка), и роль Заведующий складом. Как прописать условие маршрутизации, чтобы - если Автор документа и Заведующий складом, это один человек, согласование с Заведующий складом, не было запущено (Пропускалось)...
По теме из базы знаний
Найденные решения
4. Rokky78 41 16.03.22 09:49 Сейчас в теме
(3)
У меня оно никак не прописано :)
Но можно что-то вроде такого:
//Автор документа входит в роль "Кадровик" ?
Результат = Ложь;

АвторДокумента = Предмет.Создал;

РольИсполнителя = Справочники.РолиИсполнителей.НайтиПоНаименованию("Кадровик", Истина); 	//тип СправочникСсылка.РолиИсполнителей

//в РС тип измерения "РольИсполнителя" = СправочникСсылка.ПолныеРоли	
Запрос = Новый Запрос;
Запрос.Текст = 
	"ВЫБРАТЬ
	|	ИсполнителиЗадач.РольИсполнителя КАК РольИсполнителя,
	|	ИсполнителиЗадач.Исполнитель КАК Исполнитель
	|ИЗ
	|	РегистрСведений.ИсполнителиЗадач КАК ИсполнителиЗадач
	|ГДЕ
	|	ИсполнителиЗадач.РольИсполнителя.Владелец = &РольИсполнителя
	|	И ИсполнителиЗадач.Исполнитель = &Исполнитель";

Запрос.УстановитьПараметр("Исполнитель", АвторДокумента);
Запрос.УстановитьПараметр("РольИсполнителя", РольИсполнителя);

РезультатЗапроса = Запрос.Выполнить();

Результат = НЕ РезультатЗапроса.Пустой();
Показать
Прикрепленные файлы:
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Rokky78 41 15.03.22 15:42 Сейчас в теме
(1)
Не совсем понятно, как Автора документа (тип "Пользователи") можно сравнить с Заведующим складом (тип "РолиИсполнителей"). В роль может входить несколько пользователей. Это некорректно.
Или как вариант на схеме
Прикрепленные файлы:
3. Aliyah 15.03.22 16:56 Сейчас в теме
(2) Да наподобие как на схеме. Как у вас само условие прописано, можно узнать (в условии маршрутизации)?
Прикрепленные файлы:
4. Rokky78 41 16.03.22 09:49 Сейчас в теме
(3)
У меня оно никак не прописано :)
Но можно что-то вроде такого:
//Автор документа входит в роль "Кадровик" ?
Результат = Ложь;

АвторДокумента = Предмет.Создал;

РольИсполнителя = Справочники.РолиИсполнителей.НайтиПоНаименованию("Кадровик", Истина); 	//тип СправочникСсылка.РолиИсполнителей

//в РС тип измерения "РольИсполнителя" = СправочникСсылка.ПолныеРоли	
Запрос = Новый Запрос;
Запрос.Текст = 
	"ВЫБРАТЬ
	|	ИсполнителиЗадач.РольИсполнителя КАК РольИсполнителя,
	|	ИсполнителиЗадач.Исполнитель КАК Исполнитель
	|ИЗ
	|	РегистрСведений.ИсполнителиЗадач КАК ИсполнителиЗадач
	|ГДЕ
	|	ИсполнителиЗадач.РольИсполнителя.Владелец = &РольИсполнителя
	|	И ИсполнителиЗадач.Исполнитель = &Исполнитель";

Запрос.УстановитьПараметр("Исполнитель", АвторДокумента);
Запрос.УстановитьПараметр("РольИсполнителя", РольИсполнителя);

РезультатЗапроса = Запрос.Выполнить();

Результат = НЕ РезультатЗапроса.Пустой();
Показать
Прикрепленные файлы:
5. Aliyah 16.03.22 16:52 Сейчас в теме
Да, то что нужно. Огромное спасибо! Остаётся только роль автора документа достать...
6. Rokky78 41 17.03.22 09:46 Сейчас в теме
(5)
Зачем? Автор теоретически может входить в несколько ролей. Да и автор документа это всегда конкретное лицо (пользователь), а не роль. В коде же все уже есть. Предметом в данном случае является внутренний документ.
АвторДокумента = Предмет.Создал;
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот