This page on English
Студия является приложением IONDV. Framework. Она может использоваться как отдельное приложение node.js или как десктоп приложение.
Приложение Студия используется для создания и редактирования метаданных (таких как классы, навигация, представления, бизнес-процессы, портальные формы) которые могут быть развернуты как веб-приложение IONDV. Framework.
Смотрите видео о создании простого приложения IONDV. Nutrition-tickets в IONDV. Studio. Инструкция доступна в репозитории IONDV. Nutrition-Tickets.
Этапы создания приложения:
-
Нажмите на
+
чтобы приступить к созданию приложения. В всплывающем окне заполняем обязательные поля. Вкладка приложения которое вы создали появляется в левом верхнем углу и управляется по типу браузера. -
Появляется боковое меню - рабочая панель приложения. Раздел классы нужен для создания классов и атрибутов.
-
Создание приложения начинается с класса. Нажимаем на класс и в рабочем пространстве наживаем
+Класс
. И в всплывающем окне заполняем обязательные поля. Описание полей можно посмотреть тут. -
У нас появился класс и автоматически создался атрибут ID.
-
Когда класс выделен, можно добавить ему атрибуты, нажав на +атрибут. Описание свойств и типов атрибута можно посмотреть тут.
-
Когда у вас есть минимум 2 класса, можно настроить между ними связи. Это выполняется через настройку типа данных при создании атрибута класса. Основные типы - Коллекция и Ссылка. Заданный тип данных у атрибута отразится в рабочей области в виде связующей линии.
В разделе "Класс" появятся созданные вами классы и их атрибуты. Это называется дерево проекта, по которму будет легко ориентироваться когда классов приложения станет больше.
Это базовые пункты для создания приложения.
IONDV. Framework - это опенсорный фреймворк на node.js для разработки учетных приложений или микросервисов на основе метаданных и отдельных модулей. Он является частью инструментальной цифровой платформы для создания enterprise (ERP) приложений состоящей из опенсорсных компонентов: самого фреймворка, модулей и готовых приложений расширяющих его функциональность, визуальной среды Studio для разработки метаданных приложений.
Подробнее об IONDV. Framework на сайте, документация доступна в репозитории на github
Ниже приводится краткое введение в типы метаданных. Пожалуйста, прочтите его, чтобы стать более уверенным в использовании IONDV. Studio.
IONDV. Framework основан на метаданных. Метаданные (Мета) - это комплекс файлов JSON, описывающих набор структур, которые приложение использует для работы.
Нажмите плюс, чтобы создать новый класс, вы увидите новое окно с пятью полями для заполнения. Два из них, отмеченные красной звездочкой, обязательны для заполнения: Название и Заголовок. Другие три поля описывают свойства класса: Родительский класс, Метка времени создания и изменения.
- Название - системное имя.
- Заголовок - логическое имя отображаемое в пользовательском интерфейсе.
- Родительский класс - позволяет создать новый класс на основе родительского класса со всеми его атрибутами. Подробнее.
- Метка времени создания- позволяет сохранять в классе дату/время создания объекта, требует наличия соответствующего атрибута класса, "name" которого и вносится в данное поле. Подробнее.
- Метка времени изменения - позволяет сохранять в классе дату/время изменения объекта, требует наличия соответствующего атрибута класса, "name" которого и вносится в данное поле. Подробнее.
Click plus to create a new class attribute, and you will see a new window with seven fildes to fill in. Three of them are mandatory to fill - Name and Caption mean the same as for class.
- Тип - указывает тип данных, поддерживаемых атрибутом. Подробнее.
- Порядковый номер - определяет позицию атрибута относительно других атрибутов того же класса.
- Подсказка - определяет сообщение, которое появится в пользовательском интерфейсе рядом с именем атрибута.
- Ссылочный класс - тип данных, который хранит простое значение и которое интерпретируется системой как ссылка на ключевой атрибут объекта другого класса. Подробнее.
- Коллекция - тип данных, позволяющий выводить в объекте списки других объектов. Данные объекты могут быть объектами любого класса включая исходный. Подробнее.
- Только для чтения - разрешает или запрещает изменение значения атрибута.
- Допустимо пустое значение - разрешает или запрещает пустое значение атрибута.
- Уникальный - является уникальным значением, которое запрещает создание двух объектов класса с одинаковыми значениями.
- Автоматически присваемый - разрешает или запрещает автозаполнение полей.
Документация по платформе IONDV.Framework доступна на двух языках - русский и english. Полная документация по ссылке.
Для того чтобы начать работу со студией, достаточно перейти по ссылке studio.iondv.com. Регистрация или учетная запись не требуются. Можно также посмотреть упрощенную версию с предзагруженным приложением.
Для того чтобы разработать приложение на студии, вам нужно предварительно запустить его, одним из следующих способов:
- Используйте (демо-версию)[https://studio.iondv.com] студии.
- Запустите локально как приложение IONDV. Framework, получив исходные коды на github. После чего собери и разверните его согласно инструкции приложений Framework.
- Откройте в браузере по ссылке
http://localhost:8888
. - Запустите локального как отдельное приложение node.js согласно инструкции ниже.
- Запустите как десктоп приложение, согласно инструкции ниже.
- Запустите в docker-конейтнере выполнив
docker run -d -p 8888:8888 --name studio iondv/studio
. Откройтейте в браузере по ссылкеhttp://localhost:8888
.
После этого:
- В Студии разработайте ваше приложение, путем создания классов, навигации.
- Обратите внимание, что данные хранятся в локальном репозитории браузера. Экспортируйте приложение как zip-архив.
- Скачайте последнюю версию IONDV. Framework и модуля IONDV. Registry module: получить их можно c GitHub Framework и Registry репозиториев.
- Следуйте типовой инструкции развертывания приложения из git, за исключением приложения - вместо приложения разверните в папку applictions ваш архив с приложением.
- Далее необходимо собрать и развернуть приложение, согласно инструкции IONDV. Framework
Запустите в docker-конейтнере выполнив docker run -d -p 8888:8888 --name studio iondv/studio
.
Откройтейте в браузере по ссылке http://localhost:8888
Преимуществами использования отдельного приложения является отсутствие необходимости в базе данных и в IONDV. Framework.
Выполните команду git clone https://github.com/iondv/studio.git
. Имените локальную дирректорию на studio
.
Выполните команду npm install
для установки всех необходимых зависимостей, включая локальное приложение сборки gulp
.
Пожалуйста проверьте, что глобально установлен Gulp версии 4.0
.
Выполните команду gulp build
для сборки приложения.
Запустите приложение командой npm start
или node www
(node standalone
для запуска приложения как standalone.)
Перейдите в браузере по адресу http://localhost:8888
.
Перед формированием десктоп приложения Студии, соберите Отдельное приложение node.js
- Скачайте последнюю NORMAL версию node-webkit c сайта https://nwjs.io/.
- Распакуйте содержимое архива в любую удобную папку.
- Воспользуйтесь одним из имеющихся способов для того, чтобы соеденить приложение и node-webkit. Примеры описаны в статье https://github.com/nwjs/nw.js/wiki/How-to-package-and-distribute-your-apps в пунктах 2a и 2b.
Более удобным является вариант воспользоваться пакетом nw-builder:https://github.com/nwjs-community/nw-builder.
Пример команды: nwbuild ./studio -p win64 -v 0.34.0 -o ./destination
. Стоит отметить, nw-builder сам скачает
необходимую версию node-webkit.
В результате вы получите ваше приложение в папке с dll, которые использует nwjs. Запустить приложение можно с помощью nw.exe файла (название может отличаться).
- Скачайте Enigma virtual box с сайта https://enigmaprotector.com/en/downloads.html, установите и запустите
- Занесите в первое поле путь к исполняемому файлу вашего приложения. (Можно выбрать)
- Занесите во второе поле путь сохранения исполняемого файла.
- Занесите в поле Files ВСЕ файлы и папки из директории вашего приложения кроме исполняемого файла .exe.
- В меню Files options, поставьте галочку на путкте Compress.
- Нажмите Process и дождитесь результата.
Вся настройка в deploy.json -> globals -> externalAppTracker
{
"items": [{
"name": "dnt",
"title": "Develop and test",
"url": "https://github.com/iondv/develop-and-test/archive/master.zip"
}, {
"name": "crm-en",
"title": "CRM EN",
"url": "https://github.com/iondv/crm-en/archive/master.zip",
"language": "en"
}, {
"name": "crm-ru",
"title": "CRM RU",
"url": "https://github.com/iondv/crm-ru/archive/master.zip",
"language": "ru"
}],
"front": "/themes/portal/static/archives/",
"storage": "applications/studio/themes/portal/static/archives/",
"tempZip": "applications/studio/temp.zip",
"enableUpdate": false,
"updateInterval": 86400
}
-
item.name - задает имя файла при сохранении архива
-
item.title - отображается на клиенте при выборе приложения
-
item.url - удаленный адрес архива приложения
-
item.front - адрес архива для клиента, если не указан, создается по общей настройке и имени
-
item.language - если не указан, то приложение отобразится в любом языке
-
storage - место сохранения архивов приложений
-
front - ссылка до архивов с клиента
-
tempzip - временный файл при удаленной закачки с другого сервера
-
enableUpdate - вкл/выкл синхронизацию с удаленным сервером. При старте сервера проверяется наличие архивов, и если нет, то скачиваются с указанных URL. По истечению периода updateInterval архивы обновляются
-
updateInterval - период повторной загрузки архива на сервер (секунды)
На клиенте можно указать custom URL, но нужно иметь в виду, что браузер разрешает загрузки с чужих хостов только явно разрешенные через Access-Control-Allow-Origin
Оригинальная инструкция на английском представлена на сайте https://github.com/nwjs/nw.js/wiki/How-to-package-and-distribute-your-apps в пункте An alternative way to make an executable file in Windows
- репозиторий приложения
- Node-webkit
- Node-webkit вики
- пакет для формирования исполняемого файла
- программа для линковки dll
- Руководство пользователя
- Запуск приложения как standalone
- Инструкция по созданию ИС при помощи ION. Studio
Copyright (c) 2018 LLC "ION DV".
All rights reserved.