Не выводятся данные до refresh

Добрый день! Есть такая проблема:
Если в лоадере указано

            <loader id="assetsDl">
                <query>
                    <![CDATA[select e from Asset e]]>
                </query>
            </loader>

то все выводится как обычно.
Но если модифицировать его так:

            <loader id="assetsDl">
                <query>
                    <![CDATA[
                        select e from Asset e
                        join User u
                        join u.workGroup workGroup
                        join workGroup.workGroupContext workGroupContext
                        join workGroupContext.rootAsset rootAsset
                        where u.username = :current_user_username
                        and e.fullCode like CONCAT(rootAsset.fullCode, '%')
                    ]]>
                </query>
            </loader>

то при переходе на экран через пункт меню данные не появляются (сообщений об ошибке тоже нет). Если нажать refresh, то данные появляются и отображаются, как ожидается.
Подскажите, пожалуйста, с чем это может быть связано?

Вот в этой теме есть рецепт: Проблема с dataLoadCoordinator - Вопросы и проблемы - Jmix

1 симпатия

Добрый день!
Как только в запросе появляется параметр, то автозагрузка датасета отключается.
Поэтому в экранах с параметризованными запросами надо в контроллере в обработчике события onBeforeShow явно вызывать загрузку - assetsDl.load();.
Либо использовать указанный @andrey_vb способ, что не всегда удобно, т.к. запрос может быть сложным как в вопросе этого топика.