Текущее время: Ср, авг 27 2025, 10:09

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 07:56 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 10 2013, 12:00
Сообщения: 16
Добрый день,

Нужно выявить среднюю цену.

вот так данные сидят в кубе:

Изображение

сумма 18338,8

нам надо чтобы цену по одинаковым партиям не суммировались, то есть чтобы было так:

Изображение

Сумма 4822,84

тогда если поделим на количество уникальных партии(14) будет: 4822,84/14=344,49

в BEX query designer, сделан рассчитанный показатель, туда положили цену. в разделе Аггрегация выбрана среднее значение по ссылочному признаку Партия. Но сумму показывает 18338,8.
Чтобы проверить сделал еще один рассчитанный показатель, там выбрад Счетчик для всех подробных значении и ссылочный признак Партия. когда вывел, он правильно показывает 14.
Переделал аггрегацию первого рассчитанного показателя с Среднее значение на Итого. все равно показывает не правильную сумму. То есть он суммирует все цену не учитывая уникальных партии, то есть вместо 14 цен он суммирует 54 цен.

Как можно решить ее? потратил весь день на все возможные варианты. Даже переделал показатель, поменял аггрегацию на среднее значение, вообще начал 0(нули) показывать, потом все вернул обратно.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 09:07 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Если предположить, что цена лежит как показатель, например, в 0AMOUNT и не может быть равна нулю, то

1. Создать рассчитанный показатель Кол-во = NODIM( 0AMOUNT ), на закладке Агрегация снять флажок с Расчет после агрегации
2. Создать рассчитанный показатель Сумма = NODIM( 0AMOUNT ) / Кол-во, на закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATCH (Партия)

В отчете выводить второй показатель


Последний раз редактировалось murmur Вт, янв 21 2014, 12:34, всего редактировалось 1 раз.

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 09:40 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 10 2013, 12:00
Сообщения: 16
murmur написал:
Если предположить, что цена лежит как показатель, например, в 0AMOUNT и не может быть равна нулю, то

1. Создать рассчитанный показатель Кол-во = NODIM( 0AMOUNT ), на закладке Агрегация снять флажок с Расчет после агрегации
2. Создать рассчитанный показатель Сумма = NODIM( 0AMOUNT ) / Кол-во, на закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATTH (Партия)

В отчете выводить второй показатель


Когда создавал первый рассчитанный показатель, когда снимал флажок Расчет после агрегации выдало ошибку не разрешен расчет до агрегации
Но когда нажал сохранить, без проблем сохранилось.
Сделал второй показатель.

Когда вывел через Analyzer, по первому вышла та же самая сумма 18,338.800, по второму 14. Если по второму использовать стандатрную агрегацию то показывает 1, что понятно потому что 18,338.800/18,338.800=1

Цена лежит как показатель, тип: число, агрегация: сумма.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX  Тема решена
СообщениеДобавлено: Вт, янв 21 2014, 09:47 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Обшибся!

Если предположить, что цена лежит как показатель, например, в 0AMOUNT и не может быть равна нулю, то

1. Создать рассчитанный показатель Кол-во = NODIM( 0AMOUNT ) <> 0, на закладке Агрегация снять флажок с Расчет после агрегации
2. Создать рассчитанный показатель Сумма = NODIM( 0AMOUNT ) / Кол-во, на закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATTH (Партия)

В отчете выводить второй показатель


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 11:07 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 10 2013, 12:00
Сообщения: 16
murmur написал:
Обшибся!

Если предположить, что цена лежит как показатель, например, в 0AMOUNT и не может быть равна нулю, то

1. Создать рассчитанный показатель Кол-во = NODIM( 0AMOUNT ) <> 0, на закладке Агрегация снять флажок с Расчет после агрегации
2. Создать рассчитанный показатель Сумма = NODIM( 0AMOUNT ) / Кол-во, на закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATTH (Партия)

В отчете выводить второй показатель


Проблема когда снимаю флажок Расчет после агрегации, пишет для этого показателя не разрешен расчет до агрегации
Поставил, теперь первый рассчитанный показатель показывает цифру 1(один) по всему столбцу.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 11:38 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Уберите из развертки все признаки. Пусть у вас выводится только показатель - получите требуемую сумму.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 11:44 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 10 2013, 12:00
Сообщения: 16
murmur написал:
Уберите из развертки все признаки. Пусть у вас выводится только показатель - получите требуемую сумму.


убрал, не помогло. но мне надо с признаками выводить в любом случае


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 12:28 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Вот, на тестовом примере сделеал. Версия BEx 7.2 (SP6).

Материал Склад Партия Сумма
1 #/1 24296 358,0000000
1 #/1 70618 304,7600000
1 #/100 24296 358,0000000
1 #/100 70618 304,7600000
1 #/2 24296 358,0000000
1 #/2 70618 304,7600000
1 #/7 24296 358,0000000
1 #/7 70618 304,7600000
1 #/8 24296 358,0000000
1 #/8 70618 304,7600000
1 #/9 24296 358,0000000
Общий результат 662,7600000

или даже...

Партия Материал Склад Сумма
24296 1 1 358,0000000
24296 1 100 358,0000000
24296 1 2 358,0000000
24296 1 7 358,0000000
24296 1 8 358,0000000
24296 1 9 358,0000000
24296 1 Результат 358,0000000
24296 Результат 358,0000000
70618 1 1 304,7600000
70618 1 100 304,7600000
70618 1 2 304,7600000
70618 1 7 304,7600000
70618 1 8 304,7600000
70618 1 Результат 304,7600000
70618 Результат 304,7600000
Общий результат 662,7600000



Так должно быть?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 13:12 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 10 2013, 12:00
Сообщения: 16
murmur написал:
Вот, на тестовом примере сделеал. Версия BEx 7.2 (SP6).

Материал Склад Партия Сумма
1 #/1 24296 358,0000000
1 #/1 70618 304,7600000
1 #/100 24296 358,0000000
1 #/100 70618 304,7600000
1 #/2 24296 358,0000000
1 #/2 70618 304,7600000
1 #/7 24296 358,0000000
1 #/7 70618 304,7600000
1 #/8 24296 358,0000000
1 #/8 70618 304,7600000
1 #/9 24296 358,0000000
Общий результат 662,7600000

Так должно быть?


Должно было быть 14 партии.

Партия Цена
22377
304,76
22482
304,76
22685
304,76
22912
304,76
24296
358
33268
358
53205
358
55409
358
55411
358
55413
358
55416
358
70617
370
70618
358
93118
369,8
Сумма 4822,84

Тогда среднюю вычисляем Сумма/количество. 4822,84/14=344,49

Самое странное когда количество вычисляю.
Показатель количество = (CENA), закладка Агрегация -> спец. агрегация Счетчик для всех значении по признаку Номер партии, показывает 14
а сумму почему то показывает не правильную


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Вт, янв 21 2014, 13:39 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Если вам надо еще и среднее подсчитать, то

1. Создать рассчитанный показатель Кол-во = NODIM( 0AMOUNT ) <> 0, на закладке Агрегация снять флажок с Расчет после агрегации
2. Создать рассчитанный показатель Сумма = NODIM( 0AMOUNT ) / Кол-во, на закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATCH (Партия)
3. Создать формулу Кол-во партий = 1, закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATCH (Партия)
4. Создать формулу Среднее = Сумма / Кол-во партий

Вот результат:

Code:
Партия   Материал   Склад   Сумма   Кол-во партий   Среднее
24296   1   1   358,0000000   1   358,0000000
24296   1   100   358,0000000   1   358,0000000
24296   1   2   358,0000000   1   358,0000000
24296   1   7   358,0000000   1   358,0000000
24296   1   8   358,0000000   1   358,0000000
24296   1   9   358,0000000   1   358,0000000
24296   1   Результат   358,0000000   1   358,0000000
24296   Результат      358,0000000   1   358,0000000
70618   1   1   304,7600000   1   304,7600000
70618   1   100   304,7600000   1   304,7600000
70618   1   2   304,7600000   1   304,7600000
70618   1   7   304,7600000   1   304,7600000
70618   1   8   304,7600000   1   304,7600000
70618   1   Результат   304,7600000   1   304,7600000
70618   Результат      304,7600000   1   304,7600000
Общий результат         662,7600000   2   331,3800000


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Ср, янв 22 2014, 07:15 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 10 2013, 12:00
Сообщения: 16
murmur написал:
Если вам надо еще и среднее подсчитать, то

1. Создать рассчитанный показатель Кол-во = NODIM( 0AMOUNT ) <> 0, на закладке Агрегация снять флажок с Расчет после агрегации
2. Создать рассчитанный показатель Сумма = NODIM( 0AMOUNT ) / Кол-во, на закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATCH (Партия)
3. Создать формулу Кол-во партий = 1, закладке Агрегация установить спецагрегацию в Суммирование по признаку 0BATCH (Партия)
4. Создать формулу Среднее = Сумма / Кол-во партий

Вот результат:

Code:
Партия   Материал   Склад   Сумма   Кол-во партий   Среднее
24296   1   1   358,0000000   1   358,0000000
24296   1   100   358,0000000   1   358,0000000
24296   1   2   358,0000000   1   358,0000000
24296   1   7   358,0000000   1   358,0000000
24296   1   8   358,0000000   1   358,0000000
24296   1   9   358,0000000   1   358,0000000
24296   1   Результат   358,0000000   1   358,0000000
24296   Результат      358,0000000   1   358,0000000
70618   1   1   304,7600000   1   304,7600000
70618   1   100   304,7600000   1   304,7600000
70618   1   2   304,7600000   1   304,7600000
70618   1   7   304,7600000   1   304,7600000
70618   1   8   304,7600000   1   304,7600000
70618   1   Результат   304,7600000   1   304,7600000
70618   Результат      304,7600000   1   304,7600000
Общий результат         662,7600000   2   331,3800000


те действия я делал на мультипровайдере, цены из одного мультипровайдера где есть завод, материал, склад и партии.

для теста отдельно на том кубе создал запрос и те же показатели создал. нивкакую. Когда убираю галочку Рассчет до агрегации пишет предупреждение что Рассчитанный показатель использует устаревшую настройку до агрегации.

В кубе признаки: завод, материал, склад, номер партии.
Показатели: цена и.т.д.

Когда делаю спец. агрегацию скажем первое значение ссылка по скалду, то он показывает правильно. Но если тоже самое делаю по номеру партии, он суммирует все цены партии и показывает. Например:
Партия, Цена
0000022377 304,760
0000022377 304,760
0000022377 304,760
0000022377 304,760
0000022377 304,760

вместо того чтобы показать
0000022377 304,760
он показывает
0000022377 1523,8

я сравнил инфообъекты Склад(OSTOR_LOC) и Номер партии(ZCHARG) они идентичные по свойствам, но почему по разному ведет себя рассчитанный показатель я таки не понял


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: сумма по признаку BEX
СообщениеДобавлено: Ср, янв 22 2014, 09:00 
Начинающий
Начинающий

Зарегистрирован:
Вт, дек 10 2013, 12:00
Сообщения: 16
получилось. спасибо murmur

Чтобы получить среднюю цену, надо создать два рассчитанных показателя как в 4-ом сообщении.
Создать рассчитанный показатель Счетчик=0Amount, во вкладке Агрегация выбрать Счетчик признак Номер партии.
Создать показатель средняя цена=Сумма(из 4-го сообщения)/Счетчик


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB