Axapta 如何基于下拉列表设置默认值并清除以前的表单值?

Axapta 如何基于下拉列表设置默认值并清除以前的表单值?,axapta,Axapta,我有一个要求,根据下拉值,它应该将复选框或字段默认为某个值 假设下拉列表的值是:1、2和3。如果选择1,则应选中复选框。如果选择2或3,则字段的默认值应为“983.3” 我要问的问题是:如何在选择1后选择另一个下拉值(2或3)时清除复选框/所有表单字段?因此,根据选择,只有1或2/3的条件默认值才会显示在表单上。我将假设您的所有字段都绑定到数据库表 然后在表中添加modifiedField方法: public void modifiedField(fieldId _fieldId) {

我有一个要求,根据下拉值,它应该将复选框或字段默认为某个值

假设下拉列表的值是:1、2和3。如果选择1,则应选中复选框。如果选择2或3,则字段的默认值应为“983.3”


我要问的问题是:如何在选择1后选择另一个下拉值(2或3)时清除复选框/所有表单字段?因此,根据选择,只有1或2/3的条件默认值才会显示在表单上。

我将假设您的所有字段都绑定到数据库表

然后在表中添加
modifiedField
方法:

public void modifiedField(fieldId _fieldId)
{
    super(_fieldId);
    switch (_fieldId)
    {
        case fieldNum(YourTable,YourDropdown):
            switch (this.YourDropdown)
            {
                case 1:
                    this.YourCheckBox = NoYes::Yes;
                    this.YourField = 0;
                    break;
                case 2, 3:
                    this.YourCheckBox = NoYes::No;
                    this.YourField = 983.3;
                    break;
            }
            break;
    }
}

表单字段的更新将自动进行。

我将假定您的所有字段都绑定到数据库表

然后在表中添加
modifiedField
方法:

public void modifiedField(fieldId _fieldId)
{
    super(_fieldId);
    switch (_fieldId)
    {
        case fieldNum(YourTable,YourDropdown):
            switch (this.YourDropdown)
            {
                case 1:
                    this.YourCheckBox = NoYes::Yes;
                    this.YourField = 0;
                    break;
                case 2, 3:
                    this.YourCheckBox = NoYes::No;
                    this.YourField = 983.3;
                    break;
            }
            break;
    }
}
表单字段的更新将自动进行