Открытие карточки объекта из реестра только в режиме редактирования
Добрый день.
Посчитали "совмещенный" режим не самым полезным для пользователя. Да и повторять логику отображения и доступности кнопок из Page в Section с помощью месседжей - не самый удобный вариант. В связи с этим решили открывать карточку объекта только в Page режиме, минуя совмещенный с реестром. Т.е. чтобы при нажатии на кнопку открыть в реестре, объект открывался только в режиме редактирования. Каким образом это реализовать? Может кто-то уже сталкивался с подобным кейсом?
Нравится
самый простой вариант (как мне кажется) переопределить метод
editRecord: function(primaryColumnValue) { var activeRow = this.getActiveRow(); var typeColumnValue = this.getTypeColumnValue(activeRow); var schemaName = this.getEditPageSchemaName(typeColumnValue); this.set("ShowCloseButton", true); this.openCard(schemaName, ConfigurationEnums.CardStateV2.EDIT, primaryColumnValue); },
в BaseSectionV2 и открывать карточку через window.open()
editRecord: function(primaryColumnValue) { var activeRow = this.getActiveRow(); var typeColumnValue = this.getTypeColumnValue(activeRow); var schemaName = this.getEditPageSchemaName(typeColumnValue); this.set("ShowCloseButton", true); window.open(Terrasoft.combinePath(Terrasoft.workspaceBaseUrl,"Nui/ViewModule.aspx#CardModuleV2",schemaName, ConfigurationEnums.CardStateV2.EDIT, primaryColumnValue)); //this.openCard(schemaName, ConfigurationEnums.CardStateV2.EDIT, primaryColumnValue); }
вот еще пример метода как Из карточки детали выполняется открытие счета сразу на редактирование:
openInvoicePage: function(invoiceId) { var config = { schemaName: "InvoicePageV2", operation: enums.CardStateV2.EDIT, id: invoiceId, moduleId: this.getInviocePageSandboxId() }; this.sandbox.publish("OpenCard", config, [this.sandbox.id]); },
Это же можно повторить и для Схем Реестров, Вызов Метода осуществляете предварительно получив Id сущности, что хотите открыть на редактирование из реестра.