![]() |
|
Запрос СКД | ☑ | ||
---|---|---|---|---|
0
zerat
28.08.13
✎
16:33
|
Добрый день!
Не соображу как в этом запросе заполненное значение показателя "ДневноеПоказание" если допустим в одном из месяцев оно равно нулю, мне нужно получить последнее его заполненное значение. ВЫБРАТЬ УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Объект, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Услуга, СУММА(УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.ПоказаниеПриход) КАК ПоказаниеПриход, СУММА(КВП_ПоказанияСчетчиковСрезПоследних.ДневноеПоказание) КАК ДневноеПоказание, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.ПериодМесяц КАК ПериодМесяц, КВП_НормыПотребленияУслугЛССрезПоследних.НормаПотребления ИЗ РегистрНакопления.УПЖКХ_РасчетПриборовУчета.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, , {(Объект В ИЕРАРХИИ (&ЛицевойСчет))}) КАК УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КВП_ПоказанияСчетчиков.СрезПоследних(&КонецПериода, ) КАК КВП_ПоказанияСчетчиковСрезПоследних ПО УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Счетчик = КВП_ПоказанияСчетчиковСрезПоследних.Счетчик ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КВП_НормыПотребленияУслугЛС.СрезПоследних(&КонецПериода, ) КАК КВП_НормыПотребленияУслугЛССрезПоследних ПО УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Объект = КВП_НормыПотребленияУслугЛССрезПоследних.ЛицевойСчет И УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Услуга = КВП_НормыПотребленияУслугЛССрезПоследних.Услуга СГРУППИРОВАТЬ ПО УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Объект, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Услуга, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.ПериодМесяц, КВП_НормыПотребленияУслугЛССрезПоследних.НормаПотребления |
|||
1
Basilio
28.08.13
✎
16:49
|
Если оно равно нулю ты его в регистр не пиши и тогда все будет как надр
|
|||
2
Basilio
28.08.13
✎
16:49
|
а по старым записям - почикай с нулевыми ДневноеПоказание.
|
|||
3
zerat
28.08.13
✎
17:30
|
как по старым записям...не пойму
|
|||
4
Fram
28.08.13
✎
17:52
|
... РегистрСведений.КВП_ПоказанияСчетчиков.СрезПоследних(&КонецПериода, ДневноеПоказание <> 0) ...
|
|||
5
Basilio
28.08.13
✎
17:54
|
ДневноеПоказание единственный ресурс?
|
|||
6
zerat
28.08.13
✎
17:56
|
(5) да единственный, и он пустой в том случае если не было никаких показаний в этом месяце, вот мне и нужно если не было показаний брать последнее заполненное
|
|||
7
Fram
28.08.13
✎
17:56
|
(5) Вроде из этого регистра больше ничего не берет
|
|||
8
Fram
28.08.13
✎
17:57
|
(6) тогда точно (4)
|
|||
9
ДемонМаксвелла
28.08.13
✎
18:29
|
(8) неверно
срез последних тут вообще не подойдет. Все движения надо брать. |
|||
10
Fram
28.08.13
✎
18:59
|
(9) Ну и почему неверно? Прежде чем сляпать срез последних движок платформы выполняет условие в скобках, т.е. уберет все записи где ДневноеПоказание <> 0
|
|||
11
zerat
28.08.13
✎
23:14
|
так как сделать через срез последних? как в запросе написать??
|
|||
12
ДемонМаксвелла
29.08.13
✎
00:01
|
(10) Да, ты прав. Думал в другом порядке выполняется.
|
|||
13
zerat
29.08.13
✎
10:50
|
не получается
вот запрос ВЫБРАТЬ УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Объект, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Услуга, СУММА(УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.ПоказаниеПриход) КАК ПоказаниеПриход, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.ПериодМесяц КАК ПериодМесяц, СУММА(КВП_ПоказанияСчетчиков.ДневноеПоказание) КАК ДневноеПоказание, СУММА(КВП_НормыПотребленияУслугЛССрезПоследних.НормаПотребления.Размер) КАК НормаПотребленияРазмер ИЗ РегистрНакопления.УПЖКХ_РасчетПриборовУчета.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, , {(Объект В ИЕРАРХИИ (&ЛицевойСчет))}) КАК УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КВП_НормыПотребленияУслугЛС.СрезПоследних(&КонецПериода, ) КАК КВП_НормыПотребленияУслугЛССрезПоследних ПО УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Услуга = КВП_НормыПотребленияУслугЛССрезПоследних.Услуга ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КВП_ПоказанияСчетчиков КАК КВП_ПоказанияСчетчиков ПО УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Счетчик = КВП_ПоказанияСчетчиков.Счетчик И (КВП_ПоказанияСчетчиков.Период = УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.ПериодДень) И (КВП_ПоказанияСчетчиков.ДневноеПоказание <> 0) СГРУППИРОВАТЬ ПО УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Объект, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.Услуга, УПЖКХ_РасчетПриборовУчетаОстаткиИОбороты.ПериодМесяц |
|||
14
zerat
29.08.13
✎
11:35
|
ап ап
|
|||
15
Fram
29.08.13
✎
13:44
|
(13) я разве так тебе написал?
|
|||
16
Basilio
29.08.13
✎
13:54
|
(13) в параметрах виртульной таблицы условие ДневноеПоказание <> 0 ставь
|
|||
17
zerat
29.08.13
✎
14:23
|
(15) ну вот этот запрос берет данные на каждый месяц, условие поставил там, но не работает
|
|||
18
Fram
29.08.13
✎
15:16
|
(17) поставь условие как в (4)
а И (КВП_ПоказанияСчетчиков.ДневноеПоказание <> 0) убери |
|||
19
zerat
29.08.13
✎
15:42
|
(18) у меня там не виртуальная таблица берется
|
|||
20
Fram
29.08.13
✎
16:01
|
(19) сделай (0) + (4)
|
|||
21
zerat
29.08.13
✎
16:37
|
(20) тогда не работает срез на каждую дату
|
|||
22
Fram
29.08.13
✎
17:19
|
(21) Нууу.. это уже другой вопрос. Про это в (0) ничего не было
|
|||
23
zerat
29.08.13
✎
17:27
|
(22) )))) так что мне делать
|
|||
24
ДемонМаксвелла
30.08.13
✎
09:00
|
тебе вначале нужно получить таблицу, в которой полный набор измерений и период (максимальный период с ненулевой записью) - группируешь по измерениям, от периода берешь Максимум, ресурсы тут не нужны. Потом к этой таблице левым соединением по всем измерениям и периоду присоединяешь таблицу движений, и из неё берешь значения ресурсов.
|
|||
25
zerat
30.08.13
✎
09:33
|
(24) написано красиво)) вот только как это на моем запросе сделать подскажи пожалуйста...
|
|||
26
ДемонМаксвелла
30.08.13
✎
09:42
|
(25) мне за это не платят.
|
|||
27
zerat
30.08.13
✎
10:52
|
(26) ради идеи уже не катит?)
|
|||
28
ДемонМаксвелла
30.08.13
✎
10:57
|
(27) а тебе не стыдно попрошайничать?
|
|||
29
zerat
30.08.13
✎
11:04
|
(28) я прошу всего немного помощи, так как бьюсь с этой фигней уже долгое время...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |