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

27.06.18

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

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
HTTP-сервисы OneScript. Каркасная конфигурация 2.0.5:
.cf 9,37Mb
26
26 Скачать (1 SM) Купить за 1 850 руб.

Введение

Настоящая конфигурация является обновленной версией каркасной конфигурации, описанной в этой публикации и также, как и предыдущая версия, предназначена для создания и отладки 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

См. также

OneScript Программист Бесплатно (free)

Отгремел Infostart Tech Event 2024, топовое событие в мире 1С-разработки, традиционно проходящее в Санкт-Петербурге. Ваш покорный слуга в этот раз отмечал там 10-летний юбилей проекта OneScript. Отмечание проводилось в форме игры-соревнования по забегу роботов в лабиринте. Участники пытались написать алгоритм движения робота на языке 1С и сделать это быстрее других. О том, как это было – под катом.

28.10.2024    1457    Evil Beaver    11    

24

OneScript Программист Бесплатно (free)

OneScript – это скриптовый движок для автоматизации всего и вся. О том, как OneScript помогает в разработке скриптов на языке 1С, пойдет речь в статье.

10.10.2024    2663    ardn    2    

7

Инструментарий разработчика OneScript Программист Руководитель проекта Бесплатно (free)

Все мы хотя бы раз работали с конструктором запросов. Результатом его работы является синтаксически верный запрос, оформленный по некоторому стандарту. Нравится - не нравится, а привыкаешь быстро, и на запрос, написанный руками, уже не хочется смотреть... А почему бы не попробовать сделать то же самое с исходным кодом 1С? Ну я и попробовал...

23.09.2024    645    0    stopa85    4    

5

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

Скрипт для работы с SonarQube и локальным репозиторием Git.<br> Цель проекта – возможность выполнить быструю проверку качества кода перед тем, как помещать доработки в рабочее хранилище. В Sonar и Git выгружается не вся конфигурация, а только объекты из заданного списка.<br> https://github.com/vkrivov/go/

02.07.2024    3790    vkrivov@yandex.ru    8    

19

DevOps и автоматизация разработки OneScript Системный администратор Программист Стажер Бесплатно (free)

Рассмотрим создание самоформирующейся документации через комментарии и соглашения: как это сделать и зачем, с описанием полного цикла от исходников конфигурации до странички в интернете

17.06.2024    5563    bayselonarrend    5    

61

OneScript Программист Стажер Бесплатно (free)

Поговорим про меню, спиннеры, прогресс-бары и прочие свистелки для CLI приложений на OneScript

20.05.2024    2971    bayselonarrend    18    

70

Групповая разработка (Git, хранилище) OneScript Системный администратор Программист Бесплатно (free)

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

25.03.2024    2823    bayselonarrend    3    

42

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

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

17.01.2024    5825    kamisov    23    

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

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

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

Зарабатывание или интерес к развитию возможностей 1С для сетевых технологий ?
4. blackhole321 1314 05.06.18 18:15 Сейчас в теме
(3)Честно говоря, над коммерческой составляющей пока серьезно не думал, одако деньги также лишними не будут :)
Ну изложите таки Ваши идеи.
6. Aleksey81 1186 24.06.18 21:54 Сейчас в теме
Добрый день. Подскажите, пожалуйста, где найти мануал (желательно) пошаговый для запуска простейшего приложения "hello world" используя вашу каркасную конфигурацию?
7. blackhole321 1314 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 1314 23.04.22 08:00 Сейчас в теме
(8)Можно, сделаю репозиторий на github и выложу ссылку.
balthasar; +1 Ответить
11. balthasar 38 23.04.22 12:02 Сейчас в теме
12. blackhole321 1314 23.04.22 13:07 Сейчас в теме
(11) Не за что, только имейте ввиду, что в новых версиях платформы нет линейной выгрузки в фай
лы. Надо конечно поправить конфу, но руки не доходят.
Оставьте свое сообщение