Шаг 1. создайте новый раздел

Создать проект Visual Studio для отладки

Важно. Для отладки исходного кода создавать проект Visual Studio не обязательно

Достаточно открыть в Visual Studio нужные файлы. Однако если отладка выполняется часто или необходимо работать с большим количеством файлов одновременно, то создание проекта сделает работу более удобной.

Чтобы создать проект Visual Studio для отладки: 

  1. В Visual Studio выполните команду меню File —> New —> Project.

  2. В окне свойств создаваемого проекта выберите тип проекта Class Library (.NET Framework), укажите название и расположение проекта.
  3. После создания проекта удалите из него файл  Class1.cs, который был создан по умолчанию, и сохраните проект.

Базовый интерфейс и возможности системы

Чаты

Появился новый канал коммуникации — текстовые чаты.

Важно. В версии 7.17.0 описанная ниже функциональность доступна в режиме бета-тестирования

Чтобы оценить возможности чатов, воспользуйтесь тест-драйвом любого продукта Creatio или запросите в службе технической поддержки включение функциональности в вашем приложении. Будем благодарны за обратную связь.
В открытом доступе функциональность появится уже в ближайших релизах.

  • Клиенты могут писать личные сообщения на страницу вашей компании в Facebook или через плагин Facebook Messenger, размещенный на вашем сайте. Все эти сообщения будут доступны для обработки в Creatio и сохранятся на странице клиента.

  • Операторы могут обрабатывать входящие чаты в коммуникационной панели, предоставлять консультации клиентам в режиме реального времени, отправлять инструкции или другие полезные материалы.

  • В любой момент при работе с чатом оператор может создать обращение на основании запроса клиента или запустить собственный бизнес-процесс.

  • Просмотреть все завершенные беседы вы сможете в новом разделе Чаты и на вкладке Хронология страницы контакта.

  • Для подключения функциональности чатов и их настройки в дизайнер системы добавлен новый раздел Настройка чатов.

Создание обращения из чата

Панель настройки элементов (4)

На панели настройки элементов (4) вы можете задать значения параметров элемента процесса. Подробнее о назначении и использовании параметров читайте в статье Параметры процесса. Перечень параметров на панели зависит от типа элемента.

Основной режим

В основном режиме панель настройки элемента содержит основные параметры элемента и поля для связи с другими сущностями системы. Список полей в основном режиме различается для разных элементов и подробно рассмотрен при описании каждого отдельного элемента.

Расширенный режим

В расширенном режиме на панели настройки свойств элемента отображаются дополнительные параметры элемента и связи с другими сущностями системы.

Для перехода в расширенный режим нажмите кнопку в области настройки свойств элемента и выберите команду Расширенный режим (Рис. 8).

На заметку. Рекомендуем использовать расширенный режим для настройки параметров элемента разработчиком. Пользователям рекомендуем использовать основной режим панели настройки свойств элемента.

Рис. 8 — Переход в расширенный режим

В расширенном режиме доступны для настройки следующие параметры:

  • Имя — системное название элемента бизнес-процесса, состоящее из букв латиницы и цифр. Используется системой для определения элемента. По умолчанию код генерируется автоматически, но может быть отредактирован. Код не может содержать специальных символов.
  • Журналировать — установите признак, чтобы выполнение процесса можно было отслеживать в разделе Журнал процессов.
  • Сериализировать в БД — установите признак, чтобы значения параметров выполняемого процесса были сохранены в БД. Сериализация необходима для продолжительных процессов. Например, если в процессе создана новая активность, которая должна быть завершена только через некоторое время, все параметры процесса будут сохранены и процесс сможет быть возобновлен в любое время, даже после выхода из системы.
  • Выполнять следующие элементы в фоновом режиме — признак определяет, как будут выполняться все следующие за текущим элементом шаги процесса — автоматически в фоновом режиме или с участием пользователя. Больше информации о способах выполнения шагов процесса доступно в статье Выполнить шаги процесса.
    • Если для элемента процесса снят признак Выполнять следующие элементы в фоновом режиме, то при переходе процесса на следующие шаги, предполагающие участие пользователя (например, заполнение страницы записи), будут открыты соответствующие страницы редактирования. Например, если элемент Открыть страницу редактирования расположен на диаграмме процесса после элемента, для которого снят признак Выполнять следующие элементы в фоновом режиме, то для пользователя сразу же откроется соответствующая страница редактирования.
    • Если для элемента процесса установлен признак Выполнять следующие элементы в фоновом режиме, то все следующие шаги, требующие участия пользователя, отобразятся на вкладке Задачи по бизнес-процессам коммуникационной панели. Такие задачи (например, открытие страниц) не начнут выполняться, пока пользователь не кликнет по ним на вкладке Задачи по бизнес-процессам. При этом все действия системы будут выполнены в фоновом режиме без отображения маски загрузки, чтобы пользователь не ожидал завершения процесса. Например, если элемент Открыть страницу редактирования расположен на диаграмме процесса после элемента, для которого установлен признак Выполнять следующие элементы в фоновом режиме, то новая задача по бизнес-процессам отобразится на коммуникационной панели пользователя. Если на диаграмме процесса после такого элемента следуют требующие сложных и длительных расчетов элементы из группы Действия системы, то такие расчеты будут выполнены в фоновом режиме, а маска загрузки отображаться не будет. Такой вариант может вызвать задержку выполнения процесса, если пользователь, ответственный за выполнение действия по процессу, в момент создания задач по бизнес-процессу не вошел в систему.

    Признак Выполнять следующие элементы в фоновом режиме может быть установлен:

    • Для всех элементов из группы Действия пользователя.

    • Для всех элементов из группы Начальные события, кроме элемента Стартовый таймер. По умолчанию признак установлен для начального события Сигнал.

    • Признак установлен и недоступен для редактирования для элементов Обработка сигнала и Обработка таймера группы Промежуточные события.

  • Учитывать время в фильтре — установите признак, чтобы при настройке фильтрации по дате также учитывалось время.

На заметку. Список параметров в расширенном режиме различается для разных элементов процесса.

Настроить Creatio для работы в файловой системе

  1. Включить режим разработки в файловой системе.

    В файле Web.config, который находится в корневом каталоге приложения, установите значение true для атрибута enabled элемента fileDesignMode.

  2. Отключить получение статического клиентского контента из файловой системы.

    На текущий момент режим РФС не совместим с получением клиентского контента из предварительно сгенерированных файлов. Для корректной работы с РФС необходимо отключить получение статического клиентского контента из файловой системы. В файле Web.config, который находится в корневом каталоге установленого приложения, установите значение false для флага UseStaticFileContent.

    Web.config

  3. Скомпилировать приложение.

    Выполните действие Перекомпилировать все (Compile all) панели инструментов раздела Конфигурация (Configuration).

    После включения режима разработки в файловой системе, в разделе Конфигурация (Configuration) станут активными действия группы Разработка в файловой системе (File system development mode):

    • Выгрузить пакеты в файловую систему (Download packages to file system) — выгружает пакеты из базы данных приложения в каталог \Terrasoft.WebApp\Terrasoft.Configuration\Pkg.
    • Обновить пакеты из файловой системы (Update packages from file system) — загружает пакеты из каталога \Terrasoft.WebApp\Terrasoft.Configuration\Pkg в базу данных.
  4. Предоставить доступ IIS к каталогу конфигурации.

    Чтобы приложение могло корректно работать с конфигурационным проектом, необходимо предоставить полный доступ пользователю операционной системы, от имени которого запущен пул приложений IIS, к каталогу \Terrasoft.WebApp\Terrasoft.Configuration. Как правило, это встроенный пользователь IIS_IUSRS.

Sales Creatio

  • Реализована версионность листов планирования. Функциональность позволяет:  

    • Выбрать и просмотреть необходимую версию плана.

    • Настроить время ежедневного автосохранения листа.

    • Сравнить значения выбранной версии плана с текущей. Зеленым индикатором будут отмечены значения, которые в текущей версии плана выше, чем в выбранной, а красным индикатором — более низкие значения, чем в выбранной версии. Возле ячеек, отмеченных индикаторами, добавлены подсказки, в которых отображаются значения текущей версии плана, а также его разница с выбранной версией.

  • Добавлена возможность указывать часовой пояс при настройке времени автоматического расчета и автосохранения планов.

Сравнение данных в версиях листа планирования

Добавление пользовательских стилей

Описание кейса

Для детали, реализованной в кейсе статьи «Создание детали с полями», переопределить стиль отображения подписей полей, установив для них синий цвет.

На заметку.

Переопределить базовые CSS-классы стилей отображения записей деталей можно с помощью методов getLeftRowContainerWrapClass() и getRightRowContainerWrapClass().

1. Создать схему модуля, в которой определить стили отображения записей

Важно. В схеме модели представления страницы детали задать стили для отображения нельзя

Поэтому необходимо создать новую схему модуля, определить в ней необходимые стили и добавить этот модуль в зависимости модуля детали

В схеме модели представления страницы детали задать стили для отображения нельзя. Поэтому необходимо создать новую схему модуля, определить в ней необходимые стили и добавить этот модуль в зависимости модуля детали.

Для этого необходимо в пользовательском пакете создать новую схему модуля со следующими значениями свойств (рис. 1):

  • () — «UsrRegDocumentRowViewModel».
  • () — «UsrRegDocumentRowViewModel».

() — пакет, в котором схема будет размещена после публикации. По умолчанию содержит название пакета, выбранного перед созданием схемы. Значение может быть изменено на любое из выпадающего списка.

Рис. 1. — Свойства клиентской схемы UsrRegDocumentRowViewModel

В исходном коде схемы необходимо создать описание модуля и определить в нем класс Terrasoft.configuration.UsrRegDocumentRowViewModel, унаследованный от Terrasoft.configuration.BaseFieldRowViewModel.

Исходный код схемы модуля:

Для корректного отображения записей детали необходимо определить CSS-классы, используемые для отображения. Для этого на вкладке LESS дизайнера модуля необходимо добавить следующие CSS-классы:

Для применения изменений схему необходимо сохранить.

2. Модифицировать схему модели представления детали

Чтобы использовать созданный модуль и его стили в схеме детали, необходимо добавить его в зависимости модуля, определенного в схеме детали.

Также в определение модуля схемы детали нужно добавить два метода:

  • getRowViewModelClassName() — возвращает имя класса модели представления записи на детали.
  • getLeftRowContainerWrapClass() — возвращает массив строк с названиями CSS-классов, используемых для генерации представления контейнеров, содержащих подписи полей записей.

Исходный код модифицированной схемы:

Для применения изменений схему необходимо сохранить.

В результате выполнения кейса на вкладке История (History) страницы контакта (физ. лица) названия полей детали будут отображаться синим цветом (рис. 2).

Рис. 2. — Результат выполнения кейса

Варианты развертывания приложения

Существуют следующие варианты развертывания приложения Creatio:

  • On-site (развертывание приложения Creatio на локальных серверах клиента).
  • Cloud (развертывание приложения Creatio в облаке).

Развертывание on-site

При развертывании приложения Creatio on-site все затраты, связанные с организацией серверной части (установка, настройка, сопровождение, администрирование), возлагаются на клиента.

Преимущества развертывания on-site:

  • Высокая скорость и удобство разработки.
  • Независимость сред разработки. Поскольку разработка ведется в отдельном приложении, исключено негативное влияние на других пользователей.
  • Использование системы контроля версий для сохранения и переноса изменений.
  • Возможность использовать IDE и настраивать процессы непрерывной интеграции.

Ограничения развертывания on-site:

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

При развертывании приложения on-site необходимо, чтобы серверы, на которых разворачиваются компоненты системы, а также клиентские компьютеры, на которых запускается система, отвечали определенным техническим требованиям. Для расчета параметров серверов, необходимых для развертывания приложения и котнейнерных компонентов, воспользуйтесь калькулятором системных требований.

Описание этапов по развертыванию и настройке Creatio on-site на операционных системах Windows или Linux содержится в документации Развертывание on-site.

Развертывание cloud

При развертывании cloud приложение устанавливается на мощностях облачных дата-центров (Amazon, Azure), которые находятся под управлением компании Terrasoft. То есть физически вся серверная часть архитектуры и данные находятся в дата-центрах. Все вопросы, связанные с администрированием, быстродействием, масштабированием решаются силами сотрудников компании Terrasoft, а клиент использует только клиентскую часть приложения.

Преимущества развертывания cloud:

  • Своевременное обновление.
  • Максимально возможное быстродействие.
  • Соответствие промышленным стандартам по доступности и защищенности данных.

Ограничения развертывания cloud:

  • Наличие для развернутого cloud приложения Creatio.
  • Невозможность использования сторонних IDE и СУБД.

Чтобы развернуть приложение Creatio cloud, попробуйте Тест-драйв на нашем официальном сайте. На протяжении 14-дневного пробного периода можно ознакомиться с основными возможностями приложения. По завершению пробного периода используемая демоверсия приложения может быть перенесена на основную площадку Terrasoft.

Настроить расчеты даты и времени

Чтобы выполнить бизнес-процессы с использованием операций с датой и временем, можно воспользоваться структурой DateTime языка программирования C#. Основные свойства и методы представлены в таблице:

.Date

Возвращает дату выбранного параметра.

.Hour

Возвращает значение часов выбранного параметра даты.

DateTime.MinValue

Минимальное значение даты и времени, 00:00, UTC 1 января 0001 года.

.TotalMinutes

Возвращает полное значение даты и времени в минутах.

.TotalHours

Возвращает полное значение даты и времени в часах.

.TotalDays

Возвращает полное значение даты и времени в количестве дней.

.AddMinutes(), .AddHours(), .AddDays()

Увеличивают выбранное значение даты и времени на определенное количество минут, часов или дней.

Пример. В процессе квалификации лида для перехода между условными потоками необходимо проверить, заполнено ли поле даты принятия решения.

Чтобы произвести проверку, воспользуйтесь оператором != и свойством DateTime.MinValue:

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

Для сравнения двух значений воспользуйтесь оператором == и свойством .Date в виде:

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

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

То есть, необходимо в окне формулы выбрать функцию Округлить и заполнить ее нужными параметрами элемента процесса. В нашем случае — разницей значений, а затем добавить свойство .TotalMinutes. В итоге вы получите количество затраченного времени в минутах. Таким образом можно также использовать свойства .TotalHours и .TotalDays.

Пример. Для перехода по условным потокам бизнес-процесса необходимо определить, был ли лид создан более 12 часов назад.

Для выполнения задачи добавьте свойство .TotalHours к параметру элемента, значение параметра целиком заключите в круглые скобки, а затем произведите сравнение с числовым значением:

При работе с параметрами даты и времени также можно использовать функции .AddMinutes(), .AddHours() и .AddDays() для увеличения значения времени и даты на определенную величину. Например, чтобы привести данные даты и времени к часовому поясу пользователя при использовании элемента Чтение данных.

На заметку. В Creatio данные с типом “Дата/Время” хранятся в UTC. Элемент Чтение данных не приводит эти данные к часовому поясу пользователя.

Пример. При выполнении бизнес-процесса регистрации лида необходимо установить время перезвона через 3 часа после создания лида.

Для решения задачи укажите в значении .AddHours() добавляемое количество часов в виде:

Cвойства

Операции с элементами.

Возможные значения

set Значение элемента схемы устанавливается значением параметра values.
merge Значения из родительских, замещаемых и замещающих схем сливаются вместе, при этом свойства из значения параметра values последнего наследника имеют приоритет.
remove Элемент удаляется из схемы.
move Элемент перемещается в другой родительский элемент.
insert Элемент добавляется в схему.

Имя элемента схемы, с которым выполняется операция.

Имя родительского элемента схемы, в котором размещается элемент при операции insert, или в который перемещается элемент при операции move.

Имя параметра родительского элемента при операции insert. Также используется при операции remove, если нужно удалить только определенные параметры элемента, а не весь элемент.

Индекс, в который перемещается или добавляется параметр. Параметр используется с операциями insert и move. Если параметр не указан, то вставка идет последним элементом массива.

Объект, свойства которого будут установлены либо объединены со свойствами элемента схемы. Используется при операциях set, merge и insert.

Набор основных элементов, которые можно отобразить на странице, представлены перечислением Terrasoft.ViewItemType.

Возможные значения (ViewItemType)

GRID_LAYOUT Элемент-сетка, включающий в себя размещение других элементов управления.
TAB_PANEL 1 Набор вкладок.
DETAIL 2 Деталь.
MODEL_ITEM 3 Элемент модели представления.
MODULE 4 Модуль.
BUTTON 5 Кнопка.
LABEL 6 Надпись.
CONTAINER 7 Контейнер.
MENU 8 Выпадающий список.
MENU_ITEM 9 Элемент выпадающего списка.
MENU_SEPARATOR 10 Разделитель выпадающего списка.
SECTION_VIEWS 11 Представления раздела.
SECTION_VIEW 12 Представление раздела.
GRID 13 Реестр.
SCHEDULE_EDIT 14 Планировщик.
CONTROL_GROUP 15 Группа элементов.
RADIO_GROUP 16 Группа переключателей.
DESIGN_VIEW 17 Настраиваемое представление.
COLOR_BUTTON 18 Цвет.
IMAGE_TAB_PANEL 19 Набор вкладок с иконками.
HYPERLINK 20 Гиперссылка.
INFORMATION_BUTTON 21 Информационная кнопка из всплывающей подсказкой.
TIP 22 Всплывающая подсказка.
COMPONENT 23 Компонент.
PROGRESS_BAR 30 Индикатор.

Конфигурационный объект.

Cвойства объекта alias

name Имя элемента, с которым связан новый элемент. По этому имени будут находиться элементы в замещенных схемах и связываться с новым элементом. Значение cвойства name элемента массива модификаций diff не должно быть равным свойству alias.name.
excludeProperties Массив свойств объекта values элемента массива модификаций diff, которые не будут применяться при построении diff.
excludeOperations Массив операций, которые не должны применяться к данному элементу при построении массива модификаций diff.

Пример использования

Основные синтаксические правила

При работе с полем формул следует придерживаться определенного синтаксиса, который будет привычным для пользователей, знакомых с С#

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

Иначе необходимо преобразовать значения в нужный тип.

Кроме того, рекомендуем ознакомиться с основными операторами, которые помогут реализовать сложные условия в ваших формулах.

«»

Текстовые строки необходимо заключить в кавычки.

+

Используется для соединения значений.

==

Определяет равенство двух значений.

!=

Определяет неравенство двух значений.

<, >

Сравнивает величину двух значений (меньше чем, больше чем).

>=, <=

Больше или равно, меньше или равно.

&&

Логическое “И”.

||

Логическое “Или”.

true, false

Булевы значения “Истина” и “Ложь”.

\n, <br>

Перенос текстовой строки.

Разработка JavaScript кода

Для разработки front-end функциональности с использованием внешних IDE необходимо:

  1. Выполнить предварительные настройки приложения Creatio для разработки в файловой системе.
  2. Создать, получить или обновить пакет из репозитория SVN.
  3. В разделе Конфигурация (Configuration) cоздать клиентскую схему, в которой будет выполняться разработка. 
  4. Выгрузить схему из базы данных в файловую систему.
  5. Выполнить разработку исходного кода схемы во внешней IDE.

    Для выполнения разработки необходимо открыть файл с исходным кодом схемы в предпочитаемой IDE (или любом текстовом редакторе) и добавить нужный исходный код.

  6. Сохранить схему и выполнить отладку созданного исходного кода.

При разработке JavaScript кода в файловой системе после внесения изменений в исходный код схемы необходимо каждый раз обновлять страницу браузера, на которой открыто приложение. Это существенно снижает производительность разработки.

Для устранения этого была разработана функциональность автоматической перезагрузки страницы браузера после внесения изменений в исходный код.

Настроить автоматическое отображение изменений JavaScript кода

При старте приложения создается объект, отслеживающий изменения *.js-файла с исходным кодом разрабатываемого модуля в файловой системе. Если изменения произошли, то отправляется сообщение в клиентское приложение (Creatio). В клиентском приложении специальный объект, подписанный на это сообщение, определяет зависимые объекты измененного модуля, разрушает связи, регистрирует новые пути к модулям и пытается заново загрузить измененный модуль. Это приводит к тому, что все проинициализированные модули запрашиваются браузером по новым путям и загружают изменения из файловой системы.

Преимущества использования автоматического отображения изменений JavaScript кода:

  • Экономия времени на интерпретацию и загрузку других модулей. Отдельная страница разработки позволяет не загружать ряд вспомогательных модулей, например, левую и правую панели, панель уведомлений и т. д.
  • Уменьшение количества запросов на сервер.
  • Выявление избыточной связанности модулей. Этот подход к разработке отдельных модулей позволяет вовремя обнаружить ненужные зависимости и избавиться от них.

Ограничения использования автоматического отображения изменений JavaScript кода

  • Наличие синтаксических ошибок в коде. Если в исходном коде модуля допущена синтаксическая ошибка, то автоматическое обновление страницы не произойдет. Потребуется ее принудительное обновление (например, клавишей F5). При исправлении ошибки страница вернется к работоспособному состоянию.
  • Эффект сильной связанности модулей. Не все модули Creatio могут загружаться отдельно.

Для использования автоматического отображения изменений при разработке JavaScript кода необходимо выполнить следующие действия: