powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Named set
13 сообщений из 13, страница 1 из 1
Named set
    #32482738
UH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите, пожалуйста, построить Named Set.
Необходимо выбрать все элементы измерения Номенклатура, которые дают 50% дохода за ВЫБРАННЫЕ периоды.
Если брать весь период, проблем нет, получилось, но как мне указать, что только за выбранные периоды?

Вот, что у меня получилось на данном этапе:
Named set за весь период:
Код: plaintext
1.
2.
3.
4.
TOPPERCENT( 
  DESCENDANTS([Номенклатура].[Вся номенклатура], [Номенклатура].[Наименование]),
   50 ,
  [Measures].[Доход грн]
)


Named set за выбранные периоды:
Код: plaintext
1.
2.
3.
4.
TOPPERCENT( 
  DESCENDANTS([Номенклатура].[Вся номенклатура], [Номенклатура].[Наименование]),
   50 ,
  Sum({ЗДЕСЬ Я НЕ ЗНАЮ КАК УКАЗАТЬ, ЧТО ТОЛЬКО ЗА ВЫБРАННЫЙ ПЕРИОД}, [Measures].[Доход грн])
)
...
Рейтинг: 0 / 0
Named set
    #32482789
Дмитрий777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Там где сумма:
Код: plaintext
1.
Sum(PeriodsToDate([Time].[(All)],[Time].CurrentMember),[Measures].[Доход грн])
...
Рейтинг: 0 / 0
Named set
    #32482827
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Esli u vas pod WHERE stoit kakoi nibud vibranni period, to tak



Код: plaintext
1.
2.
3.
4.
TOPPERCENT( 
  DESCENDANTS([Номенклатура].[Вся номенклатура], [Номенклатура].[Наименование]),
   50 ,
  ([TimeDim].CurrentMember, [Measures].[Доход грн])
)
...
Рейтинг: 0 / 0
Named set
    #32482995
UH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 backfire
Если выбрано несколько периодов, по-моему, работать не будет :(

Я хочу добиться того, что
если выбран период, например, 2003 год, доход должен браться за 2003 год,
если выбраны 2003, 2004 - сумма за 2 года => CurrentMmber не прокатит.

Кстати, в моём запросе в MDX-builder'e ProClarity с TopPercent используется [Период].[Subtotal], что в Named set повторить не удалось.
...
Рейтинг: 0 / 0
Named set
    #32483110
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
privedite pozhaluisya polnost'yu vashi variacii
chto takoe "vibrannie periodi" i kak oni figuriruyut v vashem MDX?
bilo bi neploho uvidet zaprosi v celom.
...
Рейтинг: 0 / 0
Named set
    #32483188
UH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот так выглядит запрос MDX:
Код: plaintext
1.
2.
3.
4.
5.
WITH MEMBER [Период].[ Subtotal] AS ' SUM( { [Период].[Год].[2003], [Период].[Год].[2004] } ) ', SOLVE_ORDER =  99 
SELECT { [Период].[Год].[ 2003 ], [Период].[Год].[ 2004 ], [Период].[ Subtotal] }
ON COLUMNS , { TOPPERCENT( { DESCENDANTS( [Номенклатура].[Вся номенклатура], [Номенклатура].[Наименование] ) },  50 , ( [Период].[ Subtotal], [Measures].[Доход грн] ) ) }
ON ROWS
FROM [Продажи] WHERE ( [Measures].[Доход грн] )


Ещё раз постараюсь объяснить чего хочу добиться:
Необходимо создать Named set, которое должно
выводить только те DESCENDANTS( [Номенклатура].[Вся номенклатура], [Номенклатура].[Наименование]), по которым доход соствляет 50% от итога по выбранным периодам.
...
Рейтинг: 0 / 0
Named set
    #32483291
UH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И почему на формулу
Код: plaintext
1.
2.
3.
4.
TopPercent(

Descendants([Номенклатура].[Вся номенклатура],[Номенклатура].[Наименование])
,  50 , Sum([Период].Current, [Measures].[Доход грн])
)


Builder ругается на ^Current^?
Что я не так делаю?
...
Рейтинг: 0 / 0
Named set
    #32483456
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ptomu ctho CurrentMemmber a ne Current
...
Рейтинг: 0 / 0
Named set
    #32484413
UH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Current тоже есть - это текущее множество по описанию.

Поднимаю тему снова. Все мои попытки создать Named set оказались тщетными :(
...
Рейтинг: 0 / 0
Named set
    #32484444
Jurii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To UH:

Поднимаю тему снова. Все мои попытки создать Named set оказались тщетными :(

А с помощью OLAP-клиента Вы эту задачу решать не хотите?
...
Рейтинг: 0 / 0
Named set
    #32484466
UH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочу, если не получится, так и будет.
Но сейчас интересует именно решение с Named set. Хочу добиться результата.
...
Рейтинг: 0 / 0
Named set
    #32484677
Дмитрий777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
То что написал backfire, а именно :
Код: plaintext
1.
2.
3.
4.
5.
TOPPERCENT( 
  DESCENDANTS([Номенклатура].[Вся номенклатура], [Номенклатура].[Наименование]),
   50 ,
  ([TimeDim].CurrentMember, [Measures].[Доход грн])
)

прекрасно работает. [TimeDim].CurrentMember - период, который выбран и не важно, что выбрано их несколько. Считается и 2003 и 2004 если выбраны оба.Сам проверил. Что не хватает-то?
...
Рейтинг: 0 / 0
Named set
    #32486015
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To UH

Хочу, если не получится, так и будет.
Но сейчас интересует именно решение с Named set. Хочу добиться результата.


Sportivnii interes konechno delo horoshee, no ishodya iz lichnoi praktiki - Named Set, v otlichie ot Calculated Measures; horosh, kogda client u vas "tupoi" i na storone Clienta ili Middleware logika minimalna.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Named set
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]