bdd2

Пример, как обойтись без расширения работы с файлами в веб клиенте 8.2

Опубликовал Armando Armando (Armando) в раздел Обмен - Интеграция с WEB

Меня достало, что в веб клиенте расширение работы с файлами задает много вопросов типа "Загрузить файл?" или "Удалить файл?". Долго искать альтернативу не пришлось.

Качайте обработку. Все должно быть понятно.

Принцип следующий:

Двоичные данные из макета кодируются в строку Base64. Затем кодируются обратно в формат понятный ADODB.Stream, с помощью которого и сохраняются на диск.

Удаление файла происходит средствами FileSystemObject.

 

Необходимые условия:

  • Браузер только Interrnet Explorer
  • Адрес веб сервера необходимо добавить в список надежных узлов
  • В параметрах безопасности надежных узлов разрешить "Доступ к источникам данных за пределами домена/Access data sources across domains" и "Использование элементов ActiveX, не помеченных как безопасные/Initialize and script ActiveX not marked as safe"
  • Согласиться, если браузер предложит установить компонент "Microsoft Script Control" 

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

Скачать "РаботаСФайлами.epf"

Размер: 8.08 kb
Доступ: Пользователи


+1

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


См. также:
Мои разработки
Мои статьи

Отблагодарить меня:

 Отправить 100 WMR (R342458610221)

Скачать файлы

Наименование Файл Версия Размер
РаботаСФайлами.epf
.epf 8,08Kb
01.11.10
149
.epf 8,08Kb 149 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Артур Аюханов (artbear) 840 01.11.10 17:33 Сейчас в теме
Хорошо, но допущения уж слишком сильные :)
2. Armando Armando (Armando) 1369 01.11.10 17:50 Сейчас в теме
(1) Согласен. Возможно кто-то пойдет на такие жертвы. Для облегчения жизни можно сварганить reg файл с настройками.
3. Vik (madvik) 31.01.11 19:10 Сейчас в теме
Очень интересная реализация, может у вас есть обработка по обратной загрузке файла с клиента на сервер?
Столкнулись с проблемой, из-за которой не можем использовать стандартное расширение работы с файлами...
4. Игорь Steelvan (Steelvan) 49 03.09.11 13:56 Сейчас в теме
#Если НЕ ВебКлиент тогда
ФайлЗагр = Новый Файл(Файл);
Если ФайлЗагр.Существует() = Ложь Тогда
ТекстСообщения = НСтр("ru = 'Файла %Файл% не существует!'");
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Файл%", Файл);
УправлениеНебольшойФирмойСервер.СообщитьОбОшибке(, ТекстСообщения);
Возврат Неопределено;
КонецЕсли;
#КонецЕсли

ПотокЧтения = Новый ТекстовыйДокумент();

Попытка
Если Объект.Кодировка = "DOS" Тогда
Кодир = КодировкаТекста.OEM;
Иначе
Кодир = КодировкаТекста.ANSI;
Конецесли;
ПотокЧтения.Прочитать(Файл, Кодир);
Исключение
ТекстСообщения = НСтр("ru = 'Файл не прочитан.'");
УправлениеНебольшойФирмойСервер.СообщитьОбОшибке(, ТекстСообщения);
Возврат Неопределено;
КонецПопытки;

Если ПотокЧтения.КоличествоСтрок() < 1 Тогда
ТекстСообщения = НСтр("ru = 'В файл нет данных!'");
УправлениеНебольшойФирмойСервер.СообщитьОбОшибке(, ТекстСообщения);
Возврат Неопределено;
КонецЕсли;

Если СокрЛП(ПотокЧтения.ПолучитьСтроку(1)) <> "1CClientBankExchange" Тогда
ТекстСообщения = НСтр("ru = 'Указанный файл не является файлом обмена или неверно указана кодировка!'");
УправлениеНебольшойФирмойСервер.СообщитьОбОшибке(, ТекстСообщения);
Возврат Неопределено;
КонецЕсли;

Возврат ПотокЧтения.ПолучитьТекст();
5. полякова (opolyakova) 8 03.11.11 15:26 Сейчас в теме
платформу поновее, и закомментить код. у меня работает..