Реализация будет в расширении и настройках дополнительных реквизитах
1. Для всех (или только требуемых) видов документов добавляем 4 булевых реквизита
НеОбрабатыватьРезультатСогласования, НеОбрабатыватьРезультатПриглашения, НеОбрабатыватьРезультатУтверждения, НеОбрабатыватьРезультатРегистрации
2. В настройках заполнения присваиваем им нужные значения (и заодно можно сделать их вообще не видимыми)
3. Создаем расширение, в него из основной конфигурации добавляем бизнес процессы и в модуле обьекта расширения добавляем
БП Согласование:
&ИзменениеИКонтроль("СоздатьЗадачиОзнакомиться")
Функция DIS_СоздатьЗадачиОзнакомиться()
#Вставка
//---------------------------------------------------------
// Доработки:
//
// опциональное отключение задачи ознакомления с результатом
//---------------------------------------------------------
#КонецВставки
УстановитьПривилегированныйРежим(Истина);
// Если процесс завершился положительно, то задачу ознакомления не формируем.
Если РезультатСогласования = Перечисления.РезультатыСогласования.Согласовано Тогда
Возврат Неопределено;
КонецЕсли;
#Вставка
Если DIS_ОбщиеФункции.НеОбрабатыватьРезультатПроцесса(Ссылка) Тогда
Возврат Неопределено;
КонецЕсли;
#КонецВставки
Задача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
ЗаполнитьЗадачуОзнакомиться(Задача);
ЗадачаСсылка = Задачи.ЗадачаИсполнителя.ПолучитьСсылку();
Задача.УстановитьСсылкуНового(ЗадачаСсылка);
НоваяСтрока = РезультатыОзнакомлений.Добавить();
НоваяСтрока.НомерИтерации = НомерИтерации;
НоваяСтрока.ЗадачаИсполнителя = ЗадачаСсылка;
Возврат Задача;
КонецФункции
БП Приглашение:
&ИзменениеИКонтроль("ОзнакомитьсяПередСозданиемЗадач")
Процедура DIS_ОзнакомитьсяПередСозданиемЗадач(ТочкаМаршрутаБизнесПроцесса, ФормируемыеЗадачи, СтандартнаяОбработка)
#Вставка
//---------------------------------------------------------
// Доработки:
//
// опциональное отключение задачи ознакомления с результатом
//---------------------------------------------------------
#КонецВставки
СтандартнаяОбработка = Ложь;
// Если процесс завершился положительно, то задачу ознакомления не формируем.
Если РезультатПриглашения = Перечисления.ОбщиеРезультатыПриглашения.ПринятоВсемиУчастниками Тогда
Возврат;
КонецЕсли;
#Вставка
Если DIS_ОбщиеФункции.НеОбрабатыватьРезультатПроцесса(Ссылка) Тогда
Возврат;
КонецЕсли;
#КонецВставки
СоздатьЗадачуОзнакомиться(ФормируемыеЗадачи);
КонецПроцедуры
БП Утверждение:
&ИзменениеИКонтроль("ОзнакомитьсяПередСозданиемЗадач")
Процедура DIS_ОзнакомитьсяПередСозданиемЗадач(ТочкаМаршрутаБизнесПроцесса, ФормируемыеЗадачи, СтандартнаяОбработка)
#Вставка
//---------------------------------------------------------
// Доработки:
//
// опциональное отключение задачи ознакомления с результатом
//---------------------------------------------------------
#КонецВставки
СтандартнаяОбработка = Ложь;
// Если процесс завершился положительно, то задачу ознакомления не формируем.
Если РезультатУтверждения <> Перечисления.РезультатыУтверждения.НеУтверждено Тогда
Возврат;
КонецЕсли;
#Вставка
Если DIS_ОбщиеФункции.НеОбрабатыватьРезультатПроцесса(Ссылка) Тогда
Возврат;
КонецЕсли;
#КонецВставки
Задача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
ЗаполнитьЗадачуОзнакомиться(Задача);
ЗадачаСсылка = Задачи.ЗадачаИсполнителя.ПолучитьСсылку();
Задача.УстановитьСсылкуНового(ЗадачаСсылка);
ФормируемыеЗадачи.Добавить(Задача);
УстановитьПривилегированныйРежим(Истина);
НоваяСтрока = РезультатыОзнакомлений.Добавить();
НоваяСтрока.НомерИтерации = НомерИтерации;
НоваяСтрока.ЗадачаИсполнителя = ЗадачаСсылка;
РаботаСБизнесПроцессами.ЗаписатьПроцесс(ЭтотОбъект, "ПростаяЗапись");
КонецПроцедуры
БП Регистрация:
&ИзменениеИКонтроль("ОзнакомитьсяПередСозданиемЗадач")
Процедура DIS_ОзнакомитьсяПередСозданиемЗадач(ТочкаМаршрутаБизнесПроцесса, ФормируемыеЗадачи, СтандартнаяОбработка)
#Вставка
//---------------------------------------------------------
// Доработки:
//
// опциональное отключение задачи ознакомления с результатом
//---------------------------------------------------------
#КонецВставки
СтандартнаяОбработка = Ложь;
// Если процесс завершился положительно, то задачу ознакомления формируем
// после завершения процесса.
Если РезультатРегистрации <> Перечисления.РезультатыРегистрации.НеЗарегистрировано Тогда
Возврат;
КонецЕсли;
#Вставка
Если DIS_ОбщиеФункции.НеОбрабатыватьРезультатПроцесса(Ссылка) Тогда
Возврат;
КонецЕсли;
#КонецВставки
Задача = Задачи.ЗадачаИсполнителя.СоздатьЗадачу();
ЗаполнитьЗадачуОзнакомиться(Задача);
ЗадачаСсылка = Задачи.ЗадачаИсполнителя.ПолучитьСсылку();
Задача.УстановитьСсылкуНового(ЗадачаСсылка);
ФормируемыеЗадачи.Добавить(Задача);
УстановитьПривилегированныйРежим(Истина);
НоваяСтрока = РезультатыОзнакомлений.Добавить();
НоваяСтрока.НомерИтерации = НомерИтерации;
НоваяСтрока.ЗадачаИсполнителя = ЗадачаСсылка;
РаботаСБизнесПроцессами.ЗаписатьПроцесс(ЭтотОбъект, "ПростаяЗапись");
КонецПроцедуры
Ну и собственно добавляем в общий модуль DIS_ОбщиеФункции
Функция ПолучитьЗначениеДополнительногоРеквизита(ОбъектСсылка, ИдентификаторДляФормул) Экспорт
Значение = Неопределено;
Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("ИдентификаторДляФормул",ИдентификаторДляФормул);
Если ЗначениеЗаполнено(Свойство) Тогда
Значение = УправлениеСвойствами.ЗначениеСвойства(ОбъектСсылка, Свойство);
КонецЕсли;
Возврат Значение;
КонецФункции
Функция НеОбрабатыватьРезультатПроцесса(Процесс) Экспорт
Результат = Ложь;
// мы не всегда будем блокировать создание ознакомления
// если адресация идет на роль, то мы такую задачу все равно создаем
Если ТипЗнч(Процесс.ОбрабатывающийРезультат) = Тип("СправочникСсылка.Сотрудники") Тогда
ВсеПредметыЗапрещаютОбработку = Истина;
Для Каждого эл из Процесс.Предметы Цикл
Если ТипЗнч(Процесс.Ссылка) = Тип("БизнесПроцессСсылка.Согласование")
И ПолучитьЗначениеДополнительногоРеквизита(эл.Предмет, "НеОбрабатыватьРезультатСогласования") <> Истина Тогда
ВсеПредметыЗапрещаютОбработку = Ложь;
Прервать;
ИначеЕсли ТипЗнч(Процесс.Ссылка) = Тип("БизнесПроцессСсылка.Приглашение")
И ПолучитьЗначениеДополнительногоРеквизита(эл.Предмет, "НеОбрабатыватьРезультатПриглашения") <> Истина Тогда
ВсеПредметыЗапрещаютОбработку = Ложь;
Прервать;
ИначеЕсли ТипЗнч(Процесс.Ссылка) = Тип("БизнесПроцессСсылка.Утверждение")
И ПолучитьЗначениеДополнительногоРеквизита(эл.Предмет, "НеОбрабатыватьРезультатУтверждения") <> Истина Тогда
ВсеПредметыЗапрещаютОбработку = Ложь;
Прервать;
ИначеЕсли ТипЗнч(Процесс.Ссылка) = Тип("БизнесПроцессСсылка.Регистрация")
И ПолучитьЗначениеДополнительногоРеквизита(эл.Предмет, "НеОбрабатыватьРезультатРегистрации") <> Истина Тогда
ВсеПредметыЗапрещаютОбработку = Ложь;
Прервать;
КонецЕсли;
КонецЦикла;
Если ВсеПредметыЗапрещаютОбработку Тогда
Результат = Истина;
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецФункции
На этом собственно все, запускаем и проверяем, ну и последнее: поскольку обработки инициатором теперь нет, в карту маршрута нужно добавить условия, в моем случае я делаю проверку на невыполненый этап и меняю маршрут на нужный мне прямо на схеме комплексного процесса
Гарантированно работает на Документооборот КОРП, редакция 3.0 (3.0.16.33).