Каталог решений - для создания web-приложений OneScript из 1С:Предприятие

для создания web-приложений OneScript из 1С:Предприятие

для создания web-приложений OneScript из 1С:Предприятие

В наличии

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

Категория:

Описание

Введение

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

Доступна новая версия конфигурации, с которой можно ознакомиться здесь.

 

Подготовка среды

 

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

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

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

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

 

Установка web-сервера

В качестве web-сервера для разработки будем использовать IIS Express.

Для установки, перейдем в панель управления и выберем пункт “Программы и компоненты”.

Выбираем “Включение или отключение компонентов Windows”

 

В открывшемся окне находим и выбираем пункт “Службы интернета”, также добавляем компоненты в соответствии с нижеследующим рисунком

 

Нажимаем ОК и дожидаемся окончания установки.

 

Установка компонента ARR

 

Данный компонент осуществляет перенаправления запросов к web-серверу по определенным правилам и необходим для доступа к ресурсам, расположенным на диске при работе web-приложения из среды 1С:Предприятие.

Для установки, переходим по ссылке (https://www.iis.net/downloads/microsoft/application-request-routing) и следуем дальнейшим инструкциям.

После установки данного компонента, в свойствах сайта и приложений появится соответствующий значек

 

Настройка пула приложений в IIS

 

В оснастке управления службами IIS, переходим к разделу “Пулы приложений”, нажимаем правой кнопкой мыши и выбираем добавить.

 

Вводим имя пула (в нашем случае OneScript), выбираем версию среды выполнения не ниже 4.0, классический режим управляемого контейнера и нажимаем ОК.

Для обеспечения возможности работы 1С:Предприятие, корректируем свойства пула DefaultAppPool в соответствии с нижеследующими рисунками:

 

Настройка среды разработки

 

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

 

Организация файловой структуры

Примерная организация файловой структуры представлена на рисунке ниже:

 

В данном случае, папка “IBase” будет использоваться для хранения файлов информационной базы, папка “Импорт” будет использоваться как временная рабочая папка для операций экспорта/импорта данных  между 1С:Предприятие и приложением OneScript в процессе разработки, а папка “ФайлыКонфигурации” будет использоваться для выгрузки конфигурайии из 1С:Предприятие.

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

 

Создание информационной базы

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

После создания базы, запустим 1С из под администратора, откроем созданную информационную базу и загрузим конфигурацию из файла.

 

Публикация информационной базы на web-сервере

Публикация осуществляется штатным образом. В нашем случае, окно публикации будет следующим:

 

Запомним каталог публикации (c:\inetpub\wwwroot\demo1c), так как он понадобится нам в дальнейшем.

Также разрешаем отладку:

 

Настройка конфигурации

Запустим конфигурацию в пользовательском режиме, перейдем в раздел “Настройки”, выберем Сервис->Настройки. В открывшемся окне

Заполним значение каталога публикации 1С, а также каталогов для импорта и файлов конфигурации.

 

 

Создание web-приложения OneScript

Перейдем в раздел “Главное” и выберем пункт “Управление IIS”.

В открывшейся консоли, выделим сайт по умолчанию, нажмем правой кнопкой мыши и выберем “Добавить приложение”.

 

 

В открывшемся окне, введем название приложения (osdemo), выберем ранее созданный пул (OneScript), создадим и выберем папку, где будут размещаться файлы приложения (c:\inetpub\wwwroot\osdemo).

 

Нажимаем ОК.

Переходим в настройки конфигурации и заполняем Каталог приложения, а также вводем его url (он пригодится нам позднее).

 

Сохраняем внесенные изменения.

Переходим в раздел “Главное” и выбираем “Создать приложение”.

Устанавливаем чекбокс “Создать тестовый скрипт” и нажимаем на кнопку “Создать”.

 

Наше пустое приложение, содержащее тестовый скрипт создано.

 

Для проверки работоспособности, открываем браузер и обращаемся к нашему тестовому скрипту

 

 

Теперь, наша среда разработки настроена и готова к использованию, однако, прежде, чем приступить к программированию, давайте разберемся, как это работает.

 

Как это работает

 

Перейдя в раздел “Главное” и выбрав “Открыть каталог приложения” мы увидим некую файловую структуру, которую создала наша конфигурация.

 

 

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

web_config – текстовый документ, содержащий конфигурацию приложения для ОС Windows. Его содержимое копируется в файл web.config.

ПлатформаOneScript – содержит zip-архив с файлами платформы OneScript. Разархивируется в папку Bin.

web_config_linux – текстовый документ, содержащий конфигурацию приложения для ОС Linux. Его содержимое копируется в файл web.config.linux. При размещении на ОС Linux, данный файл должен быть переименован в web.config.

test_os – текстовый документ, содержащий код тестового скрипта. Из его содержимого формируется файл test.os

БиблиотекиOneScript – содержит zip-архив c файлами дополнительных библиотек, которые может использовать приложение и не относящихся к платформе. Архив разархивируется в папку Bin. В данной конфигурации не содержит данных.

ПрочиеФайлы —  любые файлы и папки, за исключения файлов *.os, web.config, web.config.linux в корне, а также папок Bin, CommonModules, которые могут использоваться приложением. В данной конфигурации не содержит данных.

Таким образом, создание web-приложения OneScript происходит путем создания в каталоге приложений определенных файлов и папок на основе данных, имеющихся в конфигурации.

 

Создаем первое приложение

 

Создание подсистемы приложения

Для отделения объектов конфигурации, которые относятся к приложению OneScript, создадим подсистему “ДемоПриложение”, куда будем помещать все объекты, которые составляют приложение OneScript.

 

Создание HTTP-сервиса

В конфигураторе, создадим HTTP-сервис с именем test и корневым url – test.os.

 

Добавим его в подсистему “ДемоПриложение”.

 

Для созданного сервиса, добавим шаблон URL и метод GET. Получится примерно следующий результат:

 

 

Переименуем метод и пометим его как экспортный.

 

Отредактируем наш обработчик, примерно следующим образом:

 


Функция ОбработкаВызоваHTTPСервиса(Запрос) Экспорт
	
	Ответ = Новый HTTPСервисОтвет(200);
	Ответ.УстановитьТелоИзСтроки("Текущее время: " + Строка(ТекущаяДата()));
	Возврат Ответ;
	
КонецФункции

Обновим конфигурацию и публикацию на веб-сервере.

Обратившись к серверу из браузера, получим примерно следующее:

 

 

Портирование приложения на OneScript

Выгружаем конфигурацию (меню “Конфигурация” -> Выгрузить конфигурацию в файлы). Выбираем папку для выгрузки (ту, что мы указали в настройках ранее), а также линейный формат.

 

Нажимаем выполнить и дожидаемся завершения выгрузки. Содержимое папки будет иметь примерно следующий вид:

 

 

Запустим нашу конфигурацию в режиме предприятия. В разделе “Главное” выберем “Обновить приложение”.

 

 

Чекбокс “Обновить приложение” — Если выбран, то папка приложения OneScript будет полностью очищена и приложение будет создано заново как если бы это было новое приложение.

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

Каталог приложения – указывает на папку web-приложения OneScript. Значение берется из настроек, однако также может быть переопределено.

Ниже находится список подсистем, доступных для обновления.

Поскольку наш сервис находится в подсистеме ДемоПриложение, выберем ее и нажмем обновить.

После подтверждения наших действий, web-приложение будет обновлено.

Откроем каталог приложения и просмотрим содержимое файла test.os

 

Оно будет идентично тексту модуля в конфигурации.

Протестируем приложение, обратившись к нему из браузера.

 

 

Таким образом, мы создали простейшее web-приложение OneScript  в среде 1С:Предприятие и портировали его на платформу OneScript.

 

Как правило, набор подсистем, объекты которых мы будем экспортировать в OneScript известен, мы можем добавить эти подсистемы, как экспортируемые в настройках. В этом случае, они будут автоматически помечаться для обновления, при обновлении приложения. Это можно сделать, выбрав в разделе "Настройки" пункт “Список систем для обновления”.

 

 

Расширяем приложение 

 

В качестве примера, добавим фунукионал приложения TestWebApp, которое находится в исходных файлах OneScript, расположенных на github (https://github.com/EvilBeaver/OneScript/tree/develop/src/TestWebApp).

Суть приложения проста, оно выводит тестовую страницу с ip адресом клиента и при нажатии на изображение, формируется POST запрос, результатом которого является страница с исходным кодом приложения. Файлы Default.ospt и source.ospt являются html-шаблонами, на основе которых формируется вывод. Вспомогательные java-скрипты, изображения, стили расположены в соответствующих папках (scripts, images и styles).

Файловая структура приложения изображена на рисунке ниже:

 

 

Содержимое Default.os:

// Это предопределенная функция - обработчик запроса HTTP-сервиса
// 
Функция ОбработкаВызоваHTTPСервиса(Запрос) Экспорт
	
	Если Запрос.HTTPМетод = "GET" Тогда
		
		Возврат ПоказатьГлавнуюСтраницу(Запрос);

	Иначе

		Возврат ПоказатьИсходныйКод(Запрос);

	КонецЕсли;	

КонецФункции

Функция ПоказатьГлавнуюСтраницу(Запрос)

	Контекст = Запрос.Контекст;
	
	ИмяФайлаШаблона = СтрЗаменить(Контекст.ФизическийПуть, "Default.os", "Default.ospt");
	СтрокаШаблон = ПолучитьМакетСтраницы(ИмяФайлаШаблона);
	СтрокаТело = СтрЗаменить(СтрокаШаблон, "{ClientAddress}", Контекст.АдресКлиента);
	Ответ = Новый HTTPСервисОтвет(200);
	Ответ.УстановитьТелоИзСтроки(СтрокаТело);
	
	Возврат Ответ;
	
КонецФункции

Функция ПоказатьИсходныйКод(Запрос)

	Контекст = Запрос.Контекст;
	
	СтрокаИсходныйКод = ПолучитьМакетСтраницы(Контекст.ФизическийПуть);

	ИмяФайлаШаблона = СтрЗаменить(Контекст.ФизическийПуть, "Default.os", "Source.ospt");
	СтрокаШаблон = ПолучитьМакетСтраницы(ИмяФайлаШаблона);
	
	СтрокаТело = СтрЗаменить(СтрокаШаблон, "{SourceCode}", СтрокаИсходныйКод);
	
	Ответ = Новый HTTPСервисОтвет(200);
	Ответ.УстановитьТелоИзСтроки(СтрокаТело);
	
	Возврат Ответ;

КонецФункции

Функция ПолучитьМакетСтраницы(ПутьКФайлу)

	Документ = Новый ТекстовыйДокумент;
	Документ.Прочитать(ПутьКФайлу);
	Возврат Документ.ПолучитьТекст();

КонецФункции

 

Содержимое Default.ospt:

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>OneScript HTTP Service Test Page</title>
</head>

<body>
    <div>
    <p align="center" style="font-size:68px;">Привет ({ClientAddress})!</p>
    <p align="center">Эта страница создана HTTP сервисом OneScript.</p>
    </div>
    <div>
        <center>
    <form action="Default.os" method="POST">
        <input type="hidden" name="what you want" value="what you want">
        <input type="image" src="/images/viewsrc.jpg" />
    </form>
            </center>
    </div>
</body>

</html>

 

Содержимое source.ospt:

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>OneScript HTTP Service Test Page</title>
    
    <link rel="stylesheet" href="/styles/github.css">
    <script src="/scripts/highlight.pack.js"></script>
    <script>hljs.initHighlightingOnLoad();</script>
    
</head>

<body>
    <center>
        <a href="Default.os">
            <img src="/images/home.png" alt="Go to W3Schools!" height=64 width=64 border="0">
        </a>
    </center>
        <pre><code class="1c" style="border: 1px solid #C1C1C1;">
            {SourceCode}
        </code></pre>
</body>

</html>

 

Создание кода HTTP-сервиса

Добавим общий модуль, с именем ОбщиеДемо, пометив его как серверный и добавив в нашу подсистему.

Скопируем из файла Default.os код функции ПолучитьМакетСтраницы, вставим в тело модуля и пометим, как экспортную.

 

 

Поскольку исходное приложение содержит один скрипт (Default.os), в конфигураторе создадим web-сервис с таким же именем и поместим его в подсистему “ДемоПриложение”, аналогично тому, как мы делали это ранее.

В результате, должно получиться нечто следующее:

 

 

Модифицируем код модуля таким образом, чтобы получилось следующее:

// Default.os
//


Функция ОбработкаВызоваHTTPСервиса(Запрос) Экспорт

	Если Запрос.HTTPМетод = "GET" Тогда
		
		Возврат ПоказатьГлавнуюСтраницу(Запрос);

	Иначе

		Возврат ПоказатьИсходныйКод(Запрос);

	КонецЕсли;	

КонецФункции

Функция ПоказатьГлавнуюСтраницу(Запрос)

	//<OneScript>
	//Контекст = Запрос.Контекст;
	//ИмяФайлаШаблона = СтрЗаменить(Контекст.ФизическийПуть, "Default.os", "Default.ospt");
	//АдресКлиента = Контекст.АдресКлиента;
	//<!OneScript>
	
	//<1C>
	ИмяФайлаШаблона = Константы.КаталогПриложения.Получить() + "\Default.ospt";
	АдресКлиента = "НеПоддерживается";
	//<!1C>

	СтрокаШаблон = ОбщиеДемо.ПолучитьМакетСтраницы(ИмяФайлаШаблона);
	СтрокаТело = СтрЗаменить(СтрокаШаблон, "{ClientAddress}", АдресКлиента);
	
	Ответ = Новый HTTPСервисОтвет(200);
	Ответ.УстановитьТелоИзСтроки(СтрокаТело);
	
	Возврат Ответ;
	
КонецФункции

Функция ПоказатьИсходныйКод(Запрос)

	//<OneScript>
	//Контекст = Запрос.Контекст;
	//ИмяФайлаШаблона = СтрЗаменить(Контекст.ФизическийПуть, "Default.os", "source.ospt");
	//СтрокаИсходныйКод = ОбщиеДемо.ПолучитьМакетСтраницы(Контекст.ФизическийПуть);
	//<!OneScript>
	
	//<1C>
	ИмяФайлаШаблона = Константы.КаталогПриложения.Получить() + "\source.ospt";
	ПутьКФайлуИсходногоКода = Константы.КаталогПриложения.Получить() + "\Default.os";
	СтрокаИсходныйКод = ОбщиеДемо.ПолучитьМакетСтраницы(ПутьКФайлуИсходногоКода);
	//<!1C>
	
	СтрокаШаблон = ОбщиеДемо.ПолучитьМакетСтраницы(ИмяФайлаШаблона);
	СтрокаТело = СтрЗаменить(СтрокаШаблон, "{SourceCode}", СтрокаИсходныйКод);
	
	Ответ = Новый HTTPСервисОтвет(200);
	Ответ.УстановитьТелоИзСтроки(СтрокаТело);
	
	Возврат Ответ;

КонецФункции

 

Доступность объектов

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

 

#Если МобильноеПриложениеКлиент Тогда


// какой то специфичный код        

#КонецЕсли

 

Для решения аналогичной проблемы между платформами OneScript и 1С:Предприятие используется следующий подход:

Область кода, специфичная для определенной платформы обрамляется соответствующими тегами:

 
 

//<1C>


// Код, который доступен только из 1С:Предприятие 

//<!1C>

 

//<OneScript>

// Код, который доступен только из OneScript

//<!OneScript>

 

Соответственно весь код, между открывающим и закрывающим тегами должен быть закомментирован в соответствии с тем, на какой платформе ведется разработка. Если мы разрабатываем в среде 1С:Предприятие, должен быть закомментирован код между тегами //<OneScript> и //<!OneScript>. Если мы разрабатываем в среде OneScript – закомментированным должен быть код межлу тегами //<1C> и //<!1C>.

Пример использования тегов приведен в тексте модуля web-сервиса выше.

Для иллюстрации этого механизма, обновим конфигурацию ИБ, выгрузим ИБ в файлы и обновим приложение аналогично тому, как описано ранее.

В папке общих модулей (CommonModules) появился файл общего модуля, созданного нами ранее.

 

 

Также в папке приложения появился файл Default.os, содержимое которого соответствует содержимому модуля HTTP-сервиса в конфигурации, за исключением того, что при выгрузке был закомментирован код, специфичный для 1С:Предприятие и разкомментирован код, специфичный для OneScript.

 

 

Иногда возникает потребность в переносе файлов, созданных или отредактированных в OneScript, в 1С. Для этого, в разделе “Импорт”, выберем пункт “Файл OneScript”. Далее выбираем файл, отредактированный в OneScript и нажимаем ОК. В нашем случае – это файл Default.os. Как можно увидеть, произошло обратное преобразование. Код, специфичный для 1С был раскомментирован, а код, специфичный для OneScript был закомментирован.

 

 

Добавление ресурсов

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

 

 

Удалим файлы web.config и Default.os т.к. они нам не нужны.

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

 

 с импортом архива в макет ПрочиеФайлы.

 

 

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

Результирующая файловая структура представлена на рисунке ниже.

 

 

Модифицируем ссылки на ресурсы в файлах Default.ospt и source.ospt

 

 

Для создания файла архива, перейдем в раздел “Импорт”, нашей конфигурации и выберем пункт “Прочие файлы”.

 

 

Каталог приложения – каталог из которого будут импортироваться файлы. По умолчанию имеет значение из настроек, может быть переопределен.

Каталог импорта – каталог, куда будет помещен файл архива. Может быть переопределен.

Нажимаем кнопку импортировать и дожидаемся окончания операции.

Открываем каталог импорта и архив. Как можно увидеть, там содержатся файлы и папки, котроые мы создали ранее, и которые не относятся к платформе, библиотекам, *.os или конфигурационным файлам.

 

Импортируем архив в макет ПрочиеФайлы и обновляем конфигурацию.

Аналогичным образом создаются архивы библиотек. Однако в этом случае необходимо добавление соответствующих ключей в макет web_config, web_config_linux и в сам файл web.config в папке web-приложения.

 

Настройка переопределения URL

Обратимся из браузера к HTTP-сервису 1C:Предприятие. Результат представлен на рисунке ниже:

 

 

Как видим, изображение, которое находится в подпапке images не подгрузилось. Также, при нажатии на это изображение мы не переходим на страницу с исходным кодом.

Для решения второй проблемы воспользуемся отладчиком и обнаружим, что в обработчике POST запроса мы указали неверное имя шаблона.

 

 

Поправляем ошибку, обновляеми выгружаем конфигурацию, обновляем приложение. Тестируем приложение из браузера. На сей раз, переход на страницу с исходным кодом произошел, однако по прежнему мы имеем проблемы с загрузкой стилей, скриптов и изображений. Это неудивительно, учитывая тот факт, что ссылки в шаблонах имеют относительные адреса, а папки со скриптами и изображениями находятся по относительному url, отличному от http://localhost/demo1c/hs/.

В решении этой проблемы нам помогут правила перенаправления URL.

В консоли администрирования IIS перейдем к публикации HTTP-сервиса 1С (demo1c), а затем в правила перенаправления URL.

 

 

Добавим новое правило

 

Указываем имя сервера, на который будет перенаправляться запрос (в нашем случае это тот же самый localhost).

 

Выделяем правило и нажимаем “Изменить”.

 

В качестве шаблона выбираем “Подстановочные знаки”, Вводим шаблон для изображений *images/* и нажимаем “Проверить шаблон”

 

В окне проверки вводим тестовый url и нажимаем “Проверить”.

 

Обращаем внимание, что имени файла изображения соответствует параметр {R:2}.

Удаляем запись из условий (должно стать как на рисунке ниже).

 

Вводим адрес, куда будет перенаправляться запрос (в нашем случае – это публикация приложения OneScript), для отладки, отмечаем Регистрировать переопределенный url, убираем чекбокс “Остановить обработку других правил”.

 

Сохраняем правило.

Аналогичным образом создаем правила для папок scripts и styles.

 

 

Тестируем приложение из браузера

 

 

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

Для импорта созданных правил, в разделе “Импорт”, выбираем “Переопределение URL” и нажимаем “Импортировать”.

 

Выделяем все содержимое результата и помещаем в макет Переопределение Url.

 

Обновляем конфигурацию.

Обновим публикацию HTTP-сервиса 1С на веб-сервере, а затем зайдем в правила переопределения URL в публикации 1С.

Как мы можем увидеть, правила, созданные нами ранее исчезли после публикации 1С на web-сервере. Соответственно, после обновления кэша мы опять будем иметь проблемы с доступом к изображениям, скриптам etc.

Для восстановления правил, в режиме предприятия, в разделе “Главное”, выберем пункт “Установить перенаправление URL” и нажмем “Сформировать”.

Просмотрим исходный файл web.config во вкладке Исходный текст, а также измененный вариант с учетом сохраненных нами ранее правил, в папке Результат.

 

Нажимаем кнопку “Применить изменения”.

Переходим к списку правил перенаправления URL и обновляем содержимое. Как можно увидеть, правила вновь появились.

 

Тест приложения

Обновляем и выгружаем конфигурацию, затем обновляем приложение.

Проверяем работоспособность приложения на платформе OneScript из браузера.

 

 

Ну вот мы и создали web-приложение OneScript из среды 1С:Предприятие.

 

Распространение приложения

 

Распространение zip-архивом

Данный тип распространения используется, если Вы хотите перенести Ваше приложение в продуктивную среду.

Для создания архива, выберите пункт “Архивировать приложение” в разделе “Главное”.

Нажмите “Архивировать” и дождитесь завершения операции.

Откройте папку импорта, в ней будет находиться файл application.zip

Внутри он будет содержать все файлы и папки нашего web-приложения.

 

Теперь его можно передать и развернуть в продуктивной среде.

 

Распространение конфигурацией

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

Поправим свойства конфигурации и выгрузим ее в .cf файл.

Развертывание приложения, осуществляется выбором пункта “Обновить приложение”, с установленным чекбоксом “Обновить приложение”, после предварительной настройки среды разработки.

 

Заключение

 

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

has been added to your cart:
Оформление заказа