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

Отборы в списке (управляемые формы)

Автор Новенькая, 02 июн 2014, 15:49

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

Новенькая

В зависимости от установки или снятия галочки на форме списка документа, накладываются отборы на список. Есть процедура:
&НаКлиенте
Процедура ОбновитьОтборыСписка(Элемент)

СтрИмяЭлемента=Элемент.Имя;
СтрИмяЭлемента=СтрЗаменить(СтрИмяЭлемента,"Использовать","");
СтрИмяЭлемента=СтрЗаменить(СтрИмяЭлемента,"Отбор","");
Если СтрИмяЭлемента="МесяцСтрокой" Тогда
  СтрИмяЭлемента="ПериодРегистрации";
КонецЕсли;

ЭлементЕсть=Ложь;
Если СтрИмяЭлемента="ПериодРегистрации" Тогда
  ТекПолеКомпоновкиДанных   = Новый ПолеКомпоновкиДанных("Дата");
Иначе
  ТекПолеКомпоновкиДанных   = Новый ПолеКомпоновкиДанных(СтрИмяЭлемента);
КонецЕсли;

Для Каждого СтрокаОтбора ИЗ Список.Отбор.Элементы Цикл
  Если СтрокаОтбора.ЛевоеЗначение=ТекПолеКомпоновкиДанных Тогда
   ЭлементОтбора=СтрокаОтбора;
   ЭлементЕсть=Истина;
   Прервать;
  КонецЕсли;
КонецЦикла;

Если НЕ ЭлементЕсть Тогда
 
  ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
  ЭлементОтбора.ЛевоеЗначение=ТекПолеКомпоновкиДанных;
  Если НЕ СтрИмяЭлемента="ПериодРегистрации" Тогда
   ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
  Иначе
   ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно;
  КонецЕсли;
  ЭлементОтбора.РежимОтображения =РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
КонецЕсли;

ЭлементОтбора.Использование = ЭтаФорма["Использовать"+СтрИмяЭлемента];
ЭлементОтбора.ПравоеЗначение = ЭтаФорма[СтрИмяЭлемента];

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


Как ее правильно доработать, чтобы "ПериодРегистрации" отбирался в интревале. Т.е. был бы больше или равно ЭтаФорма[СтрИмяЭлемента] и меньше или равно КонецМесяца(ЭтаФорма[СтрИмяЭлемента])

Теги:

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

Рейтинг@Mail.ru

Поиск