1. Nysha1210 07.12.18 00:01 Сейчас в теме

1С 8 3 УТП управление отбором в списке документа

Добрый день. Нужно сделать отбор в форме списка документа по нужным полям при помощо флажка. Это я реализовала, но при отключении флажка нужно вернуться к первоначальному списку документов и интервалу дат. Именно возврат не получается. После сброса Отбора выводится весь список документов (с начала существования программы), настройка периода программно не получается, хотя вроде всё делаю правильно.

ДатаНачала = ЭлементыФормы.Список.СтандартныйПериод.ДатаНачала;
ДатаКонца = ЭлементыФормы.Список.СтандартныйПериод.ДатаОкончания;

Если ЭлементыФормы.Флажок1.Значение=истина тогда
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Установить(Перечисления.СтатусЗаказа.ВРаботе);
иначе
ЭлементыФормы.Список.Значение.Отбор.Сбросить();
ЭлементыФормы.Список.Значение.Отбор.Дата.Использование=истина;
ЭлементыФормы.Список.Значение.Отбор.Дата.ВидСравнения=ВидСравнения.ИнтервалВключаяГраницы;
ЭлементыФормы.Список.Значение.Отбор.Дата.Значение=ЭлементыФормы.Список.Значение.Отбор.Дата.Значение;
ЭлементыФормы.Список.Значение.Отбор.Дата.ЗначениеС=ДатаНачала;
ЭлементыФормы.Список.Значение.Отбор.Дата.ЗначениеПо=ДатаКонца;
ЭлементыФормы.Список.Значение.Отбор.Дата.Установить();
КонецЕсли;

Спасибо. Буду благодарна за помощь)))
Найденные решения
6. Nysha1210 07.12.18 15:48 Сейчас в теме
РЕШЕНИЕ, может кому то пригодится.
В модуле Списка документов добавляем процедуру

Процедура ПриОткрытии()
ЭлементыФормы.Список.НастройкаОтбора.Проведен.Доступность = Истина;
КонецПроцедуры

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

делаем двойной отбор:

Если ЭлементыФормы.Флажок1.Значение=истина тогда
СписокОтбора = новый СписокЗначений;
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.ВРаботе,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Оплачен,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Отправлен,,,);
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=истина;
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.ВидСравнения = ВидСравнения.ВСписке;
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Значение = СписокОтбора;
ЭлементыФормы.Список.Значение.Отбор.Posted.Использование=Истина;
ЭлементыФормы.Список.Значение.Отбор.Posted.ВидСравнения=ВидСравнения.Равно;
ЭлементыФормы.Список.Значение.Отбор.Posted.Значение = ложь;
иначе
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь;
ЭлементыФормы.Список.Значение.Отбор.Posted.Использование=ложь;
КонецЕсли;
ВСе работает. Всем спасибо за помощь.
Остальные ответы
Избранное Подписка Сортировка: Древо
2. Nysha1210 07.12.18 00:31 Сейчас в теме
(1)РЕШЕНИЕ

Если ЭлементыФормы.Флажок1.Значение=истина тогда
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Установить(Перечисления.СтатусЗаказа.ВРаботе);
иначе
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь;
КонецЕсли;


Дополнительный вопрос:

Как построить Отбор по нескольким условиям обновременно, а потом его сбрасывать?
Просто перечислить все отборы по порядку?
3. PhoenixAOD 55 07.12.18 04:39 Сейчас в теме
(2)именно так, перечисляем отборы, ну и потом так же использование ложь.
4. Nysha1210 07.12.18 13:51 Сейчас в теме
Множественный отбор по Списку значений не работает. Почему?
Если ЭлементыФормы.Флажок1.Значение=истина тогда
СписокОтбора = новый СписокЗначений;
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.ВРаботе,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Оплачен,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Отправлен,,,);
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Установить(СписокОтбора);
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=истина;
иначе
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь;
КонецЕсли;
5. Nysha1210 07.12.18 15:14 Сейчас в теме
(4) Работает так.
Если ЭлементыФормы.Флажок1.Значение=истина тогда
СписокОтбора = новый СписокЗначений;
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.ВРаботе,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Оплачен,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Отправлен,,,);
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=истина;
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.ВидСравнения = ВидСравнения.ВСписке;
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Значение = СписокОтбора;
иначе
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь;
КонецЕсли;
Как в этот отбор добавить условие - для всех проведенных документов?
6. Nysha1210 07.12.18 15:48 Сейчас в теме
РЕШЕНИЕ, может кому то пригодится.
В модуле Списка документов добавляем процедуру

Процедура ПриОткрытии()
ЭлементыФормы.Список.НастройкаОтбора.Проведен.Доступность = Истина;
КонецПроцедуры

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

делаем двойной отбор:

Если ЭлементыФормы.Флажок1.Значение=истина тогда
СписокОтбора = новый СписокЗначений;
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.ВРаботе,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Оплачен,,,);
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Отправлен,,,);
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=истина;
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.ВидСравнения = ВидСравнения.ВСписке;
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Значение = СписокОтбора;
ЭлементыФормы.Список.Значение.Отбор.Posted.Использование=Истина;
ЭлементыФормы.Список.Значение.Отбор.Posted.ВидСравнения=ВидСравнения.Равно;
ЭлементыФормы.Список.Значение.Отбор.Posted.Значение = ложь;
иначе
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь;
ЭлементыФормы.Список.Значение.Отбор.Posted.Использование=ложь;
КонецЕсли;
ВСе работает. Всем спасибо за помощь.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Старший Программист 1С НОВОСИБИРСК
Новосибирск
зарплата до 130 000 руб.
Полный день

Программист 1С
Новосибирск
зарплата от 75 000 руб.
Полный день



Руководитель проектов 1С
Санкт-Петербург
По совместительству