基于 dataverse table 和多态字段所有者提交表单

Submit Form based on dataverse table with Polymorphic field owner

我创建了一个基于具有 User/Team 所有权 .

的数据空间 table 的表单

在这样的 table 中,只需要 3 个字段:

将这 3 个字段添加到表单时,我可以看到前 2 个字段的值,而不是所有者字段的值。

尝试提交表单(在修改现有记录后)我收到一条一般性失败消息。

An entry is required or has an invalid value. Please correct and try again

我怀疑表单没有提供更新所有者字段的数据,这让我研究了那些多态字段

看完this, that and another post,我明白了如何在表单datacard中显示这个字段的Owner(虽然这不是我的目标)。但我在更新该字段时仍然遇到问题。

所以我的问题是,如果记录已经有所有者,我还需要更新它吗?我怎样才能做到这一点?我需要使用 Patch 还是可以将它写在 Update 属性 中以使其与 SubmitForm(...)[=50= 一起工作]?

在这种情况下,对我来说 owner 应该根据 User().Email.

自动获取

奖金问题,当在此 table 中创建新记录时,我是否还必须生成 ID 或 dataverse 仍会处理它? 关于同一主题,我是否也必须弄清楚如何为“状态”字段提供“活动”值?

提前感谢您的帮助!

终于找到解决方法了,分享到这里,以后有需要的可以看看:

你不需要更新字段,如果没有包含在表单的加载字段中,后台的Dataverse会负责添加所有者、状态和ID(如果在 Dataverse 端正确设置)。 因此只需从表单中排除这些字段,系统就会处理它们。

But at first I didn't have those fields and yet could not save the form.

最后是因为另一个字段,一个 描述关系 与另一个 table 的查找字段。一旦我在后台自动填写了该字段(不可见 data-card),它就可以正常工作,但是 那 3 个字段仍然包括在内,因此我的错误正在相遇

这也回答了我的“奖金问题”,是的,PowerApps 和 Dataverse 在创建新项目时也会注意填写这些字段。