Имя: Пароль:
1C
1С v8
8.2 ЗаписьТекста на сервере
0 ramir
 
09.09.12
15:40
Хочу записать текст в файле на сервере. Из процедуры с директивой "&НаСервере". Вылетает с ошибкой "Ошибка при вызове конструктора (ЗаписьТекста)". Как быть? Также непонятна ситуация с КаталогВременныхФайлов(), возвращает временный каталог на клиенте. Права доступа к D:\tmp\ для пользователя usr1cv82 на сервере прописал. Жду совета.

Сл = Новый ГенераторСлучайныхЧисел;
ИсходныйКод = "D:\tmp\" + Формат(Сл.СлучайноеЧисло(), "ЧГ=0") + ".txt";
Запись = Новый ЗаписьТекста(ИсходныйКод, КодировкаТекста.UTF8);
1 Wobland
 
09.09.12
15:45
что будет, когда ГСЧ выдаст ноль?
2 Wobland
 
09.09.12
15:47
а \\server\tmp\file.txt пробовал говорить?
3 ramir
 
09.09.12
15:48
Луна упадет на землю. =)
Смотрел значение переменной ИсходныйКод, там все ок. Например D:\tmp\9968419.txt
4 Wobland
 
09.09.12
15:48
(3) это не отменяет (1)
5 ramir
 
09.09.12
15:48
Честно говоря, не хотелось бы использовать сетевые папки.
6 Wobland
 
09.09.12
15:50
плин, да засунь в попытку и медитируй над описанием ошибки
7 ramir
 
09.09.12
15:54
(4) ИсходныйКод = "D:\tmp\" + Формат(Сл.СлучайноеЧисло(), "ЧН=999; ЧГ=0") + ".txt";
Ок?)

(5) {Документ.НазначениеПодчиненныхРесурсов.Форма.ФормаСписка.Форма(51)}: Ошибка при вызове конструктора (ЗаписьТекста) - Тоже самое
8 Wobland
 
09.09.12
16:02
права смотри, наличие каталога и всё такое
9 ramir
 
09.09.12
16:08
(8) Попробовал на клиентской машине создать этот каталог и запустить. Записал в него, зараза. Как же на сервере записать? Это вообще возможно обычными средствами 1С?
10 Wobland
 
09.09.12
16:17
(9) ну я так сразу и думал в (2)
11 ramir
 
09.09.12
16:24
Самое грустное то, что делал все это чтобы выполнить команду на сервере через ЗапуститьПриложение, а она тоже на клиенте выполняется. В общем сделал временное решение через клиента. Буду думать как сделать.
12 borrman
 
09.09.12
16:37
А почему не использовать ПолучитьИмяВременногоФайла()?
Почему СлучайноеЧисло и т.д.?

КаталогВременныхФайлов() - у меня возвращает каталог на сервере.
Клиент-серверный вариант.

Только что попробовал.
13 ramir
 
10.09.12
00:56
(12) Хотел его использовать, но тоже возвращал путь на клиенте. Я жутко извиняюсь перед всеми, кому заморочил голову. Совсем забыл, что тестил на файловом варианте, который у меня на компе. Нужно было сегодня отдыхать...
14 WebberNSK
 
10.09.12
05:36
(13) сделай серверный модуль, напиши там процедуру по получению имени временного файла (или вообще все, что ты хочешь) - будет возвращать на сервере.
У пользователя, под которым запущен сервер 1С предприятия есть права на запись в этот каталог?