&НаКлиенте Процедура НоменклатураПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования) // Получаем текущие данные через параметры события ТекущиеДанные = Элемент.ТекущиеДанные; Если ТекущиеДанные = Неопределено Тогда Возврат; КонецЕсли; Номенклатура = ТекущиеДанные.Номенклатура; ИдентификаторСтроки = ТекущиеДанные.ПолучитьИдентификатор(); Если Не ЗначениеЗаполнено(Номенклатура) Тогда // Удаляем пустую строку на сервере УдалитьСтрокуНаСервере(ИдентификаторСтроки); Возврат; КонецЕсли; // Проверяем дубликаты на сервере (исключая текущую строку) ЕстьДубликат = ПроверитьДубликатыНаСервере(ИдентификаторСтроки, Номенклатура); Если ЕстьДубликат Тогда УдалитьСтрокуНаСервере(ИдентификаторСтроки); КонецЕсли; КонецПроцедуры &НаСервере Процедура УдалитьСтрокуНаСервере(Идентификатор) Строка = Объект.Номенклатура.НайтиПоИдентификатору(Идентификатор); Если Строка <> Неопределено Тогда Объект.Номенклатура.Удалить(Строка); КонецЕсли; КонецПроцедуры &НаСервере Функция ПроверитьДубликатыН
1С. Удалить строку в табличной части, если имеется дубль или пустое значение колонки. Таблица здесь называется "Номенклатура" и колонка тоже
8 апреля8 апр
5
1 мин