Коллеги всем доброго времени суток!
Стоит задача создавать новый заказ по нажатию кнопки из другого раздела.
Реализовал следующим образом
loadOrderPage: function(contact) { debugger; var requestUrl = "CardModuleV2/OrderPageV2/edit/" + Terrasoft.generateGUID(); var params = this.sandbox.publish("GetHistoryState"); var parameters = { viewModelConfig: { Contact: contact } }; var stateObj = { operation: enums.CardStateV2.ADD, parameters: parameters }; this.sandbox.publish("PushHistoryState", { hash: requestUrl, stateObj: stateObj }); }
Но параметры не передаются. и не заполняются поля. Подскажите как реализовать данный кейс?
Благодарю!
Нравится
Алексей,
Если нужно создать сущность из карточки другой сущности, почему нельзя просто сделать esq-запрос в БД или дернуть БП/Сервис, который это сделает на бэке? Наверное, у Вас есть какие-то особые условия созданий этой сущности?
Возможно, ему надо именно визуальное открытие карточки для ввода данных. В таком случае лучше реализовать БП c шагом открытия нужной карточки и в настройках элемента преднастроить заполнение полей.
Коллеги благодарю за помощь. Задача была без использования БП. Реализовал следующим образом.
loadOrderPage: function(contact) { var openCardConfig = { hash: this.sandbox.id, id: "Id", operation: enums.CardStateV2.ADD, schemaName:"OrderPageV2", moduleId: this.sandbox.id + "_AddOrderSuccessAction", defaultValues: [ { name: "Contact", value: contact.value }, { name: "uphType", value: "1AC347DB-DC55-4BA9-AC59-EF23041E891B" }, //"B2B" { name: "WaOrderType", value: "79BF282E-87CC-42CD-8A2A-E1147ECC4CB8" }, //"Физю лицо" { name: "Owner", value: Terrasoft.core.enums.SysValue.CURRENT_USER_CONTACT.value }, { name: "CreatedOn", value: new Date() } ] }; this.sandbox.publish("OpenCard", openCardConfig, [this.sandbox.id]); }