Имя: Пароль:
1C
1С v8
Доступ к файлам в сети, в клиент-серверном варианте работы
,
0 murzo1
 
11.07.12
16:57
Ошибки на куске кода:
ДокументWord   = ОбъектWord.Documents.Add(Каталог);

Указывал каталог так: \\server\d$\ftp\1c\!
Так, это смонтированный сетевой диск: Z:\ftp\1c\!

{Документ.ЗаказНаАвтомобиль.МодульОбъекта(1294)}: Ошибка при вызове метода контекста (Add)
   ДокументWord   = ОбъектWord.Documents.Add(Каталог);
по причине:
Произошла исключительная ситуация (Microsoft Word): Файл не найден.




Так, это диск на самом сервере d:\ftp\1c\!

{Документ.ЗаказНаАвтомобиль.МодульОбъекта(1294)}: Ошибка при вызове метода контекста (Add)
   ДокументWord   = ОбъектWord.Documents.Add(Каталог);
по причине:
Произошла исключительная ситуация (Microsoft Word): Ошибка в Word.



Подскажите пожалуйста, как правильно всетаки?
1 murzo1
 
11.07.12
16:59
Хотя файл в норме, открывается, ошибок нет...
2 andrewks
 
11.07.12
16:59
файл называется "!"?
3 murzo1
 
11.07.12
17:00
Нет, это папка, полный путь выглядит так:

&НаСервере
Функция ПечатнаяФорма(ПараметрКоманды)
   Каталог    = Константы.ПутьКШаблонам.Получить();
   Файл       = "Акт приема юр.rtf";
   ПолныйПуть = Каталог + "\" + Файл;
   Документ   = ПараметрКоманды.ПолучитьОбъект();
   Документ.Печать_АктПриемаЮр(ПолныйПуть);
КонецФункции
4 murzo1
 
11.07.12
17:00
"d:\ftp\1c\!\Акт приема юр.rtf"
5 palpetrovich
 
11.07.12
17:03
ну попробуй поменять "!" на что-нить более привычное, мало-ли, может здесь собака порылась
6 andrewks
 
11.07.12
17:04
(4) так ты на вход методу подаёшь папку, а не имя файла
7 murzo1
 
11.07.12
17:10
(5) пробовал, не помогает
(6) Попробовал в "ДокументWord   = ОбъектWord.Documents.Add(Каталог);" добавть не каталог, а число файл, ошибка вылезла:

{Документ.ЗаказНаАвтомобиль.МодульОбъекта(1294)}: Ошибка при вызове метода контекста (Add)
   ДокументWord   = ОбъектWord.Documents.Add(Файл);
по причине:
Произошла исключительная ситуация (Microsoft Word): Файл не найден.
8 murzo1
 
11.07.12
17:11
Процедура Печать_АктПриемаЮр(Каталог, Файл) Экспорт
   
   ОбъектWord     = Новый COMОбъект("Word.Application");
   ДокументWord   = ОбъектWord.Documents.Add(Файл);
9 andrewks
 
11.07.12
17:12
где выполняется код?
10 Kreont
 
11.07.12
17:13
Для начала открой cmd
и поробуй сделать копию например файла этого себе на комп локальный, ну типа:
copy d:\ftp\1c\!\Акт приема юр.rtf новый/rtf
Когда получится, тогда и в 1с заработает :)
11 murzo1
 
11.07.12
17:13
Код из (8) выполняется в модуле объекта
а код из (3) в модуле команды
12 andrewks
 
11.07.12
17:15
есть ли на сервере 1с доступ к этому файлу у юзера, под которым работают раб.процессы?
13 andrewks
 
11.07.12
17:15
и вообще, открой для себя временные хранилища
14 murzo1
 
11.07.12
17:31
(13) Да, думал над этим... если есть ссылка на пример, был бы очень благодарен :)
15 andrewks
 
11.07.12
17:42
(14) в ЖКК всё есть. если украли - иди в СП, начиная с Глобальный контекст ПолучитьФайл() и до конца ветки дерева
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн