Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: 8.2 Активная форма. Динамический список. Несколько вопросов.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование управляемых форм 1С 8.2
chio
1. На активной форме отображается динамический список, сделанный на основе произвольного запроса, основная таблица не назначена. Список упорядочен указанием соответствующих настроек динамического списка в конфигураторе и нужно запретить пользователю менять этот порядок. Т.е. либо сделать так, чтобы в заголовке колонки не было значка смены упорядочивания (стрелочка). Либо перехватить событие нажатия на заголовок колонки и оставить порядок без изменения.
Кто делал такое? Помогите, please?

2. Динамический список. (Отображение в виде иерархического списка) В нем отображается структура папок справочника номенклатуры. (Отбор: ЭтоПапка) Задача: Нужно из этого списка убрать несколько папок, находящихся на 1 уровне справочника. Пытался для этого использовать Отбор. Устанавливал его и динамически при открытии и в настройках динамического списка - Не помогает - группы не исчезают.
Кто сталкивался, помогите!

3. Динамический список. (Отображение в виде иерархического списка). В нем отображается структура папок справочника номенклатуры. Нужно сделать так, чтобы при первоначальном открытии списка одна из папок верхнего уровня была уже открыта (развернута). Метод "Развернуть" почему-то в этом случае не работает.

Буду благодарен за любую помощь!!
Damien
1. Перехватить никак, запретить нажать на шапку колонки - тоже (тупо сделано...). Но можно так. Если в динамическом списке в конфигураторе забита одна сортировка по какому-либо полю, например, только по-возрастанию. И именно её менять низзя. Тогда модуль формы:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
    
    ПодключитьОбработчикОжидания("ПроверкаСортировки",1);
    
КонецПроцедуры

&НаКлиенте
Процедура ПроверкаСортировки()

    ЭлементПорядка = Список.Порядок.Элементы[0];
    Если ЭлементПорядка.ТипУпорядочивания = НаправлениеСортировкиКомпоновкиДанных.Убыв Тогда
        ЭлементПорядка.ТипУпорядочивания = НаправлениеСортировкиКомпоновкиДанных.Возр
    КонецЕсли;

КонецПроцедуры


Как бы пользователь не сортировал - сортировка всё равно вернётся к заданной.
Топорно, конечно, но по другому пока ничё не придумывается...

Щас помозгую над другими вопросами, хотя уже вижу, что вы (как и я зачастую) упёрлись в предел управляемой формы 64000000.gif
chio
О! Обработка ожидания - это прикольно! Я даже не думал в этом направлении. Спасибо!
В крайнем случае, наверное, придется воспользоваться, если заказчик будет настаивать..

Штатных средств для решения проблемы, как я понял, нет..
Damien
Думаю, нет 09000000.gif

Да, второй вопрос меня вообще поразил - отбор не устанавливается никак - тока шо проверял wacko.gif
Даже ввел реквизит булевый "Не показывать" и отбирал по нему - один х... не работает. Закономерный вопрос - а нах... тогда вообще этот отбор, если он не работает?
В шоке...
Не, получилось, только, если основную таблицу не задавал, а выборка - запросом. Ну так нах оно нужно - получаем в итоге не дин. список, а ТЗ какую-то...
Щас покурим мануал 1с-овский, мож чё вычитаю...
Damien
Отбор, получается, распространяется только на элементы справочника. На группы повлиять - никак
ВО КАК ...
У меня получилось ограничить видимость только на уровне ограничения доступа к данным. Если уж больно нужно - можете так выкрутиться...

Во, вычитал: "... в случае, если дин. список отображается в виде иерархического списка, запрос не должен содержать условий отбора по родителю". Ну, это относится к дин. списку с запросом в качестве источника...
Короче, вопрос остаётся открытым...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.