Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проверка при записи справочника на нужного родителя в корне
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование управляемых форм 1С 8.2
logist
Есть справочник номенклатура, в корне создано 4 предопределенных группы, нужно при записи элемента проверять что бы он был помещен в правильную группу корня (хотя вложенность может быть глубокой). Соответствие группе определяется типом номенклатуры (Перечисление.ТипыНоменклатры). Как это реализовать? Буду благодарен примерам с кодом. Ориентироваться можно на конфигурацию "УНФ Укр".
Спасибо.
Vofka
Писал прямо здесь, не проверял. Идея, я думаю, понятна:

Функция ОпределитьРодителя(Элемент)
   Родитель = Элемент.Родитель;
   Если Родитель <> Справочники.Номенклатура.ПустаяСсылка Тогда
      ОпределитьРодителя(Родитель);
   Иначе
      Возврат Элемент;
   КонецЕсли;
КонецФункции

Процедура ПриЗаписи(Отказ)
   КорневойЭлемент = ОпределитьРодителя(ЭтотОбъект);
   // ну и проверяем соответствие корневого элемета типу номенклатуры
КонецПроцедуры
Zaval
По, моему, проще использовать один раз
ПринадлежитЭлементу()

Этому методу пофиг, сколько там промежуточных уровней.
Корневые группы, наверное лучше сделать предопределенными - легче обращаться.
logist
Всем спасибо за советы, воспользовался "ПринадлежитЭлементу()", только его нельзя использовать в форме, т.к. новый элемент не содержит ссылки, а у объекта в форме этот метод недоступен, посему разместил в ПередЗаписью модуля объекта.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.