Уникальность артикула
Как сделать проверку уникальности артикула при создании номенклатуры?
Очень часто менеджеры, сидящие в офисах, при создании нового элемента в номенклатуре задваивают (а бывает и затраивают) артикулы. Чтобы этого избежать, предлагаю несколько вариантов.
В пользовательском режиме можно решить с помощью типового механизма: форма элемента номенклатуры — настройки — настройка реквизитов — артикул, уникальность — да поставить галочку.
В случае программа проверит введенный артикул и выдаст сообщение:
Но тогда есть вероятность, что менеджер галочку в настройках проигнорирует и введет повторяющийся артикул. Так сказать, сработает человеческий фактор. Чтобы его исключить, читайте следующий вариант.
В конфигураторе: Справочники — Номенклатура — Формы — ФормаЭлемента — Модуль.
Далее найти Процедура ПередЗаписью(Отказ), сделать изменения:
Процедура ПередЗаписью ( Отказ )
СтруктураОбязательныхПолей = Новый Структура;
СтруктураПоискаДублей = Новый Структура;
СтруктураПоискаДублей. Вставить( «Код», «=»);
Для Каждого Реквизит Из ТаблицаРеквизитов Цикл
Изменить на:
Процедура ПередЗаписью ( Отказ )
СтруктураОбязательныхПолей = Новый Структура;
СтруктураПоискаДублей = Новый Структура;
СтруктураПоискаДублей. Вставить( «Код», «=»);
СтруктураПоискаДублей. Вставить( «Артикул», «=»);
Для Каждого Реквизит Из ТаблицаРеквизитов Цикл
Таким образом, мы делаем уникальным не только «Код», но и реквизита «Артикул».
Менеджер уже не сможет повторить имеющийся артикул.