如何遍历关系以在Power BI仪表板上进行计算

时间:2019-05-17 18:28:21

标签: powerbi powerbi-desktop

我是Power BI的新手,并希望创建一个仪表板,以提供有关我们正在运行的工作流程的性能指标。

数据源是一个API,它以JSON格式返回数据(请参见下文)。 JSON包含已运行流程的列表,每个流程均分为多个阶段。

对于每个阶段:

  • 有1对许多系统和1对许多流。
  • 每次调用系统或流程时,都会在各自的列表中创建和创建项目,这意味着可能存在重复项。
  • 该流程中的一个流程可以链接到1个系统,并且一个系统将仅链接到一个流程。

我认为可以更好地创建此输出,但是我无法控制此系统来更改它。

我的问题是我想按队列计算总processTime。做这个的最好方式是什么?

我不确定您如何使用Ids遍历关系以获取所需的计算,而且我还在考虑,当我导入数据表时,结构将被展平为行,并且不了解这些对象如何链接彼此,因此当流和系统中有多个项目时,可能会重复行,因为它不知道流和系统可以通过其id进行连接,而流和系统可以在processStageId上连接到阶段。

JSON示例

{
    "processId": "9998bf60-db84-11e7-9709-c2b07aa3bee9",
    "startTimestamp": "2017-12-07T19:27:01.827Z",
    "endTimestamp": "2017-12-07T19:27:48.405Z",
    "stages": [
        {
            "processStageId": "99a96130-db84-11e7-b86d-6aa612aefe9d",
            "startTimestamp": "2017-12-07T19:27:01.827Z",
            "endTimestamp": "2017-12-07T19:27:34.792Z"
        }
    ],   
    "systems": [
        {
            "processSystemId": "9a9ebdb0-db84-11e7-816a-c7c1ef97bf27",
            "systemId": "0383c270-6b93-11e6-83b4-ca81484488df",
            "processStageId": "99a96130-db84-11e7-b86d-6aa612aefe9d",
            "flowId": "da75d1d0-686c-11e6-bab5-2a8ecd302b89"
            "processTime": 23.365
        }
    ],
    "flows": [
        {
            "processFlowId": "99c96c50-db84-11e7-95f3-204e8fcfa723",
            "flowId": "da75d1d0-686c-11e6-bab5-2a8ecd302b89",
            "flowName": "TestFlow",
            "processStageId": "99a96130-db84-11e7-b86d-6aa612aefe9d",
            "systemId": "0383c270-6b93-11e6-83b4-ca81484488df"
            "flowTime": 8.736
        }
    ]
}

0 个答案:

没有答案