如何在 PowerBi 中将切片器中的选定值设置为 API

How to set selected value from slicer to API in PowerBi

我想 select 来自切片器的时间并将用户 select 编辑的值放入 API。在我从 API 获取值后,分析将在我的本地计算机上进行,并将分析的数据设置到 PowerBi(对于用户 selected 数据)。

我使用以下 API.

设置上面的切片器

http://localhost:9002/ANC/analysis/parameterList

Python 文件:

from flask import Flask, jsonify, abort,request
import time
app = Flask(__name__)

@app.route('/ANC/analysis/parameterList',methods=['GET'],endpoint='parameterList')
def parameters():
    data = {
            "time":["lastMonth","lastYear","lastWeek","lastHour","lastDay"],
           
            }
    return data

if __name__ == '__main__':
    app.run(debug=True,host='0.0.0.0',port=9002)


# url6 = 'http://localhost:9002/ANC/analysis/parameterList'

是否可以通过 API PowerBi 将用户select编辑的参数用于本地分析?或者有什么办法可以解决吗?

PowerBI 不像 Web 开发框架那样工作。您不能将切片器中的选择“post”到 API.

我能想到一些可以提供可接受替代方案的选项:

  1. 您从 API 端点导入所有数据。然后使用切片器按照设计进行切片。对于大量数据(在 API 中),有使用 M.Here is an example 将数据分页到 PowerBI 的技术。 PowerBI 将轻松处理千兆字节的数据,尽管 API 可能无法完成任务。

  2. 使用中间数据库/数据集市/数据仓库对数据建模,运行您的 PowerBI 在数据存储之上。通过这种方法,您可以使用 DirectQuery 将您处理的数据限制为 PowerBI。

  3. 如果您在本地工作并且只使用 PowerBI 桌面。您可以在 PowerBI 文件中设置参数,然后通过参数提供时间。如果将 PowerBI 文件另存为 PowerBI 模板 (PBIT),则它会保存没有任何数据的 PowerBI。当您打开模板时,它会提示您提供参数。

不是 100% 的答案,但我希望它能为您提供一些可供考虑的选项。