|
Нужен совет - как оптимизировать динамическую выборку проводок? обычные формы |
☑ |
0
Vladal
01.03.12
✎
13:35
|
Платформа 8.2, Бухгалтерия Предприятия, обычные формы. Сделал визуализацию проводок, когда при активизации строки внизу показываются проводки:
Текст обработчика:
Процедура ДокументСписокПриАктивизацииСтроки(Элемент)
Если Элемент.ТекущиеДанные = Неопределено Тогда
ЭлементыФормы.ТабличноеПолеДвиженияБУ.Значение.Отбор.Регистратор.Установить(Документы.ОперацияБух.ПустаяСсылка());
ЭлементыФормы.ТабличноеПолеДвиженияНУ.Значение.Отбор.Регистратор.Установить(Документы.ОперацияБух.ПустаяСсылка());
Иначе
ЭлементыФормы.ТабличноеПолеДвиженияБУ.Значение.Отбор.Регистратор.Установить(Элемент.ТекущиеДанные.Ссылка);
ЭлементыФормы.ТабличноеПолеДвиженияНУ.Значение.Отбор.Регистратор.Установить(Элемент.ТекущиеДанные.Ссылка);
КонецЕсли;
КонецПроцедуры
Если при открытии журнал пуст, отладчик даже входит в этот обработчик, но процесс 1С8 жрёт всю серверную память. Потом захлопывается с сообщением переполнения памяти.
Как победить? Или ЧтоЯДелаюНеТак?
|
|
1
Wobland
01.03.12
✎
13:38
|
отключать отбор можно через Использование, если я тебя правильно понял
|
|
2
Mort
01.03.12
✎
13:39
|
Смотри как сделано в операции. В списках есть связь по регистратору.
|
|
3
Vladal
01.03.12
✎
13:40
|
(2) Не понял, о каких списках говоришь?
|
|
4
Mort
01.03.12
✎
13:42
|
(3) Если точнее в табличных полях отображающих списки регистров.
|
|
5
Vladal
01.03.12
✎
14:19
|
(4) Спасибо! Посмотрел, как это сделано в операции, добавил реквизит формы с типом РегистрБухгалтерииСписок.Хозрасчетный.
Как добавил реквизит на форму, изменил код - убрал из код "ЭлементыФормы".
В форме списка оперций в ПриОткрытии инициализация отборов движений происходит:
Процедура ПриОткрытии()
...
ТабличноеПолеДвиженияБУ.Отбор.Регистратор.Установить(Документы.ОперацияБух.ПустаяСсылка());
ТабличноеПолеДвиженияНУ.Отбор.Регистратор.Установить(Документы.ОперацияБух.ПустаяСсылка());
КонецПроцедуры
А я его пропустил.
и всеравно утечка памяти. странно
|
|