Имя: Пароль:
1C
1С v8
ЗАПРОС ОБЪЕДИНИТЬ ВСЕ почему не сворачиваются строки?
0 Ar-Bus
 
29.10.13
15:59
Привет! Подскажите, что я не так написал в запросе?
идет выборка по двум  разным регистрам, измерение одно в обоих регистрах - СтатьяДвиженияДенег. В результате запроса все группируется , итоги считаются, но... Строки с одинаковым названием СтатейДвиженияДенег(но из разных регистров-источников) не объединяются, а идут друг за другом разными строками. В чем может быть дело? Разные типы у этих измерений? Так проверял, одинаковые типы

ВЫБРАТЬ
    СтатьяДвиженияДенег КАК СтатьяДвиженияДенег,
    СтатьяДвиженияДенег.Код,
    Сумма(Сумма) КАК СуммаБюджет,
    Сумма(0 ) КАК СуммаФакт
ИЗ
    РегистрНакопления.БюджетДвиженияДенег
ГДЕ
    Месяц(Период)=МЕСЯЦ(&ДатаОтчета) И Сумма<0
СГРУППИРОВАТЬ ПО
    СтатьяДвиженияДенег
ОБЪЕДИНИТЬ ВСЕ
    
ВЫБРАТЬ
    СубконтоКт2 КАК СтатьяДвиженияДенег,
    СубконтоКт2.Код,
    Сумма(0) КАК СуммаБюджет,
    Сумма(Сумма) КАК СуммаФакт
ИЗ
    РегистрБухгалтерии.Управленческий.ДвиженияССубконто
ГДЕ
    СчетКт=ЗНАЧЕНИЕ(ПланСчетов.Внутренний.Банк)
    И Месяц(Период)=МЕСЯЦ(&ДатаОтчета)
СГРУППИРОВАТЬ ПО
    СубконтоКт2

УПОРЯДОЧИТЬ ПО
    СтатьяДвиженияДенег.КОД
    ИТОГИ
        Сумма(СуммаБюджет),
        Сумма(СуммаФакт)
     ПО
        СтатьяДвиженияДенег ТОЛЬКО ИЕРАРХИЯ
1 Зойч
 
29.10.13
16:00
а почему должны?
2 GROOVY
 
29.10.13
16:00
Сначала объедини, а потом уже группируй.
3 exwill
 
29.10.13
16:01
А как они должны были по-твоему объединится? В полях СуммаБюджет и СуммаФакт что должно было бы быть?
4 exwill
 
29.10.13
16:04
+(3) Да и ОБЪЕДИНИТЬ ВСЕ в отличие от просто ОБЪЕДИНИТЬ никогда ничего не сворачивает.
5 Bober
 
29.10.13
16:05
(0) оберни все в "ВЫБРАТЬ * ИЗ () КАК Данные "
и вот уже здесь группируй
6 GROOVY
 
29.10.13
16:05
Просто ОБЪЕДИНИТЬ тоже ничего не сворачивает, а просто игнорирует одинаковые записи.
7 Ar-Bus
 
29.10.13
16:06
(2) а как сгруппировать после объединения?
пишу вот так:

ВЫБРАТЬ
    СтатьяДвиженияДенег КАК СтатьяДвиженияДенег1,
    СтатьяДвиженияДенег.Код,
    Сумма(Сумма) КАК СуммаБюджет,
    Сумма(0 ) КАК СуммаФакт
ИЗ
    РегистрНакопления.БюджетДвиженияДенег
ГДЕ
    Месяц(Период)=МЕСЯЦ(&ДатаОтчета) И Сумма<0
ОБЪЕДИНИТЬ ВСЕ
    
ВЫБРАТЬ
    СубконтоКт2 КАК СтатьяДвиженияДенег1,
    СубконтоКт2.Код,
    Сумма(0) КАК СуммаБюджет,
    Сумма(Сумма) КАК СуммаФакт
ИЗ
    РегистрБухгалтерии.Управленческий.ДвиженияССубконто
ГДЕ
    СчетКт=ЗНАЧЕНИЕ(ПланСчетов.Внутренний.Банк)
    И Месяц(Период)=МЕСЯЦ(&ДатаОтчета)

СГРУППИРОВАТЬ ПО
    СтатьяДвиженияДенег1

УПОРЯДОЧИТЬ ПО
    СтатьяДвиженияДенег.КОД
    ИТОГИ
        Сумма(СуммаБюджет),
        Сумма(СуммаФакт)
     ПО
        СтатьяДвиженияДенег ТОЛЬКО ИЕРАРХИЯ

при выполнении запроса выходит ошибка
"Поле не найдено "СтатьяДвиженияДенег1"
8 exwill
 
29.10.13
16:07
(7) Нужен вложенный запрос или временная таблица.
9 sapphire
 
29.10.13
16:07
(7) а как сгруппировать после объединения?
В самой фразе и содержится ответ :)
10 sapphire
 
29.10.13
16:09
ВЫБРАТЬ
    СтатьяДвиженияДенег1,
    Код,
    СуммаБюджет,
    СуммаФакт
ИЗ
(
ВЫБРАТЬ
    СтатьяДвиженияДенег КАК СтатьяДвиженияДенег1,
    СтатьяДвиженияДенег.Код,
    Сумма(Сумма) КАК СуммаБюджет,
    Сумма(0 ) КАК СуммаФакт
ИЗ
    РегистрНакопления.БюджетДвиженияДенег
ГДЕ
    Месяц(Период)=МЕСЯЦ(&ДатаОтчета) И Сумма<0
ОБЪЕДИНИТЬ ВСЕ
    
ВЫБРАТЬ
    СубконтоКт2 КАК СтатьяДвиженияДенег1,
    СубконтоКт2.Код,
    Сумма(0) КАК СуммаБюджет,
    Сумма(Сумма) КАК СуммаФакт
ИЗ
    РегистрБухгалтерии.Управленческий.ДвиженияССубконто
ГДЕ
    СчетКт=ЗНАЧЕНИЕ(ПланСчетов.Внутренний.Банк)
    И Месяц(Период)=МЕСЯЦ(&ДатаОтчета)

СГРУППИРОВАТЬ ПО
    СтатьяДвиженияДенег1
) ЗапросОбъекдинения

УПОРЯДОЧИТЬ ПО
    КОД
    ИТОГИ
        Сумма(СуммаБюджет),
        Сумма(СуммаФакт)
     ПО
        СтатьяДвиженияДенег1 ТОЛЬКО ИЕРАРХИЯ
11 Ar-Bus
 
29.10.13
16:10
т.е. надо запрос1 объединить с запрос2 +еще сделать выборку из результата этого объединения с последующей группировкой?
12 Ёпрст
 
29.10.13
16:10
(10) хрень какая то
13 Ёпрст
 
29.10.13
16:13
на вот, занимайся

|Выбрать
|Табличка.СтатьяДвиженияДенег,
|Табличка.Код,
|Сумма (СуммаБюджет) как СуммаБюджет,
|Сумма (СуммаФакт) как СуммаФакт
|ИЗ (
|ВЫБРАТЬ
|СтатьяДвиженияДенег КАК СтатьяДвиженияДенег,
|СтатьяДвиженияДенег.Код как Код,
|Сумма КАК СуммаБюджет,
|0 КАК СуммаФакт
|ИЗ
|РегистрНакопления.БюджетДвиженияДенег
|ГДЕ
|Месяц(Период)=МЕСЯЦ(&ДатаОтчета) И Сумма<0
|ОБЪЕДИНИТЬ ВСЕ

|ВЫБРАТЬ
|СубконтоКт2,
|СубконтоКт2.Код,
|0,
|Сумма
|ИЗ
|РегистрБухгалтерии.Управленческий.ДвиженияССубконто
|ГДЕ
|СчетКт=ЗНАЧЕНИЕ(ПланСчетов.Внутренний.Банк)
|И Месяц(Период)=МЕСЯЦ(&ДатаОтчета)
|)Как Табличка
|СГРУППИРОВАТЬ ПО Табличка.СтатьяДвиженияДенег,Табличка.Код
|
|УПОРЯДОЧИТЬ ПО
|Табличка.КОД
|ИТОГИ
|Сумма(СуммаБюджет),
|Сумма(СуммаФакт)
|ПО
|СтатьяДвиженияДенег ТОЛЬКО ИЕРАРХИЯ
14 Ar-Bus
 
29.10.13
16:19
(13) Спасибо большое, редко встретишь человека, который реально поможет
15 Ёпрст
 
29.10.13
16:22
(14) на саом деле, таких тут очень много
16 Ar-Bus
 
29.10.13
16:23
(15) а как в вашем запросе, который вы мне написали, сделать так, чтобы код Групп выходил? Ну т.е. нужно упорядочивание и по кодам групп элементов.
17 Ёпрст
 
29.10.13
16:27
дык она и так упорядочена будет по коду..
18 Ar-Bus
 
29.10.13
16:28
(17) выполнил запрос в консоли запросов, код групп - пустой
19 Ar-Bus
 
29.10.13
16:29
(18) т.е. код групп = null, а коды элементов присутствуют
20 Ёпрст
 
29.10.13
16:30
нну либо в итоги их добавить, либо через точку код получить :

|Табличка.СтатьяДвиженияДенег,
//|Табличка.Код,
|Табличка.СтатьяДвиженияДенег.Код Как Код,

тогда, нужно во вложенном запросе тоже код убрать
21 Ёпрст
 
29.10.13
16:30
(19) коды есть в детальных записях при обходе группировки