Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
18 апр 2024, 17:13

Запрет создания элементов в группах иерархического справочника

Автор varaha, 27 ноя 2012, 18:11

0 Пользователей и 1 гость просматривают эту тему.

varaha

Имеется иерархический справочник групп и элементов. Как сделать чтобы пользователь имел возможность создавать элементы только в самом нижнем уровне иерархии? То есть нужно реализовать иерархию групп, а элементы могут создаваться только в последней, самой нижней группе.

Dethmontt

Можно попробовать при записи проверять максимальный уровень вложенности и уровень вложенности элемента который пользователь пытается записать если уровень вложенности элемента ниже максимального запрещать запись
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

varaha

вот что получилось:


&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа)
Если не Группа Тогда // создается элемент, а не группа
Если Элемент.ТекущаяСтрока.Пустая() Тогда  // на случай выбора корня в дереве
Отказ=истина;
Предупреждение("Выберите улицу!");
Иначе
         Если КоличествоУровнейИерархииОграничено() тогда
       Если не Группа и УровеньИерархии(Элемент.ТекущаяСтрока)<КоличествоУровнейИерархии()-2 тогда
    Отказ=истина;
   КонецЕсли;
   КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры

&НаСервереБезКонтекста
Функция УровеньИерархии(с)
возврат с.Уровень();
КонецФункции

&НаСервереБезКонтекста
Функция КоличествоУровнейИерархии()
возврат Метаданные.Справочники.Плательщики.КоличествоУровней;
КонецФункции

&НаСервереБезКонтекста
Функция КоличествоУровнейИерархииОграничено()
возврат Метаданные.Справочники.Плательщики.ОграничиватьКоличествоУровней;
КонецФункции

Dethmontt

Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск