|
При вызове ПолучитьМакет() вылетает в ошибку "Ошибка при выполнении файловой операции" | ☑ | ||
---|---|---|---|---|
0
OneMan1
05.12.23
✎
10:31
|
Есть обработка, которая вызывается при печати счета.
В обработке макет(табличный документ), в макете есть две печати картинки (png). В рандомном случае при вызове Макет = ПолучитьМакет("Макет"); вылетает в ошибку "Ошибка при выполнении файловой операции" и там или завершить или перезапустить. Если убрать из макета печати работает без ошибок. Пробовал эти картинки уменьшить в размере. Были в сумме 1мб - уменьшил до 360 кб. Стала выскакивать другая ошибка: "Неверный формат картинки" и там или завершить или перезапустить. Может кто-то с таким сталкивался уже? Есть ли лимит на размер картинок, формат. Пихать их сразу в макет или подключать программно? |
|||
1
Tatitutu
05.12.23
✎
11:12
|
в конфигурации "Учет ШКУР" - функция "Показать всех"
и не такое бывает (с) Код покажи |
|||
2
OneMan1
05.12.23
✎
11:39
|
Показываю код:
ДобавитьСтрокуЛога( ИмяФайла, "Получение Макет" ); Макет = ПолучитьМакет("Макет"); ДобавитьСтрокуЛога( ИмяФайла, "Макет" ); "Ошибка при выполнении файловой операции" открываю Лог, там есть "Получение Макет" и все. ----------------------------------------------------- Удалил старые печати PNG, сделал новые, меньшего размера! Табличный документ на сервере формируется полностью. ДобавитьСтрокуЛога( ИмяФайла, "Получение Макет" ); Макет = ПолучитьМакет("Макет"); ДобавитьСтрокуЛога( ИмяФайла, "Макет" ); // блалала // блалала ТабличныйДокумент.Записать(ПутьИмяФайла,ТипФайлаТабличногоДокумента.XLSX); ДобавитьСтрокуЛога( ИмяФайла, "ТабДок сформирован" ); Возврат ТабличныйДокумент; Весь код отрабатывает! теперь ошибка Неизвестный формат картинки Захожу по пути ПутьИмяФайла - файлик лежит, целый. логи показывают что все проходит от начала до конца. Смахивает что не долетает от сервера до клиента, то ли бьется или еще что?!?!?! ошибка может не выскакивать 10-20 раз. а может 2 раза подряд. |
|||
3
Tatitutu
05.12.23
✎
11:44
|
ДобавитьСтрокуЛога( ИмяФайла, "Макет" ); - это кто ?
|
|||
4
OneMan1
05.12.23
✎
11:45
|
опять ошибка "Неизвестный формат картинки".
Открываю файл ТабличныйДокумент.Записать(ПутьИмяФайла,ТипФайлаТабличногоДокумента.XLSX) В нем тоже картинка, но с ошибкой "Не удалось отобразить рисунок". Смахивает, что из макета получает кривые или битые картинки. |
|||
5
OneMan1
05.12.23
✎
11:46
|
(3) не понял? что кто ? это лог пишется при каждом формировании табдока.
|
|||
6
Tatitutu
05.12.23
✎
11:46
|
(4) не фантазируй
|
|||
7
OneMan1
05.12.23
✎
11:52
|
Это сохраняется на сервере в ексель
https://dropmefiles.com/qvGTg Это вываливается после на клиенте. https://dropmefiles.com/qvGTg |
|||
8
Tatitutu
05.12.23
✎
12:04
|
В конфигураторе макет открывается ? Картинки Видны ?
Файл - сохранить как - xlsx - Сохраняется ? Открывается ? так что ты с ними в коде своем делаешь то ? |
|||
9
OneMan1
05.12.23
✎
12:09
|
в том то и дело, что ничего не делаю!
ТабличныйДокумент = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Макет"); ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; Обл = Макет.ПолучитьОбласть("Область2"); ТабличныйДокумент.Вывести(обл); ПутьИмяФайла = "D:\Ошибка\"+ИмяФайла+".xlsx"; ТабличныйДокумент.Записать(ПутьИмяФайла,ТипФайлаТабличногоДокумента.XLSX); Возврат ТабличныйДокумент; |
|||
10
OneMan1
05.12.23
✎
12:14
|
что-то с получением макета...
если в ексель сохраняется с битой картинкой! |
|||
11
Fedor-1971
05.12.23
✎
12:21
|
(10) Обработка встроенная в конфигурацию или внешняя?
|
|||
12
Fedor-1971
05.12.23
✎
12:22
|
11+ УФ или ОФ
|
|||
13
OneMan1
05.12.23
✎
12:23
|
УФ, встроенная
|
|||
14
OneMan1
05.12.23
✎
12:26
|
8.3.20.1789
|
|||
15
Fedor-1971
05.12.23
✎
12:26
|
А так, "Макет" назови таки осмысленно, например, "МакетПечатейКонтор". т.к. что ты получаешь через ПолучитьМакет("Макет") - науке неизвестно
как вариант (на сервере для УФ) получи объект обработки и потом получай её макет, примерно так: РеквизитОбъект = РеквизитФормыВЗначение("Объект"); РеквизитОбъект.ПолучитьМакет("Макет"); |
|||
16
Fedor-1971
05.12.23
✎
12:27
|
(13) Тогда конкретно пиши Обработки.ТраЛяЛя.ПлучитьМакет("Макет")
|
|||
17
OneMan1
05.12.23
✎
12:32
|
Результат не изменился!
|
|||
18
Garykom
05.12.23
✎
12:35
|
(0) Картинки в отдельные двоичные макеты
В основной ТабДок выводить программно |
|||
19
OneMan1
05.12.23
✎
12:37
|
(18) Попробую сейчас
|
|||
20
Tatitutu
05.12.23
✎
12:58
|
В конфигураторе макет открывается ?
Картинки Видны ? Файл - сохранить как - xlsx - Сохраняется ? Открывается ? |
|||
21
OneMan1
05.12.23
✎
13:01
|
(20) да. все работает.
|
|||
22
Fedor-1971
05.12.23
✎
13:08
|
(9) А попробуй сохранить документ в PDF, может какой глюк в платформе
|
|||
23
Fedor-1971
05.12.23
✎
13:10
|
22 ещё вариант: верни табличный документ наКлиент и сделай Табдок.Показать(). по крайней мере будет понятно есть ли картинки в результирующем варианте
Потом попробовать оный уже сохранить в каком-нить формате и открыть файл |
|||
24
OneMan1
05.12.23
✎
13:21
|
(18) выпало в ошибку... блин...
(22) (23) - сейчас займусь. |
|||
25
Garykom
05.12.23
✎
13:35
|
Попробуй формат картинок изменить на png
Возможно антивирус мешает, лочит временно а 1С глючит |
|||
26
OneMan1
05.12.23
✎
13:41
|
Капец какой-то!
МакетДвоичныеДанные = Обработки.Тест.ПолучитьМакет("МакетДвоичныеДанные"); Картинка = Новый Картинка( МакетДвоичныеДанные ); Не всегда получает картинку! Получает пустую картинку с размером файла = неопределено. |
|||
27
OneMan1
05.12.23
✎
13:42
|
(25) у меня сейчас PNG.
|
|||
28
OneMan1
05.12.23
✎
13:46
|
Антивируса вроде нету...
|
|||
29
Garykom
05.12.23
✎
13:56
|
(26) Переустанови систему
У меня прикольней глюки были, на домашнем компе базы 1С не хотели ни в файловые ни в sql из больших dt восстанавливаться, ошибки Причем из малых dt все ок Пришлось переустановить систему, ту же платформу 1С поставил и все начало работать Т.е. в системе какая то хрень начала чем то мешать платформе 1С |
|||
30
OneMan1
05.12.23
✎
14:05
|
(29) Есть такая мысль, но уже на самый край...
РазмерФайла = Неопределено; Сч = 0; Пока РазмерФайла = Неопределено Цикл Если Сч = 10 Тогда Прервать; КонецЕсли; МакетДвоичныеДанные = Обработки.Тест.ПолучитьМакет("МакетДвоичныеДанные"); Картинка = Новый Картинка( МакетДвоичныеДанные ); РазмерФайла = Картинка.РазмерФайла(); Если РазмерФайла <> Неопределено Тогда Прервать; КонецЕсли; Сч = Сч +1; КонецЦикла; Вот такой КОСТЫЛИЩЕ отрабатывает!!!! Причем, если вынести из цикла МакетДвоичныеДанные = Обработки.Тест.ПолучитьМакет("МакетДвоичныеДанные"); то все время пустая картинка. Что-то не работает в ПолучитьМакет() Жесть какая-то! Может где какие временные файлы бьются или еще что?! как работает этот ПолучитьМакет() ??? |
|||
31
Tatitutu
05.12.23
✎
14:11
|
(30) УФ ...говоришь, ню-ню
Продолжай наблюдения |
|||
32
Tatitutu
05.12.23
✎
14:13
|
вот так попробуй (эхо вдали ...НаСервереееее)
Обработка = РеквизитФормыВЗначение("Объект"); Макет = Обработка.ПолучитьМакет("Макет"); |
|||
33
Garykom
05.12.23
✎
14:18
|
(32) Эмм.
Хочешь сказать что он без РеквизитФормыВЗначение("Объект") пытается и удивляется? Наоборот странно что у него что то работает |
|||
34
Fedor-1971
05.12.23
✎
14:20
|
(33) Обработки. Тест .ПолучитьМакет("МакетДвоичныеДанные"); - он указал обработку в получении макета, всё нормально, значит наСервере и корректно получает именно свой макет
|
|||
35
OneMan1
05.12.23
✎
14:26
|
Конечно работает. я же в первом посте написал, сто выскакивает рандомно.
Может выскочить как на первый раз так и на 100-ый. Запускаю прогу которая авто кликает и сижу курю. Код в модуле менеджера обработки #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда |
|||
36
OneMan1
05.12.23
✎
14:27
|
Заменил PNG на JPEG, файл меньше раз в 10.
Запущу посмотрю. Наверно что-то на серваке или бага платформы.... |
|||
37
Fedor-1971
05.12.23
✎
14:41
|
(35) Пробовал показать текстовый документ? На нём картинки есть?
Попробуй сохранять не наСервере, а наКлиенте |
|||
38
OneMan1
05.12.23
✎
14:55
|
Суть в том, что ПолучитьМакет("МакетДвоичныеДанные") уже возвращает битые данные!
|
|||
39
Fedor-1971
05.12.23
✎
15:09
|
(38) предложу ещё одно извращенство: читай картинку напрямую из файла и размещай её в макете.
До некоторой степени универсальнее, бо можно заменить картинку без изменения в конфигурации |
|||
40
OneMan1
05.12.23
✎
15:27
|
(39) Спасибо, но хотелось добраться до сути проблемы.
Печатных форм много и периодически падают они. все переделывать ну не правильно.... Пока не могу понять в чем затыка-проблема... |
|||
41
Fedor-1971
05.12.23
✎
15:34
|
(40) Для чистоты эксперимента нужно почистить кэш на сервере и на клиенте.
|
|||
42
Garykom
05.12.23
✎
15:36
|
(41) Для чистоты надо на другом клиенте и сервере
|
|||
43
Tatitutu
05.12.23
✎
15:37
|
(0) да скинь ты уже куда нибудь свою ПРОБЛЕМНУЮ картинку
|
|||
44
OneMan1
05.12.23
✎
16:19
|
(43) Да нету какой-то определенной. Там любая картинка. Подпись факсимилька.
|
|||
45
Tatitutu
05.12.23
✎
16:22
|
(44) Зайдем с другой стороны
Сделай скриншот сохрани , добавь в макет Так печатает ? |
|||
46
OneMan1
05.12.23
✎
17:05
|
Взял картинку и пересохранил её в jpeg.
Вставил в макет, установил прозрачный цвет. Пока 30 минут без ошибок... |
|||
47
OneMan1
06.12.23
✎
09:09
|
Кликало часа 4-5 без ошибок.
Возможно дело в размере макета... |
|||
48
OneMan1
06.12.23
✎
10:23
|
Не могу понять в чем проблема, но по всей конфе, с рандомной периодичностью, бьются макеты в которых есть картинки....
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |