Как работать с файлами в Клиент-Серверном варианте (временное хранилище)

Если 1С работает в клиент-серверном варианте (либо через тонкий клиент), когда сервер находится не на том компьютере где запускается 1С клиент - Директивы &НаКлиенте &НаСервере становятся как никогда актуальными.

Если вы работали на одном сервере, а в один прекрасный момент перенесли базу на другой сервер, при этом запуск клиента 1С остался на старом сервере - половина ваших обработок которые вы написали однозначно перестанут работать.

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

&НаСервере
Процедура ПрочитатьФайлТабДоком(ИмяФайла)
ДвоичныеДанные = ПолучитьИзВременногоХранилища(ИмяФайла);
ИмяВременногоФайлаXML = ПолучитьИмяВременногоФайла("XLSX");
ДвоичныеДанные.Записать(ИмяВременногоФайлаXML);
Данные = Новый ТабличныйДокумент;
Данные.Прочитать(ИмяВременногоФайлаXML);
КонецПроцедуры

&НаКлиенте
Процедура ОбновитьДанныеНаСервере()

//Данные = Новый ТабличныйДокумент;
//Данные.Прочитать(Объект.ФайлExcel, СпособЧтенияЗначенийТабличногоДокумента.Текст);

ПрочитатьФайлТабДоком(ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(Объект.ФайлExcel), УникальныйИдентификатор));

КонецПроцедуры

Немного пояснения:

1) То что закомментировано в процедуре "ОбновитьДанныеНаСервере" - это как было до и отрабатывало в первичном варианте (прцедура "ПрочитатьФайлТабДоком" добавляется при переходе на Клиент-Серверный вариант)

2) Данные - Реквизит формы с типом ТабличныйДокумент

Read 738 times Last modified on Суббота, 18 Январь 2020 15:18
Rate this item
(0 votes)

Leave a comment

Make sure you enter all the required information, indicated by an asterisk (*). HTML code is not allowed.

Счетчики

Gallery

 

 

Киев, Новозабарская, 2/6

+38(044)361-0274      +38(093)170-3017