Отображение экрана при наступлении события

Здравствуйте!
Мне нужно отображать дополнительный экран на экране -edit.xml при наступлении события (нажатии на кнопку “сохранить”). Какой метод в jimix предусмотрен в этом случае?

Не очень понятно чего вы хотите этим добиться, но если вы о стандартной кнопке экрана редактирования c ltqcndbtv windowCommitAndClose варианта два:

  • Подписаться на BeforeCommitChangesEvent. Вызывается перед сохранением изменений на экране. Там можно что-то дополнительно проверить, переспросить и т.п. При необходимости можно и прервать сохранение.
  • Подписаться на событие нажатия кнопки (@Subscribe("windowCommitAndClose")), но экран вызванный в этом месте не остановит сохранения данных.

Добрый день! Я поясню. Пользователь заполняет данные на экране (заносит данные о выпущенной продукции). Далее он сохраняет эти данные в базе данных (нажимает на кнопку "сохранить). В базе данных возникает поле с данными и ай ди записи. Далее, если данные были сохранены в БД, то можно двигаться дальше и заполнять следующую таблицу. Но пока пользователь не заполнил и не сохранил первую таблицу, следующая таблица не отображается. То есть пока запись не возникла в бд с присвоенным айди, вторая таблица не может быть отражена на экране у пользователя. И все эти действия должны отображаться на одном пользовательском экране (то есть слева - таблица о продукции, а справа - следующая таблица). как бы разделяя его на две части. Скорее всего это не windowCommitAndClose, а что то еще.

Тогда логичнее событие onAfterClose и там проверить с каким результатом закрылся экран

@Subscribe
    public void onAfterClose(final AfterCloseEvent event) {
        if (event.getCloseAction().equals(WINDOW_COMMIT_AND_CLOSE_ACTION)) {
            ....
        }
    }

Спасибо! А код в джава скриптовых файлах случайно не нужно дописывать? За такое действие, как я понимаю, джава скрипт под капотом Джимикса отвечает. Там же еще как то xml наверно нужно дописать.

Если вы говорите про стандартные экраны платформы - JS не потребуется.
В документации все неплохо расписано про события экранов.

И про открытие экранов из кода.

Да, и если все эти действия все же должны выполняться на Одном экране, а не на разных - посмотрите компонент UI Accordion.
Возможно, под “дополнительный экран на экране” вы имеете в виду что-то подобное.