如何在icCube范围维度II中使用流程管理起止日期并展示变更最新阶段
用icCube范围维度II实现ITSM变更阶段的时间建模
刚好做过类似的ITSM变更阶段建模,用icCube的范围维度II完全能搞定你的需求,下面一步步给你拆解:
1. 先梳理你的数据结构
首先你的事实表得包含每个变更阶段的完整时间信息,建议结构如下:
变更ID:唯一标识每个变更请求阶段名称:待授权/进行中/待审核/已关闭阶段开始日期:该阶段的起始时间阶段结束日期:该阶段的结束时间(因为阶段无间隔,这个日期刚好是下一个阶段的开始日期前一天/同一时刻,根据你的时间精度调整)
2. 创建范围维度II
在icCube建模界面里按以下步骤操作:
- 新建维度,选择范围维度II类型
- 在维度配置里,把事实表的
阶段开始日期设为范围的起始字段,阶段结束日期设为结束字段 - 关联事实表:确保这个范围维度和你的变更事实表建立正确的连接,让icCube能识别每个阶段对应的时间区间
- 给维度加层级:把
阶段名称作为维度的一个子层级,这样后续可以直接按阶段筛选,同时结合时间维度查看每个阶段在时间线上的分布
3. 配置度量指标
根据你的需求创建对应的度量,比如:
- 变更数量:用
COUNT(DISTINCT [变更ID])来统计某一时间点/时间段内处于对应阶段的变更数 - 阶段持续时长:用
SUM(DATEDIFF(day, [阶段开始日期], [阶段结束日期]))计算所有变更在该阶段的总耗时(时间单位可以换成hour/minute,根据你的需求调整)
4. 查询验证(MDX示例)
写个简单的MDX查询来验证效果,比如查看每个阶段在日期维度上的变更分布:
SELECT [变更阶段维度].[阶段名称].Members ON ROWS, [时间维度].[日期].Members ON COLUMNS, [Measures].[变更数量] ON VALUES FROM [ITSM变更模型]
这个查询会展示出每天各个阶段有多少个变更在运行,因为你的阶段时间无间隔,所以每个变更的时间线会被完整覆盖,不会出现断档。
关键注意点
因为你的阶段是连续无间隔的,范围维度II会自动处理这种连续时间区间的映射,不需要额外配置去补全空白时间。只要你的事实表数据准确,每个变更的阶段时间首尾衔接,就能完美实现你要的流程阶段时间建模。
内容的提问来源于stack exchange,提问作者Arthur
相关产品推荐
相关产品推荐

