В редакторе страницы есть функция вывода web-cтраницы. Вопрос: как проще всего в URL этой страницы добавить параметр из crm (к примеру ID контрагента)? если можно - как для полного чайника =(

Нравится

1 комментарий

Насколько понимаю, в 7.Х блок веб-страницы в итогах не умеет получать значение из параметра. На англоязычном сайте завели идею об этом.

 

Если самостоятельно дорабатывать, вероятно, нужно будет делать свой аналог WebPageModule для отображения и WebPageDesigner для его настройки. А затем дорабатывать DashboardEnums, где задаются все типы элементов итогов. Но это модуль, его так просто не заместить, придётся слишком много всего переделывать.

 

А жаль, в 3.Х это было стандартной возможностью, что позволяло сделать пользовательскими средствами много интересного.

Показать все комментарии

Коллеги, добрый день.

Необходимо создать виджет, который будет формировать динамическую ссылку вида ссылка.

Как создать виджет с произвольным html разобрался (использовал вот этот пример https://community.terrasoft.ru/questions/vidzet-knopka), а вот как передать в этот виджет какой-нибудь параметр в виде JSON не совсем понятно.

 

Нравится

1 комментарий

В примере виджета в академии у него есть параметры в JSON:

И в коде виджета создаются эти параметры:

columns: {
    // Название валюты.
    CurrencyName: {
        type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE,
        dataValueType: Terrasoft.DataValueType.TEXT,
        value: null
    },
    // Значение валюты.
    CurrencyValue: {
        type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE,
        dataValueType: Terrasoft.DataValueType.FLOAT,
        value: null
    }
},

 

Показать все комментарии

Был создан БП с блоком отправки почты. В тело письма передается HTML-текст через параметр процесса. Всё работает корректно.

Но при повторном открытии и сохранении БП, параметр в графе "Тело Письма" сбрасывается, даже если не щелкать на блок отправки почты. Приходится при каждом изменении БП заново указывать параметр в тело письма. Иначе в письме содержится именно текст [#IsOwner....

Подскажите, можно ли как-то избежать повторения этих действий?

 

Изображение удалено.

 

Нравится

1 комментарий
Лучший ответ

Обратитесь в тех поддрежку Terrasoft (Creatio) не забыв указать номер версии используемой  у вас BpmOnline.

Обратитесь в тех поддрежку Terrasoft (Creatio) не забыв указать номер версии используемой  у вас BpmOnline.

Показать все комментарии

Возникла необходимость дополнительной настройки html редактора. Собственно, нужно установить другой шрифт по умолчанию и его размер, а также изменить высоту html поля. Можно ли это как-то сделать?

Нравится

6 комментариев

Здравствуйте!

HTML-редактор описан в схеме HTMLCodeEditModalBox. Можно заместить эту схему, и на вкладке "Пакет разницы" прописать свои стили.

Примечание. После замещения базовых схем могут возникнуть ошибки при обновлении.

Примерный алгоритм реализации:

Примечание. Мы не рекомендуем самостоятельно вносить правки в верстку приложения, так как в дальнейшем при обновление приложения могут возникнуть проблемы с отображением страниц сайта.



- создать свой модуль (пример модуля - CommonCSSV2);

- во вкладке "Пакет разницы" прописать свои CSS (для понимания какие параметры стиля Вам необходимо использовать поможет, например, вкладка Elements в консоли браузера, т.е. отладка приложения). Стоит учесть, что необходимо будет изменять настройки самого контрола, не label;

- в замещающей схеме страницы редактирования раздела, в define прописать пользовательский модуль. Например:

define("DashboardDesignerV2", ["css!DashboardDesignerV2CSS", "CommonCSSV2"]

- в diff подключить пользовательский CSS класс.

Одеяненко Юлия,

Я, наверное, немного неверно высказался. Мне нужно донастроить hmtl-поля, которые используются, например, для ввода примечаний (Terrasoft.ContentType.RICH_TEXT). Например, сменить шрифт по умолчанию на Times New Roman 12.

Получилось сделать высоту с помощью jQuery в onEntityInitialized

var htmlEdit = $("#MyFieldHtmlEdit-html-edit");
htmlEdit.height(200);

Но в таком случае высота сбрасывается на изначальную, например, если добавить запись в деталь (с заходом на страницу записи на детали)

Бершеда Д. Н.,

действительно, неправильно поняла.

Касательно кастомизаций поля "Примечания":

- пользовательский шрифт будет сбрасываться на дефолтный из-за хардкода в схеме HtmlEditModule;

- высота поля также указана конкретная, в этой же схеме.

Возможность редактировать пользовательскими средствами (или хотя бы пользовательской доработкой) уже рассматривается аналитиками продукта и, возможно, будет реализована в последующих релизах. На данный момент нужно переопределять базовую логику, чего мы делать настоятельно не рекомендуем, так как это может отразиться на работе базового функционала приложения.

Одеяненко Юлия,

а возможно создать свой контрол на основе базового html-поля, в котором уже будет всё настроено как надо, и потом поместить его на страницу. Есть примеры подобного?

Бершеда Д. Н.,

Контрол свой создать можно, но примеры у нас, к сожалению, отсутствуют. Можно в качестве примера использовать реализацию того же базового html-поля.

Показать все комментарии

Есть у меня html-поле, "contentType": Terrasoft.ContentType.RICH_TEXT - всё стандартно.

Поле у меня ReadOnly, т.е. "enabled": false

Хочу уменьшить его высоту в два раза, но rowSpan, к сожалению не помогает ни разу.

Вопрос - какие стили нужно внести в свой модуль? Не обязательно в два раза, но что бы как-то управлять размером, например, задать в пикселях или процентах?

В идеале нужно - чтобы размер совпадал с содержанием.

Нравится

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

Стилями, скорее всего, просто так не справится, rowSpan также неприменим к RICH_TEXT. Попробуйте сделать это при помощи JS.

Например, на oninput тега textarea повесить обработичк размера окна.

На странице есть div с классом html-editor, измення стиль этого div (style), можно менять высоту (height), например в том же обработчике oninput. С этим и можно работать, т.к. стандартных методов изменения высоты поля для RICH_TEXT не нашел. Да, не совсем изящно, зато работает smiley

 

Сделал в итоге на jQuery, там оказывается теперь есть функция height(), которая определяет размер элемента в пикселях.

Показать все комментарии

Добрый день!

Есть задача создать уникальные шаблоны для рассылки email, дизайн в соответствии с корпоративным брендбуком. Предполагается, что это будут как новостные дайджесты, так и приглашения на мероприятия фирмы.

Есть ли у вас проверенные поставщики услуг, кого вы могли бы посоветовать для решения данной задачи?

Диана

Нравится

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

Очень нужна помощь

Диана, добрый день!

Возможности персонализировать рассылки с помощью шаблонов уже есть в продукте bpm'online marketing.
Пожалуйста, ознакомьтесь с нструкциями по работе с шаблонами в Академии: https://academy.terrasoft.ru/documents/marketing/7-8/kak-sozdat-shablon…
А также предлагаю обучающее видео: https://www.youtube.com/watch?v=s582xiPgSYI&feature=youtu.be&list=PLDp-…

Хорошего Вам дня!

Показать все комментарии

Добрый день. Как можно стандартными средствами реализовать вывод html блока на странице редактирования карточки.
В HTML блок будет подгружаться исходные данные HTML письма присланное на почту.

Нравится

1 комментарий
Показать все комментарии

У меня три вопроса:
- можно ли подключить свои JS библиотеки?
- можно ли добавить свой JS код на страницу?
- можно ли вставить HTML код в определенное место на странице?

Нравится

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

Да, всё можно.

По первому и второму (на PageLoadComplete):

var appPath = (Page.Request.ApplicationPath == "/") ? 
	string.Empty : 
	Page.Request.ApplicationPath;
var csnameJQm = "JQMask";
var csurlJQm = "/Resources/jquery.maskedinput-1.3.js";
var scriptManager = ScriptManager.GetCurrent(Page.AspPage);
scriptManager.RegisterClientScriptIncludeInternal(csnameJQm, appPath + csurlJQm);
string CommunicationMask = Terrasoft.Core.Configuration.SysSettings.GetValue(
	UserConnection, "PhoneNumberEditMask").ToString();
Page.AddScript("$('#" + Page.PhoneEdit.ClientID + "').mask('" + CommunicationMask + "');");

По третьему (HTMLLayout — обычная панель, функция CreateHTMLText возвращает кусок HTML-кода):

var html = CreateHTMLText(megaList);
var htmlLayoutId = Page.HTMLLayout.ClientID;
StringBuilder sb = new StringBuilder();
sb.Append("var htmlPanel = document.getElementById('" + htmlLayoutId + "');");
sb.Append("htmlPanel.innerHTML = '" + html + "';");
Page.AddScript(sb.ToString());

Здравствуйте, Илья.

Примеров Александра более чем достаточно, за что ему большое спасибо.

Если будут вопросы, пожалуйста, обращайтесь.

По первому и второму (на PageLoadComplete)

Что на? где это находится. Ответ на 1й вопрос порождает 2й. Наверно, если бы мы знали изначально где и как подключать библиотеки, то не появился бы такой вопрос. 

Речь об интерфейсе bpm'online 5.Х. PageLoadComplete — это событие во встроенном бизнес-процессе страницы. Указанный код добавлен в элемент-скрипт, запускаемый по этому событию.

Показать все комментарии

Как считать содержимое *.html файла в переменную?

Т е чтобы переменная была равна " ...   ... ... ".
Или.
Та же задача, но считать из ds_Files blob поле FileData.

Нравится

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

Здравствуйте Анна,
Попробуйте так

var xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP.6.0");
xmlHttpReq.open("GET", "http://ya.ru/", false);     
xmlHttpReq.send();
Log.Write(0,xmlHttpReq.responseText);

В xmlHttpReq.responseText - исходный код страницы HTML, данным запросом мы открываем его через IE

А если шаблон не url а файл на компе?

"file://d:/site/index.html"

Отлично) Спс

Показать все комментарии