Имя: Пароль:
1C
1C 7.7
v7: Расчет остатков в ВТ на дату документа из запроса.
0 Eeakie
 
06.06.14
00:07
Такое дело: получаю запросом из строк документа товар и нужны остатки по регистру на момент документа.

|select
|   Документ,
|   Товар,
|   Остаток
|from
|   СтрокиДокумента
|left join
|   Регистр(<?>)

Как в границе расчета указать, что расчет остатка нужен на Документ, полученный из СтрокиДокумент.iddoc?
1 Eeakie
 
06.06.14
00:09
Я так понимаю, что сделать так нельзя. Есть ли выход? Или обход?
2 azernot
 
06.06.14
01:12
Это точно 7.7?
3 GreyK
 
06.06.14
02:11
(2) Не соиневайся. "Расчет остатков в ВТ" = остаткам сигарет в пачке, а курят только семёрошники :)
4 vcv
 
06.06.14
06:14
Посмотри http://www.script-coding.com/Direct_queries.html
Там, вроде, все основные вопросы разобраны.
5 ADirks
 
06.06.14
07:44
(0) остатки надо на один какой-то документ, или их куча будет в результате?
6 Ёпрст
 
06.06.14
09:07
(0)ну пихай позицию дока.. + смотря какие останки нужны еще - НА доккумент или По документ - отсюда разную позицию пихать надо..
усё.
7 Ёпрст
 
06.06.14
09:07
ну и + 5.. тебе остаток на каждый документ запроса что-ле нужен.. или.. чего вообще ?
:)
8 Eeakie
 
08.06.14
23:24
(5), (7) Куча будет в результате.

Есть товар А, который был задействован в 5 документах за год.
Нужно получить в разрезе:
Документ   Товар   Остаток на момент документа
9 Eeakie
 
08.06.14
23:30
(7) Честно говоря, вопрос в том, как получить позицию документа из результатов и пихнуть в границу расчета.
10 Eeakie
 
08.06.14
23:55
+(9) Остатки нужны НА документ.
11 viktor_vv
 
09.06.14
06:39
(9) Приджойни таблицу журнала _1Sjourn по IDDOC отдуа бери Date_Time_IDDOC , подзапрос по остаткам в Select вынеси и туда параметры передавай, только следи, чтобы возвращал одну строку и одно поле. Правда это будет ПО скорее всего.
12 Ёпрст
 
09.06.14
08:40
(9) выкинуть вт, написать запрос к останкам "руками".
13 trad
 
09.06.14
09:06
(12) + либо подсмотреть текст подзапроса после парсинга ВТ по одной, не актуалной, позиции. Применить этот подзапрос подставив в трех местах свои выражения.
14 Eeakie
 
09.06.14
14:29
(11) Да, не прокатило :(
(12) А можно поподробнее?
15 Ёпрст
 
09.06.14
14:33
(14)
получаешь останки на начальную дату запроса, потом бегаешь по табличке движений регистра  и имеешь документ и "останки" на него, прибавляя приход и вычитая расход из начального остатка.
Группируешь по документу и др. нужным измерениям. Усё.
16 Ёпрст
 
09.06.14
14:33
+15 всё в одном запросе через юнион
17 Eeakie
 
09.06.14
14:34
(15) Пробую. Спасибо.
18 Eeakie
 
09.06.14
15:06
Кстати, через ВТ можно как-нибудь получить документ, сделавший движение?
19 Eeakie
 
09.06.14
15:56
+(18) Видимо тупо прозвучало. Имеется в виду, что надо поставить фильтр. Чтобы в ВТ попадали только движения по конкретному документу, выбираемому на форме.
20 Ёпрст
 
09.06.14
16:05
Смотря, что за ВТ.. если ОстанкиИОбороты или Обороты - то можно
21 Eeakie
 
09.06.14
16:07
(20) Вот я сейчас прочитал свой вопрос и подумал о том же. Вообще-то сейчас реализовано через ВТ Остатки. Похоже, надо переделать в ОстаткиИОбороты.
22 Eeakie
 
09.06.14
17:14
Сдаюсь.
(20) Как подсунуть конкретный документ в ОстаткиИОбороты?
23 Ёпрст
 
09.06.14
17:43
(22) http://www.1cpp.ru/docum/html/ODBC.html#id36
периодичность документ, на выходе в вере подставить док.
24 Eeakie
 
09.06.14
17:48
(23) Рег.iddoc = :МойДок?
25 Eeakie
 
09.06.14
17:50
или right(datetimeiddoc, 9)?
26 Eeakie
 
09.06.14
17:55
|select
    |    *
    |from
    |    $РегистрОстаткиОбороты.ПодготовкаЗаявок(,, Документ) as ПЗ
    |where
    |    ПЗ.date_time_iddoc = :ВыбранныйДокумент";

Так?
27 Ёпрст
 
09.06.14
18:04
как в 25 или втыкать параметром с модификатором
28 Mt111
 
11.06.14
19:03
вот мой отчет с ТиС 7.7 тут показывает остатки на и движение на конкретную дату http://www.ex.ua/556748322876