是否可以更新 2 列表单 1 查找?



im正在寻找我的问题的解决方案。我得到了 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 制作一个动态过滤器。对于我键入的每个字符,它都会过滤并给出与某处字母或单词重合的值。设法在其中制作一个简单的过滤器来搜索第一个匹配的单词:/

最新更新