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

Power Apps基于Excel后端实现仅显示当前用户休假记录问询

解决Power Apps休假追踪应用的两个权限与数据展示问题

问题1:根据登录用户的EmployeeID展示个人详情

  1. 获取当前登录用户的匹配标识:
    登录验证通过后,从你的Excel用户凭据表中,根据当前登录用户的邮箱(用User().Email获取)匹配对应的EmployeeID,并存储到全局变量中,比如:

    Set(gblCurrentEmployeeID, LookUp(用户凭据表, 用户邮箱 = User().Email, EmployeeID))
    

    (如果你的凭据表用姓名或其他字段匹配,替换User().Email为对应的User().FullName等即可)

  2. 绑定个人详情数据:

    • 若用表单控件展示详情,直接把表单的DataSource属性设置为:
      LookUp(用户详情表, EmployeeID = gblCurrentEmployeeID)
      
    • 若用单独标签展示字段,比如姓名标签的Text属性:
      LookUp(用户详情表, EmployeeID = gblCurrentEmployeeID, 姓名)
      

问题2:限制登录用户仅查看/编辑自身休假记录

  1. 过滤列表展示内容:
    把休假记录列表(Gallery)的Items属性设置为:

    Filter(休假记录表, EmployeeID = gblCurrentEmployeeID)
    

    这样Gallery只会加载当前登录用户的休假记录,不会显示其他人的。

  2. 控制编辑权限:

    • 若列表里有编辑按钮,把按钮的DisplayMode属性设置为:
      If(ThisItem.EmployeeID = gblCurrentEmployeeID, DisplayMode.Edit, DisplayMode.Disabled)
      
    • 进入详情编辑页后,表单的Edit属性或保存按钮的Visible也加同样判断,确保只有当前用户自己的记录才能被编辑。
  3. 修复跳转逻辑(可选):
    如果保留了非过滤的列表入口,在详情页加载时增加权限校验:

    If(SelectedRecord.EmployeeID <> gblCurrentEmployeeID, Notify("无权限查看此记录", NotificationType.Error); Navigate(首页))
    

内容的提问来源于stack exchange,提问作者iOS Legend

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 01:43:15