Имя: Пароль:
1C
1С v8
Ошибка при чтении файла.
0 kabv
 
28.11.18
10:31
Здравствуйте!
ЭтотОбработкаОбъект = РеквизитФормыВЗначение("Объект");
    Макет = ЭтотОбработкаОбъект.ПолучитьМакет("МакетШаблонИксел");    
    Макет.Записать(Путь);

Попытка
       Excel = Новый COMОбъект("Excel.Application");
    Исключение
       Сообщить(ОписаниеОшибки());
       Возврат;
    КонецПопытки;
    Книга = Excel.WorkBooks.Open("C:\Users\КазаковБВ\Downloads\Книга1.xlsx");

Произошла исключительная ситуация (Microsoft Office Excel): Нет доступа к файлу 'C:\Users\КазаковБВ\Downloads\Книга1.xlsx'. Это может быть вызвано одной из следующих причин.

• Имени файла или пути не существует.
• Файл используется другой программой.
• Имя книги, которую вы пытаетесь сохранить, совпадает с именем открытой в данный момент книги.

Отчего ошибка может быть? По правам Макет.Записать(Путь); файл создается.
Заранее благодарен!
1 sandal_r
 
28.11.18
10:48
посмотрите Unlocker'ом что держит файл.
2 1Сергей
 
28.11.18
10:48
ставлю на клиент-сервер
3 kabv
 
28.11.18
10:55
Создал в икселе файл, закрыл иксел).
Книга = Excel.WorkBooks.Open("C:\Users\КазаковБВ\Downloads\321.xlsx");
таже хрень
4 Дмитрий
 
28.11.18
10:56
Имени файла или пути не существует.
5 Галахад
 
гуру
28.11.18
10:57
(2) +1.
6 kabv
 
28.11.18
10:58
И книга1 на книга12 спокойно переименовалась - ничего не мешает. Путь скопировал в ком строку- открылся иксел файл. Существует.
7 Мыш
 
28.11.18
10:59
(2) (5) поддерживаю
8 sandal_r
 
28.11.18
10:59
(2) +

(3) судя по всему у вас:
1) клиент-сервер
2) код выполняется &НаСервере
3) этого файла на сервере соответственно нет.

переносите выполнение на клиент, или переделывайте логику. Чтобы сначала формировалось то что надо, а потом сохранялось пользователю куда надо.
9 kabv
 
28.11.18
11:02
Все в терминеле на сервере выполняется (все на одном). Я сначала этот пытался открыть Макет = ЭтотОбработкаОбъект.ПолучитьМакет("МакетШаблонИксел");    
    Макет.Записать(Путь); Он создается, но не открывается. Потом стал пробовать другие файлы - не открывает.
10 1Сергей
 
28.11.18
11:03
(9) у тебя служба сервера запущена под пользователем КазаковБВ?
11 kabv
 
28.11.18
11:04
нет, но он бы и не создавал файла.
12 kabv
 
28.11.18
11:04
если с правами было бы
13 1Сергей
 
28.11.18
11:06
Спрошу по другому. Где выполняется код записи файла, на клиенте или на сервере? Где выполняется код открытия файла, на клиенте или на сервере?
14 Мыш
 
28.11.18
11:08
(11) Добавь после "Макет.Записать(Путь);"
Макет = Неопределено;
15 kabv
 
28.11.18
11:09
не помогло
16 hhhh
 
28.11.18
11:10
(151) создаешь под пользователем КазаковЕВ. Открываешь из-под сервера. При открытии там другой пользователь у сервера. НЕ Казаков.
17 kabv
 
28.11.18
11:12
а закаким? сейчас проверю
18 sandal_r
 
28.11.18
11:12
создай папку c:\123 с полными правами для "Все"
Сохраняй/открывай там файл.
Так проверишь в правах ошибка или нет.
19 Ненавижу 1С
 
гуру
28.11.18
11:13
сохраняете не в том формате
20 kabv
 
28.11.18
11:16
Формат xlsx двоичные данные файл иксел в макете. Иксел его после программного создания без сообщений открывает. Пробую с папкой и все права.
21 kabv
 
28.11.18
12:57
Сделал все на клиенте - ни каких проблем.
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.