Эта статья является анонсом новой функции. Не рекомендуется использовать содержимое этой статьи для ознакомления с новыми возможностями. Полное описание новых возможностей представлено в соответствующей версии документации. Полный список изменений в новой версии приведен в файле v8update.htm.
Реализовано в редакции 8. 3. 13. 1513.
Расширена функциональность работы с файлами в веб-клиенте. Реализована возможность передачи и размещения файлов «извне», что увеличивает количество функций, доступных без установки специальных средств работы с файлами.
Метод startloadfiles () больше не требует расширений для обработки файлов.
Ранее для загрузки большого количества файлов можно было выбрать один из двух способов. Либо загрузить каждый файл по отдельности, используя метод startLocateFile (), либо загрузить все файлы вместе, используя метод startLocateFiles (). Однако последний способ работает только в том случае, если расширения файлов были предварительно настроены, что не очень удобно.
Теперь мы научим метод StartPlaceFiles () работать без расширений. Таким образом, он использует новый «собственный» диалог выбора файлов. Это позволяет выбирать много файлов одновременно. Если работа с файлами настроена, то используется диалог выбора файлов.
Проверка функциональности загружаемых файлов
Теперь вы можете проверить размер и другие функции файлов перед их загрузкой на сервер. Если размер превышает допустимое значение, загрузку можно отменить.
& onclient process validation beforeforeendingfile (command) hindingload = new alert description (‘ending_load Handler’, thisObject); HandlingBeginingLoad = new alert description (‘beginning_load Handler’, thisObject), startloadingfile (handler_startingloading,. ,. true, siquientIdentTifier, handlestartingloading); endprocedure& onclient procedure Handler_starting_loading (placeablefilefile, filefailure, additionParameters) export filefailurefilefailure = false; for PlaceableFile. size() > 5 * 1024 * 1024 Тогда showwarning (, «Размер файла» + «(» + placedfile. size() + «)» + placedfile. name + «(» + placedfile. fileid + «) превышает 5мб. Восхождение устарело. |
Перетаскивание файлов на изображения и таблицы
Теперь файлы можно перетаскивать на изображение или таблицу. Так, например, вместо того чтобы использовать Проводник для выбора изображения сотрудника, пользователь может просто перетащить нужный файл в поле изображения и положить его.
Открыть файл с помощью перетаскивания
Теперь в веб-клиенте можно открыть файл с помощью перетаскивания.
Файл открывается на рабочем месте веб-клиента.
Установка расширений для работы с файлами
Работа с веб-клиентом имеет ряд особенностей. Эти отличия обусловлены особенностями реализации браузера организации (отсутствие поддержки сконфигурированных окон, современные вызовы, особенности модели безопасности). Работа с файлами и шифрованием веб-клиента требует установки специальных расширений в используемом браузере. Если вы используете веб-браузер Google Chrome, то перед установкой расширения платформы необходимо установить расширение «1С:Предприятие», устанавливаемое веб-магазином Chrome (при необходимости, автоматически при переходе на страницу установки). Без установки этого расширения использование расширения платформы невозможно.
Расширение для работы с файлами:
Если при работе с файлами в веб-клиенте расширение для работы с файлами не установлено, будет выброшено исключение с сообщением следующего типа
Расширение для работы с файлами не подключено
В режимах запуска «Тонкий клиент» и «Мобильное приложение (клиент)» расширение всегда подключено.
Программный код для проверки и установки расширений для работы с файлами зависит от свойства конфигурации ModeUseModality.
[Если для свойства Modality Use Mode установлено значение Use, используется следующий простой программный код.
& amp; OnClient Процедура SynchronousCallConnection(Command) # Для WebClient, Result = ConnectWorkFiles(); Result = False; // Если соединение не удалось - требуется установка ( Первый раз) Если не Result, //InstallWorkFiles(). //Если установка не удалась - повторный вызов соединения не удался ConnectWorkingWithFiles() Если нет, //сообщаем об ошибке и останавливаем программу CallException «File extension connection failed! . Браузер не поддерживает работу с файлами. «? EndIf? EndIf? #EndIf state("Идет чтение файла. Пожалуйста, подождите ....") ; LoadDataFromFile(); // Пользовательская сервисная процедура
Обратите внимание, что функция ConnectWorkingExpansionFiles() возвращает true в других режимах запуска и поэтому должна проверяться только при запуске в браузере (режим веб-клиента).
Если для параметра UseMode установлено значение Don’t Use или Use with Warnings, необходимо использовать асинхронные методы расширений StartAttachWorkFiles Extension и StartInstallWorkFiles Extension.
В этом случае программный код становится более сложным. Вот пример, который я использую в своей разработке
& onclient procedure endopro type &.
Обратите внимание, что в этом программном коде не используется порядок предварительной обработки при асинхронных вызовах.
#if webclient then #endif
Обратите внимание, что асинхронная обработка набора с помощью функцииfilesasync () доступна с версии 8. 3. 18, которая определяет расширение для обработки файлов. В режиме запуска толстого и тонкого клиента он сообщает, что расширение установлено. Для клиентов мобильных приложений он сообщает, что расширение установлено.