Имя: Пароль:
1C
 
Как записать в поток памяти и потом извлечь ?
0 vv2304
 
20.07.26
19:53
Тестирую простейший пример. Но что-то не получается.
&НаСервере
Процедура ПечатьНаСервере()
    ТабДок = Новый ТабличныйДокумент;
    МестоположениеФайла1  = "d:\Тест.pdf";
    ТабДок.Записать(МестоположениеФайла1 , ТипФайлаТабличногоДокумента.PDF);
    ПотокФайла = Новый ПотокВПамяти();
    ТабДок.Записать(ПотокФайла);
    ДвоичныеДанныеДокумента = ПотокФайла.ЗакрытьИПолучитьДвоичныеДанные();
    АдресВремХран=ПоместитьВоВременноеХранилище(ДвоичныеДанныеДокумента);
    
    МестоположениеФайла2  = "d:\Тест2.pdf";
    ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресВремХран);
    Если ДвоичныеДанные <> Неопределено Тогда
        ДвоичныеДанные.Записать(МестоположениеФайла2);
    КонецЕсли;    

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

&НаКлиенте
Процедура Печать(Команда)
    ПечатьНаСервере();
КонецПроцедуры

Первый файл хоть там лист и пустой, но нормальный, а во втором фигня какая-то, приложил скрин
1 vv2304
 
20.07.26
20:14
все, нашел ошибку, забыл при записи в поток ТипФайлаТабличногоДокумента.PDF
2 Chameleon1980
 
21.07.26
05:24
Люди приходят, размышляют и... уходят.
Закон Брукера: Даже маленькая практика стоит большой теории.