PowerApps Canvas App:如何获取Dataverse Choice列值用于计算?
获取PowerApps中Dataverse Choice列值用于计算的方法
1. 从绑定表单的Choice控件取值
如果你的Choice字段是放在表单(Form)的DataCard里,直接用表单的Updates属性就能拿到当前选中项的值:
- 单选项场景(默认的Choice列都是单选):
假设表单名为Form1,Choice列的逻辑名称是YourChoiceColumn(去Dataverse表的字段设置里看逻辑名,别用显示名),提交按钮的OnSelect里写:// 先把选中值存到变量里 Set(varSelectedChoiceValue, Form1.Updates.YourChoiceColumn.Value); // 这里写你的计算逻辑,比如乘以10 Set(varCalcResult, varSelectedChoiceValue * 10); - 多选项场景(如果你的Choice列允许多选):
多选返回的是集合,需要遍历提取每个值:// 获取所有选中值的集合 Set(varSelectedChoiceValues, ForAll(Form1.Updates.YourChoiceColumn, Value)); // 示例:计算选中值的总和 Set(varTotalSum, Sum(varSelectedChoiceValues, Value));
2. 从独立的Choice控件取值(未绑定表单)
如果是单独添加的Dropdown或ComboBox控件(没绑定到表单DataCard):
- 单选Dropdown:
Set(varSelectedValue, Dropdown1.Selected.Value); - 多选ComboBox:
Set(varSelectedValues, ForAll(ComboBox1.SelectedItems, Value));
额外提示
- 别搞混
Value和Label:你要计算用的是Value(Dataverse里设置的选项值),如果要拿显示的文字就用.Label。 - 提交表单后想基于保存后的记录计算,可以用
Form1.LastSubmit:SubmitForm(Form1); If(Form1.LastSubmit <> Blank(), Set(varPostSubmitCalc, Form1.LastSubmit.YourChoiceColumn.Value * 5) );
内容的提问来源于stack exchange,提问作者bmickey
相关产品推荐
相关产品推荐

