Параметр передачи sapui5 в диалоговое окно справки значения SmartFilterBar ControlConfiguration

У меня есть SmartFilterBar на моей странице на основе сервиса oData. Одно из фильтруемых полей имеет значение справки. Когда открылось диалоговое окно справки значения, мне нужно заполнить один из параметров поиска в этом диалоге справки значения. Как я могу это сделать? Я не могу получить диалоговое окно справки по значению, потому что "метод byId()" теперь не идентифицирует созданный диалог.

1 ответ

Решение

Я нашел решение: как я могу получить идентификатор открытого значения helpdialog: В случае "onValueHelpRequest" из I я повторяю метод "onAfterRendering" класса "sap.ui.comp.valuehelpdialog.ValueHelpDialog" и в этом методе я могу получить идентификатор диалог:

filterInitialize: function() {
    var oDogovorControl = this.getView().byId("smartFilterBar").getControlByKey("Dogovor");
    oDogovorControl.attachValueHelpRequest(this.onValueHelpRequest, this);
},
onValueHelpRequest: function() {
    sap.ui.comp.valuehelpdialog.ValueHelpDialog.prototype.test = sap.ui.comp.valuehelpdialog.ValueHelpDialog.prototype.onAfterRendering;
    var fntest2 = function(oEvent){
                      this.test();
                      console.log(this.getId());
                    };
    sap.ui.comp.valuehelpdialog.ValueHelpDialog.prototype.onAfterRendering = fntest2;
}
Другие вопросы по тегам