Имя: Пароль:
1C
1С v8
(подсекция: ялох!) не получается связать две вт по дате
,
0 Cthulhu
 
14.12.20
20:38
бред какой-то. вдруг.
1) вт ТоварыВПутиПоПериодам: Номенклатура (спр), Период (дач.иесяца помесячно) и Оборот, месяцы в пределах каждой номенклатуры уникальные и с пропусками(!)
2) вт ДатыПоМесяцам: ДатаНачала и ДатаКонца, месяцы без пропусков.
как дополнить вт ТоварыВПутиПоПериодам нулевыми строками за пропущенные (по каждой номенклатуре) месяцы?
что-то или в голове переклинило (что вероятнее), или левое соединение сломалось в 1с (что очень маловероятнее)
заранееблагодаренивсётакоэ.
1 Ёпрст
 
14.12.20
20:39
cross join жешь..
2 Ёпрст
 
14.12.20
20:40
или..обход итогов группировки со словом все.. там оно само дополнит
3 Ёпрст
 
14.12.20
20:41
или в скд..там тоже можно достроить
4 Cthulhu
 
14.12.20
20:43
не в скд, в запросе строго. с обходами я и сам, мне в запросе надо в вт-шту запихнуть подому что дальше ее вязать с еще одной придется...
кросс-джоин - это как-то выплясывать надо, я правильно понимаю? а хоть например (денные выше)?..
5 Ёпрст
 
14.12.20
20:45
(4) в 1с-ном запросе кросс джоин - это зпт:

выбрать табличка1.а, табличка2.б из табличка1 как табличка1, табличка2 как табличка 2
6 Cthulhu
 
14.12.20
20:58
(5) и?..
(через запятую получаются набор всех комбинаций всех записей - это немного совсем не то)
на примере:
ТоварыВПутиПоПериодам:
    Товар1, 01.01.2020, 50
    Товар1, 01.03.2020, 150
ДатыПоМесяцам:
    01.01.2020, 31.01.2020
    01.02.2020, 29.02.2020
    01.03.2020, 31.03.2020
нужен результат:
    Товар1, 01.01.2020, 50
    Товар1, 01.02.2020, 0
    Товар1, 01.03.2020, 150
7 Ёпрст
 
14.12.20
21:03
(6) ну так и получи табличку всех дат и соедини со своей номенклатурой, получишь все даты и всю номенклатуру
8 Ёпрст
 
14.12.20
21:03
Хотя проще..через обход группировки
9 Ёпрст
 
14.12.20
21:03
и итоги
10 Cthulhu
 
14.12.20
21:10
в запросе получить такую вт - через обход группировки? в запросе?
11 Cthulhu
 
14.12.20
21:16
во. вроде получилось. оно, брат Ёпрст?
ВЫБРАТЬ
    ДатыПоМесяцам.ДатаНачала КАК НачалоПериода,
    ТоварыВПутиПоПериодам.Номенклатура,
    СУММА(ВЫБОР
            КОГДА НАЧАЛОПЕРИОДА(ТоварыВПутиПоПериодам.Период, МЕСЯЦ) = НАЧАЛОПЕРИОДА(ДатыПоМесяцам.ДатаНачала, МЕСЯЦ)
                ТОГДА ТоварыВПутиПоПериодам.рОборот
            ИНАЧЕ 0
        КОНЕЦ) КАК рОборот,
ИЗ
    ДатыПоМесяцам, ТоварыВПутиПоПериодам

СГРУППИРОВАТЬ ПО
    ДатыПоМесяцам.ДатаНачала,
    ТоварыВПутиПоПериодам.Номенклатура

УПОРЯДОЧИТЬ ПО
    ТоварыВПутиПоПериодам.Номенклатура,
    НачалоПериода
12 Ёпрст
 
14.12.20
21:39
(11) ага
13 Cthulhu
 
14.12.20
22:32
спасибо, люди.
и отдельное спасибище - Ёпрст.
Программист всегда исправляет последнюю ошибку.