我创建了Leavemaster表和leaveApplication表的网格视图。 LeaveMaster中有字段LeaveId,LeaveApplication表中有外键。
我想,当我在LeaveAppliation表中选择leaveId时,会根据LeaveId自动填充像LeaveName这样的相关字段。
答案 0 :(得分:0)
如果您只想显示leaveName
,请使用LeaveApplicationTable
上定义的显示方法:
display EmplName leaveName()
{
return LeaveMasterTable::find(this.LeaveId).Name;
}
答案 1 :(得分:0)
如果您有更多要显示的字段,请考虑使用outer-join
。
在LeaveApplicationTable
表单中添加LeaveMasterTable
作为辅助数据源,并使用outer-join
作为joinMode
(Allow-Edit
:false)。
将modified
方法添加到LeaveId
数据源的LeaveApplicationTable
字段:
public void modified()
{
super();
leaveMasterTable.data(LeaveMasterTable::find(leaveApplicationTable.LeaveId));
leaveMasterTable_ds.refresh()
}
同时更改validateWrite
数据源的write
和LeaveMasterTable
方法,以便不更改任何数据:
public boolean validateWrite()
{
return true;
}
public void write()
{
//super();
}