Добавление действия в карточку редактирования объекта раздела

OnDemand. Задача добавить действия в карточку раздела.
1
Пытался сделать по этой инструкции. Не выходит.

В итоге пришел к такому коду в странице редактирования раздела:

                methods: {
                        onEntityInitialized: function() {
                                if (this.isAddMode() || this.isCopyMode()) {
                                        this.getIncrementCode(function(response) {
                                                this.set("UsrDogNum", response);
                                        });
                                }
                                this.callParent(arguments);
                        },
                       
                        showDogNum: function() {
                                var UsrDogNum = this.get("UsrDogNum");
                                this.showInformationDialog(UsrDogNum);
                        }
                },
                rules: {},
                userCode: function() {
                        var actions = this.actions ? this.actions : [];
                        actions.push(
                                {caption: "", className: "Terrasoft.MenuSeparator"},
                                {caption: resources.localizableStrings.MyString, methodName: "showDogNum"}
                        );
                        this.actions = actions;

                }

Не работает. Страница открывается, но содержимое меню действий не меняется. Пытался запускать функцию из onEntityInitialized, не заполняет.

Нравится

2 комментария

Полный текст модуля страницы
usrcreditspage.txt

Владимир, начиная с версии 7.3 необходимо переопределять метод getActions

/**
                 * Возвращает коллекцию действий карточки
                 * @protected
                 * @overridden
                 * @return {Terrasoft.BaseViewModelCollection} Возвращает коллекцию действий карточки
                 */
                getActions: function() {
                    var actionMenuItems = this.callParent(arguments);
                    actionMenuItems.addItem(this.getActionsMenuItem({
                        "Type": "Terrasoft.MenuSeparator",
                        "Caption": ""
                    }));
                    actionMenuItems.addItem(this.getActionsMenuItem({
                        "Caption": { "bindTo": "Resources.Strings.YourActionCaption" },
                        "Tag": "calculate",//метод, который отрабатывает по click
                        "Enabled":  { "bindTo": "canUseCalculation" }
                    }));
                    return actionMenuItems;
                },
Показать все комментарии