Имя: Пароль:
1C
1С v8
1С УТ 10.3 – перестает открывать внешние файлы jpg после 15 штук
0 Andrey400
 
09.10.16
23:58
1С УТ 10.3 – перестает открывать внешние файлы jpg после 15 штук.
И при этом программа 1cv8 занимает половину оперативной памяти.

Подробно:
Управление торговлей 10.3 (платформа 8.2)
Необходимо печатать фотографии .jpg из самой 1С – это сертификаты на товар.
На компьютере есть папка D:\Сертификаты в ней лежат файлы (3 Мегабайта каждый). В карточки товара есть кнопка открыть – далее открывается внутренняя обработка: «ПечатьСертификат», в которую я передаю строковое значение (ссылку на файл) например: «D:\Сертификаты\Весна-06.jpg». в этой обработке есть «макет» в котором стоит «рисунок». В итоге просто открывается табличное поле с «рисунком» можно посмотреть на него и распечатать (в ручную) ВСЕ РАБОТАЕТ. Но если открыть и закрыть (не сразу, а по очереди) более 15 сертификатов – 1С перестает их открывать, и показывает пустой прямоугольник в открывшемся табличном документе !
Приходится закрыть и снова открыть саму программу 1С, снова все будет работать.

Заметил что в диспетчере задач Windows – файл 1cv8 занимает примерно 75 мегабайт, при открывании одного сертификата файл увеличивается до 220 Мегабайт, и это с одного файла (который посмотрели распечатали и закрыли), и так постепенно файл разрастается и по достижении 1,5 – 2 Гигабайт возникает проблема. Все внутренние окна в программе закрыты, и после этого новые файлы больше не показываются. А размер файла при этом не меняется.
Очевидно причина в этом, как это можно исправить ?


Справочник «номенклатура»
//+++
Процедура ФайлСертификатОткрытие(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ТекОбработка = Обработки.ПечатьСертификат.Создать();
    ТекОбработка.Файл2 = ФайлСертификат;
    ТекОбработка.ПолучитьФорму().Открыть();
КонецПроцедуры


Обработка «ПечатьСертификат»
Процедура КнопкаВыполнитьНажатие()    
    Таб1 = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Сертификат");    
    Область1 = Макет.ПолучитьОбласть("Область1");
        
    //Рисунок
    Картинка = Новый Картинка(Файл2);
    Область1.Рисунки.Серт555.Картинка = Картинка;    
    Таб1.Вывести(Область1);    
        
    Таб1.ОтображатьСетку = 0;
    Таб1.Защита = 0;
    Таб1.ТолькоПросмотр = 1;
    Таб1.АвтоМасштаб = 1;
    Таб1.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
    //Таб1.ОтображатьЗаголовки = Ложь;
    Таб1.Показать();    
КонецПроцедуры
1 H A D G E H O G s
 
10.10.16
00:11
Никак.
2 H A D G E H O G s
 
10.10.16
00:11
Винда 64 разрядная?
3 Andrey400
 
10.10.16
00:17
да Server 2008 64 бита, пробовал приносить домой тоже самое на Windows7 64 bit
4 H A D G E H O G s
 
10.10.16
00:37
(3) никак тогда
5 Il19
 
10.10.16
05:08
перевести на 8.3.9х64
6 Andrey400
 
13.10.16
14:46
неужели нельзя просто обнулить какую то переменную.
так не хочется перехоить на платформу 8.3
AdBlock убивает бесплатный контент. 1Сергей