修改单选项和多选项值
要在表中设置选项列值,最简单的方法是使用编辑窗体。 向窗体中添加选项列时,系统会设置一个字段,以完成以下任务:
设置为下拉菜单(对于单选项)或组合框(多个选项)。 (当您添加编辑窗体时,Power Apps 将使用组合框设置两者。)
使用 Choices() 函数填充用户可选择的值列表(同样,此操作会在使用编辑窗体时自动完成)。
从行的列值中设置控件的当前值。
使用控件(例如按钮)上的 SubmitForm 函数,以将值保存到表中。
将列添加到窗体后,默认可编辑。 如果要在窗体中显示选项列,但将其设置为不可编辑,需将控件类型窗体字段改为视图选项。
使用补丁进行创建或更新
还可使用 Patch() 函数创建或修改选项列。 本方法适用于您仅更新少数几个字段,并且这些字段无需或只需少量用户输入的情况。 例如,库项中会有一个按钮,选择后,该按钮会使用 OnSelect 行为来运行 Patch() 函数以更新行。
以下示例显示,已在库项上设置了一个按钮来将帐户设置为首选客户。 选择该按钮,其目标是将行的类别选项字段设置为首选客户。 为了完成本任务,我们已经在库项中添加设为 VIP 按钮。
设为 VIP 按钮的 OnSelect 属性包含 Patch() 公式,如以下所示:
Patch(Accounts, ThisItem, {Category: Category.'Preferred Customer'})
如果表列使用选项集,当您使用 Patch 时,需要使用选项集名称作为值的前缀,否则您会收到“OptionSetValue”错误。 您可以通过以下方式了解选项集名称是什么:转到 Dataverse 中的表,在编辑模式下选择该列,然后查找将此选项与以下对象同步字段。 该列的正下方即为选项集名称。
在这种情况下,类似表中按钮上的 Patch() 将类似于:
Patch(Accounts, ThisItem, {'Customer Type': Category.Preferred})