как в ЗАПРОСе использовать результат Функции в Условии?

Форум 1С: Одинэс.Ру

Найти!

как в ЗАПРОСе использовать результат Функции в Условии?

Inkognito
16.04.2009 - 07:46
Стандартная комплексная конфигурация 7.70.488, раздел ТИС. Отчёт "Заявки покупателя".
Допустим, имется заявка покупателя на 10 штук Номенклатуры. Затем выписывается Реализация на эти 10 штук номентклатуры. Вызываем Отчёт "ЗаявкиПокупателей" и в результирующую таблицу выводятся сведения об этой исполненной заявке с пустым значением оставшегося количества.
Хочу сделать так, чтобы в результат Отчёта не попадали Заявки, Контрагенты, Договоры и т.д. с пустыми (исполненными) значениями. Для этого думал в условии формирования Запроса добавить:
|Условие (КонОстЗаявкаК > 0);
Но в итоге при попытке исполнения Запроса получил ошибку:
... Условие (КонОстЗаявкаК  <<?>> > 0);Группировка...
Так можно ли как-то в условии отбора в самом запросе использовать результат работы функции этого же запрпоса? Ведь в запросе указано:
|Функция КонОстЗаявкаК = КонОст(КолЗаявки);
К списку тем 1 > К списку форумов

Интересные темы

odines.ru
28.10.2020 - 10:42
Смотри также:
периодически пишет эту ошибку
Как программно сделать подчинение одного документа другому
Открыть и заполнить несколько форм документов из внешней обработки не записывая их

Re: как в ЗАПРОСе использовать результат Функции в Условии?

roma n
1 - 16.04.2009 - 07:53
тут какая штука: эта функция агрегирующая. Попросту запрос СНАЧАЛА должен выбрать все данные, потом, при создании группировок, применить функцию.
|Условие же накладывается на выборку, ограничивая её.
Разрулить это противоречие внутри запроса не получится. Однако, кое-что, всё же, возможно и внутри запроса: конструкция Когда.

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Cthulhu
2 - 16.04.2009 - 08:09
|Условие (Запрос.КонОстЗаявкаК > 0);

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Cthulhu
3 - 16.04.2009 - 08:12
ЗЫ: но это методологически неверно. Ибо значение функцыи - оно по разным группировкам. Да и замедляет выполнение запроса очень сильно.

Re: как в ЗАПРОСе использовать результат Функции в Условии?

roma n
4 - 16.04.2009 - 08:48
Зачем показал...

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Stef
5 - 16.04.2009 - 09:51
(0) А нельзя обернуть существующий запрос в ещё один и уже внем наложить условие на [КонОстЗаявкаК] ?

Интересные темы

odines.ru
28.10.2020 - 10:42
Смотри также:
XP Home и сервер защиты
Версия для обучения программированию - обновляется ли?
Подскажите, плиз, код или ВК, который(ая) фиксирует время простоя 1С-ины и запускает определенную обработку

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Inkognito
6 - 16.04.2009 - 12:52
|Условие (Запрос.КонОстЗаявкаК > 0);
Почемуто некорректно работает. Т.е. при добавлении этого условия, в результирующую таблицу выдаётся информация как будто по данной заявке отгрузок вообще небыло. В то время, как отчёт о состоянии заявки показывает, что 10 было Заявлено и 10 уже отгружено.
Stef, может быть и можно, но как? :)

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Anonymous
7 - 16.04.2009 - 13:06
(6) Тебе ведь в (1) написали: "Однако, кое-что, всё же, возможно и внутри запроса: конструкция Когда."
Попробуй вот так:
|Функция КонОстЗаявкаК = КонОст(КолЗаявки) когда(КолЗаявки > 0);

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Inkognito
8 - 16.04.2009 - 13:21
7-Монгол > Так тоже не расчитывает остаток товара. Считает, что вообще ничего не отгружено.
Думаю, что "Когда" здесь не к месту, т.к. это ведь влияет только на то, рассчитывать ли данную крнкретную функцию или нет. А на условие отбора данных в запрос это не влияет. Мне же нужно, чтобы в запрос вообще не попадали данные с нулевым остатком по Заявке.

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Inkognito
9 - 17.04.2009 - 05:49
Ничего не получается, чтобы в Запросе сразу откинуть ненужноое :( Пришлось перед выводом строки в результирующую таблицу вставить проверку
Если Запрос.КонОстЗаявкаК > 0 Тогда ...

Re: как в ЗАПРОСе использовать результат Функции в Условии?

Inkognito
10 - 17.04.2009 - 06:13
Но есть подозрение, что со временем этот Запрос будет очень долго обрабатываться, т.к. вся деятельность ведётся по Заявкам и их будет ОЧЕНЬ много через 2-3 месяца работы. Они все будут отбираться в Запрос и по ним по всем потом будет перебор с проверкой условия.
Собственно, поэтому и хотелось бы отсеять эти Заявки на стадии формирования Запроса, а не дальнейшим перебором.

Re: как в ЗАПРОСе использовать результат Функции в Условии?

roma n
11 - 17.04.2009 - 06:22
В результат запроса они попадают потому что по ним есть какая-то представимая в результате запроса информация как то:
начальный остаток, движения за период.
Ежели они не нужны -отсей их ДО исполнения запроса, скормив ему в условие список только тех Заявок, по которым есть КонОст<>0
К списку тем 1 > К списку форумов
Тема закрыта и находится в архиве.
Но Вы можете начать новую тему.
« камин Зарплата для бюджетных учреждений Получить в модуле документа его движения - для "Сторно" »
© 2009 Форум 1С: Одинэс.Ру