0
ssvdm
20.09.13
✎
11:39
|
Всех приветствую!
Товарищи, подскажите правильный путь.
Самописная конфигурация, переношу базу с 7ки на 8.2 попутно пытаясь использовать всё вкусное, что появилось в 8.
Обычное приложение, Сервер приложений 32бит, 8.2.18.109, PostgreSQL 9
тз = Запрос.Выполнить().Выгрузить();
Движения.МойРегистр.Записывать = Истина;
Движения.МойРегистр.Загрузить(тз);
Работает, но в случае больших движений, больше 10000 строк, клиент валится с ошибкой "Недостаточно памяти на сервере 1с предприятия".
При том, что памяти на сервере 4 гигабайта, это выделенная машина, и сеанс ни разу не скушал больше 140 мегабайт.
Ок, пытаюсь записать движения порциями:
выб = Запрос.Выполнить().Выбрать();
й = 0;
Движения.МойРегистр.Записывать = Истина;
пока выб.следующий() цикл
зап = Движения.МойРегистр.Добавить();
зап.Период = выб.период;
зап.Регистратор = ЭтотОбъект.Ссылка;
зап.Измерение = выб.Измерение;
...
й = й + 1;
если й%1000=0 тогда
Движения.МойРегистр.записать(Ложь);
конецЕсли;
конецЦикла;
Движения.МойРегистр.записать(Ложь);
Но в регистре после проведения вообще пусто. Чувствую, что делаю что-то не так, но вот что?
Помогите, пожалуйста.
|
|
3
ssvdm
20.09.13
✎
12:06
|
(1) Это модуль документа, ОбработкаПроведения
Отладчиком посмотрю, спасибо.
Пока с кодом экспериментировал, пока не было последнего регистр.записать() (который вне цикла), получалось так, что в регистр попадали только записи с последнего прохода цикла.
|
|