13.03.2008, 09:31
общий
это ответ
Здравствуйте, Троцюк Олександр Володимирович!
В дополнение ответа Maximush, возможен вариант с отбором по реквизиту, если Вы уверены в стандартном написании реквизитов (для этого возможно использование шаблонов в поле ввода), особенно для кодов. Естесственно для проверяемых реквизитов признак "сортировка" должен быть установлен.
Я тоже считаю, что проверять можно только "кодЭДРПОУ".
В варианте Maximush по моему при перезаписи будет выдаваться предупреждение, т.к процедура будет находить свой же элемент.
Успехов Вам в работе.
Приложение:
КА = СоздатьОбъект("Справочник.Контрагенты"); //Проверка наименования КА.ВыбратьЭлементыПоРеквизиту("Наименование",Наименование, 0, 0); Пока КА.ПолучитьЭлемент() = 1 Цикл Если КА.ТекущийЭлемент() = ТекущийЭлемент() Тогда Продолжить; КонецЕсли; Предупреждение("Наименование не уникально! Элемент не записан."); СтатусВозврата(0); Возврат; КонецЦикла; //Проверка кодЭДРПОУ КА.ВыбратьЭлементыПоРеквизиту("кодЭДРПОУ",кодЭДРПОУ, 0, 0); Пока КА.ПолучитьЭлемент() = 1 Цикл Если КА.ТекущийЭлемент() = ТекущийЭлемент() Тогда Продолжить; КонецЕсли; Предупреждение("Код плательщика налогов не уникален! Элемент не записан."); СтатусВозврата(0); Возврат; КонецЦикла; //Проверка КонтОС КА.ВыбратьЭлементыПоРеквизиту("КонтОС",КонтОС, 0, 0); Пока КА.ПолучитьЭлемент() = 1 Цикл Если КА.ТекущийЭлемент() = ТекущийЭлемент() Тогда Продолжить; КонецЕсли; Предупреждение("Контактное лицо не уникально! Элемент не записан."); СтатусВозврата(0); Возврат; КонецЦикла; // Можно добавить аналогичные проверки для других реквизитов // но все реквизиты должны быть с установленным признаком "сортировка"