how to add range the query of the contract class in D365 code.
private void initQuery(Contractclass _contract)
{
query = _contract.getQuery();
wmsQBDS = query.dataSourceTable(tableNum(inventtable));
QueryBuildRange errorRange = wmsQBDS.addRange(fieldNum(inventtable, Isopen));
errorRange.value(queryValue(NoYes::No));
errorRange.status(RangeStatus::Locked);
QueryBuildDataSource QBDS =
QBDS.addDataSource(tableNum(NewTable));
wmsHeaderQBDS.relations(true);
wmsHeaderQBDS.joinMode(JoinMode::ExistsJoin);
SysQuery::findOrCreateRange(wmsHeaderQBDS, fieldNum(NewTable, Newfield)).value('newrange');
}
Please note that NewTable needs to have a relation with the InventTable or else you will also need to add a new relation.
Thanks,
Vikas Mehta.
No comments:
Post a Comment