Центр разработки
Режим разработки
Для целей настройки и отладки конфигурации платформы реализован режим запуска Developer. В этом режиме:
Платформа запускается как приложение, а не как служба. Для запуска в качестве службы используется параметр asService.
Возможен запуск нескольких экземпляров Платформы на одном устройстве.
Возможен запуск нескольких различных версий (сборок) программного обеспечения на одном устройстве.
Порты, указанные в конфигурации, переопределяются на тестовые.
Все сервисы запускаются только на текущем устройстве.
Не поддерживается работа в кластере, состоящем из нескольких серверов.
Отключена защита от случайного переопределения узла к другому кластеру.
Чтобы запустить режим разработчика:
Создать каталог для данных экземпляра. Например: D:\DatareonData\Instance1\PlatformData.
Создать каталог для файлов конфигурации (например: D:\DatareonData\Instance1\Config) или базы конфигурации (например: D:\DatareonData\Instance1\Security).
Создать конфигурацию для запуска режима разработчика. В конфигурации могут быть указаны абсолютные пути и относительные. Для относительных путей текущей директорией считается директория, где размещена отладочная конфигурация.
{ "$type": "DT.ConfigurationRepository.Configuration.DeveloperConfig, DT_ConfigurationRepository", "GuardDb": "Security", "DeveloperDataFolder": "D:\\DatareonData\\Instance1\\PlatformData", "GuardPort": 7203, "controlCenterPort": 7200, "adminUIPort": 7204, "nodeApiPort": 7201, "archiveApiPort": 7202, "systemRequestsPort": 7292, "snmpPort": 7294, "nodeListeningPort": 7290, "clearOnStart": false, "workSpace": "D:\\DatareonData\\Instance1\\Config", "precompileSerialize": false, "workSpaceOnline": true, "ignoreVersionCheck": true }
Поле
Назначение
Аналог в промышленной среде
GuardDb
Каталог, в котором размещена конфигурация Security.db
C:ProgramDataDatareonPlatformSecurity или C:ProgramDataDatareonGuard (при использовании Guard)
DeveloperDataFolder
Каталог, в котором будут размещены все данные Platform
C:ProgramDataDatareonPlatform
GuardPort
Порт для запуска сервиса авторизации
7203
ControlCenterPort
Порт для запуска ЦН
7200
NodeApiPort
Порт для API кластера
7201
NodeApiQueuePort
Порт для API узла
7202
SnmpPort
NodeListeningPort
Порт для взаимодействия с нодой других объектов
7290
SystemRequestsPort
Порт узла для отправки параметров адаптеров 1С
7292
ClearOnStart
Необходимость очищать каталог DebugDataFolder при запуске
_
В Windows:
От имени Администратора запустить приложение DatareonPlatformService с параметром developer, в developerConfig указать путь к конфигурации (абсолютный или обязательный). Пример: «C:\Program Files (x86)\Datareon\Platform\DatareonPlatformService.exe» developer -developerConfig=«C:\ProgramData\Datareon\debug\developerConfig.json»
Запустить ЦН.
В Linux:
Выполнить команду Platformmanager debug, в debugConfig указать путь к конфигурации (абсолютный или обязательный). Пример: Platformmanager developer -developerConfig=/home/debug/developerConfigCentos.json
Запустить ЦН.
В режиме разработки возможен запуск приложения без установки дистрибутива.
Чтобы запустить режим разработчика без установки:
Скачать дистрибутив Platform.
Распаковать архив.
Запустить файл DatareonPlatformService.exe из распакованного каталога в режиме Debug.
Например: «C:\ProgramData\Datareon\debug\PlatformArchive20201126.8\DatareonPlatformService.exe» developer -developerConfig=«C:\ProgramData\Datareon\dev\developerConfig.json» Также можно зарегистрировать как службу с помощью cmd (https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/sc-create) или powershell (https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/new-service?view=powershell-7.1).
Примечание
При регистрации в качестве службы обязательно необходимо указать параметр asService. Например: New-Service -Name «DatareonPlatform1» -Description «Datareon Platform instance 1» -BinaryPathName „«D:\PlatformData\distr\debug\DatareonPlatformService.exe» developer -developerConfig=«D:\DatareonData\Instance1\developerConfig.json» -asService“
Параметры исполняемых файлов и способы их передачи
Обязательные параметры (для всех)
Параметры |
Описание |
---|---|
-id=<guid> |
Идентификатор процесса |
-с=<путь> |
Полный путь к файлу конфигурации |
-lc=<путь> |
Полный путь к файлу локальной конфигурации |
Дополнительные параметры (DatareonPlatformControlCenter.exe)
Параметры |
Описание |
-r |
Флаг, указывает что сервис запущен повторно |
Дополнительные параметры (DatareonPlatformControlAdapter.exe)
Параметры |
Описание |
-m |
Запустить в режиме «только метаданные» |
Способы передачи параметров запуска .exe файла в команде
Способ |
Пример |
Через пробел |
-lc C:\ProgramData\ Datareon\dev_1589\PlatformData\LocalNodeConfig.json -asService |
Через знак равенства |
-lc=C:\ProgramData\ Datareon\dev_1589\PlatformData\LocalNodeConfig.json -asService |
Через двоеточие |
-lc:C:\ProgramData\ Datareon\dev_1589\PlatformData\LocalNodeConfig.json -asService |
Примечание
Путь может быть указан в кавычках и без кавычек: lc:«C:\ProgramData\Datareon\dev_1589\PlatformData\LocalNodeConfig.json»
Работа в режиме разработки из профиля отладки
На тестовом сервере возможна одновременная отладка отдельных процессов разными пользователями.
Примечание
При работе с ЦН в режиме разработчика с использованием подключения к удаленному серверу Платформы, статус лицензии проверяется только на сервере.
Для выполнения отладки:
В конфигурацию экземпляра для режима разработчика, добавьте следующие параметры:
"RemoteConnectionEnabled": true, "DebugProfiles": [ { "UserName": "User1", "DebugKey":"383b2a55-41d1-4e4b-a025-79bfca87323b", "DebugScheme": "Scheme1", "UnprocQueueId": "483b2a55-41d1-4e4b-a025-79bfca87323b" } ]
Поле
Назначение
Remote ConnectionEnabled
Флаг, разрешающий удаленную отладку
UserName
Произвольное имя пользователя
DebugKey
Ключ пользователя (идентификатор запускаемого модуля процессов)
DebugScheme
Название схемы
UnprocQueueId
Идентификатор очереди
Примечание
В полях, указанных выше, используются пользовательские значения.
Экспортируйте конфигурацию в файлы.
Скопируйте файлы на машину-клиент, с которой будет осуществляться отладка.
Разверните Платформу на машине-клиенте в режиме разработчика с экспортированной базой.
Добавьте следующие параметры:
"isClient": true, "RemoteNodeAddress": "192.168.110.130", "RemoteNodePort": 7290, "DebugUser": "User1"
Поле
Назначение
isClient
Флаг, указывающий, что это машина-клиент
RemoteNodeAddress
Адрес сервера, к которому будет подключение
RemoteNodePort
Порт узла для подключения
DebugUser
Имя пользователя
Примечание
В полях, указанных выше, используются пользовательские значения.
Зайдите с машины-клиента в ЦН.
Создайте проект в пункте меню Разработка → Программирование, нажав на кнопку Сгенерировать проект:
Путь к созданному проекту можно посмотреть в логах ЦН. Созданный проект может быть изменен в любой среде разработки, например, в VisuaStudio.
После внесения изменений, создайте файл dll. Для этого выполните следующие действия:
Откройте проект в VisualStudio.
Перейдите в Обозреватель решений.
Щелкните правой кнопкой мыши по решению проекта.
Нажмите на кнопку Собрать решение.
Отправьте версию для отладки в пункте меню ЦН Разработка → Программирование, указав путь до проекта и нажав на кнопку Отправить версию для отладки:
После отправки файла dll на сервер, на нем будет запущен отдельный экземпляр модуля процессов, к которому можно подключаться с помощью удаленного отладчика. Для запуска процесса от имени определенного пользователя (например, из метода веб-сервиса) используется схема отладки (DebugScheme).
Расширение Query Language Editor
Расширение «Query Language Editor» создано для среды разработки Visual Studio для упрощения разработки и отладки выражений на языке запросов в Платформе.
Внимание
Расширение работает только в версии Visual Studio 2019 года.
Функциональность расширения
Выполнение запроса на экземпляре Platform, расположенном на удаленной машине, из Visual Studio 2019.
Просмотр результата запроса в расширении в Visual Studio 2019.
Использование проекта, сгенерированного в Режиме разработчика из настроенной конфигурации Platform.
Автозаполнение и показ доступных вариантов ключевых слов языка запросов.
Автозаполнение и показ доступных вариантов Типов данных и их полей для конкретной конфигурации Platform.
Установка расширения
Скачать и установить свободно распространяемое программное обеспечение Visual Studio Community 2019 (использовать параметры установки по умолчанию).
Скачать и распаковать архив с расширением Query Language Editor.
Для установки расширения нужно в распакованной папке запустить файл QueryLanguageEditor.vsix.
В окне Установщика расширений по умолчанию выбран доступный для установки продукт - Visual Studio Community 2019. Нажать на кнопку Install, дождаться успешной установки расширения.
Настройка взаимодействия между расширением и экземпляром Platform
Запросы из Query Language Editor будут выполняться на экземпляре Platform в режиме разработчика на удаленном сервере.
Для организации работы расширения с экземпляром Platform:
Сгенерировать проект на базе конфигурации.
Перенести проект на машину с установленным расширением.
Настроить соединение между проектом и экземпляром Platform: вcтавить параметр со значением «RemoteConnectionEnabled»: true в файл настройки экземпляра Platform developerConfig.json.
Внимание
Запомнить значение порта из параметра «NodeListeningPort», он понадобится в дальнейшем.
Перейти в Центр настроек Platform (меню Разработка, пункт Программирование)
Нажать на кнопку «Сгенерировать проект».
Скопировать сгенерированный проект из папки generate, расположенной по адресу PlatformData\Cache\DatareonPlatformControlCenter\generate.
Перенести папку с проектом на машину с установленным расширением Query Language Editor.
В папке с проектом открыть файл настроек DebugConfig.json, расположенный по адресу Папка_с_проектом\DT_Source.
Установить следующие параметры:
В параметре «RemoteNodeAddress»: в кавычках установить ip адрес удаленной машины, на которой расположен экземпляр Platform.
В параметре «RemoteNodePort»: port без кавычек установить порт из параметра «NodeListeningPort».
В параметре «IsClient»: установить значение true.
В параметре «DebugUser»: установить нужное имя пользователя, значение по умолчанию «Администратор».
Настройка быстрого доступа к окну расширения в VisualStudio 2019
Запустите Visual Studio 2019. Окно работы с расширением находится в панели Вид > Другие окна>QueryEditorWindow.
В Главном окне на Стандартной панели инструментов нажмите на кнопку Параметры панели.
Выберите Добавить или удалить кнопки и поставьте галочку рядом с пунктом Другие окна
Нажмите на стрелочку на новом значке на панели и выберите QueryEditorWindow.
Теперь на Стандартной панели доступен значок для QueryEditorWindow.
Использование расширения
Для работы с запросами в расширении:
Откройте в Visual Studio 2019 сгенерированный проект из Platform: в папке с проектом запустите файл platform.sln.
После запуска Visual Studio 2019, откройте QueryEditorWindow, нажав на значок. Расширение готово к работе.
Верхнюю половину окна занимает Поле ввода запроса, нижнюю половину окна занимает Поле просмотра результата.
При вводе запроса, расширение предлагает список автозаполнения, доступных к использованию, объектов и их полей из конфигурации Platform и, используемых в языке запросов, ключевых слов.
В верхней части окна находится кнопка для выполнения запроса.
В случае возникновения ошибки в Платформе при выполнении запроса, текст ошибки можно просмотреть на вкладке Messages расширения.