127
Процедура ИсполнителиПередОкончаниемРедактирования(Элемент, НоваяСтрока,
ОтменаРедактирования, Отказ)
Если Элемент.ТекущиеДанные.Исполнитель.Пустая() И Не (НоваяСтрока и
ОтменаРедактирования) Тогда
Сообщить("Исполнитель должен быть обязательно выбран");
Отказ = Истина;
КонецЕсли;
Процентов = 0;
Для Каждого СтрокаИсполнитель Из Объект.Исполнители Цикл
Процентов = Процентов + СтрокаИсполнитель.Процент;
КонецЦикла;
Если Процентов > 100 Тогда
Сообщить("Суммарный процент исполнения не может превышать
100%");
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
// выбор нового исполнителя - проверка что такого еще не было
&НаКлиенте
Процедура ИсполнителиИсполнительОбработкаВыбора(Элемент,
ВыбранноеЗначение, СтандартнаяОбработка)
Если УжеЕстьВТаблице(ВыбранноеЗначение) Тогда
СтандартнаяОбработка = Ложь;
Сообщить("Этот исполнитель уже выбран");
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция УжеЕстьВТаблице(Выбор)
МассивНайденныхСтрок = Объект.Исполнители.НайтиСтроки(Новый
Структура("Исполнитель",Выбор));
Возврат МассивНайденныхСтрок.Количество();
КонецФункции
//ввод новой строки в ТЧ Исполнители - запрет копирования (не может быть двух
одинаковых строк)
&НаКлиенте
Процедура ИсполнителиПередНачаломДобавления(Элемент, Отказ, Копирование,
Родитель, Группа, Параметр)
Если Копирование = Истина Тогда // запрет копирования
Отказ = Истина;