Макеты в http-сервисах OneScript

Публикация № 841187

Разработка - Языки и среды - OneScript

В статье описана библиотека, реализующая механизм макетов в http-сервисах OneScript, аналогично платформе 1С:Предприятие.

Введение

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

Отличия от 1С:Предприятие

Поддерживаются макеты только нижеследующих типов: Текстовый документ, Двоичные данные и HTML документ.

Для типа ОболочкаHTMLДокумента, возвращаемого при получении макета типа HTML документ, реализована только одна функция – ПолучитьТекст.

Описание

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

Общие макеты

Представляют собой файлы, которые хранятся в определенной папке на диске, и имеют следующую схему именования:

ИмяМакета.Расширение

Где ИмяМакета – это имя макета, которое используется для доступа из внутреннего языка.

Расширение – принимает значения: txt - для макетов типа Текстовый документ, bin – для макетов типа Двоичные данные и html – для макетов типа HTML документ.

Для доступа к общим макетам, реализована функция глобального контекста ПолучитьОбщийМакет(ИмяМакета), которая возвращает объект соответствующего типа данных, в зависимости от типа макета.

Макеты обработок

Представляют собой файлы, которые хранятся в папке обработок, совместно с модулями, которые имеют следующую схему именования:

ИмяОбработки.Макет.ИмяМакета.Расширение

Где ИмяОбработки – это имя обработки на внутреннем языке,  Макет – признак того, что файл является макетом, ИмяМакета – имя макета, которое используется для доступа из внутреннего языка.

Расширение – принимает значения: txt - для макетов типа Текстовый документ, bin – для макетов типа Двоичные данные и html – для макетов типа HTML документ.

Следует отметить, что для обработок, написанных по технологии внешних компонент OneScript, реализация функции ПолучитьМакет, а также место хранения макетов и их формат, полностью на совести разработчика.

Установка

Установка осуществляется копированием файлов dll в папку Bin веб-приложения. Затем, необходимо внести нижеследующие изменения в секцию <appSettings>, файла web.config:

 
<!--Определяем каталог, где расположены файлы перечислений -->

<add key="commonTemplatesPath" value="~/ОбщиеМакеты/" />

<!—Подключаем сборку -->

<add key="Templates " value="attachAssembly" />

 

Использование

Использование макетов в http-сервисах OneScript аналогично их использованию в 1С:Предприятие. Пример использования макетов в OneScript представлен ниже:

 
ОбщийМакет = ПолучмитОбщийМакет(“ИмяОбщегоМакета”);

МакетОбработки = Обработки.МояОбработка.ПолучитьМакет(“ИмяМакета”);

 

Заключение

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

Специальные предложения

Оставьте свое сообщение

См. также

Автоматическое сравнение-объединение баз данных с мини-конфигурацией

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

Представляю вашему вниманию скрипт на OneScript для автоматического сравнения-объединения по правилам ("мержевания") конфигураций нескольких баз с мини-конфигурацией.

14.10.2019    2629    0    artkor    2    

АИТП. Подсистема взаимодействия с рабочими серверами OneScript

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

В статье описан механизм взаимодействия конфигурации АИТП с рабочими серверами OneScript.

22.05.2019    4894    0    blackhole321    33    

1Script.Web. Интернет-приложения на языке 1С

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

Запросы рынка таковы, что любое современное клиент-серверное приложение должно иметь веб-интерфейс. Почему бы не писать такие приложения на языке 1С? Андрей Овсянкин расскажет о возможностях разработки веб-приложений на базе 1Script, рассмотрит перспективы этого направления и в качестве демонстрации покажет «боевое» веб-приложение на новом движке – кроссплатформенную консоль администрирования парка кластеров 1С.

20.05.2019    18500    0    Evil Beaver    33    

Разворачиваем рабочий сервер OneScript для конфигурации АИТП

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

В статье описана методика развертывания рабочего сервера OneScript для конфигурации АИТП, на ОС CentOS 7.

09.05.2019    5751    0    blackhole321    0    

Добавляем онлайн-чат в web-приложение OneScript

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

В статье рассмотрено подключение онлайн-чата к web-приложению на основе http-сервисов OneScript

24.06.2018    7158    0    blackhole321    1    

Сказ про то, как я DevOps-ом занимался (OneScript, Deployka, Jenkins)

OneScript DevOps Jenkins v8 1cv8.cf ИТ-компания Бесплатно (free)

Решаем задачу: автоматизировать обновление тестовых баз 1С из хранилища конфигурации при появлении в нём новых изменений. Данная статья родилась в муках хождения по граблям и поиска безопасного форватора среди подводных камней. Изложение постарался представить в виде инструкции для новичка, в которой собрал всё, с чем пришлось столкнуться. Сам я не DevOps-ер, ни на что не претендую, просто делюсь опытом :)

17.06.2018    20481    0    stas_ganiev    34    

Перечисления в http-сервисах OneScript

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

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

03.06.2018    7614    0    blackhole321    13    

Сборка, тестирование, доставка приложения на onescript с помощью gitlab-ci

OneScript v8 1cv8.cf Бесплатно (free)

Сборка, тестирование, доставка приложения на onescript с помощью gitlab-ci на примере портирования на onescript функции daСклонение.

14.05.2018    12266    0    pallid    3    

TMSSQL - работа с базами данных MS SQL Server в скриптах на OneScript и из командной строки

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

Представляю вашему вниманию библиотеку TMSQL для работы с базами данных на MS SQL Server. Библиотека подключается в качестве модуля или класса в скрипты, написанные на OneScript, а также может работать как независимое консольное приложение.

26.04.2018    14097    0    Tavalik    22    

Создаем свою библиотеку для OneScript

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

Как упаковать свою библиотеку в пакет? Что такое загрузчик и зачем он нужен? Как вообще создать свою библиотеку? Разбираемся на примере.

06.03.2018    20774    0    nixel    36    

Обзор имеющихся библиотек OneScript

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

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

14.11.2017    40882    0    nixel    86    

Вебинтерфейс для OneScript и 1С

OneScript v8 Россия Бесплатно (free)

Пример создания вебинтерфейса для OneScript с использованием библиотеки UfaScript.osb

30.06.2017    13330    0    andreosh    7    

OneScript и Ajax. POST-запрос и мои дальнейшие планы с фантазиями о будущем

OneScript v8 Россия Бесплатно (free)

Моя библиотека для OneScript (версия 3.0 от 09.06.2017 см.GitHab UfaScript) https://github.com/andreosh/UfaScript теперь позволяет посылать POST-запросы на сервер без использования сторонних библиотек типа jquery.

09.06.2017    17554    0    andreosh    3