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

См. также

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

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

02.07.2024    2948    vkrivov@yandex.ru    8    

18

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

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

17.06.2024    4528    bayselonarrend    5    

61

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

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

20.05.2024    2640    bayselonarrend    18    

70

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

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

25.03.2024    2273    bayselonarrend    3    

41

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

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

17.01.2024    4522    kamisov    21    

63

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

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

21.11.2023    3995    NikitaIvanchenko    16    

48

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

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

31.07.2023    2514    ahyahy    8    

32

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

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

13.03.2023    5084    ardn    3    

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

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

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

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