|

Асинхронная загрузка и открытие файлов на веб-клиенте 1С 8.3


Содержание:

1.                 Что такое веб-клиент 1С 8.3 и асинхронная загрузка

2.                 Асинхронная загрузка и открытие файлов на веб-клиенте

  Что такое веб-клиент 1С 8.3 и асинхронная загрузка

         Веб-клиент 1С 8.3 – это рабочее место, которое имеет полный функционал системы 1С, а также даёт доступ к системе при помощи любой операционной системы 1С и любого браузера для Интернета, при этом, для работы не требуется загрузка на компьютерное устройство ни приложений, ни дополнительного программного обеспечения.

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

Асинхронная загрузка и открытие файлов на веб-клиенте

         Рассмотрим случай, когда необходимо выполнить асинхронную загрузку через веб-клиента 1С 8.3, не используя сторонние расширения. Получается, что в таком случае, система 1С будет служить кросс-платформенной. Начиная с версии 1С 8.3.16 такая, методика является обязательной на веб-клиенте, так как, модальные окна 1С находятся под запретом. Однако, способ доступен ещё начиная с версии 1С 8.3.9.

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

         Реквизитом, в примере, будет «ЗагруженныеДанные», он имеет тип «ХранилищеЗначения», вторым реквизитом будет «ДатаЗагрузки», он имеет тип «ДатаИВремя», данный реквизит и будет нашим ключевым полем.

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

Если бы форма являлась обычной, то достаточно было бы одной процедуры, если бы форма была управляемая, то достаточно было бы двух процедур (той, которая расположена на скриншоте с программным кодом 1С выше и «ПоместитьФайл» – она исполняется на сервере). Но, когда форма асинхронная, то процедур будет много и программный код 1С будет выглядеть так:

Рассмотрим теперь, когда можно отображать диалоги видов: «Предупреждение» и «Вопрос».

         Пусть внутри конфигурации системы 1С есть некоторое перечисление вида «СпособыОткрытияФайлов», а также есть регистр со сведениями вида «СпособыОткрытияФайлов», как демонстрируется на скриншоте ниже:

СпособыОткрытияФайлов

У измерения с типом «ТипДанныхОтображения» будет, соответственно тип «Строка(10)». У ресурса «СпособОткрытияФайла» будет, также соответственно, иметь вид перечислений «СпособыОткрытияФайлов».

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

         Ниже представлен пример соответствия видов файлов с видами способов их запуска:

Способы открытия файлов

Обязательно, важно помнить, что необходимо внести перечисления, а также сам регистр в подсистему с наименованием «Основная».

         Следующим шагом, нужно в регистре «ФайловоеХранилище» кликнуть по ссылке «Показать файл», после чего, отобразится всплывающее окно с вопросом, как можно увидеть далее:

ФайловоеХранилище

Если мы выберем пункт «Показать», тогда система 1С будет пытаться запустить файл каким-то своим способом, к примеру, таким образом, как случилось с этим файлом «Excel»:

Наш файл: Список.xlsx

В случае, когда данный вид файла не был занесён в регистр «СпособыОткрытияФайлов», тогда появится системное окно с предупреждением, как показано далее:

Системное окно с предупреждением

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

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

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

Специалист компании ООО “Кодерлайн”,

Туренко Лев


Помогла ли вам статья? Оставьте свой комментарий:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Блог про 1С:Предприятие

Copyright © 2024 TopKoder

Мы занимаемся внедрением и обслуживанием программных продуктов 1С.