Здравствуйте. Версия 1.5.5.
У меня есть такой метод, где я создаю LinkButton у каждой группы для создания и открытия экрана с таблицей.
Я хочу чтобы открывался экран OpasContactsBrowse не со всеми данными в таблице а только с теми, которые относятся к конкретной группе где был создан LinkButton.
Для этого я хочу передать параметр readinessMonitor.getName() в OpasContactsBrowse , где в дальнейшем будет вызываться loader с нужным параметром для фильтрации значений в таблице.
Проблема в том, что в моем методе, сначала создается экран, в котором срабатывает метод
public void setFilterParam(String nameGroup) {
this.nameGroup = nameGroup;
}, где nameGroup == null
а потом сетается значение readinessMonitor.getName() и в созданный экран оно уже не приходит. Как можно было бы реализовать эту логику по другому?
private void createOneCell(ReadinessMonitor readinessMonitor) {
Label<String> nameOrganization = createLabel(readinessMonitor.getName(), "groupRDName");
LinkButton linkButton = createLinkButton(JmixIcon.EXTERNAL_LINK.source(), "groupRDLink");
linkButton.addClickListener(clickEvent -> {
OpasContactsBrowse screen = screenBuilders.screen(this)
.withScreenClass(OpasContactsBrowse.class)
.withOpenMode(OpenMode.THIS_TAB)
.build();
opasContactsBrowse.setFilterParam(readinessMonitor.getName());
screen.show();
});
}