|   |   | 
| 
 | Как поставить задачу нескольким исполнителям | ☑ | ||
|---|---|---|---|---|
| 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 | 
        столкнулся с такой же целью. 
  Сделал тип исполнителя составной: пользоватеи группы пользователей. Сначала хотел создавать задачи в ПроверитьНапоминанияПользователя, но там че-то писанины много получается в общем модуле в Итоге доработал сам объект задачу при записи Процедура ПередЗаписью(Отказ) Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли; Если Не ЗначениеЗаполнено(СрокОповещения) Или Выполнена Тогда Оповещение = ЛОЖЬ; КонецЕсли; Если ТипЗнч(Исполнитель) = Тип("СправочникСсылка.ГруппыПользователей") тогда Выполнена = Истина; // чтобы не маячила КонецЕсли; КонецПроцедуры // ПередЗаписью() Процедура ПриЗаписи(Отказ) Если ТипЗнч(Исполнитель) = Тип("СправочникСсылка.ГруппыПользователей") тогда //ЗапросПореквизитам = Новый Запрос; //ЗапросПореквизитам.Текст = //"ВЫБРАТЬ //| *, //|ИЗ //| Задача.ЗадачиПользователя КАК ЗадачиПользователя //|ГДЕ //| ЗадачиПользователя.Ссылка = &ТекЗадача"; //ЗапросПореквизитам.УстановитьПараметр("Текзадча", Ссылка); //ВыборкаРеквизитов = ЗапросПореквизитам.Выполнить().Выбрать(); //ВыборкаРеквизитов.Следующий(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ГруппыПользователейПользователиГруппы.Пользователь |ИЗ | Справочник.ГруппыПользователей.ПользователиГруппы КАК ГруппыПользователейПользователиГруппы |ГДЕ | ГруппыПользователейПользователиГруппы.Ссылка = &ТекГруппа"; Запрос.УстановитьПараметр("ТекГруппа", Исполнитель); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл НоваяЗадача = Задачи.ЗадачиПользователя.СоздатьЗадачу(); //ЗаполнитьЗначенияСвойств(НоваяЗадача, ВыборкаРеквизитов); НоваяЗадача.Исполнитель = Выборка.Пользователь; НоваяЗадача.ВерсияДанных = ВерсияДанных; НоваяЗадача.ПометкаУдаления = ПометкаУдаления; НоваяЗадача.Дата = Дата; НоваяЗадача.БизнесПроцесс = БизнесПроцесс; НоваяЗадача.ТочкаМаршрута = ТочкаМаршрута; НоваяЗадача.Наименование = Наименование; НоваяЗадача.Выполнена = Выполнена; НоваяЗадача.СрокИсполнения = СрокИсполнения; НоваяЗадача.Описание = Описание; НоваяЗадача.Объект = Объект; НоваяЗадача.Инициатор = Инициатор; НоваяЗадача.Оповещение = Оповещение; НоваяЗадача.СрокОповещения = СрокОповещения; НоваяЗадача.ПамятнаяДата = ПамятнаяДата; НоваяЗадача.ДатаИсполнения = ПамятнаяДата; НоваяЗадача.Записать(); КонецЦикла; КонецЕсли; // Можно и отказ впихнуть, задачи пользователям уже созданы КонецПроцедуры | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |