Добрый день!
Подскажите пожалуйста, такой вопрос: есть браузер экрана, на котором находится фильтр и две вкладки: Пользовательские политики
и Встроенные политики
Скрин, где активная вкладка уже Встроенные политики
Фильтр должен применяться к активной вкладке. Сейчас же если я нахожусь на вкладке Встроенные политики
, то в выпадающем меню multiSelectComboBox
с именем Пользователь
выпадает значение admin
, хотя видно, что есть всего 2 записи в dataGrid
, и пользователя admin
среди них нет. Этот пользователь есть у записи с вкладки Пользовательские политики
Прикладываю дескриптор экрана, фильтр используется кастомный:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<view xmlns="http://jmix.io/schema/flowui/view"
title="msg://policyUiDtoListView.title"
focusComponent="policiesUiDtoesDataGrid">
<data>
<collection id="policiesUiDtoesDc"
class="ru.ctsg.damdbf.manager.ui.dto.policy.PolicyUiDto">
<fetchPlan extends="_base"/>
<loader id="policiesUiDtoesDl" readOnly="true"/>
</collection>
<instance id="policyUiDtoDc"
class="ru.ctsg.damdbf.manager.ui.dto.policy.PolicyUiDto">
<fetchPlan extends="_base">
<property name="conditionRequest"/>
<property name="actions"/>
</fetchPlan>
</instance>
</data>
<layout padding="false">
<details id="details" summaryText="msg://ru.ctsg.damdbf.manager.view.agent/filter" opened="true">
<formLayout id="formLayout">
<responsiveSteps>
<responsiveStep minWidth="0em" columns="3"/>
</responsiveSteps>
<multiSelectComboBox id="filterNameComboBox" property="name"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.name"
width="15em" classNames="filterBox">
<itemsQuery escapeValueForLike="true"
searchStringFormat="(?i)%${inputString}%">
<query>
<![CDATA[select distinct e.name from Policy e where e.name
like :searchString escape '\' order by e.name asc]]>
</query>
</itemsQuery>
</multiSelectComboBox>
<multiSelectComboBox id="filterStatusComboBox"
itemsEnum="ru.ctsg.damdbf.manager.core.enums.PolicyStatus"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.status" width="15em"
classNames="filterBox"/>
<multiSelectComboBox id="filterUserComboBox" property="user"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.user" width="15em"
classNames="filterBox">
<itemsQuery escapeValueForLike="true"
searchStringFormat="(?i)%${inputString}%">
<query>
<![CDATA[select e.userName from Policy e where e.userName
like :searchString escape '\' order by e.userName asc]]>
</query>
</itemsQuery>
</multiSelectComboBox>
<multiSelectComboBox id="filterDatabasesComboBox" property="databases"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.databases" width="15em"
classNames="filterBox">
<itemsQuery escapeValueForLike="true"
searchStringFormat="(?i)%${inputString}%">
<query>
<![CDATA[select e.databases from Policy e where e.databases
like :searchString escape '\' order by e.databases asc]]>
</query>
</itemsQuery>
</multiSelectComboBox>
<dateTimePicker id="filterCreatedAtFromDateTimePicker" property="createdAt"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.createdAtFromFilter"
width="15em" classNames="filterBox"/>
<dateTimePicker id="filterCreatedAtToDateTimePicker" property="createdAt"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.createdAtToFilter"
width="15em" classNames="filterBox"/>
<dateTimePicker id="filterUpdatedAtFromDateTimePicker" property="updatedAt"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.updatedAtFromFilter" width="15em"
classNames="filterBox"/>
<dateTimePicker id="filterrUpdatedAtToDateTimePicker" property="updatedAt"
label="msg://ru.ctsg.damdbf.manager.ui.dto.policy/PolicyUiDto.updatedAtToFilter" width="15em"
classNames="filterBox"/>
<hbox classNames="hboxFilterButton" colspan="3">
<button id="refreshFilterBtn" action="policiesUiDtoesDataGrid.refresh" classNames="refreshFilterBtn"/>
<button id="clearFilterBtn" action="policiesUiDtoesDataGrid.clear" classNames="clearFilterBtn"/>
</hbox>
</formLayout>
</details>
<tabs id="tabs" width="100%">
<tab id="policiesDatabaseTab" label="msg://databaseApplicationTab"/>
<tab id="policiesApplicationTab" label="msg://policiesApplicationTab"/>
</tabs>
<hbox height="100%" width="100%">
<split id="splitPolicy" colspan="2" width="100%" splitterPosition="65">
<vbox id="listLayout" height="100%">
<hbox id="buttonsPanel" classNames="buttons-panel">
<button id="createBtn" action="policiesUiDtoesDataGrid.create"/>
<button id="editBtn" action="policiesUiDtoesDataGrid.edit"/>
<button id="removeBtn" action="policiesUiDtoesDataGrid.remove"/>
<dropdownButton id="dropdownButton" text="msg://dropdownButtonInPolicy" enabled="false">
<items>
<textItem id="textItemFirst" text="msg://allOnDatabase"/>
<textItem id="textItemSecond" text="msg://selectOnDatabase"/>
</items>
</dropdownButton>
</hbox>
<dataGrid id="policiesUiDtoesDataGrid"
width="100%"
minHeight="20em"
dataContainer="policiesUiDtoesDc"
columnReorderingAllowed="true">
<actions>
<action id="create" type="list_create"/>
<action id="edit" type="list_edit"/>
<action id="remove" type="list_remove"/>
<action id="refresh" type="list_refresh" text="msg://ru.ctsg.damdbf.manager.ui.action/Search"
icon="SEARCH"/>
<action id="clear" text="msg://ru.ctsg.damdbf.manager.ui.action/Clear" icon="MINUS_CIRCLE_O"/>
</actions>
<columns resizable="true">
<column key="icon" header="msg://policy/Status" sortable="false" autoWidth="true"/>
<column property="name"/>
<column property="user"/>
<column property="databases"/>
<column property="createdAt"/>
<column property="updatedAt"/>
</columns>
</dataGrid>
<hbox alignSelf="CENTER">
<simplePagination id="pagination" dataLoader="policiesUiDtoesDl"
itemsPerPageVisible="true"
itemsPerPageItems="10, 20, 50, 100" itemsPerPageDefaultValue="10"
alignSelf="CENTER"/>
</hbox>
</vbox>
<vbox id="detailsLayout" height="100%">
<formLayout id="form" dataContainer="policyUiDtoDc" classNames="formLayoutPolicyInfo">
<textArea id="conditionsField" label="msg://conditionLabel" height="300px"
readOnly="true"/>
<textArea id="actionsField" label="msg://actionsLabel" height="300px"
readOnly="true"/>
</formLayout>
</vbox>
</split>
</hbox>
</layout>
</view>
Как мне добиться нужного поведения?