Имя: Пароль:
1C
1C 7.7
v7: Word из 1С 7.7
0 Mikhail Volkov
 
06.07.18
17:37
Во ВПФ 1С7.7 есть код:
    // заявление о приеме в члены кооператива печатаем из word
    Документы     = СоздатьОбъект("Word.Application");  
    КаталогФайлов = КаталогИБ()    +"ExtForms\PrnForms\Blanki\";
    Документы.Documents.Add(КаталогФайлов+"НОВЫЙ договор займа 2018.doc");
дает ошибку: Документы.Documents.Add(КаталогФайлов+"НОВЫЙ договор займа 2018.doc");
{C:\1CBASE\EXTFORMS\PRNFORMS\ДОГОВОР ЗАЙМА НОВЫЙ .ERT(63)}: Microsoft Word: Ошибка файла.
Почему? word-файл шаблона существует, проверил.
1 Botanik8888
 
06.07.18
17:47
Файл не открыт случаем?
2 Mikhail Volkov
 
06.07.18
17:55
(1) Вроде нет. А как точно в этом убедиться?
3 Mikhail Volkov
 
06.07.18
18:00
Во ВПФ 1С7.7 внес небольшие изменения, имя word-файл шаблона поменял. Вроде все работало. А это в другой базе на другом компе они сами перенесли изменения, ВПФ. Думал word-файл забыли, нет вроде на месте. Может, чтобы работал word из 1С7.7 надо какую-то компоненту ставить, а ее на этом компе нету!?
4 DES
 
06.07.18
18:02
сам файл открывать пробовал в ворде?
5 Mikhail Volkov
 
06.07.18
18:05
(4) Да, нормально открывается.
6 Kigo_Kigo
 
06.07.18
18:07
Сделайте имя покороче и желательно на английском
7 DES
 
06.07.18
18:10
и без пробелов
8 Mikhail Volkov
 
06.07.18
18:17
(6) Попробую, но на другом компе все и так работало.
9 Salimbek
 
06.07.18
21:38
Сделай после КаталогФайлов = ...
Сообщить(КаталогФайлов+"НОВЫЙ договор займа 2018.doc");
Может какой скобочки не хватает.
10 Salimbek
 
06.07.18
21:39
11 Mikhail Volkov
 
07.07.18
05:30
(9) Вставлял, пишет: СуществуетФайл: 1 C:\1cBase\ExtForms\PrnForms\Blanki\НОВЫЙ договор займа 2018.doc
(10) Не успел проверить свойства файла, возможно он заблокировал, т.к. принесен с другого компа.
12 AliAksA
 
07.07.18
07:40
(11) По ходу пресловутая проблема пробелов в имени файла - попробуй убрать - взлетит?
13 Salimbek
 
07.07.18
09:28
(11) Ну дык, разблокируй тогда, так-то я ссылку в (10) нашел через гугель: Microsoft Word: Ошибка файла.
14 uno-group
 
07.07.18
09:56
Длина имени файла не должна превышать 128 символов может меньше. на старом компе путь к базе данных был короче.
15 Salimbek
 
07.07.18
10:15
(14) в (11) видно, что имя файла, вместе с путем, всего 64 символа
16 Mikhail Volkov
 
08.07.18
06:14
(13) Только в понедельник смогу проверить... Пока написал проверку атрибутов файла:
    // заявление о приеме в члены кооператива печатаем из word
    Документы     = СоздатьОбъект("Word.Application");
    КаталогФайлов = КаталогИБ()    +"ExtForms\PrnForms\Blanki\";
    ИмяФайлБланка = КаталогФайлов+"НОВЫЙ договор займа 2018.doc";    //+МВ 07.07.2018
    Если ФС.СуществуетФайл(ИмяФайлБланка) = 1 Тогда
        АтрибутыФайла = "";
        ФС.АтрибутыФайла(ИмяФайлБланка,, АтрибутыФайла);
        Если Сред(АтрибутыФайла, 6, 1) = 0 Тогда
            Если Сред(АтрибутыФайла, 9, 1) = 1 Тогда
                Сообщить("Нет доступа к файлу: " + ИмяФайлБланка, "!");
            ИначеЕсли Сред(АтрибутыФайла, 1, 1) = 1 Тогда
                Сообщить("Файл только для чтения: " + ИмяФайлБланка, "");
            ИначеЕсли Сред(АтрибутыФайла, 2, 1) = 1 Тогда
                Сообщить("Файл скрытый: " + ИмяФайлБланка, "!");
            ИначеЕсли Сред(АтрибутыФайла, 3, 1) = 1 Тогда
                Сообщить("Файл системный: " + ИмяФайлБланка, "");
            ИначеЕсли Сред(АтрибутыФайла, 5, 1) = 1 Тогда
                Сообщить("Файл архивный: " + ИмяФайлБланка, "");
            ИначеЕсли Сред(АтрибутыФайла, 7, 1) = 1 Тогда
                Сообщить("Файл временный: " + ИмяФайлБланка, "");
            Иначе
                Сообщить("Атрибуты: " + АтрибутыФайла + " файла: " + ИмяФайлБланка, "");
            КонецЕсли;
        КонецЕсли;
    Иначе
        Сообщить("Не найден файл бланка: " + ИмяФайлБланка, "!");
        Возврат;
    КонецЕсли;    //-МВ
17 Cool_Profi
 
08.07.18
07:31
(14) "Длина имени файла не должна превышать 128 символов"
256 же вроде?
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.