Есть два запроса
такой:
[codebox]StrRange = '(((OutlookTaskTable.Ot = "%1") || (OutlookTaskTable.User = "%2")))';
rq = OutlookTaskTable_q.dataSourceTable(TableNum(OutlookTaskTable)).addRange(FieldNum
(OutlookTaskTable, RecId));
rq.value(strfmt(StrRange, CurUserId(), CurUserId()));[/codebox]
и такой:
[codebox]ds = OutlookTaskTable_q.dataSourceTable(TableNum(OutlookTaskTable));
ds2 = OutlookTaskTable_q.dataSourceTable(TableNum(EmplTable));
if (!ds2)
{
ds2 = ds.addDataSource(TableNum(EmplTable));
ds2.addLink(FieldNum(OutlookTaskTable, User), FieldNum(EmplTable, EmplId));
ds2.joinMode(JoinMode::ExistsJoin);
ds2.addRange(FieldNum(EmplTable, HRMOrganizationId)).value(ArrayStr);
}
else ds2.findRange(FieldNum(EmplTable, HRMOrganizationId)).value(ArrayStr);[/codebox]
Если я их пишу вместе, то получается они работают как условие"И". Как сделать, чтобы второй запрос присоединялся к первому как условие"ИЛИ"?
Второй запрос смотрит поле User из таблицы OutlookTaskTable и проверяет по таблице EmplTable принадлежность к подразделению CurUserId().
Мне нужно реализовать в аксапте вот такой запрос:
[codebox]SELECT * FROM OutlookTaskTable A
INNER JOIN EmplTable B ON A.User = B.EmplId
WHERE A.USER = 'ANV' OR B.HRMORGANIZATIONID = 'IS'[/codebox]
Проблема как добавить условие по OR
|