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