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

Power Apps画布应用:将单选按钮值Patch到Dataverse选项列报错求助

解决Canvas应用Patch Dataverse选项集列类型不匹配问题

问题原因

错误提示明确说明:crb3f_projecttype参数类型不匹配,Dataverse表的选项集列(ProjectType)需要的是OptionSetValue (ProjectType (myTable))类型,但你传入的是文本(Text)类型。这是因为单选按钮/下拉列表的Selected.Value返回的是显示文本,而Dataverse选项集列要求的是带内部标识的选项集对象。

修正方案

根据你的控件绑定方式,分两种情况处理:

情况1:控件直接绑定Dataverse选项集

如果你的Radio1和CountryDrp的Items属性是直接设置为Choices(myTable.ProjectType)和Choices(myTable.Country),直接使用控件的Selected属性即可,它本身就是OptionSetValue类型:

Patch(myTable, Defaults(myTable), {
    Title: Textbox1.Text,
    ProjectType: Radio1.Selected,
    Country: CountryDrp.Selected
})

情况2:控件使用自定义文本选项

如果你的控件Items是自定义的文本列表(比如["类型A","类型B"]),需要手动构造OptionSetValue对象,把文本映射到对应的选项集类型:

Patch(myTable, Defaults(myTable), {
    Title: Textbox1.Text,
    ProjectType: OptionSetValue(myTable.ProjectType, Radio1.Selected.Value),
    Country: OptionSetValue(myTable.Country, CountryDrp.Selected.Value)
})

关键说明

Dataverse的选项集列本质是存储包含内部值和显示文本的结构化对象,不是单纯的字符串。直接传入Selected.Value的文本内容会导致类型不兼容,必须传入对应类型的OptionSetValue实例才能成功保存。

内容的提问来源于stack exchange,提问作者MJ X

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 17:42:05