我想在Query提示中添加另一个数据源。
当我启动表单时,我打开提示查询。
我的格式为init
方法:
QueryRun queryRun;
super();
queryRun = new QueryRun(TableA_ds.query());
if (! queryRun.prompt())
{
element.close();
}
TableA_ds.query(queryRun.query());
在我的表单数据源中,在init
方法中,我已将此代码设置为我的查询范围:
tableA_ds.query().dataSourceTable(tablenum(TableA)).addRange(fieldnum(TableA,FieldtableA)).value(SysQuery::valueUnlimited() );
我想添加另一个数据源(另一个表) - TableB。 我用了这段代码:
purchLine_ds.query().dataSourceTable(tablenum(TableB)).addRange(fieldnum(TableB,FieldtableB)).value(SysQuery::valueUnlimited() );
但是,当我启动一个表单时,我只查看来自TableA的记录查询范围
TableA与TableB的关系在字段PurchId
上。
我想看两个范围。有人能帮我吗?
谢谢你的时间。
享受!
答案 0 :(得分:1)
我认为你可以添加另一个数据源: 。purchLine_ds.query()dataSourcetable(表A).addDatasource(tableNum中(表B); purchLine_ds.query()。dataSourcetable(表B).relations(真)
答案 1 :(得分:0)
感谢Alex,感谢您的帮助, 我用过这段代码, 在我的表单初始化方法:
query q = new Query();
QueryBuildDataSource qbds, qbds2;
QueryRun queryRun;
qbds = Q.addDataSource(tableNum(TableA));
qbds.addRange(fieldnum(TableA,Field1TableA)).value(SysQuery::valueUnlimited());
qbds2 = qbds.addDataSource(tableNum(TableB));
qbds2.relations(true);
并启动查询, 工作得很好,
享受!