1. ВызватьИсключение все же рвет код и работает как возврат, а там после еще вон код есть, который типа работает
2. Выглядит выброс исключения подозрительно и чужеродно. Везде через отказ, а тут вот так
3. Я не считаю, что контроль дублей по наименованию эта та операция, которая должна выполнятся в перед записью. Она все же не ломает логику записи и ей место в ОбработкаПроверкиЗаполнения, как это сделано для других справочников
4. Проверка на заполненность Наименования в ПередЗаписью при том, что платформа сама контролирует Наименование так же сомнительна.
Если б такое написал джун/мидл я бы заставил его переделывать, а тут в типовой в очень даже частоиспользуемом месте, то есть писал не мидл, такой кричащий код, как будто это сделано осознанно и специально. Но я не понимаю зачем это именно так сделано.