Имя: Пароль:
1C
1С v8
Расчет в запросе (СКД) процента за месяц при периодичности день
0 piffoff
 
08.08.13
11:58
Добрый день!
Делаю простеньктй отчет.
Строка - контрагент и колонки:
суммаПлан за месяц, Ежедневная сумма факт и  Процент выполнения плана
Запрос такой

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

ОБЪЕДИНИТЬ ВСЕ

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

СГРУППИРОВАТЬ ПО
ВложенныйЗапрос.Контрагент,
ВложенныйЗапрос.ПериодЗапрос

УПОРЯДОЧИТЬ ПО
Контрагент


Результат   s2.ipicture.ru/Gallery/V... »»

Не получается в запросе по периоду (день) посчитать процент за весь период

В запросе как ни исхитрялся не получилось. Можно ли в СКД ли это сделать  на вкладке вычисляемые поля?
1 piffoff
 
08.08.13
11:58
2 cw014
 
08.08.13
12:05
А нафига ты темы плодишь?
3 cw014
 
08.08.13
12:06
Тебе же сказано, выбирай все в таблицу, делай "ПОМЕСТИТЬ ПервоначальныеДанные"... Не надо в ней пока процент считать

Делаешь выборку из таблицы "ПервоначальныеДанные" и сворачиваешь по месяцам (или чего там надо)...

Потом опять делаешь выборку из таблицы "ПервоначальныеДанные" соединяешь со свернутой по месяцам и считаешь свой процент
4 piffoff
 
08.08.13
12:18
(3)  и сворачиваешь по месяцам (или чего там надо)... ?! Как это сделать?
5 piffoff
 
08.08.13
13:56
ап
6 piffoff
 
08.08.13
14:18
в общем считать надо в итогах запроса или в итогах (ресурсах ) СКД

ВЫБОР
        КОГДА Сумма(СуммаПлан) <> 0
        ТОГДА Сумма(СуммаФакт) /  Сумма(СуммаПлан) * 100
        ИНАЧЕ 0
КОНЕЦ
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший