可以更新 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 创建一个动态过滤器。对于我输入的每个字符,它都会进行过滤并给出包含某处字母或单词的值。管理只是为了在其中创建一个简单的过滤器来搜索第一个匹配的词:/
我正在寻找我的问题的解决方案。我有 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 创建一个动态过滤器。对于我输入的每个字符,它都会进行过滤并给出包含某处字母或单词的值。管理只是为了在其中创建一个简单的过滤器来搜索第一个匹配的词:/