Имя: Пароль:
1C
 
Вычислительное поле в СКД
0 Vladislava-smile
 
18.12.19
04:21
Обычный запрос по регистру Продажи.

Выводим данные:

Год                                   Январь                                                  Февраль  
                        Сумма           Коэф Сез.   Ср. Коэф Сезон            Сумма           Коэф Сез.   Ср. Коэф Сезон  
2018                 36 826 793,98                                         66 249 706,40
2019                 2 555 743,55                                          60 384 129,43
2 018 коэф. сез.                         1,06                                                   1,91
2 019 коэф. сез.                         0,15                                                   3,62
Ср. коэф. сезонности

Коэф. сез. вычисляется так: Сумма на каждый месяц/ (ВычислитьВыражение("Сумма(Сумма)", "Месяц", , "Первая", "Последняя") / КолвоМесяц)
Как посчитать Ср. кэф. сезонности? То есть (1,06 +  0,15) / 2
1 Vladislava-smile
 
18.12.19
04:32
Пишу в ресурсах:
ВычислитьВыражениеСГруппировкойМассив("Сумма(КоэфСез)", "ГодКоэфСез") -

Ошибка исполнения отчета
по причине:
Ошибка получения данных
по причине:
Выражение не может быть вычислено "Сумма(Продажи.Стоимость), Месяц"
2 vicof
 
18.12.19
05:07
И причем тут стоимость?
3 vicof
 
18.12.19
05:08
И не вычислительное, а вычисляемое
4 Vladislava-smile
 
18.12.19
05:25
(2) - Это сумма, просто так в отчете называется поле
5 Vladislava-smile
 
18.12.19
05:25
(3) - да какая разница, все поняли что я имею в виду
6 NUser
 
18.12.19
05:41
(5) тут в основном учителя русского языка, а не программисты
7 NUser
 
18.12.19
05:49
(1) На вкладке "ресурсы"  попробуйте рассчитать выражение по по полю "Месяц"
8 Vladislava-smile
 
18.12.19
05:54
(7) - Тоже самое. Я так понимаю, что ему не нравится использование агр. функции дважды


То есть у нас идет расчет КоэфСез через ВычислитьВыражение("Сумма(Сумма) ......

А потом еще Сумма(КоэфСез)

Но это только догадка, и как ее проверить пока сообразить  не могу
9 vicof
 
18.12.19
06:01
Ну так убери внешнюю сумму
10 vicof
 
18.12.19
06:02
(6) Не, тут в основном все безграмотные
11 Vladislava-smile
 
18.12.19
06:19
(9) Нифига, та же ошибка. Не понимаю почему не взлетает ...
12 vicof
 
18.12.19
06:27
ну давай выкладывай скрины с "вычислительными" полями, с ресурсами
13 Vladislava-smile
 
18.12.19
06:49
14 vicof
 
18.12.19
07:05
Стоимость = Сумма(Стоимость)
СреднийКоэфСезонностиРесурс = Сумма(...)
КоэфСез = КоэфСез
15 NUser
 
18.12.19
07:14
(10) верно и дедовщина опять началась)
16 Vladislava-smile
 
18.12.19
07:18
(14) - А можно немного больше текста, с комментариями ... ))
17 vicof
 
18.12.19
07:29
(16) Вместо стоимость в выражении напиши сумма(стоимость)
в среднем коэффициенте задай агрегирующую функцию
в клэффициенте сезонности в ресурсах убери сумму
18 vicof
 
18.12.19
07:30
(15) ты забыл запятую после слова "верно")
19 toypaul
 
гуру
18.12.19
08:07
средствами СКД вряд ли получится.

СКД допускает выражения типа ВычислитьВыражение(ВычислитьВыражениеСГруппировкойМассив), не не допускает

ВычислитьВыражениеСГруппировкойМассив(ВычислитьВыражение) , что нужно в вашем случае для вычисления среднего

вот это выражение ВычислитьВыражение("Сумма(Сумма)", "Месяц", , "Первая", "Последняя")  вообще не имеет смысла. достаточно посчитать общий итог по "Месяц", а отсюда следует, что это же можно посчитать и в запросе, свернув во временную таблицу.

ну и дальше будет уже гораздо проще посчитать то, что нужно
20 toypaul
 
гуру
18.12.19
08:10
для таких сложных примеров хорошо тестовые данные давать для экспериментов.

мне понравилось (не помню кто начинался ник на F) давал файл отчета с тестовыми данными в запросе в виде

ВЫБРАТЬ "январь", 100
ОБЪЕДИНИТЬ
ВЫБРАТь "февраль", 200

очень удобно "крутить" на любой базе
21 Vladislava-smile
 
18.12.19
08:25
(19) - спасибо, я тоже уже поняла что эти функции нельзя использовать совместно(.

Я думала уже и про временную таблицу, и про второй набор данных - вопрос в том, что структура этого отчета должна меняться.
То есть должна быть возможность расчета этих данных по группировке "Контрагент" и "Номенклатура".
22 toypaul
 
гуру
18.12.19
08:33
(21) анализируя состав группировки, можно при программном формировании подменять текст запроса.

изврат конечно, но куда деваться