HTTP-сервисы OneScript. Каркасная конфигурация 2.0

27.06.18

Разработка - OneScript

В статье описана новая версия конфигурации для создания web-приложений на основе http-сервисов OneScript в среде 1С:Предприятие.

Скачать файлы

Наименование Файл Версия Размер
HTTP-сервисы OneScript. Каркасная конфигурация 2.0.5:
.cf 9,37Mb
25
.cf 9,37Mb 25 Скачать

Введение

Настоящая конфигурация является обновленной версией каркасной конфигурации, описанной в этой публикации и также, как и предыдущая версия, предназначена для создания и отладки web-приложений на основе механизма http-сервисов, в среде 1С:Предприятие, с последующим их выполнением в OneScript.

Конфигурация  никоим образом не претендует на то, чтобы стать “убийцей” или заменой каких-либо распространенных web-фреймворков etc. J и предназначена исключительно для расширения возможностей информационных систем, созданных на платформе 1С:Предприятие, в тех случаях, когда использование платформы по каким-либо причинам неудобно или невозможно.

К возможным сферам применения таких web-приложений можно отнести горизонтальное масштабирование частей информационной системы, посредством выполнения “тяжелых” функций, слабо связанных с информационной базой, средой выполнения OneScript, которая не требует лицезий и может быть развернута на множестве серверов. Другой сферой применения может быть создание различных сервисов,  которые будут являться неким промежуточным звеном, между конечными пользователями или другими системами с платформой 1С:Предприятие.

Системные требования

Компьютер под управлением ОС Windows 7 или более поздней версии.

На компьютере должен быть установлен .NET Framework версии не ниже 4.5.2.

На компьютере должна быть установлена платформа 1С:Предприятие, версии не ниже 8.3.6.1977

Новые функции

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

Новые объекты конфигурации

В отличии от предыдущей версии, где для разработки могли быть использованы только общие модули, в настоящей версии, для разработки и выполнения в OneScript стали доступны нижеследующие объекты конфигурации 1С:Предприятие:

Таким образом, теперь вы можете использовать эти объекты для создания web-приложений.

Улучшена поддержка работы с СУБД

Основой для работы с СУБД, как и в предыдущей версии, является библиотека OneScript SQL. В новой версии есть надстройка, позволяющая работать с библиотекой как с набором обработок, что позволяет сделать код работы с СУБД полностью переносимым. Также появился инструмент, позволяющий писать и отлаживать запросы к СУБД из среды 1С:Предприятие.

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

Дополнительные настройки

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

Код языка (1) – Поскольку в 1С:Предприятие возможно создание различных версий макетов для разных языков, данный параметр указывает, какие версии макетов будут использоваться для создания web-приложения.

Пул приложений (2) – Поскольку в ОС Windows работа приложения возможна в классическом и интегрировааном пуле, данный параметр указывает, какой тип пула будет использовать приложение. Данный параметр влияет на генерацию файла web.config.

Папки компонентов (3), (4), (5), (6) – Данные параметры служат для настройки имен папок, в которых будут расположены соответственно общие модули, общие макеты, перечисления и обработки.

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

В предыдущей версии конфигурации имелись нижеследующие предопределенные объекты:

ПлатформаOneScript – макет, содержащий исполняемые файлы и библиотеки платформы OneScript.

web_config – макет, содержащий тело файла web.config

web_config_linux – макет, содержащий тело файла web.config для Linux.

БиблиотекиOneScript – макет, содержащий исполняемые (*.dll) файлы библиотек, не относящихся к платформе OneScript.

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

Таким образом, внедрение новой библиотеки или обновление, влекло за собой пересборку вышеуказанных макетов, что  естественным образом могло привести к ошибкам.

Для упрощения задач по внедрению и изменению компонентов вашего web-приложения, в конфигурации имеется несколько предопределенных подсистем:

ИсполняемыеФайлыWebПриложения – данная подсистема содержит макеты с zip-архивами, которые содержат исполняемые файлы или dll, которые необходимы для работы web-приложения. Фактически, совокупность этих макетов является аналогом макета БиблиотекиOneScript в предыдущей версии. В процессе создания приложения, производится выгрузка и распаковка содержимого всех макетов.

В качестве примера, на рисунке ниже, показан состав этой подсистемы в каркасной конфигурации.

ПрочиеФайлыWebПриложения – данная подсистема содержит макеты, аналогично макету ПрочиеФайлы, предыдущей версии. Распаковка и выгрузка производится аналогично макетам исполняемых файлов.

СекцияAppSettingsФайлаWebConfig – данная подсистема содержит макеты, содержащие ключи секции appSettings, файла web.config. В процессе создания web-прилоджения, содержимое этих макетов формирует секцию appSettings, файла web.config.

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

СекцияConnectionStringsФайлаWebConfig – служит для формирования секции connectionSrtrings, аналогично секции appSettings.

ИнформацияОКомпонентахWebПриложения – содержит макеты типа ТекстовыйДокумент, в которых разработчик может указать версию библиотеки, описание или какую-либо другую справочную информацию. Просмотреть информацию об установленных компонентах и библиотеках, можно выбрав пункт Информация о компонентах, на вкладке Инструменты.

Конечно создание макетов с описанием компонентов не является обязательным, однако это удобно.

ОбъектыКонфигурацииWebПриложения – данная подсистема содержит объекты конфигурации, которые будут выполняться в среде OneScript. Использование данной подсистемы не обязательно, однако желательно, чтобы избежать путаницы с выгрузкой объектов в web-приложение.

Таким образом, внедрение новых библиотек и фрагментов кода, а также их обновление может быть осуществлено сравнением/объединением с фильтрацией по подсистемам.

В качестве примера, на рисунке ниже приведен состав подсистемы БиблиотекаSqlDataProcessor.

Заключение

Надеюсь, что  с этим наверное уже можно как-то работать J. В общем – пробуйте, создавайте распределенные системы, решайте бизнес-задачи J.

P.S.

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

История версий

Версия 2.0.5.

Исправлена ошибка: При создании web-приложения из файлов конфигурации возникает исключительная ситуация, если в выгружаемых объектах присутствует обработка, имеющая реквизиты с ссылочным типом.

Ошибку можно исправить, закомментировав строки 660 и 663 в общем модуле ФункцииHTTPСервисыOneScript:

 

 

Версия 2.0.4.

Исправлена ошибка, вызывающая исключительную ситуацию, при выполнении запроса типа Команда в форме справочника ЗапросыСУБД.

Исправлена ошибка: общий макет ПрочиеФайлы не включен в подсистему ПрочиеФайлыWebПриложения.

Исправлена ошибка: Переменные в модуле объекта обработки ТипыСУБД имеют неверный тип данных. Данная ошибка влияет на работу с СУБД в среде 1С:Предприятие.

Исправлена ошибка: Функция Обработки.ПараметрыСоединенияСУБД.ПолучитьТипСУБД возвращает неправильный тип данных. Данная ошибка влияет на работу с СУБД в среде 1С:Предприятие.

http-сервисы web OneScript

См. также

Особенности национального Workflow: Github Actions и OneScript

Групповая разработка (Git, хранилище) OneScript Бесплатно (free)

Сегодня мы посмотрим на Github Actions - встроенный инструментарий Github для автоматизации рабочих процессов. Разберем, что это такое, зачем и причем тут OneScript.

25.03.2024    1176    bayselonarrend    3    

35

TCP прокси-сервер хранилища конфигурации 1С

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) OneScript Платформа 1С v8.3 Бесплатно (free)

Продолжение истории с прокси хранилища, но уже не на HTTP, а на TCP и без падений по памяти веб-сервера. Проверяем комментарии хранилища, вызываем веб-хуки, старты пайплайнов, gitsync по событию помещения версии в хранилище. И все это полностью на знакомом и понятном OneScript.

17.01.2024    2772    kamisov    17    

57

Что такое ОСень? Или как лучшие практики из мира Java прижились в экосистеме OneScript

OneScript Бесплатно (free)

Думаете, на OneScript неудобно создавать сложные инфраструктурные приложения? Ошибаетесь. Благодаря фреймворку ОСень за последний год экосистема библиотек, упрощающих написание собственных приложений, существенно выросла. Расскажем о самых передовых технологиях OneScript. Спойлер: будет много рефлексии, мета-аннотаций, желудей, напильников и дубов с завязями.

21.11.2023    3111    NikitaIvanchenko    16    

46

Библиотека создания клиент-серверных приложений для сценарного языка OneScript

Инструментарий разработчика Работа с интерфейсом OneScript Россия Бесплатно (free)

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

31.07.2023    2016    ahyahy    8    

32

Получаем статистику по git-репозиторию в разрезе разработчиков

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) OneScript Бесплатно (free)

Итак! Представим, что наступил момент, когда разработка через исходный код реализована на предприятии в полном объеме. Мы разрабатываем в EDT или конфигураторе (но выгружаем конфигурацию в исходный код), версионируем внешние отчеты и обработки и расширения, собираем релизы, проверяем код статическим анализом, в разработке царит гармония и мир. Красота! Но менеджерам этого мало, всегда хочется чего-то еще, и вот мне прилетает задача - дай статистику по вкладу в код каждого разработчика.

13.03.2023    3621    ardn    3    

27

Прокси хранилища 1С (IIS, OneScript)

Групповая разработка (Git, хранилище) OneScript DevOps и автоматизация разработки Платформа 1С v8.3 Россия Бесплатно (free)

Избавляемся от версионной зависимости, проверяем комментарии, вызываем веб-хуки, делаем красивые пути. И все это на привычном IIS и понятном OneScript.

08.12.2022    8036    kamisov    57    

95

OneScript на страже порядка на сервере тестовых баз данных

Администрирование СУБД OneScript Бесплатно (free)

Наводим порядок на сервере тестовых баз с помощью любимого инструмента - OneScript. Находим заброшенные базы на сервере MS SQL, определяем кандидатов на удаление.

14.06.2022    4255    ardn    23    

37

Идем в Serverless с кодом 1С

Облачные сервисы, хостинг OneScript Россия Абонемент ($m)

Запускаем код OneScript в Serverless Container Яндекса.

1 стартмани

29.04.2022    3696    1    papami    2    

9
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Steelvan 302 05.06.18 17:45 Сейчас в теме
"...Если есть интересные идеи – можем попробовать реализовать их вместе... "

Вы представляете себя лично или некую компанию ?
2. blackhole321 1303 05.06.18 17:46 Сейчас в теме
(1)Давайте попробуем.
Вы представляете себя лично или некую компанию ?

Себя лично
5. пользователь 08.06.18 07:42
Сообщение было скрыто модератором.
...
3. Steelvan 302 05.06.18 17:53 Сейчас в теме
Приоритетная цель какая ?

Зарабатывание или интерес к развитию возможностей 1С для сетевых технологий ?
4. blackhole321 1303 05.06.18 18:15 Сейчас в теме
(3)Честно говоря, над коммерческой составляющей пока серьезно не думал, одако деньги также лишними не будут :)
Ну изложите таки Ваши идеи.
6. Aleksey81 1177 24.06.18 21:54 Сейчас в теме
Добрый день. Подскажите, пожалуйста, где найти мануал (желательно) пошаговый для запуска простейшего приложения "hello world" используя вашу каркасную конфигурацию?
7. blackhole321 1303 25.06.18 07:19 Сейчас в теме
(6)Мануал по начальной настройке и созданию простейшего приложения описан в статье к версии 1 https://infostart.ru/public/789679/ Все изменения и дополнения описаны в этой статье
Redinternational; KEV8383; +2 Ответить
8. balthasar 38 23.04.22 00:03 Сейчас в теме
(7)Юрий, приветствую! Скажите, пожалуйста, а где-нибудь ещё можно скачать вашу каркасную конфигурацию? А то сейчас стартмани не хватает(
9. blackhole321 1303 23.04.22 08:00 Сейчас в теме
(8)Можно, сделаю репозиторий на github и выложу ссылку.
balthasar; +1 Ответить
11. balthasar 38 23.04.22 12:02 Сейчас в теме
12. blackhole321 1303 23.04.22 13:07 Сейчас в теме
(11) Не за что, только имейте ввиду, что в новых версиях платформы нет линейной выгрузки в фай
лы. Надо конечно поправить конфу, но руки не доходят.
Оставьте свое сообщение