|
Управляемые формы: ТабличныйДокумент.Прочитать() на клиенте и сервере
| ☑ |
0
dave2000
28.01.15
✎
16:05
|
Есть копия серверной базы в файловом варианте. Нужно открыть табличный документ из файла, делаю так:
&НаСервере
Функция ПолучитьТабличныйДокументИзФайлаСервер(Адрес)
ИмяТемпФайла = ПолучитьИмяВременногоФайла("mxl");
Данные = ПолучитьИзВременногоХранилища(Адрес);
Данные.Записать(ИмяТемпФайла);
Таб = Новый ТабличныйДокумент;
Таб.Прочитать(ИмяТемпФайла);
УдалитьФайлы(ИмяТемпФайла);
Возврат Таб;
КонецФункции
&НаКлиенте
Процедура СравнитьНоменклатуру(Команда)
Данные = Новый ДвоичныеДанные("d:\file.mxl");
Адрес = ПоместитьВоВременноеХранилище(Данные);
Т = ПолучитьТабличныйДокументИзФайлаСервер(Адрес);
...
Данные помещает во временное хранилище, возвращает адрес, но на сервере в функции ПолучитьТабличныйДокументИзФайлаСервер() эти данные не получает, переменная Данные=Неопределено. В чем проблема? Неуж-то в файловом варианте базы?
|
|
1
Franchiser
гуру
28.01.15
✎
16:09
|
после получения данных на сервере тебе их нужно там же обратно поместить во временное хранилище.
|
|
2
Franchiser
гуру
28.01.15
✎
16:10
|
а потом на клиенте получить снова....
|
|
3
Franchiser
гуру
28.01.15
✎
16:10
|
вместо функции делай процедуру
|
|
4
Franchiser
гуру
28.01.15
✎
16:12
|
+ Адрес сделай реквизитом формы, вообще ориентируйся как в типовых сделано
|
|
5
dave2000
28.01.15
✎
16:18
|
(1) Это ясно, но проблема в том, что я их на сервере получить не могу, пишет:
{Форма.Форма.Форма(60)}: Значение не является значением объектного типа (Записать)
Данные.Записать(ИмяТемпФайла);
После ПолучитьИзВременногоХранилища(Адрес) переменная Данные=Неопределено.
(2) (3) Сделал, ничего не изменилось
|
|
6
News
28.01.15
✎
16:28
|
ПомещаемыеФайлы = Новый Массив;
Описание = Новый ОписаниеПередаваемогоФайла("d:\file.mxl");
ПомещаемыеФайлы.Добавить(Описание);
ПомещенныеФайлы = Новый Массив;
Если НЕ ПоместитьФайлы(ПомещаемыеФайлы, ПомещенныеФайлы, , Ложь, Новый УникальныйИдентификатор) Тогда
ВОЗВРАТ;
КонецЕсли;
|
|
7
Franchiser
гуру
28.01.15
✎
16:29
|
Попробуй
ПоместитьВоВременноеХранилище(Данные, УникальныйИдентификатор)
|
|
8
Franchiser
гуру
28.01.15
✎
16:30
|
Или ПоместитьВоВременноеХранилище(Данные, Новый УникальныйИдентификатор)
Вероятно у тебя хранилище не доживает по какой то причине до серверно вызова.
|
|