Bu yazıda, sorgularımıza liste şeklinde birden çok kısıt eklemeyi inceleyeceğiz.
Öncelikle List dönecek bir method yazacağız.
private List requesterGroupList()
{
ETGBudgetRequesterGroupTable budgetRequesterGroupTable;
ETGBudgetRequesterGroupMember budgetRequesterGroupMember;
List list = new List(Types::String);
while select RequesterGroup from budgetRequesterGroupTable
exists join budgetRequesterGroupMember
where budgetRequesterGroupMember.RequesterGroup == budgetRequesterGroupTable.RequesterGroup
&& budgetRequesterGroupMember.Worker == HcmWorkerLookup::currentWorker()
{
list.addEnd(budgetRequesterGroupTable.RequesterGroup);
}
return list;
}
Ardından SysQueryRangeUtil::queryListRange() kodu ile sorgunuza birden fazla değer ile range eklemeniz mümkün.
QueryBuildRange qbr = ETGBudgetReqTable_ds.queryBuildDataSource().addRange(fieldNum(ETGBudgetReqTable, RequesterGroup));
qbr.value(SysQueryRangeUtil::queryListRange(element.requesterGroupList()));
qbr.status(RangeStatus::Locked);