Не получается добавить кнопку в карточку редактирования Лида рядом с Сохранить и тп
В файл LeadPageV2, в diff добавил
"operation": "insert",
"parentName": "LeftContainer",
"propertyName": "items",
"name": "CalculateButton",
"values": {
"itemType": Terrasoft.ViewItemType.BUTTON,
"caption": "Calculate",
"classes": {"textClass": "actions-button-margin-right"},
"click": {"bindTo": "GetDeliveryPrice"},
"style": Terrasoft.controls.ButtonEnums.style.GREEN,
"visible": "true"
},
"index": 2
},
Кнопка не появляется. Какие еще действия необходимо проделать?
Нравится
Кнопка, которую вы прописали, будет появляться на странице редактирования при добавлении записи, например.
Я думаю то, что вам нужно это замещение LeadSectionV2. Попробуйте:
{ "operation": "insert", "name": "CalculateButton", "parentName": "CombinedModeActionButtonsCardLeftContainer", "propertyName": "items", "values": { "itemType": Terrasoft.ViewItemType.BUTTON, "caption": "Calculate", "style": Terrasoft.controls.ButtonEnums.style.GREEN, "visible": true } }
"Толмачев Дмитрий Юрьевич" написал:Кнопка, которую вы прописали, будет появляться на странице редактирования при добавлении записи, например.
Я думаю то, что вам нужно это замещение LeadSectionV2.
Спасибо. Попробовал Ваш способ. С тем же результатом, не появляется кнопка
Здравствуйте, Эмин.
После добавления кнопки необходимо полностью очистить кэш страницы, чтобы браузер выгрузил старый код и загрузил обновленный.
В Google Chrome нажмите F12, правой кнопкой на кнопке перезагрузки страницы - Очистка кэша и аппаратная перезагрузка.
Либо попробуйте в режиме Инкогнито.
"Безродный Андрей" написал:После добавления кнопки необходимо полностью очистить кэш страницы, чтобы браузер выгрузил старый код и загрузил обновленный.
Добрый день, Андрей.
Все эти действия я проделывал и раньше.
Попробовал добавить кнопку в Заказы. Кнопка добавилась корректно
diff: /**SCHEMA_DIFF*/[ { "operation": "insert", "name": "CalculateButton", "values": { "itemType": Terrasoft.ViewItemType.BUTTON, "caption": "Calculate", "style": Terrasoft.controls.ButtonEnums.style.BLUE, "visible": true, "click": {"bindTo": "GetDeliveryPrice"}, }, "parentName": "CombinedModeActionButtonsCardLeftContainer",//"CombinedModeActionButtonsSectionContainer", "propertyName": "items", }, ]/**SCHEMA_DIFF*/,
Но тот же самый код в Лидах. И кнопка не появляется. Подозреваю, что кнопка "Квалифицировать" мешает отрисовке.
Здравствуйте, Эмин.
Попробовал на 7.5.0.627.
Получилось:
[URL=http://fastpic.ru/view/60/2015/0319/b7c3974c7ba4bdb754f6e43695dc8920.pn…]
Код замещающего клиентского модуля:
define("LeadSectionV2", ["LeadSectionV2Resources", "terrasoft", "ProcessModuleUtilities", "LeadConfigurationConst", "ControlGridModule", "BaseProgressBarModule", "css!BaseProgressBarModule", "css!LeadQualificationModuleStyles"], function(resources, Terrasoft, ProcessModuleUtilities, LeadConfigurationConst) { return { entitySchemaName: "Lead", diff: /**SCHEMA_DIFF*/[ { "operation": "insert", "name": "CalculateButton", "values": { "itemType": Terrasoft.ViewItemType.BUTTON, "caption": "Calculate", "style": Terrasoft.controls.ButtonEnums.style.BLUE, "visible": true, }, "parentName": "CombinedModeActionButtonsCardLeftContainer",//"CombinedModeActionButtonsSectionContainer", "propertyName": "items", }, ] }; });
"Безродный Андрей" написал:Попробовал на 7.5.0.627.Получилось
Спасибо, кнопка появилась. Но возникла следующая проблема:
Функция обработки нажатия кнопки прописана на LeadPageV2. Существует ли способ вызова этой функции из LeadSectionV2? Т.к. в LeadSectionV2 не удается получить значения полей через this.get().
Эмин, здравствуйте.
Вместо this.get('Id') попробуйте написать this.get("ActiveRow")
"Безродный Андрей" написал:Эмин, здравствуйте.
Вместо this.get('Id') попробуйте написать this.get("ActiveRow")
Спасибо. Да, ActiveRow тоже работает. Т.е. Id я получить могу. Но мне нужны значения полей, которых нет на Section(с помощью this.getActiveRow("") можно получить только значения со страницы реестра), есть только в карточке редактирования. Понятно, что с помощью запроса к бд я получу все необходимые данные. Но как-то глупо получается. Вот она карточка, в ней все данные уже лежат, а я вынужден делать запрос к базе, чтобы еще раз их получить
Эмин,
без запроса к базе Вы можете получить разве что те данные, которые выведены в реестр.
Остальные данные можно получить только запросом к базе.