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

Показывать и скрывать помеченные на удаление

Автор Дмитрий11, 24 янв 2023, 10:28

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

Дмитрий11

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

Максим75

Дмитрий11, вроде как в списках (что документа, что справочника) динамический список выводится на основании запроса в управляемых формах. вот в запросе и поставить условие на пометку удаления.

LexaK

Дмитрий11,
программно
1.при открытии. в форму списка добавляете Отбор ПометкаУдаления = Ложь
2.По кнопке ПоказатьУдаленные - убираете этот отбор.

всего 2-3 команды
если помогло нажмите: Спасибо!

Дмитрий11

LexaK, При открытии нет процедуры, мне ее нужно создать?Пробовал создавать на клиенте, но отбор не сработал

Максим75

Дмитрий11, ПриОткрытии - предопределенная процедура. Заходите в модуль списка, нажимаете на иконку с процедурами и функциями модуля (Ctrl+Alt+P) и там выпадут все процедуры и функции модуля, как созданные разработчиком, так и предопределенные.

Дмитрий11

Максим75,
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Список.Отбор.ПометкаУдаления=Ложь;
КонецПроцедуры
не работает

antoneus

К событию формы процедура привязана?

А, хотя отбор в списке устанавливается, мягко говоря, не так.

Максим75

Дмитрий11, так вроде как Отбор является Структурой.
вот прямо так не будет работать.

погуглите, как открыть форму списка с некоторым отбором.

Afinogen

Дмитрий11,
Немного не так
если у вас динамический список то  у вас должны быть команды установить отбор снять отбор  обе они должны вызывать типовую процедуру
в УТ, БСП есть

ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка

то есть  у вас примерно так должно быть

&НаКлиенте
Процедура УстановитьОтбор(Команда)
установитьСнятьОтбоНаСервере()
КонецПроцедуры
&НаКлиенте
Процедура СнятьОтбор(Команда)
установитьСнятьОтбоНаСервере()
КонецПроцедуры
&НаСервере
Процедура установитьСнятьОтбоНаСервере()
ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка()
КонецПроцедуры
гуглите УстановитьЭлементОтбораДинамическогоСписка()

Теги:

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

Рейтинг@Mail.ru

Поиск