11

我正在尝试获取 JSON 文本结果,例如

[
    {
        "TABLE_NAME": "UpdatePlanning"
    },
    {
        "TABLE_NAME": "StoreInfo"
    },
    {
        "TABLE_NAME": "InSiteTxPerHourPerDay"
    },
    {
        "TABLE_NAME": "inSiteTaskRecordsLocal"
    },
    {
        "TABLE_NAME": "InSiteStoreInformation"
    },
    {
        "TABLE_NAME": "InSiteLogExtractionTest"
    },
    {
        "TABLE_NAME": "InSiteDailySalesPerDay"
    },
    {
        "TABLE_NAME": "FredOfficeLogAlerts"
    },
    {
        "TABLE_NAME": "DPTestAutoScaleTable"
    },
    {
        "TABLE_NAME": "DPGenHoldTable"
    },
    {
        "TABLE_NAME": "DPDailyTopSellerItems"
    },
    {
        "TABLE_NAME": "DPDailyTierSales"
    },
    {
        "TABLE_NAME": "DPDailySales"
    },
    {
        "TABLE_NAME": "DPDailyAvgBasketSize"
    },
    {
        "TABLE_NAME": "ASGInSiteStoreInformation"
    }
]

从一个 Web API 中,我包装了一个“自定义连接器”以在 PowerApps 中使用。我的自定义连接器效果很好,我可以在自定义连接器屏幕中对其进行测试,但我不知道如何在 Power Apps 中访问该 JSON 数据以 - 例如 - 填充数据表或填充列表,或者画廊,甚至只是一个标签?请记住,从某些 GET 方法返回的 JSON 模式不是固定的,例如 JSON 结构可能会根据查询的对象类型等而有所不同,但无论如何我都无法使其正常工作。

示例:我已在 PowerApps 应用程序的第一个屏幕的 OnStart 方法中尝试过此操作

Set(myTable,InSiteConnector.gettables())

假设我的 JSON 将存储在变量 myTable.. 中,但如果我在标签或任何地方引用 myTable,它不会产生任何东西。对数据表或图表或列表使用相同的方法是相同的,没有结果。我在这里想念什么?我已经在网上搜索过,但我尝试的语法似乎都不起作用。

同样,如果我创建一个数据表并尝试选择我的自定义连接器作为数据源,例如它在数据源列表中

在此处输入图像描述

但是添加它只会导致它一次又一次地出现在这个列表中......

在此处输入图像描述

但我不能点击它,或者用它做任何看起来很明显的事情,就从它获取数据而言?(例如,能够从我的 JSON 中选择字段,甚至可以从 GET 方法返回原始 BODY)

我已经开始为某人提供赏金,请向我展示一个工作且可复制的示例,该示例将 JSON 从此 Web API 获取到 PowerApps 应用程序中,以便在画廊或类似应用程序中使用。谢谢!

4

1 回答 1

5

必须定义返回数据的 JSON 架构,任何不符合该架构的数据都不会传递回 PowerApps。这是因为架构用于定义 PowerApps 中的返回类型以供进一步使用。在某种程度上,您可以说连接是强类型的。

下面是一个屏幕截图,您可以在其中定义响应正文,以便数据“显示为设计器中的输出”,如有用的提示。

如果您的架构是可变的,您可以做的是使用 Flow 获取数据并对其进行处理,并在将其返回给 PowerApps 之前符合您定义的响应架构。

例如看这篇博文。如果您的响应正文是可变的,那么您可以在 GetDailySales 步骤之后在流中插入一些逻辑,以调整响应正文以适应响应步骤中定义的 JSON 模式。

在此处输入图像描述

于 2018-09-27T12:34:56.300 回答