Имя: Пароль:
1C
 
количество в отчете
0 dvrk
 
04.04.24
11:41
Привет, подскажите пожалуйста, что я делаю не так, что количество больше, чем в перемещении?

ВЫБРАТЬ
    ПеремещениеТоваровТовары.Ссылка КАК Перемещение,
    СУММА(ПеремещениеТоваровТовары.Количество) КАК КоличествоВПеремещении,
    ПриходныйОрдерНаТоварыТовары.Ссылка КАК Приходник,
    РасходныйОрдерНаТоварыТовары.Ссылка КАК Расходник
ИЗ
    Документ.ПеремещениеТоваров.Товары КАК ПеремещениеТоваровТовары
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриходныйОрдерНаТовары.Товары КАК ПриходныйОрдерНаТоварыТовары
        ПО ПеремещениеТоваровТовары.Ссылка = ПриходныйОрдерНаТоварыТовары.Ссылка.ДокументПеремещения
            И (ПриходныйОрдерНаТоварыТовары.Ссылка.Проведен)
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РасходныйОрдерНаТовары.Товары КАК РасходныйОрдерНаТоварыТовары
        ПО ПеремещениеТоваровТовары.Ссылка = РасходныйОрдерНаТоварыТовары.Ссылка.ДокументПередачи
            И (РасходныйОрдерНаТоварыТовары.Ссылка.Проведен)
ГДЕ
    ПеремещениеТоваровТовары.Ссылка.Проведен
    И ПеремещениеТоваровТовары.Ссылка.Дата МЕЖДУ &Дата И &ДатаКонец
    И ПеремещениеТоваровТовары.Ссылка.СкладПолучатель = &СкладПолучатель
    И ПеремещениеТоваровТовары.Ссылка.СкладОтправитель = &СкладОтправитель

СГРУППИРОВАТЬ ПО
    ПеремещениеТоваровТовары.Ссылка,
    ПриходныйОрдерНаТоварыТовары.Ссылка,
    РасходныйОрдерНаТоварыТовары.Ссылка

УПОРЯДОЧИТЬ ПО
    ПеремещениеТоваровТовары.Ссылка.Номер
1 mikecool
 
04.04.24
11:43
ордеров больше, чем перемещений
2 mikecool
 
04.04.24
11:43
бери кол-во из ордера
3 dvrk
 
04.04.24
11:45
(2) так у меня есть записи такие

перемещение ордер ордер
а есть
перемещение и ордера не созданы и в них тоже кол-во должно быть, как тогда?
4 FIXXXL
 
04.04.24
12:18
(3) Ордер NULL - количество из перемещения
5 dvrk
 
04.04.24
12:18
(2) я вижу, что в записях, где нет оредров - количество нормальное из перемещения показывается, но вот где есть ордера - там непонятно что, как можно сделать чтобы просто кол-во из перемещений бралось? мне из ордеров ничего не нужно брать
6 dvrk
 
04.04.24
12:19
(4) ну а из какого ордера брать, если могут отличаться кол-во в расходнике и в приходнике и в перемещении
7 Ненавижу 1С
 
04.04.24
12:22
Количество умножается на число строк в расходном ордере и потом еще раз - в приходном
8 FIXXXL
 
04.04.24
12:22
(6) так а что ты хотеть? два ордера - вдвое больше строк  перемещения, а потом ты суммируешь количество по перемещению
9 dvrk
 
04.04.24
12:25
(7) (8) вот я и спрашиваю что я не так сделал, как правильно сделать чтобы просто кол-во из перемещения получить в этом запросе
10 dvrk
 
04.04.24
13:08
Подскажите, пожалуйста, что в моём запросе нужно поменять, что я не так сделал?
Мне нужно чтобы у меня был отчет вида:
СсылкаНаПеремещение - СсылкаНаРасходныйОрдер - СсылкаНаПриходныйоРдер - КоличествоИзПеремещения
11 FIXXXL
 
04.04.24
14:17
(10)
если ДВЕ СсылкаНаРасходныйОрдер будет как ты их хочешь отобразить в ОДНОЙ строке?
если это СКД есть там финты ушами
в запросе же: два ордера - две строки, убери группировку и суммирование (или МАКСИМУМ вместо СУММА) и будет одинаковое количество в ДВУХ строках
12 dvrk
 
04.04.24
14:19
(11) не понял? я хочу перемещение - расходник - приходник - количество из перемещения

какие 2 строки?
13 dvrk
 
04.04.24
14:29
(11) если я сделаю МАКСИМУМ, то он будет выводить строку из документа с бОльшим кол-вом, а мне нужно количество из документа по всем строкам
14 Лирик
 
04.04.24
14:30
(12) У тебя в базе есть
несколько документов "ПриходныйОрдерНаТовары" у которых реквизит "ДокументПеремещения" равен одному и тому же перемещению
или
несколько документов РасходныйОрдерНаТовары  у которых реквизит "ДокументПередачи" равен одному и тому же перемещению
15 dvrk
 
04.04.24
14:30
То есть Перемещение-Расходник-Приходник-100

В перемещении Строка1: кол-во 50, Строка2: кол-во 40, Строка3, Кол-во 10, Всего:100
а что в приходнике и расходнике мне всё равно
16 dvrk
 
04.04.24
14:31
(14) есть, но проведен из них только 1
17 Лирик
 
04.04.24
14:31
(13) То, чего ты добиваешься все поняли )
18 dvrk
 
04.04.24
14:35
не сразу понял о чем речь, да, есть такие случае, но, проведен из этих ордеров только 1, в условии я указал Проведен
19 dvrk
 
04.04.24
14:41
Да и сейчас посмотрел, Есть перемещение, там 1 расходник и 1 приходник, в ТЧ перемещения:
Колво 1
Колво 1

в итоге пишет 8
20 FIXXXL
 
04.04.24
17:04
(15) сделай временную таблицу Перемещение - СУММА(Количество)
и уже к ней цепляй ордера
21 dvrk
 
04.04.24
17:51
(20) спасибо, завтра попробую
22 dvrk
 
05.04.24
09:50
А может быть можно как то через КритерииОтбора - СвязанныеДокументы(УТ 10.3) вывести просто под перемещением расходник и приходник?
23 Лирик
 
05.04.24
09:58
Балбесы и мы и ТС:

ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриходныйОрдерНаТовары.Товары КАК ПриходныйОрдерНаТоварыТовары
        ПО ПеремещениеТоваровТовары.Ссылка = ПриходныйОрдерНаТовары.ДокументПеремещения
            И (ПриходныйОрдерНаТовары.Проведен)
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РасходныйОрдерНаТовары КАК РасходныйОрдерНаТовары
        ПО ПеремещениеТоваровТовары.Ссылка = РасходныйОрдерНаТовары.ДокументПередачи
            И (РасходныйОрдерНаТовары.Проведен)

Соединяет то он тоже с табличной частью, а надо с документом
24 Лирик
 
05.04.24
10:01
Сколько строк в ордерах на столько и множит
25 FIXXXL
 
05.04.24
10:27
(24) поэтому и (20)
26 dvrk
 
05.04.24
10:29
(25) (24) спасибо большое, получилось
27 FIXXXL
 
05.04.24
10:29
(22) как то можно, но сейчас и не вспомню механизм связанных в УТ10, там вроде дерево запросом собиралось
смотри код, делай по аналогии
28 Лирик
 
05.04.24
10:35
(20) (25) Не по этому, сколько не сворачивай сумму перемещений во временной таблице если соединять с ТЧ ордеров будет множить либо строки либо сумму в зависимости от группировок запроса с соединением.
29 СвинТуз
 
05.04.24
10:52
(0)
Ужасно
)))
30 СвинТуз
 
05.04.24
10:54
(0)
А Вы знаете что по признаку проведения таблицы не индексируются?

Все так мило.
31 СвинТуз
 
05.04.24
10:57
(0)
Обычно бывает критерий отбора типа "Связанные документы"

Вообще нужно в конфигурацию вникать.
32 FIXXXL
 
05.04.24
11:12
(28) согласен, но там РАЗЛИЧНЫЕ спасут в финальном запросе
ТС суммы же хочет только по перемещению, и божится, что ордер только один всегда-всегда