有人能告诉我如何使用Power从Dataverse表创建Excel行的教程吗?例如,我有一个Dataverse表,其中一个列是"color“。对于每条带有“蓝色”的记录,我想在Excel文件中添加一行。我很难找到一个youtube或博客来解释这一点,但我肯定我的搜索不够好。
我试图连接到Dataverse表,但不确定如何遍历所有行。另外,也不完全理解数据交换过滤器中的所有命令,我习惯了PowerApps过滤器,但是习惯了eq和ne,等等。
发布于 2022-04-03 06:45:48
有很多方法可以达到你想要的结果。我已经选择了一种相对简单的方法,它应该做您想做的事情,但取决于性能等等,您可能想要将它更改为其他的东西。
首先,我在DataVerse中创建了一个带有几个虚拟字段的表,很明显,您只需要使用自己的表。
这是表的结构,因此您有上下文,我突出显示了我想要提取的其他字段(以及ID、名称和创建的).

现在,在我的流程中,我添加了Dataverse ->列表行操作。具体来说,我已经将数据过滤到了cr160_color列中,用于蓝色值,这是您想要根据您的场景进行的。

下一步是遍历从表中检索到的数据,并将其写入具有SharePoint表(必须定义为表)的工作区上的Excel文档,其中包含以下字段。

这是流程中的动作步骤..。

当它执行时,我得到我的数据..。

如果您再次运行该流,它将使所有数据加倍,因此如果您需要在再次加载之前清除该表(如果需要的话,可以尝试更新或增量加载),那么您可以在加载数据之前插入一个步骤来清除该表。
你可以用一个办公室脚本来完成。要做到这一点,在Excel中,您应该在带状中有一个名为Automate的选项卡.

在这里,创建一个新脚本,将其命名为 create 并添加以下代码.
function main(workbook: ExcelScript.Workbook, worksheetName: string, tableName: string)
{
let worksheet = workbook.getWorksheet(worksheetName);
let tableToClear = worksheet.getTable(tableName);
let rowsToDelete = tableToClear.getRangeBetweenHeaderAndTotal().getRowCount();
try {
tableToClear.deleteRowsAt(0, rowsToDelete - 1);
}
catch { }
}现在,在流加载所有数据之前,在流中注入该步骤.

这是最后的流程..。

https://stackoverflow.com/questions/71722064
复制相似问题