powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Как получить данные за несколько периодов?
8 сообщений из 8, страница 1 из 1
Как получить данные за несколько периодов?
    #39308227
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток. Подскажите, пожалуйста, как выбрать продажи за несколько периодов? УТ10.3 1С8.2

Пытаюсь объединением:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
ВЫБРАТЬ
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя КАК МенеджерПокупателя,
    ПродажиОбороты.Контрагент.Регион КАК Регион,
    ПродажиОбороты.Контрагент КАК Контрагент,
    ПродажиОбороты.СтоимостьРеглОборот КАК Продажи1,
    0 КАК Продажи2
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода1, &КонецПериода1, , Контрагент.Регион В ИЕРАРХИИ (&Регион)) КАК ПродажиОбороты
 
ОБЪЕДИНИТЬ ВСЕ
 
ВЫБРАТЬ
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя,
    ПродажиОбороты.Контрагент.Регион,
    ПродажиОбороты.Контрагент,
    0,
    ПродажиОбороты.СтоимостьРеглОборот
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода2, &КонецПериода2, , Контрагент.Регион В ИЕРАРХИИ (&Регион)) КАК ПродажиОбороты
 
УПОРЯДОЧИТЬ ПО
    Регион
ИТОГИ
    СУММА(Продажи1),
    СУММА(Продажи2)
ПО
    ОБЩИЕ,
    МенеджерПокупателя,
    Регион


Но в этом случае задваивает контрагентов, если у них были продажи в обоих периодах. Подскажите, пожалуйста, что не так делаю?
...
Рейтинг: 0 / 0
Как получить данные за несколько периодов?
    #39308250
Zerro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
РегистрНакопления.Продажи.Обороты(&НачалоПериода2, &КонецПериода2, День, )

так будет по дням. можно месяц написать.. или сразу в скд делать - период будет измерением
...
Рейтинг: 0 / 0
Как получить данные за несколько периодов?
    #39309065
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Убери это из запроса
LittleLoya
Код: sql
1.
2.
3.
4.
5.
6.
7.
ИТОГИ
    СУММА(Продажи1),
    СУММА(Продажи2)
ПО
    ОБЩИЕ,
    МенеджерПокупателя,
    Регион


А сам запрос с объединением помести во вложенный или во временную таблицу, потом сверни.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
ВЫБРАТЬ разрешенные
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя КАК МенеджерПокупателя,
    ПродажиОбороты.Контрагент.Регион КАК Регион,
    ПродажиОбороты.Контрагент КАК Контрагент,
    ПродажиОбороты.СтоимостьРеглОборот КАК Продажи1,
    0 КАК Продажи2
поместить втПродажи
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода1, &КонецПериода1, , Контрагент.Регион В ИЕРАРХИИ (&Регион)) КАК ПродажиОбороты
 
ОБЪЕДИНИТЬ ВСЕ
 
ВЫБРАТЬ
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя,
    ПродажиОбороты.Контрагент.Регион,
    ПродажиОбороты.Контрагент,
    0,
    ПродажиОбороты.СтоимостьРеглОборот
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода2, &КонецПериода2, , Контрагент.Регион В ИЕРАРХИИ (&Регион)) КАК ПродажиОбороты
;
выбрать МенеджерПокупателя, Регион, Контрагент, сумма(Продажи1), сумма(Продажи2) из втПродажи сгруппировать по МенеджерПокупателя, Регион, Контрагент
...
Рейтинг: 0 / 0
Как получить данные за несколько периодов?
    #39309076
Zerro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Лазурко,

ты знаешь сколько периодов нужно? а если нет? программно мегазапрос делать? бред
есть возможность делать с измерением по периодам -делаем.

ВЫБРАТЬ
ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя КАК МенеджерПокупателя,
ПродажиОбороты.Контрагент.Регион КАК Регион,
ПродажиОбороты.Контрагент КАК Контрагент,
ПродажиОбороты.СтоимостьРеглОборот КАК Продажи1,
0 КАК Продажи2
ИЗ
РегистрНакопления.Продажи.Обороты(&НачалоПериода1, &КонецПериода88, Месяц , Контрагент.Регион В ИЕРАРХИИ (&Регион)) КАК ПродажиОбороты


нет - берем начальные остатки и умножаем на движения за период ( их ещё сами с собой - чтобы получился нарастающий итог) и будет полная обработка хоть по документу хоть по периоду.
...
Рейтинг: 0 / 0
Как получить данные за несколько периодов?
    #39309178
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zerro, потише на поворотах. Или это твинк ТС?

Мне видно в исходном запросе, что два периода, два запроса в объединении.
Мы ведь не знаем всей задачи, что это берется - сравнить продажи за этот год с предыдущим годом или этот месяц с таким же месяцем в прошлом году или поквартально сравнить этот квартал с таким же кварталом прошлого года.
В условии не сказано, что периодов может быть больше двух, и не указана периодичность МЕСЯЦ.

Если автор уточнит, что периодов может быть множество и они должны быть разбиты по равным интервалам с периодичностью МЕСЯЦ, или наоборот, периоды будут заданы произвольно и каждый период может быть и не привязан к стандартным границам периодов МЕСЯЦ. ДЕКАДА, ДЕНЬ и т.д. то и будем плясать от этого.

В торговле одеждами периоды - сезоны и вовсе не привязаны к календарным кварталам, а условным "временам года" и т.д. и т.п.
...
Рейтинг: 0 / 0
Как получить данные за несколько периодов?
    #39309186
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoyaНо в этом случае задваивает контрагентов, если у них были продажи в обоих периодах. Подскажите, пожалуйста, что не так делаю?Задваивает - надо сгруппировать, аналог действия с таблицей значений Свернуть.
В моем запросе это "сгруппировать по" в блоке
Код: sql
1.
2.
3.
4.
;
выбрать МенеджерПокупателя, Регион, Контрагент, сумма(Продажи1), сумма(Продажи2)
из втПродажи
сгруппировать по МенеджерПокупателя, Регион, Контрагент


Да и туда же можно и добавить итоги, получится так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
ВЫБРАТЬ разрешенные
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя КАК МенеджерПокупателя,
    ПродажиОбороты.Контрагент.Регион КАК Регион,
    ПродажиОбороты.Контрагент КАК Контрагент,
    ПродажиОбороты.СтоимостьРеглОборот КАК Продажи1,
    0 КАК Продажи2
поместить втПродажи
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода1, &КонецПериода1, , Контрагент.Регион В ИЕРАРХИИ (&Регион)) КАК ПродажиОбороты
 
ОБЪЕДИНИТЬ ВСЕ
 
ВЫБРАТЬ
    ПродажиОбороты.Контрагент.ОсновнойМенеджерПокупателя,
    ПродажиОбороты.Контрагент.Регион,
    ПродажиОбороты.Контрагент,
    0,
    ПродажиОбороты.СтоимостьРеглОборот
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода2, &КонецПериода2, , Контрагент.Регион В ИЕРАРХИИ (&Регион)) КАК ПродажиОбороты
;
выбрать МенеджерПокупателя, Регион, Контрагент, сумма(Продажи1), сумма(Продажи2)
из втПродажи
сгруппировать по МенеджерПокупателя, Регион, Контрагент
ИТОГИ
    СУММА(Продажи1),
    СУММА(Продажи2)
ПО
    ОБЩИЕ,
    МенеджерПокупателя,
    Регион

Пишу "на коленке", без доступа к 1С, поэтому могут быть неточности.
...
Рейтинг: 0 / 0
Как получить данные за несколько периодов?
    #39309312
Zerro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир ЛазуркоZerro, потише на поворотах. Или это твинк ТС?

Мне видно в исходном запросе, что два периода, два запроса в объединении.
Мы ведь не знаем всей задачи, что это берется - сравнить продажи за этот год с предыдущим годом или этот месяц с таким же месяцем в прошлом году или поквартально сравнить этот квартал с таким же кварталом прошлого года.
В условии не сказано, что периодов может быть больше двух, и не указана периодичность МЕСЯЦ.

Если автор уточнит, что периодов может быть множество и они должны быть разбиты по равным интервалам с периодичностью МЕСЯЦ, или наоборот, периоды будут заданы произвольно и каждый период может быть и не привязан к стандартным границам периодов МЕСЯЦ. ДЕКАДА, ДЕНЬ и т.д. то и будем плясать от этого.

В торговле одеждами периоды - сезоны и вовсе не привязаны к календарным кварталам, а условным "временам года" и т.д. и т.п.
)твинк с 9000 сообщениями?
Если два разных периода то да после сложения надо сгруппировать
...
Рейтинг: 0 / 0
Как получить данные за несколько периодов?
    #39309450
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZerroЕсли два разных периода то да после сложения надо сгруппироватьДумаю, это и есть решение проблемы ТС.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Как получить данные за несколько периодов?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]