![]() |
|
Запросом получаю товары из ТЧ документа, нужно узнать их остатки на дату док. | ☑ | ||
---|---|---|---|---|
0
altaykniga
24.04.17
✎
19:57
|
Добрый вечер, уважаемые специалисты! Не пинайте сильно, если вопрос мой изначально задан некорректно...
Вот текст запроса:
Т.е. запросом получаю товары из ТЧ поступлениеТоваров. Нужно узнать остатки этих товаров по КТ счета 41 на дату ПоступленияТоваров в этом же запросе. Хочу через левое соединение сделать связь с «РегистрБухгалтерии.Хозрасчетный.Остатки». В качестве параметра в регистрБухгалтерии нужно передать дату из &ТекущийОбъект. в запрос передается только один параметр &ТекущийОбъект. Параметр &ТекущийОбъект.Дата вызывает ошибку... Передать в запрос параметр &ДатаПоступления не представляется возможным |
|||
1
AlvlSpb
24.04.17
✎
20:27
|
В запрос:
РегистрБухгалтерииХозрасчетныйОстатки.Остаток КАК Остаток ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&Период,)КАК РегистрБухгалтерииХозрасчетныйОстатки ПО ПоступлениеТоваровУслугТовары.Номенклатура = РегистрБухгалтерииХозрасчетныйОстатки.Номенклатура Запрос.УстановитьПараметр("ТекущийОбъект", Объект.Ссылка); Запрос.УстановитьПараметр("Период",Объект.Дата); |
|||
2
altaykniga
24.04.17
✎
20:29
|
(1) условие такое: в запросе будет доступен только один параметр - &ТекущийОбъект
|
|||
3
Звездец
24.04.17
✎
20:30
|
и запрос лучше не к документу, а регистру
|
|||
4
altaykniga
24.04.17
✎
20:33
|
у меня СКД. В СКД доступен только один параметр - &ТекущийОбъект(документ ПоступлениеТоваров).
Запрос/пакет запросов нужно построить таким образом, чтобы в параметр &Период передать &ТекущийОбъект.Дата |
|||
5
AlvlSpb
24.04.17
✎
20:34
|
(2) Что-то вы не разобрались с условиями задачи. не может быть один параметр В вашем запросе параметр &ТекущийОбъект - это ссылка, а на дату - это, понятно, дата.
Может в условии: в параметрах обращаться только к ТекущемуОбъекту? Т.е. не как к параметру, а как к объекту? |
|||
6
altaykniga
24.04.17
✎
20:37
|
пытался передать дату документа поступления во временную таблицу, а во втором запросе использовать дату из временной таблицы... Но как значение даты из временной таблицы передать в параметр второго запроса?
|
|||
7
altaykniga
24.04.17
✎
21:00
|
(0) еще раз опишу задачу.
В конструкторе СКД доступен только один параметр - &ТекущийОбъект. Тип параметра = ДокументСсылка.ПоступлениеТоваровУслуг. Необходимо запросом выбрать из этого документа товары, которые имеют только положительный остаток по кредиту счета 41.01 на дату этого документа-2дня. Как это сделать? |
|||
8
Pahomich
24.04.17
✎
21:05
|
(7) Кто не дает ввести второй параметр &Дата равный дате текущего объекта?
|
|||
9
altaykniga
24.04.17
✎
21:12
|
(8) в базе данных внедрен специальный механизм проверки различных объектов при записи, проведении и т.д. и т.п. Данную проверку можно реализовать сложным запросом, который строиться интерактивно с помощью конструктора СКД. В качестве параметра в СКД передается только лишь проверяемых объект, т.е. &ТекущийОбъект. Вот от этого параметра и приходится плясать
|
|||
10
Pahomich
24.04.17
✎
21:17
|
(9) Если у тебя проверен ТекущийОбъект, то его дату проверять уже не надо!
|
|||
11
altaykniga
24.04.17
✎
21:20
|
(10) мне надо проверить, есть ли отрицательные остатки на дату этого документа
|
|||
12
b_ru
24.04.17
✎
21:48
|
Бред какой-то написан сивой кобылы про один параметр. Но если это вдруг не бред, а какая-то хитро-непонятная фича, тогда можно сделать запрос не к РегистрБухгалтерии.Хозрасчетный.Остатки, а к РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто по Дата <= &ТекущийОбъект.Дата
|
|||
13
AlvlSpb
24.04.17
✎
22:07
|
(7) Вот елы палы. Сразу надо писать, что СКД. Тема же про запрос. Тогда задача реализуема. Попробую описать. Или проще сразу запрос (меньше писать ))) )
ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура, РегистрБухгалтерииХозрасчетныйОстатки.Остаток КАК Остаток ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&Период,)КАК РегистрБухгалтерииХозрасчетныйОстатки ПО ПоступлениеТоваровУслугТовары.Номенклатура = РегистрБухгалтерииХозрасчетныйОстатки.Номенклатура ГДЕ ПоступлениеТоваровУслугТовары.Ссылка = &ТекущийОбъект {ГДЕ ПоступлениеТоваровУслугТовары.Ссылка.* КАК ТекущийОбъект} Запрос пишу без конструктора могу в именах полей ошибиться, поправите исходя из своей конфигурации. На закладке Параметры СКД в Поле параметра с типом Дата в выражении пишите &ТекущийОбъект.Дата В настройках СКД ТекущийОбъект выносите как элемент пользовательских настроек |
|||
14
AlvlSpb
24.04.17
✎
22:13
|
Добавлю. Параметр Дата обязательно поставьте галку на ограничение (он не дожен быть в полях настройки параметр, т.к. предопределен, иначе не заработает)
|
|||
15
AlvlSpb
24.04.17
✎
22:26
|
(11) Если цель проверить остатки на дату документа, тогда в Выражении (на всякий) &ТекущийОбъект.Дата-1 (уберем секунду, чтобы точно знать, что на момент списания эти товары были)
А в запрос я бы ввел более информативнте поле РазностьОстатков (ПоступлениеТоваровУслугТовары.Количество - РегистрБухгалтерииХозрасчетныйОстатки.Остаток) КАК РазностьОсттатков Остаток "-" есть отрицательный остаток |
|||
16
AlvlSpb
25.04.17
✎
00:19
|
(13) Прошу прощения. Проверил. НЕ РАБОТАЕТ. бред
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |