변경 및 작업 관리 큐브
SystemCenterChangeAndActivityManagementCube (SystemCenterCube)
Element properties:
Cube Localization:
Source Code:
<SystemCenterCube ID="SystemCenterChangeAndActivityManagementCube">
<MeasureGroups>
<!--Substitions for Workitem-->
<MeasureGroup ID="WorkItemIsAboutConfigItem" Fact="DWBase!WorkItemAboutConfigItemFact" DateDimAlias="WorkItemIsAboutConfigItemDateDim"/>
<MeasureGroup ID="WorkItemCreatedByUser" Fact="DWBase!WorkItemCreatedByUserFact" DateDimAlias="WorkItemCreatedByUserDateDim"/>
<MeasureGroup ID="WorkItemAssignedToUser" Fact="DWBase!WorkItemAssignedToUserFact" DateDimAlias="WorkItemAssignedToUserDateDim"/>
<MeasureGroup ID="WorkItemRelatesToWorkItem" Fact="DWBase!WorkItemRelatesToWorkItemFact" DateDimAlias="WorkItemRelatesToWorkItemDateDim"/>
<!--Activity Related facts-->
<MeasureGroup ID="ActivityIsAboutConfigItem" Fact="DWBase!WorkItemAboutConfigItemFact" DateDimAlias="ActivityIsAboutConfigItemDateDim"/>
<MeasureGroup ID="ActivityCreatedByUser" Fact="DWBase!WorkItemCreatedByUserFact" DateDimAlias="ActivityCreatedByUserDateDim"/>
<MeasureGroup ID="ActivityAssignedToUser" Fact="DWBase!WorkItemAssignedToUserFact" DateDimAlias="ActivityAssignedToUserDateDim"/>
<MeasureGroup ID="ActivityRelatesToWorkItem" Fact="DWBase!WorkItemRelatesToWorkItemFact" DateDimAlias="ActivityRelatesToWorkItemDateDim"/>
<MeasureGroup ID="ActivityIsAboutComputer" Fact="DWBase!WorkItemAboutConfigItemFact" DateDimAlias="ActivityIsAboutComputerDateDim"/>
<!--ChangeRequest Related facts-->
<MeasureGroup ID="ChangeRequestIsAboutConfigItem" Fact="DWBase!WorkItemAboutConfigItemFact" DateDimAlias="ChangeRequestIsAboutConfigItemDateDim"/>
<MeasureGroup ID="ChangeRequestCreatedByUser" Fact="DWBase!WorkItemCreatedByUserFact" DateDimAlias="ChangeRequestCreatedByUserDateDim"/>
<MeasureGroup ID="ChangeRequestAssignedToUser" Fact="DWBase!WorkItemAssignedToUserFact" DateDimAlias="ChangeRequestAssignedToUserDateDim"/>
<MeasureGroup ID="ChangeRequestRelatesToWorkItem" Fact="DWBase!WorkItemRelatesToWorkItemFact" DateDimAlias="ChangeRequestRelatesToWorkItemDateDim"/>
<MeasureGroup ID="ChangeRequestContainsActivity" Fact="ActivityDW!WorkItemContainsActivityFact" DateDimAlias="ChangeRequestContainsActivityDateDim"/>
<MeasureGroup ID="ChangeRequestIsAboutComputer" Fact="DWBase!WorkItemAboutConfigItemFact" DateDimAlias="ChangeRequestIsAboutComputerDateDim"/>
<!--Review Related facts-->
<MeasureGroup ID="ReviewActivityHasReviewer" Fact="ActivityDW!ReviewActivityHasReviewerFact" DateDimAlias="ReviewActivityHasReviewerDateDim"/>
<MeasureGroup ID="ReviewerIsReviewerUser" Fact="ActivityDW!ReviewerIsUserFact" DateDimAlias="ReviewerIsReviewerUserDateDim"/>
<MeasureGroup ID="ReviewerVotedByUser" Fact="ActivityDW!ReviewerVotedByUserFact" DateDimAlias="ReviewerVotedByUserDateDim"/>
<!--Review Activity Related facts-->
<MeasureGroup ID="ReviewActivityRelatesToConfigItem" Fact="DWBase!WorkItemRelatesToConfigItemFact" DateDimAlias="ReviewActivityRelatesToConfigItemDateDim"/>
<MeasureGroup ID="ReviewActivityAssignedToUser" Fact="DWBase!WorkItemAssignedToUserFact" DateDimAlias="ReviewActivityAssignedToUserDateDim"/>
<MeasureGroup ID="ReviewActivityCreatedByUser" Fact="DWBase!WorkItemCreatedByUserFact" DateDimAlias="ReviewActivityCreatedByUserDateDim"/>
<!--Rest-->
<MeasureGroup ID="WorkItemIsAboutComputer" Fact="DWBase!WorkItemAboutConfigItemFact" DateDimAlias="WorkItemIsAboutComputerDateDim"/>
<MeasureGroup ID="ActivityRelatesToChangeRequest" Fact="DWBase!WorkItemRelatesToWorkItemFact" DateDimAlias="ActivityRelatesToChangeRequestDateDim"/>
<MeasureGroup ID="ServiceContainsConfigItem" Fact="DWBase!ServiceContainsConfigItemFact" DateDimAlias="ServiceContainsConfigItemDateDim"/>
<MeasureGroup ID="ServiceContainsComputer" Fact="DWBase!ServiceContainsConfigItemFact" DateDimAlias="ServiceContainsComputerDateDim"/>
</MeasureGroups>
<Substitutions>
<Substitution MeasureGroupName="WorkItemIsAboutConfigItem" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="WorkItemDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="WorkItemIsAboutConfigItem" TargetDimension="DWBase!ConfigItemDim" AliasTargetDimensionAs="RelatedConfigItemDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="WorkItemCreatedByUser" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="WorkItemDim" Relationship="WorkItem!System.WorkItemCreatedByUser" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="WorkItemCreatedByUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="CreatedByUserDim" Relationship="WorkItem!System.WorkItemCreatedByUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="WorkItemAssignedToUser" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="WorkItemDim" Relationship="WorkItem!System.WorkItemAssignedToUser" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="WorkItemAssignedToUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="AssignedToUserDim" Relationship="WorkItem!System.WorkItemAssignedToUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="WorkItemRelatesToWorkItem" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="WorkItemDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="WorkItemRelatesToWorkItem" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="RelatedWorkItemDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Target"/>
<!-- Substitutions for Activity-->
<Substitution MeasureGroupName="ActivityIsAboutConfigItem" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ActivityDW!ActivityDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ActivityIsAboutConfigItem" TargetDimension="DWBase!ConfigItemDim" AliasTargetDimensionAs="RelatedConfigItemDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ActivityCreatedByUser" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ActivityDW!ActivityDim" Relationship="WorkItem!System.WorkItemCreatedByUser" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ActivityCreatedByUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="CreatedByUserDim" Relationship="WorkItem!System.WorkItemCreatedByUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ActivityAssignedToUser" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ActivityDW!ActivityDim" Relationship="WorkItem!System.WorkItemAssignedToUser" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ActivityAssignedToUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="AssignedToUserDim" Relationship="WorkItem!System.WorkItemAssignedToUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ActivityRelatesToWorkItem" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ActivityDW!ActivityDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ActivityRelatesToWorkItem" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="RelatedWorkItemDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ActivityIsAboutComputer" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ActivityDW!ActivityDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ActivityIsAboutComputer" TargetDimension="DWBase!ConfigItemDim" AliasReplacementDimensionAs="ComputerDim" ReplacementDimension="DWBase!ComputerDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Target"/>
<!-- Substitutions for ChangeRequest-->
<Substitution MeasureGroupName="ChangeRequestIsAboutConfigItem" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ChangeDW!ChangeRequestDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ChangeRequestIsAboutConfigItem" TargetDimension="DWBase!ConfigItemDim" AliasTargetDimensionAs="RelatedConfigItemDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ChangeRequestCreatedByUser" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ChangeDW!ChangeRequestDim" Relationship="WorkItem!System.WorkItemCreatedByUser" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ChangeRequestCreatedByUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="CreatedByUserDim" Relationship="WorkItem!System.WorkItemCreatedByUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ChangeRequestAssignedToUser" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ChangeDW!ChangeRequestDim" Relationship="WorkItem!System.WorkItemAssignedToUser" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ChangeRequestAssignedToUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="AssignedToUserDim" Relationship="WorkItem!System.WorkItemAssignedToUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ChangeRequestRelatesToWorkItem" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ChangeDW!ChangeRequestDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ChangeRequestRelatesToWorkItem" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="RelatedWorkItemDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ChangeRequestContainsActivity" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ChangeDW!ChangeRequestDim" Relationship="Activity!System.WorkItemContainsActivity" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ChangeRequestContainsActivity" TargetDimension="ActivityDW!ActivityDim" AliasTargetDimensionAs="ActivityDim" Relationship="Activity!System.WorkItemContainsActivity" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ChangeRequestIsAboutComputer" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ChangeDW!ChangeRequestDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ChangeRequestIsAboutComputer" TargetDimension="DWBase!ConfigItemDim" AliasReplacementDimensionAs="ComputerDim" ReplacementDimension="DWBase!ComputerDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Target"/>
<!--Substitution for Reviews-->
<Substitution MeasureGroupName="ReviewActivityHasReviewer" TargetDimension="ActivityDW!ActivityDim" AliasTargetDimensionAs="ActivityDim" Relationship="Activity!System.ReviewActivityHasReviewer" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ReviewActivityHasReviewer" TargetDimension="ActivityDW!ReviewerDim" AliasTargetDimensionAs="ReviewerDim" Relationship="Activity!System.ReviewActivityHasReviewer" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ReviewerIsReviewerUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="ReviewerUserDim" Relationship="Activity!System.ReviewerIsUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ReviewerVotedByUser" TargetDimension="DWBase!UserDim" AliasTargetDimensionAs="ReviewerUserDim" Relationship="Activity!System.ReviewerVotedByUser" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="WorkItemIsAboutComputer" TargetDimension="DWBase!WorkItemDim" AliasTargetDimensionAs="WorkItemDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="WorkItemIsAboutComputer" TargetDimension="DWBase!ConfigItemDim" AliasReplacementDimensionAs="ComputerDim" ReplacementDimension="DWBase!ComputerDim" Relationship="WorkItem!System.WorkItemAboutConfigItem" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ActivityRelatesToChangeRequest" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ActivityDW!ActivityDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Source"/>
<Substitution MeasureGroupName="ActivityRelatesToChangeRequest" TargetDimension="DWBase!WorkItemDim" ReplacementDimension="ChangeDW!ChangeRequestDim" Relationship="WorkItem!System.WorkItemRelatesToWorkItem" RelationshipEndPoint="Target"/>
<Substitution MeasureGroupName="ServiceContainsComputer" TargetDimension="DWBase!ConfigItemDim" ReplacementDimension="DWBase!ComputerDim" AliasReplacementDimensionAs="ComputerDim"/>
<Substitution MeasureGroupName="ServiceContainsConfigItem" TargetDimension="DWBase!ConfigItemDim" AliasTargetDimensionAs="RelatedConfigItemDim"/>
</Substitutions>
<CustomMDX>SystemCenterCACubeMDX</CustomMDX>
<NamedCalculations>
<NamedCalculation ID="ChangeRequestsImplemented" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>( case when ( Status = 'ChangeStatusEnum.Completed' ) then 1 else 0 end )</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequestsImplementedOnSchedule" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>( case when ( Status = 'ChangeStatusEnum.Completed' AND ActualEndDate <= ScheduledEndDate ) then 1 else 0 end )</Calculation>
</NamedCalculation>
<NamedCalculation ID="EmergencyChangeRequests" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>( case when ( Category ='ChangeCategoryEnum.Emergency' ) then 1 else 0 end )</Calculation>
</NamedCalculation>
<NamedCalculation ID="ProcessTimePerChangeInDays" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<!-- Calculation>ROUND(DATEDIFF(HH, ActualStartDate, ActualEndDate) * 1./24, 2 ) -->
<Calculation>(DATEDIFF(HH, ActualStartDate, ActualEndDate)/24)</Calculation>
</NamedCalculation>
<NamedCalculation ID="ActivitiesImplemented" Target="ActivityDW!ActivityDim" ColumnType="Int">
<Calculation>( case when ( Status = 'ActivityStatusEnum.Completed' ) then 1 else 0 end )</Calculation>
</NamedCalculation>
<NamedCalculation ID="ActivitiesImplementedOnSchedule" Target="ActivityDW!ActivityDim" ColumnType="Int">
<Calculation>( case when ( Status = 'ActivityStatusEnum.Completed' AND ActualEndDate <= ScheduledEndDate ) then 1 else 0 end )</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_CreatedDate__DateKey" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), CreatedDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ScheduledStartDate__DateKey" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ScheduledStartDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ScheduledEndDate__DateKey" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ScheduledEndDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ActualStartDate__DateKey" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ActualStartDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ActualEndDate__DateKey" Target="ChangeDW!ChangeRequestDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ActualEndDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ActivityCreatedDate__DateKey" Target="ActivityDW!ActivityDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), CreatedDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ActivityScheduledStartDate__DateKey" Target="ActivityDW!ActivityDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ScheduledStartDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ActivityScheduledEndDate__DateKey" Target="ActivityDW!ActivityDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ScheduledEndDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ActivityActualStartDate__DateKey" Target="ActivityDW!ActivityDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ActualStartDate, 112),'20000101')</Calculation>
</NamedCalculation>
<NamedCalculation ID="ChangeRequest_ActivityActualEndDate__DateKey" Target="ActivityDW!ActivityDim" ColumnType="Int">
<Calculation>isNull(CONVERT(nvarchar(8), ActualEndDate, 112),'20000101')</Calculation>
</NamedCalculation>
</NamedCalculations>
<Measures>
<Measure ID="ChangeRequestsImplementedCount" Target="ChangeDW!ChangeRequestDim" Type="Sum" Property="ChangeRequestsImplemented"/>
<Measure ID="ChangeRequestsImplementedOnScheduleCount" Target="ChangeDW!ChangeRequestDim" Type="Sum" Property="ChangeRequestsImplementedOnSchedule"/>
<Measure ID="EmergencyChangeRequestsCount" Target="ChangeDW!ChangeRequestDim" Type="Sum" Property="EmergencyChangeRequests"/>
<Measure ID="ProcessTimePerChangeInDaysSum" Target="ChangeDW!ChangeRequestDim" Type="Sum" Property="ProcessTimePerChangeInDays"/>
<Measure ID="ActivitiesImplementedCount" Target="ActivityDW!ActivityDim" Type="Sum" Property="ActivitiesImplemented"/>
<Measure ID="ActivitiesImplementedOnScheduleCount" Target="ActivityDW!ActivityDim" Type="Sum" Property="ActivitiesImplementedOnSchedule"/>
</Measures>
<ManyToManyRelationships>
<ManyToManyRelationship CubeDimension="ServiceDim" TargetMeasureGroup="ChangeRequestIsAboutConfigItem" IntermediateMeasureGroup="ServiceContainsConfigItem"/>
<ManyToManyRelationship CubeDimension="ServiceDim" TargetMeasureGroup="ChangeRequestDim" IntermediateMeasureGroup="ChangeRequestIsAboutConfigItem"/>
<ManyToManyRelationship CubeDimension="ServiceDim" TargetMeasureGroup="ActivityIsAboutConfigItem" IntermediateMeasureGroup="ServiceContainsConfigItem"/>
<ManyToManyRelationship CubeDimension="ServiceDim" TargetMeasureGroup="ActivityDim" IntermediateMeasureGroup="ActivityIsAboutConfigItem"/>
</ManyToManyRelationships>
</SystemCenterCube>