为什么我在查询中拒绝 Field dataAreaId 访问?
Why I have Field dataAreaId Access denied in a Query?
我有一个问题,我在 init Form 中使用了一个小查询。
我使用了这段代码:
query q = new Query();
QueryBuildDataSource qbds;
QueryRun queryRun;
qbds.addRange(fieldNum(MyTable,dataAreaId)).value(SysQuery::valueUnlimited());
queryRun = new queryRun(q);
if (! queryRun.prompt())
{
element.close();
}
MyTable_ds.query(queryRun.query());
当我在 查询提示 中插入一个值时,我将收到一条错误消息:
"Can not select the Company field."
我在 Design 和 dataSource 中有这个字段,但我不能在查询中使用。
我可以毫无问题地使用所有其他字段。
是否可以在查询中使用该字段?
谢谢你的时间,
尽情享受吧!
您不能在查询中包含 DataAreaId
。
但是您可以在查询中使用 addCompanyRange
方法:
q.addCompanyRange("dat");
试试这个:
query q = new Query();
QueryBuildDataSource qbds;
QueryRun queryRun;
qbds = q.addDataSource("MyTable");
//Build you query
q.allowCrossCompany(true);
q.addCompanyRange("dat");
queryRun = new queryRun(q);
if (! queryRun.prompt())
{
element.close();
}
MyTable_ds.query(queryRun.query());
我有一个问题,我在 init Form 中使用了一个小查询。 我使用了这段代码:
query q = new Query();
QueryBuildDataSource qbds;
QueryRun queryRun;
qbds.addRange(fieldNum(MyTable,dataAreaId)).value(SysQuery::valueUnlimited());
queryRun = new queryRun(q);
if (! queryRun.prompt())
{
element.close();
}
MyTable_ds.query(queryRun.query());
当我在 查询提示 中插入一个值时,我将收到一条错误消息:
"Can not select the Company field."
我在 Design 和 dataSource 中有这个字段,但我不能在查询中使用。 我可以毫无问题地使用所有其他字段。
是否可以在查询中使用该字段?
谢谢你的时间,
尽情享受吧!
您不能在查询中包含 DataAreaId
。
但是您可以在查询中使用 addCompanyRange
方法:
q.addCompanyRange("dat");
试试这个:
query q = new Query();
QueryBuildDataSource qbds;
QueryRun queryRun;
qbds = q.addDataSource("MyTable");
//Build you query
q.allowCrossCompany(true);
q.addCompanyRange("dat");
queryRun = new queryRun(q);
if (! queryRun.prompt())
{
element.close();
}
MyTable_ds.query(queryRun.query());