可以更新 2 列表格 1 查找吗?

It is possible to update 2 column form 1 lookup?

我正在寻找我的问题的解决方案。我有 2 列,我从查找中获取了第一个数据。但是也可以用数据更新第二列吗? 在第一列中,我得到一个 ID 并希望它自动使用此 ID 的名称更新第二列。完成

 public void lookup()
    {
        Query query = new Query();
        QueryBuildDataSource queryBuildDataSource;
        QueryBuildRange queryBuildRange;
        HcmWorkerStaging hcmworkerstaging;


        SysTableLookup sysTableLookup = SysTableLookup::newParameters(tableNum(HCMWORKERSTAGING), this);

        sysTableLookup.addLookupField(fieldNum(HCMWORKERSTAGING, PhoneticMiddleName));
        sysTableLookup.addLookupField(fieldNum(HCMWORKERSTAGING, NameAlias));

        queryBuildDataSource = query.addDataSource(tableNum(HCMWORKERSTAGING));

        sysTableLookup.parmQuery(query);

        sysTableLookup.performFormLookup();



       // super();
    }

是的,这是可能的。

您必须覆盖该字段的 modified 方法(您进行查找的同一字段)。

根据您的代码示例:

Modified 方法在 Lookup 方法之前执行并具有所选的值。

public void modified()
{

    HcmWorkerStaging hcmworkerstaging;

    super();

    select * from hcmworkerstaging where hcmworkerstaging.PhoneticMiddleName == YourDataSource.YourField1;
    if(hcmworkerstaging)
    {
        YourDataSource.YourField2 = hcmworkerstaging.NameAlias;
    }
}

谢谢!它有效但部分。该值还可以,但是当我再次更改时,它没有修改以匹配新 ID。 无论如何,我还有最后一个问题,但我不知道是否应该为它创建另一个线程。我需要为 NAME 创建一个动态过滤器。对于我输入的每个字符,它都会进行过滤并给出包含某处字母或单词的值。管理只是为了在其中创建一个简单的过滤器来搜索第一个匹配的词:/