Делаю отбор по полю даты в списке документов. УНФ 3.0

Добавил свое поле «Заказ» в список документов расходных накладных:

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

&НаКлиенте
Процедура мл_дор_ВыборДатыЗаказаПриИзмененииПосле(Элемент)
	дор_НастроитьОтборПоДатеЗаказа();
КонецПроцедуры

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

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *