Имя: Пароль:
1C
1С v8
Ошибка при при записи файла на сервере
0 Dindzilin
 
30.08.11
12:03
Собственно вот код:
       ИмяФайла = "Приложение.xls"
   ПутьКФайлу = ПолучитьИмяВременногоФайла("xls");
       ТабДок.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLS);
   
   ПараметрыФайлаВложения = Новый Структура;
   ПараметрыФайлаВложения.Вставить("ИмяФайла",ИмяФайла);
   ПараметрыФайлаВложения.Вставить("ПутьКФайлу",ПутьКФайлу);
   ПараметрыФайлаВложения.Вставить("Файл",Новый ДвоичныеДанные(ПутьКФайлу));

На клиенте отрабатывает без ошибок, при выполнении на сервере строка

ТабДок.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLS);

отрабатывает без ошибок, но вот строка:

ПараметрыФайлаВложения.Вставить("Файл",Новый ДвоичныеДанные(ПутьКФайлу));

Вызывает ошибку:

Ошибка при вызове конструктора (ДвоичныеДанные): Файл не обнаружен 'C:\Users\Администратор\AppData\Local\Temp\v8_AE1E_90.xls'
по причине:
Файл не обнаружен 'C:\Users\Администратор\AppData\Local\Temp\v8_AE1E_90.xls'

Уже голову всю сломал...
1 lxs
 
30.08.11
12:06
доступ есть в директорию?
2 lxs
 
30.08.11
12:07
Что возвращает ПолучитьИмяВременногоФайла("xls")?
3 lxs
 
30.08.11
12:08
а, проехали.
4 Dindzilin
 
30.08.11
12:08
C:\Users\Администратор\AppData\Local\Temp\v8_AE1E_90.xls - возвращает! Доступ канесно есть.
5 Стальная Крыса
 
30.08.11
12:12
а файло-то создается ?
точку остановки в отладчике поставить на строке

ПараметрыФайлаВложения.Вставить("Файл",Новый ДвоичныеДанные(ПутьКФайлу));

и проводником/Far-ом (или что там у вас есть) посмотреть - есть такой файл или нет
6 Dindzilin
 
30.08.11
12:14
Точку останова.... а в фоне остановится?
7 Стальная Крыса
 
30.08.11
12:15
если сервер запущен с ключом -debug
8 Dindzilin
 
30.08.11
12:16
В темповой директории не наблюдал ни одного файла с расширение м xls, просто вот думаю - если файл временный, когда 1С его прибивает?
9 Стальная Крыса
 
30.08.11
12:16
или добавить строку с проверкой файла на его наличие
объектом "Файл"
10 Стальная Крыса
 
30.08.11
12:17
а "ПолучитьИмяВременногоФайла("xls")" не создает файл а получает только уникальное имя  :)
11 Dindzilin
 
30.08.11
12:17
Хорошо, если файл не создается... Что дальше?
12 Стальная Крыса
 
30.08.11
12:18
тогда - это Права доступа
13 Dindzilin
 
30.08.11
12:18
ТабДок.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLS); - разве тоже ничего не делает?
14 Salvador Limones
 
30.08.11
12:19
ТабличныйДокумент (SpreadsheetDocument)
Записать (Write)

Примечание:

При работе на сервере, веб клиенте или через внешнее соединение нет возможности сохранять в формате XLS95.

Причем эта скатина даже ошибки не выдаёт, просто тупо не записывает файл.
15 Dindzilin
 
30.08.11
12:19
Вооооот!!!!
16 Стальная Крыса
 
30.08.11
12:19
О КАК...
бум знать  :)
17 Dindzilin
 
30.08.11
12:20
Где нашел?
18 Salvador Limones
 
30.08.11
12:21
Уже проходили.
19 Dindzilin
 
30.08.11
12:22
XLS97 - прокатит?
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.