|
Помогите победить СКД | ☑ | ||
---|---|---|---|---|
0
dimaxx
08.08.17
✎
17:33
|
Есть запрос. Все нормально собирает и выводит, но есть вычисляемое поле.
Сумма(СуммаВзаиморасчетовОстаток)/ВычислитьВыражение("Сумма(СуммаВзаиморасчетовОстаток)","Контрагент","Группировка")*ДоговорКонтрагентаДопустимоеЧислоДнейЗадолженности Отлично отрабатываети считает до уровня договора, но нужно чтобы на уровне Контрагента посчиталось по данным договоров. Написал вот такой ресурс Сумма(ВычислитьВыражениеСГруппировкойМассив(ВычислитьВыражение("Сумма(СуммаВзаиморасчетовОстаток))","ДоговорКонтрагента","Группировка")/ВычислитьВыражение("Сумма(СуммаВзаиморасчетовОстаток))","Контрагент","Группировка")*ДоговорКонтрагентаДопустимоеЧислоДнейЗадолженности, "ДоговорКонтрагента")) ругается на синтактическую ошибку. Помогите весь мозг сломал |
|||
1
Ёпрст
08.08.17
✎
17:35
|
текст ошибки то какой хоть ?
|
|||
2
aleks_default
08.08.17
✎
17:37
|
ВычислитьВыражениеСГруппировкойМассив(ВычислитьВыражение("Сумма
|
|||
3
aleks_default
08.08.17
✎
17:37
|
Так низзя
|
|||
4
dimaxx
08.08.17
✎
17:38
|
{Отчет.КонсольОтчетов.МодульОбъекта(237)}: Ошибка при вызове метода контекста (Следующий)
ЭлементРезультата = ПроцессорКомпоновкиДанных.Следующий(); по причине: Ошибка компоновки данных по причине: Ошибка получения данных по причине: Ошибка в выражении по причине: Синтаксическая ошибка |
|||
5
dimaxx
08.08.17
✎
17:39
|
(3) А как можно?
|
|||
6
aleks_default
08.08.17
✎
17:43
|
как-то по-другому
функции языка выражений компоновки не поддерживают вложенность |
|||
7
dimaxx
08.08.17
✎
17:48
|
Я что только не делал.
Пробовал в вычисляемые поля тест2 ВычислитьВыражение("Сумма(СуммаВзаиморасчетовОстаток)","Контрагент","Группировка") тест3 ВычислитьВыражение("Сумма(СуммаВзаиморасчетовОстаток)","ДоговорКонтрагента","Группировка") Тест4 ДоговорКонтрагентаДопустимоеЧислоДнейЗадолженности Потом пишу Сумма(Тест3/Тест2*Тест4) Получаю только по договору на контрагента не расчитывается |
|||
8
dimaxx
08.08.17
✎
17:49
|
Если отдельно итоги запросом брать, очень долго выполняется запрос.
|
|||
9
kittystark
08.08.17
✎
17:50
|
кури выражение ресурса ГрупповаяОбработка
|
|||
10
dimaxx
08.08.17
✎
17:51
|
(6) Это я понял. Что никак не решить проблему?
|
|||
11
dimaxx
08.08.17
✎
17:51
|
(9) Чего? Что за ресурс?
|
|||
12
dimaxx
08.08.17
✎
17:57
|
Если пишу ВычислитьВыражениеСГруппировкойМассив("Тест3/Тест2*Тест5", "договорКонтрагента")
Ошибка: Выражение не может быть вычислено "Сумма(НаборДанных1.СуммаВзаиморасчетовОстаток), ДоговорКонтрагента" |
|||
13
aleks_default
08.08.17
✎
17:58
|
Ты пойми для начала что вычислить хочешь.
на уровне договора у тебя отношении суммы остатка по договору к сумме остатка по контрагенту, умноженое на количество дней из договора. Что это должно быть на уровне контрагента? |
|||
14
aleks_default
08.08.17
✎
18:00
|
зачем тащить ВычислитьВыражениеСГруппировкойМассив(ВычислитьВыражение("Сумма(СуммаВзаиморасчетовОстаток))","ДоговорКонтрагента","Группировка")
когда это на уровне контрагента будет равно "Сумма(СуммаВзаиморасчетовОстаток)"? |
|||
15
Tateossian
08.08.17
✎
21:52
|
Все вот такие вычисления (относительные) нужно делать в пользовательских полях. Они корректно делят по группировке. Я по оборачиввемости делал когда-то отчет похожий по сути.
|
|||
16
dimaxx
08.08.17
✎
21:53
|
(14) Ну уровне контрагента, хочется получить сумму показателей посчитанных по договору. ВычислитьВыражениеСГруппировкойМассив(ВычислитьВыражение("Сумма(СуммаВзаиморасчетовОстаток))","ДоговорКонтрагента","Группировка") согласен, но все равно не будет работать т.к. так как запрещены вложенные агрегатные функции.
напишите если не сложно свой вариант. |
|||
17
dimaxx
08.08.17
✎
21:54
|
(15) Можете разложить по полочкам в моем случае?
|
|||
18
Tateossian
09.08.17
✎
00:44
|
(17) Если пришлешь скрин отчета с группировками и примером как должно быть.
|
|||
19
kittystark
09.08.17
✎
09:52
|
(11) в одном из достаточно старых офиц. мануалов по СКД в главе 4. Функции системы компоновки данных в 4.2 агрегатные функции описывается
и там же дан пример с функцией ABCКлассификация в целый лист А4 и ее использование с выражением
|
|||
20
dimaxx
09.08.17
✎
10:26
|
Спасибо, всем за участие, переписал отчет полностью, расчет ведется в запросе теперь.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |