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

Вывести значения на форму списка

Автор Алексей_1985_06, 20 ноя 2024, 15:16

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

Алексей_1985_06

Всем привет, вопрос такой:
Есть справочник с иерархией систем, там есть реквизит "Сооружение" который указывает в каком помещении находится эта система (каждая система по иерархии может быть в разных сооружениях) - рис.1
На форме списка с сооружениями создал кнопку: "Системы/оборудование" - рис.2 при нажатии на которую нужно открыть форму списка с системами, которые находятся в том сооружении - на котором сейчас установлен курсор.

Код такой:
&НаКлиенте
Процедура ПоказатьСистемыВСооружении(Команда)

    ДанныеСтроки = Элементы.СписокСооружения.ТекущиеДанные;

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

Но сейчас при нажатии на кнопку открытии формы списка без систем, хотя они там есть например: Сооружение 1.1 - находится система Пусковой стол, она она не отображается. Выводится список только систем верхнего уровня, или подсистем находящихся в одном сооружении с системой верхнего уровня, а если они находятся в разных сооружениях - то системы нижнего уровня не выводятся на форму списка.
Подскажите, что не так делаю?

Максим75

Алексей_1985_06, скажите, а если Вы просто открываете форму списка справочника и ручками отбор делаете по нужному реквизиту - все правильно выводится, как надо?

Алексей_1985_06

Максим75, Если "ручками" - то тоже не работает......
Думаю проблема связана с иерархией, но не пойму куда "копать" нужно.....

Максим75

Алексей_1985_06, ну так если ручками не работает, то ройте в запросе, который дин.список делает.
как заработает ручками, так и при программном открытии будет работать.

LexaK

Алексей_1985_06, так вроде вообще ни чего программировать не надо
на форме Дерево с Сооружениями
и таблица с Системами
и связь между ними Отбор систем по текущему значению Сооружения.
все это настраивается на форме в свойствах элементов!
если помогло нажмите: Спасибо!

Алексей_1985_06

LexaK, Подскажите пожалуйста как это сделать?
Всю голову поломал...
Вот у меня иерархический справочник с системами и реквизитом "сооружение" (рис.1)

Рис.2 - В настройках этого списка сделал отбор по сооружению, и получается если делаю отбор по сооружению 1 - то все работает

Рис.3  А вот если сделать отбор по сооружению нижнего уровня иерархии - то системы не выводятся, хотя они там есть.
Не могу никак понять, что не так делаю то????

Алексей_1985_06

Цитата: Алексей_1985_06 от 21 ноя 2024, 16:47LexaK, Подскажите пожалуйста как это сделать?
Всю голову поломал...
Вот у меня иерархический справочник с системами и реквизитом "сооружение" (рис.1)

Рис.2 - В настройках этого списка сделал отбор по сооружению, и получается если делаю отбор по сооружению 1 - то все работает

Рис.3  А вот если сделать отбор по сооружению нижнего уровня иерархии - то системы не выводятся, хотя они там есть.
Не могу никак понять, что не так делаю то????

Ребят кто-то знает почему так происходит?
Проверил в параметрах, все передается! А на форме списка не отображается список! Не могу понять почему так происходит?  :dfbsdfbsdf: 
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Параметры.Отбор.Количество();
КонецПроцедуры

Теги:

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

Рейтинг@Mail.ru

Поиск