![]() |
![]() |
![]() |
|
Сломалось сохранение в формате docx в новой платформе(?) | ☑ | ||
---|---|---|---|---|
0
Garry1010
21.07.25
✎
13:21
|
Похоже, что при обновлении версии платформы с 8.3.24.1624 на 8.3.27.1644 сломалось программное сохранение табличного документа в формате docx. Никто не сталкивался с таким?
А именно, один и тот же код: ТабДокумент = .....; //тут функция создания и заполнения ТабДокумент.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.DOCX); ОбъектWord = Новый COMОбъект("Word.Application"); ОбъектWord.Visible = 0; ОбъектWord.WordBasic.DisableAutoMacros(1); Документ = ОбъектWord.Documents.Open(ИмяФайла); ... на старой платформе нормально работает и после формирования/сохранения табличного документа открывает docx-файл, а на новой платформе вызывает ошибку. И сам Word при попытке ручного открытия сохранённого файла ругается с сообщением вида "не удаётся открыть файл ... из-за проблем с его содержимым... Местоположение: Часть: /word/document.xml, строка 0, столбец 0". Попытка открыть этот же файл через "Открыть и восстановить" срабатывает, но программно и такой вариант не срабатывает - в такой форме всё равно ошибка: Документ = ОбъектWord.Documents.Open(ИмяФайла,,,,,,,,,,,,, Истина); PS При этом ручное сохранение табличного документа в формат docx через Ctrl-S в открытой форме работает нормально. PPS А программное сохранение того же табличного документа в формате PDF как работал, так и работает... PPPS В получаемом табличном документе есть картинка (скан печати). |
|||
1
Fish
гуру
21.07.25
✎
13:37
|
"а на новой платформе вызывает ошибку." - А что за ошибка? Не с комом связана?
|
|||
2
Garry1010
21.07.25
✎
13:44
|
(1) Я, вроде, написал какая ошибка возникает... Оно с комом, но не с 1С-ным, а с Word.Application - а оне, вроде, не зависят от версии платформы, в отличие от подключения к самой же 1С по кому.
|
|||
3
Fish
гуру
21.07.25
✎
13:49
|
(2) А зачем открывать ворд через ком? Через ЗапуститьПриложение пробовали открывать?
|
|||
4
Garry1010
21.07.25
✎
13:58
|
(3) Потому что я использую его как макет, где сначала перезаполняю некоторые данные - и уже потом открываю через ЗапуститьПриложение. Собственно, из-за разницы форматирования страниц в Word и в 1С может так получиться, что скан печати некрасиво висит или вылезает на следующую страницу - приходится искусственно поправлять его.
|
|||
5
Garry1010
21.07.25
✎
14:13
|
(3) Сейчас исключил обработку файла, но он даже через ЗапуститьПриложение всё равно вызывает ошибку - ту же самую про содержимое файла.
|
|||
6
PLUT
гуру
21.07.25
✎
14:18
|
(5) внутре неё xml
попробуй сохранить средствами 1С и еще вариант "через ctrl-S в открытой форме" и сравни распакованные xml - в чем отличия? |
|||
7
maxab72
21.07.25
✎
14:21
|
В 8.3.27.1606 все работает нормально
текШаблонБинарный = ХХХ.ШаблонДоговораСПоставщиком.Хранилище.Получить(); текИмяШаблона = СокрЛП(ХХХ.ПутьКШаблонуДоговораСПоставщиком); текШаблонБинарный.Записать(текИмяШаблона); Word = Новый COMОбъект("Word.Application"); Word.Visible = TRUE; Документ = Word.Documents.Add(текИмяШаблона,False,0); |
|||
8
lexushka
21.07.25
✎
14:38
|
Сохранить в ОпенОФис? *.odt?
По вашей ошибке что-то гуглится https://otvet.mail.ru/question/171811666 |
|||
9
arsik
гуру
21.07.25
✎
14:48
|
(7) Ты же готовый шаблон сохраняешь. Ты из ТабличныйДокумент сначала сохрани.
(0) Попробуй для проверки упростить ТабДокумент |
|||
10
Garry1010
21.07.25
✎
15:12
|
(9) [Попробуй для проверки упростить ТабДокумент]
Да, уже попробовал - выяснилось, что всё путает одна картинка подписи-факсимиле. Как только удалил её - всё открылось в Word'е. :( Чем она может не нравиться? Непонятно. И в старой версии платформы же ничего не мешало открываться файлу... |
|||
11
arsik
гуру
21.07.25
✎
14:59
|
(10) Пересохрани чем ни будь штатным. Бывают такие картинки, которые внутри совсем не картинки :)
|
|||
12
maxab72
21.07.25
✎
15:08
|
(10) по 1644 было что-то про ошибки с картинками внутри файлов. Возможно, здесь что-то похожее.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |