获取当前用户所属的所有仓位,DictRelation,
//获取当前用户所属的所有仓位 表:WMSLocation
public client static void lookupWMSLocationIdbyUser(FormStringControl _ctrl,inventLocationId _inventLocationId )
{
SysTableLookup sysTableLookup = SysTableLookup::newParameters(tablenum(WMSLocation), _ctrl);
Query query;
QueryBuildDataSource queryBuildDataSource;
QueryBuildDataSource qbdsAuth;
QueryBuildRange queryBuildRange;
QueryBuildRange qbrUser;
DictRelation dr;
;
query = new Query();
queryBuildDataSource = query.addDataSource(tablenum(WMSLocation));
qbdsAuth = queryBuildDataSource.addDataSource(tablenum(ACT_LocationOwnerAuth));
dr = new DictRelation(tablenum(ACT_LocationOwnerAuth));
dr.loadFieldRelation(fieldnum(ACT_LocationOwnerAuth, InventLocationId));
dr.loadFieldRelation(fieldnum(ACT_LocationOwnerAuth, WMSLocationId));
qbdsAuth.addRelation(dr);
queryBuildRange = queryBuildDataSource.addRange(fieldnum(WMSLocation, InventLocationId));
qbrUser = qbdsAuth.addRange(fieldnum(ACT_LocationOwnerAuth, UserId));
queryBuildRange.value(queryValue(_inventLocationId));
queryBuildDataSource.addRange(fieldnum(WMSLocation, ACT_Status)).value(sysQuery::value(ACT_Status::InUse));
qbrUser.value(queryValue(curuserid()));
sysTableLookup.parmQuery(query);
sysTableLookup.addLookupfield(fieldnum(WMSLocation, wMSLocationId));
sysTableLookup.addLookupfield(fieldnum(WMSLocation, InventLocationId));
sysTableLookup.addLookupfield(fieldnum(WMSLocation,Name));
sysTableLookup.addLookupfield(fieldnum(WMSLocation,CNName));
sysTableLookup.addLookupfield(fieldnum(WMSLocation, LocationType));
sysTableLookup.addLookupfield(fieldnum(WMSLocation, StoreAreaId));
sysTableLookup.performFormLookup();
}