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

如何在Power Apps中获取当前登录用户Delve的Cost Center ID

在Power Apps中获取Delve附加信息里的Cost Center ID的解决方法

Delve里的「附加信息」板块的Cost Center ID通常存储在Azure AD的用户扩展属性中,而非Office365Users.UserProfileV2返回的基础属性里,以下是可行的解决步骤:

1. 确认Cost Center ID对应的Azure AD属性字段

首先需要明确Cost Center ID实际映射到Azure AD的哪个属性:

  • 打开Microsoft Graph Explorer,登录后调用GET https://graph.microsoft.com/v1.0/me
  • 在返回的JSON数据中查找包含Cost Center值的字段,常见的是onPremisesExtensionAttributes下的extensionAttribute1至extensionAttribute15中的一个,或者是自定义格式的扩展属性(如extension_<应用ID>_CostCenterID)

2. 使用Microsoft Graph连接器获取属性

Office365Users连接器通常不返回扩展属性,建议使用Microsoft Graph连接器:

  • 在Power Apps编辑器中,添加「Microsoft Graph」连接器(需配置User.Read权限)
  • 根据找到的属性字段,使用对应公式:
    • 如果是extensionAttribute3:
      Set(varCostCenter, MicrosoftGraph.Me().onPremisesExtensionAttributes.extensionAttribute3)
      
    • 如果是自定义扩展属性:
      Set(varCostCenter, MicrosoftGraph.Me()['extension_xxxxxxxxxx_CostCenterID'])
      
      (将xxxxxxxxxx替换为实际的应用ID,CostCenterID替换为自定义属性名)

3. 备选:使用Office365Users V1版本连接器

部分场景下,Office365Users的V1接口可能返回扩展属性,可以尝试:

Set(varCostCenter, Office365Users.GetUserProfile(User().Email).extensionAttributes.extensionAttribute3)

注意事项

  • 确保Power Apps使用的连接器拥有读取用户扩展属性的权限,需在Azure AD中为对应的应用注册配置User.Read或User.ReadBasic.All权限
  • 如果Cost Center ID是在Delve中手动添加的,需确认该值已同步到Azure AD的对应属性中

内容的提问来源于stack exchange,提问作者Sanjyot Walunj

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 19:37:07