| 
    
            
         
         | 
    
    
  | 
Вопрос по диаграмме (сравнение двух периодов) | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Gsof    
     02.02.22 
            ✎
    15:00 
 | 
         
        Добрый день, подскажите форумчане пожалуйста.
 
        Делаю простой запрос который должен по дням сравнить продажи контрагента декабря 2021 и января 2022 , в прилучившейся таблице в консольке все ОК, есть все числа. Далее делаю в отчет на СКД диаграмму, в качестве точек указываю “ПериодДень” в сериях “АналитикаУчетаПоПартнерамПартнер” в выбранных поляк “КолДек” и “КолЯнв”, все хорошо на диаграмме показывается только те число по которым были продажи как в декабре так и в январе(то есть нет первого числа так как в январе не было продаж в этот день, но они были в декабре и в диаграмме они нужны), а как сделать так чтобы выводились все числа? ВЫБРАТЬ ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаПоПартнерам.Партнер КАК АналитикаУчетаПоПартнерамПартнер, ДЕНЬ(ВыручкаИСебестоимостьПродажОбороты.Период) КАК ПериодДень, СУММА(ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот) КАК КолДекабрь, СУММА(0) КАК КолЯнварь ПОМЕСТИТЬ таб ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач1, &Нач2, День, ) КАК ВыручкаИСебестоимостьПродажОбороты СГРУППИРОВАТЬ ПО ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаПоПартнерам.Партнер, ДЕНЬ(ВыручкаИСебестоимостьПродажОбороты.Период) ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаПоПартнерам.Партнер, ДЕНЬ(ВыручкаИСебестоимостьПродажОбороты.Период), 0, ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач3, &Нач4, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ таб.АналитикаУчетаПоПартнерамПартнер КАК АналитикаУчетаПоПартнерамПартнер, таб.ПериодДень КАК ПериодДень, СУММА(таб.КолДекабрь) КАК КолДекабрь, СУММА(таб.КолЯнварь) КАК КолЯнварь ИЗ таб КАК таб СГРУППИРОВАТЬ ПО таб.АналитикаУчетаПоПартнерамПартнер, таб.ПериодДень  | 
|||
| 
    1
    
        Gsof    
     02.02.22 
            ✎
    15:12 
 | 
         
        Когда вывел результат в виде таблицы СКД тоже ни все даты вышли, возникает вопрос как в СКД сгруппировать так чтобы все даты выходили     
         | 
|||
| 
    2
    
        DrShad    
     02.02.22 
            ✎
    15:17 
 | 
         
        в данном варианте запроса никак СКД не поможет
 
        нужно формировать таблицу дат и с ней соединять  | 
|||
| 
    3
    
        Gsof    
     02.02.22 
            ✎
    15:37 
 | 
         
        (2) не совсем понял как надо, но сделал вот так, колонка в таблицы первое число появился, но по всем контрагентам по нулям , не могу понять чем проблема
 
        запрос вот ВЫБРАТЬ ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаПоПартнерам.Партнер КАК АналитикаУчетаПоПартнерамПартнер, НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродажОбороты.Период, ДЕНЬ) КАК ПериодДень, ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот КАК КолДекабрь, 0 КАК КолЯнварь ПОМЕСТИТЬ ТабПродаж ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач1, &Нач2, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаПоПартнерам.Партнер, НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродажОбороты.Период, ДЕНЬ), 0, ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач3, &Нач4, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ДанныеПроизводственногоКалендаря.Дата КАК Дата ПОМЕСТИТЬ ТабДат ИЗ РегистрСведений.ДанныеПроизводственногоКалендаря КАК ДанныеПроизводственногоКалендаря ГДЕ ДанныеПроизводственногоКалендаря.Дата >= &НачДекабря И ДанныеПроизводственногоКалендаря.Дата <= &КонЯнв ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТабДат.Дата КАК Дата, ТабПродаж.АналитикаУчетаПоПартнерамПартнер КАК АналитикаУчетаПоПартнерамПартнер, ТабПродаж.КолДекабрь КАК КолДекабрь, ТабПродаж.КолЯнварь КАК КолЯнварь, ТабПродаж.ПериодДень КАК ПериодДень ИЗ ТабДат КАК ТабДат ЛЕВОЕ СОЕДИНЕНИЕ ТабПродаж КАК ТабПродаж ПО ТабДат.Дата = ТабПродаж.ПериодДень  | 
|||
| 
    4
    
        Gsof    
     02.02.22 
            ✎
    15:41 
 | 
         
        может у кого есть подобный пример работающий, скиньте на него ссылку плиз     
         | 
|||
| 
    5
    
        Ivan_495    
     naïve 
    02.02.22 
            ✎
    15:46 
 | 
         
        в (3) содинение д.б правое     
         | 
|||
| 
    6
    
        Gsof    
     02.02.22 
            ✎
    15:59 
 | 
         
        (5) ты про какое самое нижнее? то пробовал и правое "Правое СОЕДИНЕНИЕ ТабПродаж КАК ТабПродаж" не помогает, более того при правом колонки первого числа вообще нет
 
        упрости запрос ВЫБРАТЬ НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродажОбороты.Период, ДЕНЬ) КАК ПериодДень, ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот КАК КолДекабрь, 0 КАК КолЯнварь ПОМЕСТИТЬ ТабПродаж ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач1, &Нач2, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродажОбороты.Период, ДЕНЬ), 0, ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач3, &Нач4, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ДанныеПроизводственногоКалендаря.Дата КАК Дата ПОМЕСТИТЬ ТабДат ИЗ РегистрСведений.ДанныеПроизводственногоКалендаря КАК ДанныеПроизводственногоКалендаря ГДЕ ДанныеПроизводственногоКалендаря.Дата >= &НачДекабря И ДанныеПроизводственногоКалендаря.Дата <= &КонЯнв ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТабПродаж.КолДекабрь КАК КолДекабрь, ТабПродаж.КолЯнварь КАК КолЯнварь, ДЕНЬ(ТабДат.Дата) КАК НомерДня ИЗ ТабДат КАК ТабДат Правое СОЕДИНЕНИЕ ТабПродаж КАК ТабПродаж ПО ТабДат.Дата = ТабПродаж.ПериодДень  | 
|||
| 
    7
    
        Ivan_495    
     naïve 
    02.02.22 
            ✎
    16:09 
 | 
         
        табдат и табпродаж покажи содержимое полей с датам , по - которым связываешь     
         | 
|||
| 
    8
    
        Gsof    
     02.02.22 
            ✎
    16:15 
 | 
         
        (7) не помогло вот такое соединение сделал 
 
        " ТабДат КАК ТабДат Правое СОЕДИНЕНИЕ ТабПродаж КАК ТабПродаж ПО ТабДат.Дата = ТабПродаж.ПериодДень " выдает вот что Номер дня Итого Кол декабрь Кол январь 6 90 10 5 546 а с левым выдавало вот что Номер дня Итого Кол декабрь Кол январь 1 2 3 4 5 6 90 7 8 9 10 5 546 и так далее  | 
|||
| 
    9
    
        Gsof    
     02.02.22 
            ✎
    16:16 
 | 
         
        хотя первого число(первого декабря ) продажи есть     
         | 
|||
| 
    10
    
        Ivan_495    
     naïve 
    02.02.22 
            ✎
    16:31 
 | 
         
        второе верно работает, а с 1 декабря что- то не так, может год другой))     
         | 
|||
| 
    11
    
        Gsof    
     02.02.22 
            ✎
    16:35 
 | 
         
        (10) вот результата запросе по первом числу в консоли запросов
 
        КолДекабрь КолЯнварь НомерДня 743 1  | 
|||
| 
    12
    
        Ivan_495    
     naïve 
    02.02.22 
            ✎
    16:37 
 | 
         
        оставь в объединении только январь     
         | 
|||
| 
    13
    
        Ivan_495    
     naïve 
    02.02.22 
            ✎
    16:37 
 | 
         
        только декабрь     
         | 
|||
| 
    14
    
        Ivan_495    
     naïve 
    02.02.22 
            ✎
    16:38 
 | 
         
        все верно надо еще по номеру месяца вязать , если полную дату не используешь     
         | 
|||
| 
    15
    
        Gsof    
     02.02.22 
            ✎
    16:39 
 | 
         
        (10) да ты был прав косяк в датах, спасибо за помощь , но работает корректно все таки с левым соединением  , может кому поможет привожу работающий запрос  
 
        ///////////////////////////////////////////// ВЫБРАТЬ НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродажОбороты.Период, ДЕНЬ) КАК ПериодДень, ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот КАК КолДекабрь, 0 КАК КолЯнварь ПОМЕСТИТЬ ТабПродаж ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач1, &Нач2, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ НАЧАЛОПЕРИОДА(ВыручкаИСебестоимостьПродажОбороты.Период, ДЕНЬ), 0, ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(&Нач3, &Нач4, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ДанныеПроизводственногоКалендаря.Дата КАК Дата ПОМЕСТИТЬ ТабДат ИЗ РегистрСведений.ДанныеПроизводственногоКалендаря КАК ДанныеПроизводственногоКалендаря ГДЕ ДанныеПроизводственногоКалендаря.Дата >= &НачДекабря И ДанныеПроизводственногоКалендаря.Дата <= &КонЯнв ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТабПродаж.КолДекабрь КАК КолДекабрь, Выразить(ТабПродаж.КолЯнварь КАК Число) КАК КолЯнварь, ТабДат.Дата КАК НомерДня ПОМЕСТИТЬ Т1 ИЗ ТабДат КАК ТабДат Левое СОЕДИНЕНИЕ ТабПродаж КАК ТабПродаж ПО ТабДат.Дата = ТабПродаж.ПериодДень ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ СУММА(Т1.КолДекабрь) КАК КолДекабрь, СУММА(Т1.КолЯнварь) КАК КолЯнварь, ДЕНЬ(Т1.НомерДня) КАК НомерДня ИЗ Т1 КАК Т1 СГРУППИРОВАТЬ ПО ДЕНЬ(Т1.НомерДня)  | 
|||
| 
    16
    
        DrShad    
     02.02.22 
            ✎
    16:40 
 | 
         
        вот не нужно было его сюда выкладывать     
         | 
|||
| 
    17
    
        DrShad    
     02.02.22 
            ✎
    16:40 
 | 
         
        не нужно тебе объединение
 
        в запросе просто кроме дня еще и месяц нужно было выбрать и все  | 
|||
| 
    18
    
        DrShad    
     02.02.22 
            ✎
    16:41 
 | 
         
        и не пришлось бы делать разные поля колдек и колянв     
         | 
|||
| 
    19
    
        DrShad    
     02.02.22 
            ✎
    16:45 
 | 
         
        и для СКД не нужна группировка - она лишняя     
         | 
|||
| 
    20
    
        Gsof    
     02.02.22 
            ✎
    16:50 
 | 
         
        (19) ок, спасибо учту на будущее     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |