![]() |
![]() |
![]() |
|
Проблема с запросом по резервам УНФ ↓ (Волшебник 11.07.2025 10:47) | ☑ | ||
---|---|---|---|---|
0
Qzenko
11.07.25
✎
09:48
|
Добрый день
Хочу запросом получить актуальные резервы Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | РезервыТоваровОрганизаций.ЗаказПокупателя КАК Заказ, | ЗаказПокупателяТест.Дата КАК ДатаОтгрузки, | ЗаказПокупателяТест.Контрагент КАК Контрагент, | РезервыТоваровОрганизаций.Количество КАК Резерв |ИЗ | РегистрНакопления.РезервыТоваровОрганизаций КАК РезервыТоваровОрганизаций | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателяТест | ПО РезервыТоваровОрганизаций.ЗаказПокупателя = ЗаказПокупателяТест.Ссылка |ГДЕ | РезервыТоваровОрганизаций.Номенклатура = &Номенклатура | И ЗаказПокупателяТест.Ссылка <> &ЗаказПокупателяСсылка | И ЗаказПокупателяТест.ПометкаУдаления = ЛОЖЬ | И РезервыТоваровОрганизаций.Количество <> 0 | И РезервыТоваровОрганизаций.Организация.Наименование = &Организация | И ЗаказПокупателяТест.Проведен = ИСТИНА"; Но по итогу получаю историю по всем резервам, даже тем, которые уже давным давно были расходованы расходными) Подскажите пожалуйста, как мне это поправить? |
|||
1
maxab72
11.07.25
✎
09:51
|
(0) откройте для себя виртуальные таблицы остатков по регистрам.
|
|||
2
craxx
11.07.25
✎
09:51
|
(0) Запрос к основной таблице регистра? Серьезно?
|
|||
3
Qzenko
11.07.25
✎
09:53
|
(2) Да, серьёзней некуда. Думаете сюда зашёл шутки шутить?)
И всё же вопрос остаётся открытым: а как правильно? |
|||
4
Dzenn
гуру
11.07.25
✎
09:58
|
(3) — ответ в (1)
|
|||
5
Chameleon1980
11.07.25
✎
09:58
|
(3) в (1) ответ серьезный Вы наш
|
|||
6
Qzenko
11.07.25
✎
10:14
|
Что-то по типу такого?
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | РезервыТоваровОрганизацийОстатки.ЗаказПокупателя КАК Заказ, | ЗаказПокупателяТест.Дата КАК ДатаОтгрузки, | ЗаказПокупателяТест.Контрагент КАК Контрагент, | РезервыТоваровОрганизацийОстатки.КоличествоОстаток КАК Резерв |ИЗ | РегистрНакопления.РезервыТоваровОрганизаций.Остатки(&Период, Номенклатура = &Номенклатура) КАК РезервыТоваровОрганизацийОстатки | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателяТест | ПО РезервыТоваровОрганизацийОстатки.ЗаказПокупателя = ЗаказПокупателяТест.Ссылка |ГДЕ | ЗаказПокупателяТест.Ссылка <> &ЗаказПокупателяСсылка | И ЗаказПокупателяТест.ПометкаУдаления = ЛОЖЬ | И РезервыТоваровОрганизацийОстатки.КоличествоОстаток <> 0 | И ЗаказПокупателяТест.Проведен = ИСТИНА"; Запрос.УстановитьПараметр("Номенклатура", Номенклатура); Запрос.УстановитьПараметр("ЗаказПокупателяСсылка", ЗаказПокупателяСсылка); Запрос.УстановитьПараметр("Период", ТекущаяДата()); Увы, не работает - знаю что мой косяк. Но не могу понять в принципе как резервы работают, так как в интернете информацию по ним от меня кто-то прячет |
|||
7
Волшебник
11.07.25
✎
10:17
|
(6) Добавьте Запрос.Выполнить();
|
|||
8
maxab72
11.07.25
✎
10:21
|
(6) зачем Внутреннее соединение, если вы можете данные сразу извлечь из РезервыТоваровОрганизацийОстатки.ЗаказПокупателя ?
|
|||
9
Qzenko
11.07.25
✎
10:21
|
||||
10
Qzenko
11.07.25
✎
10:24
|
(8) кстати да, Вы правы. Создавал этот запрос вчера, в +31 С погоду - видимо напекло)))))
|
|||
11
Волшебник
11.07.25
✎
10:26
|
(9) Ты тут шутки пришёл шутить что ле?
|
|||
12
Qzenko
11.07.25
✎
10:29
|
(11) Ни в коем случае. На мой серьёзный вопрос в (7) вы ответили шуткой, причём панч был очень жирный. Поэтому ответил соответствующе, не более
1 : 1 |
|||
13
craxx
11.07.25
✎
10:31
|
(6) а) документ может быть не текущей датой
б) одной и той же датой может быть несколько документов. Это на подумать, архитектурный момент, так сказать |
|||
14
Волшебник
11.07.25
✎
10:38
|
Вот правильный запрос:
ВЫБРАТЬ Резервы.ЗаказПокупателя КАК Заказ, Резервы.ЗаказПокупателя.Дата КАК ДатаЗаказа, Резервы.ЗаказПокупателя.Контрагент КАК Контрагент, Резервы.КоличествоОстаток КАК Зарезервировано ИЗ РегистрНакопления.РезервыТоваровОрганизаций.Остатки(&Период, Номенклатура = &Номенклатура) КАК Резервы в коде: Запрос.УстановитьПараметр("Период", КонецДня(ТекущаяДата())+1); Запрос.УстановитьПараметр("Номенклатура", Номенклатура); тзРезервы = Запрос.Выполнить().Выгрузить(); |
|||
15
Qzenko
11.07.25
✎
10:43
|
(14) В таком случае вообще ничего не выводит, даже если есть актуальный резерв(
|
|||
16
Волшебник
11.07.25
✎
10:44
|
(15) Значит Вы врёте
|
|||
17
Qzenko
11.07.25
✎
10:46
|
(16) хотелось бы. Просто как сказал человек из (13) "а) документ может быть не текущей датой
б) одной и той же датой может быть несколько документов. Это на подумать, архитектурный момент, так сказать" |
|||
18
Волшебник
модератор
11.07.25
✎
10:48
|
Правила:
13. Чётко формулировать свою проблему, причём как просьбу помочь. Соблюдать классическую (аристотелеву) логику в рассуждениях. 14. Избегать тратить время профессионалов на незначительные задачи/ошибки. |
|||
19
Qzenko
11.07.25
✎
10:50
|
(18) Ладно, я понял: Вас задела моя фотокарточка собственного производства
Что ж поделать, пойду дальше сам тыкать |
|||
20
Волшебник
11.07.25
✎
11:02
|
(19) Давай, валяй
|
|||
21
Злопчинский
11.07.25
✎
13:30
|
я мало что понимаю в 8-ой структуре данных,
но мне кажется если Проведен = Истина, то ПометкаУдаления не может быть ИСТИНА и условие на =Ложь - лишнее..? Поясните, плиз. И ЗаказПокупателяТест.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателяТест.Проведен = ИСТИНА"; |
|||
22
Волшебник
11.07.25
✎
14:01
|
(21) Так и есть.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |