powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Новое измерение
7 сообщений из 7, страница 1 из 1
Новое измерение
    #39385626
chenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, подскажите в какую сторону смотреть.
Нужно создать измерение, в котором получать значение из существующего измерения при определенном условии.
Т.е., если Type = Task и Activity = Development, то Completed Work Dev = Completed Work, иначе null.

Как Completed Work Dev заставить суммироваться по иерархии?
Нужно чтобы для Feature, Completed Work Dev равнялся сумме Completed Work Dev всех дочерних элементов.

WITH MEMBER [Measures].[State] AS [Work Item Tree].[Work Item Tree Hierarchy].Properties( "System_State" )
MEMBER [Measures].[Type] AS [Work Item Tree].[Work Item Tree Hierarchy].Properties( "System_WorkItemType" )
MEMBER [Measures].[Activity] AS [Work Item Tree].[Work Item Tree Hierarchy].Properties( "Microsoft_VSTS_Common_Activity" )
MEMBER [Measures].[Completed Work Dev] AS IIF ([Work Item Tree].[Work Item Tree Hierarchy].Properties("Microsoft_VSTS_Common_Activity") = "Development" AND [Work Item Tree].[Work Item Tree Hierarchy].Properties("System_WorkItemType") = "Task", [Measures].[Microsoft_VSTS_Scheduling_CompletedWork], null)
SELECT {[Measures].[Completed Work Dev], [Measures].[Microsoft_VSTS_Scheduling_CompletedWork],[Measures].[Activity],[Measures].[Type],[Measures].[State],[Measures].[Microsoft_VSTS_Scheduling_StoryPoints],[Measures].[Microsoft_VSTS_Scheduling_OriginalEstimate],[Measures].[Microsoft_VSTS_Scheduling_RemainingWork]} ON COLUMNS,
FILTER(Descendants([Work Item Tree].[Work Item Tree Hierarchy].&[142089]), [Work Item].[System_WorkItemType].&[Task] AND NOT [Work Item Tree].[Work Item Tree Hierarchy].CurrentMember.IS_DATAMEMBER) ON ROWS
FROM [Team System]
...
Рейтинг: 0 / 0
Новое измерение
    #39385731
Ferdipux
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chenix,

Простое
Код: sql
1.
2.
CREATE MEMBER CURRENTCUBE.[Measures].[Completed Work Dev] AS 
([Dim Task].[Type].&[Task], [Dim Activity].[Activity].&[Development], [Measures].[Completed Work]);



поможет? Для некоторых модельных измерений [Dim Task] и [Dim Activity], постулирующее их значениями. В ячейке быдет вычисляться, как будто ее координаты дополнили &[Task] и &[Development].
...
Рейтинг: 0 / 0
Новое измерение
    #39385913
chenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ferdipux, получилось, спасибо!

А возможно ли вместо Activity = Development ([Work Item].[Microsoft_VSTS_Common_Activity].&[Development]) как-то указать "все, кроме такого-то типа". Например, все кроме [Work Item].[Microsoft_VSTS_Common_Activity].&[Testing]?
Или перечислить нужные типы?
...
Рейтинг: 0 / 0
Новое измерение
    #39386021
SkyTod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chenix,

Код: sql
1.
2.
3.
4.
SUM(
{[Work Item].[Microsoft_VSTS_Common_Activity].Members - [Work Item].[Microsoft_VSTS_Common_Activity].&[Testing]},
[Measures].[Completed Work]
)



Или

Код: sql
1.
([Work Item].[Microsoft_VSTS_Common_Activity].[All],[Measures].[Completed Work]) - ([Work Item].[Microsoft_VSTS_Common_Activity].&[Testing],[Measures].[Completed Work])
...
Рейтинг: 0 / 0
Новое измерение
    #39388455
chenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SkyTod, спасибо, второй вариант сработал.
Подскажите, возможно ли вообще такое посчитать в MDX.
Есть иерархия:

Есть измерения: State, Type, Activity, Story Points
Есть размерность: Completed Work
Для Feature в состояниях отличных от Closed и Resolved подсчитать сумму Dev Prediction дочерних элементов (Product Backlog Item).
Для Product Backlog Item в состояниях отличных от Closed и Resolved посчитать:
1) Completed Work Dev как сумму Completed Work дочерних элементов (Task), у которых Activity отличное от Testing и Test Design.
2) Dev Prediction = (Story Point/0,21 - Completed Work Dev)/8
...
Рейтинг: 0 / 0
Новое измерение
    #39388569
WarAnt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chenix,

авторНапример, все кроме [Work Item].[Microsoft_VSTS_Common_Activity].&[Testing]

проще можно
-{[Work Item].[Microsoft_VSTS_Common_Activity].&[Testing]}
...
Рейтинг: 0 / 0
Новое измерение
    #39388686
SkyTod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chenix,

Извините, надо было
Код: sql
1.
[Work Item].[Microsoft_VSTS_Common_Activity].[Microsoft_VSTS_Common_Activity].Members


вместо
Код: sql
1.
[Work Item].[Microsoft_VSTS_Common_Activity].Members



Надо пробежаться по каждой задаче и проверить на определенные условия через case, вроде этого:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SUM(
	existing [Task].[Task].[Task].Members,
	case 
		when ([Feature].[Feature].&[Closed],[Measures].[Completed Work]) 
		and ([Feature].[Feature].&[Resolved],[Measures].[Completed Work])
		and ([Work Item].[Microsoft_VSTS_Common_Activity].&[Testing],[Measures].[Completed Work])
		and ([Work Item].[Microsoft_VSTS_Common_Activity].&[Test Design],[Measures].[Completed Work])		
		then null
		else (Story Point/0,21 - Completed Work Dev)/8
	end
)



И просто переписываете под свою задачу. Мне трудно оценить без данных, как правильно написать, но нужен вам именно case.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Новое измерение
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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