|
0
User67
14.01.11
✎
15:32
|
Если есть возможность помогите разобраться вроде бы с простой задачей. Есть отчет на СКД. В запросе делается отбор документов по периоду:
Дата Между Дата1 И Дата2 . Для более удобной работы в параметры добавлен Период тип СтандартныйПериод, и для Дата2 задано выражение ВЫБОР КОГДА &Период.ДатаОкончания = ДАТАВРЕМЯ(1,1,1) ТОГДА ДАТАВРЕМЯ(3999,1,1) ИНАЧЕ &Период.ДатаОкончания КОНЕЦ (если пользователь ни чего не указал, то должны выводится все документы). Но почему это не работает. Если не задаешь дату окончания, то ни чего не выводится. Вариант с &Период.ДатаОкончания = ДАТАВРЕМЯ(1,1,1,23,59,59) тоже не работает. А если поставить условие &Период.ДатаОкончания < &Период.ДатаНачала, то вылетает ошибка, что нет такого параметра
&Период.ДатаОкончания. Версия платформы 8.2.12.78, 82.13.202, Попробовал тоже самое на 8.1, там работает. Почти 3 часа потерял на эту ситуацию(.
|
|
|
3
User67
15.01.11
✎
18:55
|
Стандартный период более удобен для выбора. Можно указать этот месяц, прошлый месяц и т.п. Просто это должно работать, а не работает(. Хотелось понять, я сто то неправильно делаю, или поменялось поведение платформы.
|
|
|
4
Ns33
15.01.11
✎
23:28
|
Лови пример: ВЫБРАТЬ ОказаниеУслуг.Представление ИЗ Документ.ОказаниеУслуг КАК ОказаниеУслуг ГДЕ ОказаниеУслуг.Склад = &Склад {ГДЕ (ОказаниеУслуг.Дата МЕЖДУ &Дата1 И &Дата2)} В фигурных скобках те условия, которые отключаются, если для них не заданы параметры. В конструкторе запросов управляется на закладке "компоновка". Дата1 и Дата2 будут обычными &Период.ДатаНачала и &Период.ДатаОкончания.
|
|
|
5
User67
16.01.11
✎
17:12
|
Спасибо за совет. Проверил, работает, но если задашь только дату начала, а дата окончания пустая, то вылетает ошибка. Я не могу понять, получается что изменилось поведение Платформы, ведь в 8.1 все работает, да и в Интернете примеры были(
|
|