|
Как поставить задачу нескольким исполнителям | ☑ | ||
---|---|---|---|---|
0
Никофлекс
02.10.12
✎
17:46
|
Доброе время, суток.
Подскажите, как можно установить задачу нескольким пользователям, применив минимум переделок. Использую стандартную задачу - ЗАДАЧА ИСПОЛНИТЕЛЯ в УПП. Там существует - 3 адресата - РОЛИ, ОРГАНИЗАЦИЯ и ИСПОЛНИТЕЛЬ. Организация - не подходит, т.к. одна. Исполнитель - не подходит, т.к. это на одного пользователя. РОЛИ - вроде подходит, НО там нужное кучу сделать дописей в различных местах кода, возможно, НО слишком не удобно. Может есть другие варианты? |
|||
1
Жан Пердежон
02.10.12
✎
17:51
|
*овнокодить не надо было
|
|||
2
Никофлекс
02.10.12
✎
17:52
|
(1) и в чем полезность Вашего ответа?
|
|||
3
and2
02.10.12
✎
18:03
|
что значит нескольким.
одному из нескольких, или каждому? |
|||
4
Никофлекс
02.10.12
✎
21:48
|
Есть одна задача, которую видят несколько пользователей (каждый из них), но при выполнении задачи, она исчезнет у всех.
|
|||
5
MadHead
02.10.12
✎
21:53
|
Кроме ролей нечего не придумаешь. Непонятно почему кучу доработок надо?
|
|||
6
Никофлекс
03.10.12
✎
09:52
|
(5) нужно по коду выловить везде, где встречаются РОЛИ и подправить.
|
|||
7
sanja26
11.10.12
✎
01:49
|
столкнулся с такой же целью.
Сделал тип исполнителя составной: пользоватеи группы пользователей. Сначала хотел создавать задачи в ПроверитьНапоминанияПользователя, но там че-то писанины много получается в общем модуле в Итоге доработал сам объект задачу при записи Процедура ПередЗаписью(Отказ) Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли; Если Не ЗначениеЗаполнено(СрокОповещения) Или Выполнена Тогда Оповещение = ЛОЖЬ; КонецЕсли; Если ТипЗнч(Исполнитель) = Тип("СправочникСсылка.ГруппыПользователей") тогда Выполнена = Истина; // чтобы не маячила КонецЕсли; КонецПроцедуры // ПередЗаписью() Процедура ПриЗаписи(Отказ) Если ТипЗнч(Исполнитель) = Тип("СправочникСсылка.ГруппыПользователей") тогда //ЗапросПореквизитам = Новый Запрос; //ЗапросПореквизитам.Текст = //"ВЫБРАТЬ //| *, //|ИЗ //| Задача.ЗадачиПользователя КАК ЗадачиПользователя //|ГДЕ //| ЗадачиПользователя.Ссылка = &ТекЗадача"; //ЗапросПореквизитам.УстановитьПараметр("Текзадча", Ссылка); //ВыборкаРеквизитов = ЗапросПореквизитам.Выполнить().Выбрать(); //ВыборкаРеквизитов.Следующий(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ГруппыПользователейПользователиГруппы.Пользователь |ИЗ | Справочник.ГруппыПользователей.ПользователиГруппы КАК ГруппыПользователейПользователиГруппы |ГДЕ | ГруппыПользователейПользователиГруппы.Ссылка = &ТекГруппа"; Запрос.УстановитьПараметр("ТекГруппа", Исполнитель); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл НоваяЗадача = Задачи.ЗадачиПользователя.СоздатьЗадачу(); //ЗаполнитьЗначенияСвойств(НоваяЗадача, ВыборкаРеквизитов); НоваяЗадача.Исполнитель = Выборка.Пользователь; НоваяЗадача.ВерсияДанных = ВерсияДанных; НоваяЗадача.ПометкаУдаления = ПометкаУдаления; НоваяЗадача.Дата = Дата; НоваяЗадача.БизнесПроцесс = БизнесПроцесс; НоваяЗадача.ТочкаМаршрута = ТочкаМаршрута; НоваяЗадача.Наименование = Наименование; НоваяЗадача.Выполнена = Выполнена; НоваяЗадача.СрокИсполнения = СрокИсполнения; НоваяЗадача.Описание = Описание; НоваяЗадача.Объект = Объект; НоваяЗадача.Инициатор = Инициатор; НоваяЗадача.Оповещение = Оповещение; НоваяЗадача.СрокОповещения = СрокОповещения; НоваяЗадача.ПамятнаяДата = ПамятнаяДата; НоваяЗадача.ДатаИсполнения = ПамятнаяДата; НоваяЗадача.Записать(); КонецЦикла; КонецЕсли; // Можно и отказ впихнуть, задачи пользователям уже созданы КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |