Скрытие помеченных на удаление в справочнике
Корректно скрываем помеченных на удаление в справочнике, с иерархией и без. Вроде простая и нужная вещь, но почему-то нигде не встречалась
- Описание
- Подробнее
Описание
В глобальник кидаем одну функцию
Функция глПолучитьСписокЭлементов(Иерархически,ТекРодитель,Конт) Экспорт
Спр=СоздатьОбъект(«Справочник.»+Конт.Вид());
Сп=СоздатьОбъект(«СписокЗначений»);
Если Иерархически=1 Тогда
Спр.ВключатьПодчиненные(0);
Спр.ИспользоватьРодителя(ТекРодитель);
КонецЕсли;
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент()=1 Цикл
Если Спр.ПометкаУдаления()=0 Тогда
Сп.ДобавитьЗначение(Спр.ТекущийЭлемент());
КонецЕсли;
КонецЦикла;
Возврат Сп;
КонецФункции
В форме списка справочника:
Процедура ПриВыбореРодителя(Элемент)
ИспользоватьСписокЭлементов(глПолучитьСписокЭлементов(1,Элемент,Контекст));
КонецПроцедуры
Процедура ПриОткрытии()
ИспользоватьСписокЭлементов(глПолучитьСписокЭлементов(ИерархическийСписок(),Родитель,Контекст));
КонецПроцедуры //ПриОткрытии
Процедура ПриСменеИерархии(Иерархически)
ИспользоватьСписокЭлементов(глПолучитьСписокЭлементов(Иерархически,Родитель,Контекст));
КонецПроцедуры

