如何向 Power Apps 门户中的登录用户显示他们提交的表单是什么?
How can I show the logged-in user in Power Apps Portal what their form submissions are?
设置
我有一个包含以下页面的 Power Apps 门户:
- 资格预审页面。这有一个嵌入其中的实体表单。实体表单链接到自定义实体 SupplierPrequal。当用户填写并提交该表单时,他们将被重定向到下一页。
- 提交列表页面。这里面嵌入了一个列表。该列表应显示每个登录用户的表单提交。
- 提交编辑页面。这有一个嵌入其中的实体表单。实体表单链接到相同的自定义实体 SupplierPrequal 并允许他们将文件附加到以前的提交。
我面临的问题
在提交列表页面,它显示了除登录用户之外的其他用户的提交。这是一个截图。您可以看到 [Created By] 等字段的元数据无法识别提交表单的用户。
我能够使用登录的用户名自动填充字段 [00_lkp_UserSubmittingForm]。不幸的是,这不是唯一标识符,也可由用户编辑。
我看到了这些潜在的解决方案,非常感谢您的建议
- 更改元数据,而不是将字段 [Created By] 记录为 "SYSTEM",而是记录登录用户的唯一标识符。然后更改视图的过滤条件,使[Created By]等于当前用户。
- 更改元数据,以便使用登录用户的唯一标识符自动填充新字段,例如 [00_lkp_UserSubmittingForm]。然后更改视图的过滤条件,使新字段等于当前用户。
- 我怀疑这两种方法都需要查找 [External Identity] 实体的字段 [Username]。他们可能会涉及在门户管理中配置实体表单的选项卡 "Entity Reference" 和 "Entity Form Metadata"。
我研究了什么
如果我理解你的问题陈述,你希望过滤掉实体列表,在你的情况下,提交列表页面基于你的登录用户。
您现在可能会这样,门户中的每个用户都是 CRM 中的联系人记录。
如果我看到您的 createdby
、modifiedby
和 owner
字段,我相信您有一些背景逻辑 运行 在系统(用户)下并执行必填。
您有 2 种方法可以解决您的问题:
- 在 运行ning 用户的上下文中,将您的后台逻辑更改为 运行。这将
createdby
、modifiedby
和 owner
作为 运行ning 用户而不是系统。
- 或者您创建一个查找字段
00_lkp_UserSubmittingForm
我说的是查找字段而不是纯文本字段。此查找字段将与联系人有关系。因此,您可以作为用户使用联系人自动填充此字段(查找)。通过这种方式,您可以在 00_lkp_UserSubmittingForm
字段中获得独特的价值。因为它对每个用户(依次是联系人)都有唯一的 guid
现在用上面的任何方法你得到的是当前用户(唯一)。
那么您可以按照以下任何一篇文章来解决您的问题。
- 列表项
在实体列表本身中,有一个选项可以添加过滤条件。请检查以下内容:
Article Ref
- 或者按照这个article
设置
我有一个包含以下页面的 Power Apps 门户:
- 资格预审页面。这有一个嵌入其中的实体表单。实体表单链接到自定义实体 SupplierPrequal。当用户填写并提交该表单时,他们将被重定向到下一页。
- 提交列表页面。这里面嵌入了一个列表。该列表应显示每个登录用户的表单提交。
- 提交编辑页面。这有一个嵌入其中的实体表单。实体表单链接到相同的自定义实体 SupplierPrequal 并允许他们将文件附加到以前的提交。
我面临的问题
在提交列表页面,它显示了除登录用户之外的其他用户的提交。这是一个截图。您可以看到 [Created By] 等字段的元数据无法识别提交表单的用户。
我能够使用登录的用户名自动填充字段 [00_lkp_UserSubmittingForm]。不幸的是,这不是唯一标识符,也可由用户编辑。
我看到了这些潜在的解决方案,非常感谢您的建议
- 更改元数据,而不是将字段 [Created By] 记录为 "SYSTEM",而是记录登录用户的唯一标识符。然后更改视图的过滤条件,使[Created By]等于当前用户。
- 更改元数据,以便使用登录用户的唯一标识符自动填充新字段,例如 [00_lkp_UserSubmittingForm]。然后更改视图的过滤条件,使新字段等于当前用户。
- 我怀疑这两种方法都需要查找 [External Identity] 实体的字段 [Username]。他们可能会涉及在门户管理中配置实体表单的选项卡 "Entity Reference" 和 "Entity Form Metadata"。
我研究了什么
如果我理解你的问题陈述,你希望过滤掉实体列表,在你的情况下,提交列表页面基于你的登录用户。
您现在可能会这样,门户中的每个用户都是 CRM 中的联系人记录。
如果我看到您的 createdby
、modifiedby
和 owner
字段,我相信您有一些背景逻辑 运行 在系统(用户)下并执行必填。
您有 2 种方法可以解决您的问题:
- 在 运行ning 用户的上下文中,将您的后台逻辑更改为 运行。这将
createdby
、modifiedby
和owner
作为 运行ning 用户而不是系统。 - 或者您创建一个查找字段
00_lkp_UserSubmittingForm
我说的是查找字段而不是纯文本字段。此查找字段将与联系人有关系。因此,您可以作为用户使用联系人自动填充此字段(查找)。通过这种方式,您可以在00_lkp_UserSubmittingForm
字段中获得独特的价值。因为它对每个用户(依次是联系人)都有唯一的 guid
现在用上面的任何方法你得到的是当前用户(唯一)。
那么您可以按照以下任何一篇文章来解决您的问题。
- 列表项
在实体列表本身中,有一个选项可以添加过滤条件。请检查以下内容:
Article Ref
- 或者按照这个article