D365 Создаю батч джоб (с помощью SysOperation - Сервис клас и дата контракт) c Query.
Query создан в AOT - два datasource с Outer join. Range добавленный в AOT на второй datasource (child) не отображается при первом запуске. Точнее отображается в диалоге самого батча, но не отображается в настройках фильтров (кнопка Filter).
В ручную пользователь может добавить этот range и оно вроде даже работает.
В коде нашел что все range на Outer join datasource делаются невидимыми.
Что это такое? Лучше вообще не использовать Outer join и просто добавить поля для фильтров в сам диалог? Не понимаю для чего сделано такое ограничение
Class: SysQueryForm.getRangeVisible
X++:
dictTable = new DictTable(queryBuildDataSource.table());
if (dictTable && dictTable.isView() && SysQueryForm::isSFK(tableId, fieldId))
{
isVisible = NoYes::No;
}
else if (joinMode == JoinMode::OuterJoin)
{
isVisible = NoYes::No;
}
else
{