0
Очень Любознательная
16.09.19
✎
21:21
|
Добрый вечер!
У клиента есть в одном месте программы вызов формы выбора договора (конфа УТ), он хочет, чтобы в неё подтягивались только договоры, у которых дата окончания действия либо больше равна 1 января этого года, либо не заполнена.
Я добавила к стандартному запросу списка условие
{ГДЕ СправочникДоговорыКонтрагентов.ДатаОкончанияДействия >= &Дата}
Дату ставлю в параметрах равной 1 января
Подскажите, пожалуйста, как доработать это условие, чтобы и договоры с незаполненной датой окончания подтягивались?
|
|
4
Очень Любознательная
21.09.19
✎
01:51
|
(1) Можете подсказать ещё, пожалуйста?
У меня есть форма, на которой для работы 3 поля - организация, контрагент, договор
Нужно, чтобы если заполнена организация, контрагент, то выводились договоры с данными отборами,
где дата окончания больше или равна 1 января этого года или не заполнена, а статус действующий.
Я открываю форму выбора договора, но в динамическом списке нет отборов.Я добавила их так
{ГДЕ СправочникДоговорыКонтрагентов.Контрагент = &Контрагент}
{ГДЕ СправочникДоговорыКонтрагентов.Организация = &Организация}
{ГДЕ СправочникДоговорыКонтрагентов.ДатаОкончанияДействия >= &Дата ИЛИ СправочникДоговорыКонтрагентов.ДатаОкончанияДействия = ДатаВремя(0001,01,01)}
{ГДЕ СправочникДоговорыКонтрагентов.Статус = &Статус}
Потом при создании формы на сервере я передаю отборы в параметры открытия:
СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);
Если ЗначениеЗаполнено(Параметры.Организация) Тогда
Список.Параметры.УстановитьЗначениеПараметра("Организация", Параметры.Организация);
КонецЕсли;
Если ЗначениеЗаполнено(Параметры.Контрагент) Тогда
Список.Параметры.УстановитьЗначениеПараметра("Контрагент", Параметры.Контрагент);
КонецЕсли;
Список.Параметры.УстановитьЗначениеПараметра("Дата", Параметры.Дата);
Список.Параметры.УстановитьЗначениеПараметра("Статус", Параметры.Статус);
Но проблема возникает, когда, скажем, в актах сверки они просто выбирают договор, там параметров этих нет, поэтом ошибка выскакивает. Подскажите, пожалуйста, что я делаю не так? Как это должно делаться правильно?
|
|