|
Пустой запрос при подстановке параметра из текущего документа | ☑ | ||
---|---|---|---|---|
0
Очень Любознательная
21.11.19
✎
17:38
|
Здравствуйте. Возник такой вопрос.
Есть в УТ 11 документ "Заказ клиента", есть собственный регистр накопления с измерением "Соглашение" (тип - соглашение, стандартный в УТ). Случайно ошиблась в запросе, параллельно возник вопрос. Вот есть такой запрос в обработке проведения заказа клиента: Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗаказКлиентаТовары.Номенклатура КАК Товар, | ЕСТЬNULL(УсловияДоговоровОстатки.КоличествоОстаток, 0) КАК Остаток, | ЕСТЬNULL(ЗаказКлиентаТовары.Количество, 0) КАК КоличествоТовара |ИЗ | Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.УсловияДоговоров.Остатки КАК УсловияДоговоровОстатки | ПО ЗаказКлиентаТовары.Номенклатура = УсловияДоговоровОстатки.Товар | И ЗаказКлиентаТовары.Ссылка.Соглашение = УсловияДоговоровОстатки.Соглашение |ГДЕ | УсловияДоговоровОстатки.Соглашение = &Соглашение | И ЗаказКлиентаТовары.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Соглашение", Соглашение); Запрос.УстановитьПараметр("Ссылка", Ссылка); Результат = Запрос.Выполнить().Выбрать(); Пока Результат.Следующий() Цикл Нехватка = (Результат.Остаток - Результат.КоличествоТовара) * (-1); Если Нехватка > 0 Тогда Сообщить("Проведение невозможно. По договору не хватает " + Нехватка + " единиц товара " + Результат.Товар); Отказ = Истина; КонецЕсли; КонецЦикла; Если убрать параметр "соглашение", то он работает верно. Если не убирать, то пустой результат. Почему так? Соглашение - это именно то соглашение, которое у меня в документе, по моей логике, на результат должны параметры наложиться, и состав результирующих записей не изменится. В чём я не права? |
|||
1
sqr4
21.11.19
✎
17:39
|
(0) ты не права в том, что не используешь отладку, а пишешь на форум...
|
|||
2
Очень Любознательная
21.11.19
✎
17:40
|
(1) В отладке я вижу пустой запрос при выгрузке результата в таблицу.
Если я чего-то не знаю, подскажите, пожалуйста, против отладки я ничего не имею. |
|||
3
sqr4
21.11.19
✎
17:41
|
надо смотреть параметр который туда передается
|
|||
4
unenu
21.11.19
✎
17:42
|
Случайность и параллелизм вещи очень похожие.
|
|||
5
sqr4
21.11.19
✎
17:43
|
Причем если есть связь по этому полю, зачем еще и в "где" его засовывать
|
|||
6
unenu
21.11.19
✎
17:44
|
(5) на всякий случай же
|
|||
7
Ёпрст
21.11.19
✎
17:45
|
(0) нет остатка по этому соглашению
перенеси условие УсловияДоговоровОстатки.Соглашение = &Соглашение в место соединения таблиц |
|||
8
sqr4
21.11.19
✎
17:45
|
ну и очевидно, что остатков нет в " УсловияДоговоровОстатки.Соглашение " сейчас Null, поэтому и пустой результат.
|
|||
9
Ёпрст
21.11.19
✎
17:46
|
или , вообще его выкини
|
|||
10
hhhh
21.11.19
✎
17:47
|
(2) попробуй сначала отменить проведение документа заказ. И почему у тебя остаток на текущую дату, а не на дату заказа?
|
|||
11
sqr4
21.11.19
✎
17:53
|
(7) Как раз надо оставить связь и убрать условие
|
|||
12
shuhard
21.11.19
✎
17:53
|
(0) по сути права, где на правую таблицу идентично внутренней связи
по факу условие бесполезное, оно не в связи не в виртуальной таблице |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |