Вход | Регистрация

1С:Предприятие ::

Метки: 

Падает 1С при массовой выгрузке табличных документов.

Я
   tndr
 
24.11.17 - 09:47
Значит, платформа 8.2.19.130, конфа УТ 10.3 в режиме совместимости с 8.1, работаем через терминальные серверы Win 2008 r2, Win 2012.
Проблема следующая:
Обработкой формирую печатные формы (табличные документы) документов РТиУ и Сч.Ф. за период, эти печатные формы не открываю, но сохраняю в каталог на диске, на них есть ШК.
Так вот в какой-то момент 1с-ка крашится, и даже не успевает задампиться, хотя в тех. журнале dump create включен:
<dump create="1" location="C:\dumps" prntscrn="1" type="3"/> 

Опытным путем установлено, что как только у 1с-ого процесса количество GDI-объектов становится 10000 то происходит вылет.
В логах ОС, в записи этой ошибки есть такая строка:
Sig[3].Name=Имя модуля с ошибкой
Sig[3].Value=MSVCR90.dll

Подскажите, можно ли это как-то забороть?
 
 
   craxx
 
1 - 24.11.17 - 09:51
(0) на 8.3 перейти
   FIXXXL
 
2 - 24.11.17 - 09:54
(0) подели выгрузку на части
   tndr
 
3 - 24.11.17 - 10:02
(1) Это конечно вариант, но пока такой возможности нет, к сожалению...
Я так полагаю, что из-за наличия картинки штрихкода, происходит утечка памяти, и что 1с сама не ее освобождает.

(2) Скорее всего именно так придется делать, если конечно не найдется решения как после записи каждого Таб. дока, грохать  GDI-объект.

Пробовал, после записи на диск; ТабДок = Неопределено;
не помогает.
Пробовал; ТабДок.Рисунки.Очистить();
То же ничего не дает, количество GDI-объектов все равно растет...
   MM
 
4 - 24.11.17 - 10:08
Может ActiveX, формирующий штрихкоды, GDI-объекты не освобождает или использована натив компонента для ШК?
Если попробовать без ШК формировать документы утечка не прекращается?
   tndr
 
5 - 24.11.17 - 10:13
(4) В качестве компоненты ШК используется типовая 1с-ская
1C BarCode 8.0.16.4

Без ШК не пробовал, по-экспериментировать можно в принципе, но дело в том, что хранить печатные формы все-таки надо с ними...
   mehfk
 
6 - 24.11.17 - 10:18
(5) Попробуй без него, если поможет - переделаешь на использование шрифта ean13.ttf
   tndr
 
7 - 24.11.17 - 10:20
(4)(6) Спасибо, попробую.
Результат озвучу.
   MM
 
8 - 24.11.17 - 10:22
(5) Можно поэкспериментировать со старыми версиями этой же компоненты. Если ШК сложнее ean, то можно переделать на новую компоненту или даже на внешнюю программу формирования.
   lodger
 
9 - 24.11.17 - 10:53
еще вариант - создать подпапку в темпах, а генерацию табдока от и до вынести в отдельную процедуру, которая в теории, по завершении должна так и сяк освободить все использованные компоненты и переменные.
после завершения цикла обхода таблицы с вводными зайти в папку и забрать файлы как файлы, а не табдоки.

но скорее всего это не поможет.
можно почитать статью https://habrahabr.ru/post/318948/
в которой есть аварийные варианты, вроде передвинуть ограничение в 10000 объектов. но она подходит если у вас есть сурсы и возможность отладки компоненты, однако для понимания сути проблемы - очень информативно.

вангую, что смена компоненты для генерации ШК на свежую - вероятно поможет.
   rincewind
 
10 - 24.11.17 - 10:56
(7) Была похожая проблема. Решилась использованием нестандартной компоненты генерации штрихкода. Погугли "ocvita".
 
 
   tndr
 
11 - 24.11.17 - 11:48
Да, действительно, подтверждается, без картинки ШК, утечки нет, количество объектов не растет.

(9) Со статьей ознакомились, познавательно, но к сожалению, воспроизвести описанные манипуляции скорее всего не получится, из-за отсутствия навыков и инструментов. Кроме того, даже если бы получилось диагностировать источник утечек, то исправить на вряд ли бы получилось...
Поэтому, судя по всему, остается пробовать варианты с использованием альтернативных компонент генерации штрихкода.

(6) (8) (9) (10) Спасибо, что накидали вариантов :)
Будем пробовать.


Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует