|
Разные результаты СКД | ☑ | ||
---|---|---|---|---|
0
Amfiaray
04.11.14
✎
15:58
|
Добрый день, проблема вот в чем, есть отчет на СКД, при формировании с разной детализацией итоги в отчете меняются, может кто сталкивался с такой бедой?
|
|||
1
Fragster
гуру
04.11.14
✎
16:01
|
это не беда, это ты не думаешь о том, как СКД меняет запрос в зависимости от выбранных полей и наложенных отборов
|
|||
2
Amfiaray
04.11.14
✎
16:03
|
отборы и параметры не менялись, просто изменился 1 уровень детализации, если не сложно скажите где порыть чтобы отчет формировался так как надо?
|
|||
3
shuhard
04.11.14
✎
16:05
|
(2)[чтобы отчет формировался так как надо]
форум должен угадать запрос, схему, отборы ? |
|||
4
Amfiaray
04.11.14
✎
16:08
|
Вот запрос
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ ВидыПотребления.ВидПотребленияГаза, ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) КАК МесячныйПлан, ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) КАК ПоступленияТекущие, ЕСТЬNULL(ОплатаДень.ПоступленияДень, 0) КАК ПоступленияДень, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) = 0 ТОГДА 0 ИНАЧЕ ВыставленныеСчета.МесячныйПлан / &КоличествоДней КОНЕЦ КАК ДневнойПлан, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) = 0 ТОГДА 0 ИНАЧЕ ВыставленныеСчета.МесячныйПлан / &КоличествоДней * &ТекущееКоличествоДней КОНЕЦ КАК ТекущийПлан, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ЛицевыеСчета.Ссылка ИНАЧЕ NULL КОНЕЦ КАК ЛицевойСчет, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ЛицевыеСчета.Владелец ИНАЧЕ NULL КОНЕЦ КАК Район, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ЛицевыеСчета.Родитель ИНАЧЕ NULL КОНЕЦ КАК МУчасток, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ЛицевыеСчета.Родитель.Родитель ИНАЧЕ NULL КОНЕЦ КАК Участок, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ЛицевыеСчета.ГРПШРП ИНАЧЕ NULL КОНЕЦ КАК ШРП, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ЛицевыеСчета.ГРПШРП.Родитель ИНАЧЕ NULL КОНЕЦ КАК ГРП, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ВЫБОР КОГДА ЛицевыеСчета.Адрес.СекторПроживания = ЗНАЧЕНИЕ(Перечисление.СектораПроживания.Частный) ТОГДА ЛицевыеСчета.Адрес.Ссылка ИНАЧЕ ЛицевыеСчета.Адрес.Родитель КОНЕЦ ИНАЧЕ NULL КОНЕЦ КАК Дом, ВЫБОР КОГДА ЕСТЬNULL(ВыставленныеСчета.МесячныйПлан, 0) <> 0 ИЛИ ЕСТЬNULL(ОплатаТекущая.ПоступленияТекущие, 0) <> 0 ТОГДА ВЫБОР КОГДА ЛицевыеСчета.Адрес.СекторПроживания = ЗНАЧЕНИЕ(Перечисление.СектораПроживания.Частный) ТОГДА ЛицевыеСчета.Адрес.Родитель ИНАЧЕ ЛицевыеСчета.Адрес.Родитель.Родитель КОНЕЦ ИНАЧЕ NULL КОНЕЦ КАК Улица ИЗ Справочник.ЛицевыеСчета КАК ЛицевыеСчета ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ ИсторияПодключенияГазовогоОборудованияСрезПоследних.ЛицевойСчет КАК ЛицевойСчет, ИсторияПодключенияГазовогоОборудованияСрезПоследних.ВидПотребленияГаза КАК ВидПотребленияГаза ИЗ РегистрСведений.ИсторияПодключенияГазовогоОборудования.СрезПоследних(&ДатаСреза, ВидПотребленияГаза В (&ВидПотребленияГаза)) КАК ИсторияПодключенияГазовогоОборудованияСрезПоследних СГРУППИРОВАТЬ ПО ИсторияПодключенияГазовогоОборудованияСрезПоследних.ЛицевойСчет, ИсторияПодключенияГазовогоОборудованияСрезПоследних.ВидПотребленияГаза) КАК ВидыПотребления ПО ЛицевыеСчета.Ссылка = ВидыПотребления.ЛицевойСчет ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ ВзаиморасчетыСПотребителямиОстатки.ЛицевойСчет КАК ЛицевойСчет, ВЫБОР КОГДА ЕСТЬNULL(ВзаиморасчетыСПотребителямиОстатки.СуммаОстаток, 0) + ЕСТЬNULL(ВзаиморасчетыСПотребителямиОстатки.ПеняОстаток, 0) > 0 ТОГДА ЕСТЬNULL(ВзаиморасчетыСПотребителямиОстатки.СуммаОстаток, 0) + ЕСТЬNULL(ВзаиморасчетыСПотребителямиОстатки.ПеняОстаток, 0) ИНАЧЕ 0 КОНЕЦ КАК МесячныйПлан ИЗ РегистрНакопления.ВзаиморасчетыСПотребителями.Остатки(&ДатаСреза, ) КАК ВзаиморасчетыСПотребителямиОстатки) КАК ВыставленныеСчета ПО ЛицевыеСчета.Ссылка = ВыставленныеСчета.ЛицевойСчет ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ ВзаиморасчетыСПотребителямиОбороты.ЛицевойСчет КАК ЛицевойСчет, ВЫБОР КОГДА ЕСТЬNULL(ВзаиморасчетыСПотребителямиОбороты.СуммаРасход, 0) > 0 ТОГДА ВзаиморасчетыСПотребителямиОбороты.СуммаРасход ИНАЧЕ 0 КОНЕЦ КАК ПоступленияДень ИЗ РегистрНакопления.ВзаиморасчетыСПотребителями.Обороты(&НачалоТекущегоДня, &КонецТекущегоДня, , ) КАК ВзаиморасчетыСПотребителямиОбороты) КАК ОплатаДень ПО ЛицевыеСчета.Ссылка = ОплатаДень.ЛицевойСчет ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ ВзаиморасчетыСПотребителямиОбороты.ЛицевойСчет КАК ЛицевойСчет, ВЫБОР КОГДА ЕСТЬNULL(ВзаиморасчетыСПотребителямиОбороты.СуммаРасход, 0) > 0 ТОГДА ВзаиморасчетыСПотребителямиОбороты.СуммаРасход ИНАЧЕ 0 КОНЕЦ КАК ПоступленияТекущие ИЗ РегистрНакопления.ВзаиморасчетыСПотребителями.Обороты(&НачалоМесяца, &КонецТекущегоДня, , ) КАК ВзаиморасчетыСПотребителямиОбороты) КАК ОплатаТекущая ПО ЛицевыеСчета.Ссылка = ОплатаТекущая.ЛицевойСчет |
|||
5
Defender aka LINN
04.11.14
✎
16:10
|
(4) Как это развидеть обратно?
|
|||
6
Amfiaray
04.11.14
✎
16:10
|
отчет сам выложить не смогу, т.к. конфа полностью самописная )
|
|||
7
Fragster
гуру
04.11.14
✎
16:16
|
выкинуть (4) нафиг и заменить все на объединение, если уж так сильно нужно. Ну и понять, что к одному и тому же регистру столько раз обращаться - не есть гуд.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |