Creatio development guide
PDF
Это документация Creatio версии 7.16.0. Мы рекомендуем использовать новую версию документации.

Инструменты разработки. IDE Microsoft Visual Studio

Glossary Item Box

Общие сведения

Чтобы максимально ускорить производительность разработки, используются интегрированные среды разработки (IDE, Integrated Development Environment). К ним относятся, например, Visual Studio, WebStorm и др. Функциональность IDE позволяет не только создавать, редактировать и компилировать программный код, но и выполнять его отладку, вести командную разработку, использовать системы управления версиями и многое другое. Для работы с исходным кодом в IDE обычно используются текстовые файлы, хранящиеся в файловой системе.

Для разработки в файловой системе можно использовать Microsoft Visual Studio редакций Community, Professional и Enterprise версии 2017 (c последними обновлениями) и выше.

В Creatio реализован механизм разработки пакетов конфигурации в файловой системе. С его помощью можно выгружать содержимое пакетов из базы данных в файлы, изменять содержимое пакетов с помощью IDE, а после внесения изменений — загружать измененные пакеты обратно в базу данных. Также с помощью Visual Studio можно выполнять отладку пользовательского программного кода схем типа [Исходный код] (SourceCodeSchema).

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

Начиная с версии 7.11.1 в приложении появилась возможность разработки серверного кода в пользовательских проектах Visual Studio. Подробности описаны в статье "Разработка конфигурационного серверного кода в пользовательском проекте".

Основные ограничения разработки в файловой системе

При включенном режиме разработки в файловой системе полноценная разработка поддерживается только для схем типа [Исходный код] (SourceCodeSchema) и клиентских схем (ClientUnitSchema).

Для других элементов пакетов, например, ресурсов или SQL-скриптов, действуют следующие правила:

  • При выгрузке из базы данных в файловую систему элементы пакетов, хранящиеся в базе данных, заменят элементы в файловой системе. Схемы типа [Исходный код] и клиентские схемы заменены не будут.
  • При загрузке в базу данных элементов пакетов из файловой системы они заменят элементы в базе данных. Но приложение все равно будет работать со схемами типа [Исходный код] и клиентскими схемами из файловой системы.

Начиная с версии 7.11.2 при включенном режиме разработки в файловой системе после сохранения клиентских схем (ClientUnitSchema) и схем типа [Исходный код] (SourceCodeSchema) в соответствующем дизайнере (см. раздел [Конфигурация]) в файловую систему также сохраняются и ресурсы этих схем.

Интеграция с системой хранения версий (SVN) при включенном режиме разработки в файловой системе выполняется не встроенным в Creatio механизмом работы с SVN, а сторонними средствами. Чтобы облегчить работу со связанными пакетами, в разделе [Конфигурация] оставлена возможность установки пакетов из хранилища SVN. Для установки единичных пакетов рекомендуется использовать сторонние утилиты, например, TortoiseSVN.

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

Настройки приложения для разработки в файловой системе

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

<fileDesignMode enabled="true"/>

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

<fileDesignMode enabled="true" />
...
<add key="UseStaticFileContent" value="false" />

После включения режима разработки в файловой системе, в разделе [Конфигурация] на вкладке [Действия] появятся две кнопки (рис. 1):

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

Рис. 1. — Действия раздела [Конфигурация] для разработки в файловой системе

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

Рис. 2. — Настройка прав доступа к каталогу Terrasoft.Configuration

Конфигурационный проект Terrasoft.Configuration

Конфигурационный проект — это предварительно настроенное решение Visual Studio, которое поставляется с приложением Creatio и находится в каталоге [Путь к установленному приложению]\Terrasoft.WebApp\Terrasoft.Configuration.

Для начала разработки в файловой системе необходимо открыть файл [Путь к установленному приложению]\Terrasoft.WebApp\Terrasoft.Configuration\Terrasoft.Configuration.sln в Visual Studio.

Структура конфигурационного проекта представлена в табл. 1.

Табл. 1. — Структура конфигурационного проекта

Каталог Назначение
Lib Каталог, в который выгружаются сторонние библиотеки классов, привязанные к пакетам.
Autogenerated\Src Каталог, содержащий файлы с автоматически сгенерированным исходным кодом схем предустановленных пакетов. Эти файлы нельзя редактировать.
Pkg Каталог, в который из базы данных выгружаются пакеты для разработки в файловой системе.
bin Каталог выгрузки скомпилированной конфигурации и сторонних библиотек.

Начало работы с конфигурацией

Создание пакета

Если не предполагается разработка с использованием SVN, то при включенном режиме разработки в файловой системе последовательность создания пакета ничем не отличается от обычного режима. Последовательность создания пакета приведена в статье "Создание пользовательского пакета".

В Creatio по-умолчанию включен режим работы с SVN. Однако, если при создании пакета не заполнять поле [Хранилище системы контроля версий], то пакет не будет привязан к хранилищу. Вести версионную разработку этого пакета можно будет только подключив его вручную из файловой системы.

Последовательность создания пользовательского пакета c привязкой к хранилищу SVN приведена в статье "Создание пакета в режиме разработки в файловой системе".

Работа с новыми элементами пакетов

Рекомендуется добавлять новые элементы (например, схему или ресурс) в пакет только из раздела [Конфигурация]. Чтобы создать и отредактировать новый элемент в пользовательском пакете, необходимо выполнить следующие действия:

  • В разделе [Конфигурация] выбрать пользовательский пакет и добавить в него новый элемент (см. "Создание клиентской схемы", "Создание схемы [Исходный код]").
  • При необходимости добавить в созданную схему ресурсы, например, локализуемую строку.
  • Выполнить действие [Выгрузить пакеты в файловую систему] ([Download packages to file system]) (рис. 1).
  • С помощью IDE (например, Visual Studio) изменить исходный код схемы или локализуемого ресурса в файлах, расположенных в каталоге [Путь к установленному приложению]\Terrasoft.WebApp\Terrasoft.Configuration\Pkg\[Имя пакета]. Структура пакета подробно рассмотрена в статье "Структура и состав пакетов".
  • Для внесения изменений в базу данных приложения необходимо выполнить действие [Обновить пакеты из файловой системы] ([Update packages from file system]) (рис. 1).

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

  • Если были изменены схемы типа [Исходный код], то необходимо выполнить компиляцию приложения.

При разработке схем типа [Исходный код] на языке C# удобно выполнять компиляцию непосредственно в Visual Studio, а не в приложении (раздел [Конфигурация]). Подробные сведения о компиляции и отладке в Visual Studio изложены в статье "Работа с серверным кодом".

Смотрите также

© Terrasoft 2002-2020.

Был ли данный материал полезен?

Как можно улучшить эту статью?