You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power Automate中List Rows步骤筛选当前用户拥有行的表达式问题

获取当前用户拥有的所有Dataverse Account记录的解决方案

你的问题出在依赖triggerOutputs()?['body/_ownerid_value']获取当前用户ID——这个值仅在触发器绑定到某条Account记录(比如创建/修改Account)时才存在,若为手动触发或其他类型触发器,自然返回null。以下是两种可靠的实现方案:

方案一:使用Dataverse原生函数(推荐)

无需额外步骤,直接在**List Rows(Account表)**的Filter rows输入框中写入表达式:

ownerid eq currentuser()

currentuser()是Dataverse内置函数,会自动匹配当前运行流的用户对应的系统用户(systemuser)记录,直接筛选出该用户作为所有者的所有Account记录,逻辑更简洁可靠。

方案二:通过Office 365 Users连接器获取用户ID

如果需要更灵活的用户ID获取方式,可按以下步骤操作:

  1. 在List Rows步骤前添加**Get my profile (V2)**步骤(Office 365 Users连接器),该步骤会返回当前流运行用户的Azure AD信息。
  2. 若你的Dataverse系统用户与Azure AD同步,可直接在List Rows的Filter rows中写入:
    _ownerid_value eq '@{outputs('Get_my_profile_(V2)')?['body/id']}'
    
    若系统用户ID与Azure AD ID不匹配,需先添加**List Rows(systemuser表)**步骤,过滤条件设为azureactivedirectoryobjectid eq '@{outputs('Get_my_profile_(V2)')?['body/id']}',再用返回的systemuser主键ID作为Account表的_ownerid_value匹配值。

验证注意事项

  • 确保流运行账号拥有Account表的读取权限,且能访问自身拥有的Account记录。
  • 若使用方案二,需确认用户ID的匹配逻辑与Dataverse环境的用户同步规则一致。

内容的提问来源于stack exchange,提问作者Edward Cho

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 15:49:54