Имя: Пароль:
1C
1С v8
Обработка съедает всю память. Помогите оптимизировать пожалуйста.
, ,
0 panteon
 
08.02.13
12:18
Пока Выборка.Следующий() Цикл
       Если Выборка.Количество = 0 Тогда
           Продолжить;
       КонецЕсли;
       Если Выборка.Регистратор <> Регистратор Тогда
           Если Регистратор <> Неопределено Тогда
               Набор.Записать(Ложь);
           КонецЕсли;
           Набор = РегистрыНакопления.Ф_ПопулярныеВпечатления.СоздатьНаборЗаписей();
           Набор.Отбор.Регистратор.Установить(Выборка.Регистратор);
           Набор.Прочитать();
           Регистратор = Выборка.Регистратор;
       КонецЕсли;
       Движение = Набор.Добавить();
       ЗаполнитьЗначенияСвойств(Движение, Выборка);
   КонецЦикла;
   Набор.Записать(Ложь);
1 GLazNik
 
08.02.13
12:19
(0) а что она делает? не пойму
ограничивай выборку. используй запросы.
2 Maxus43
 
08.02.13
12:22
непонятна задача
3 salvator
 
08.02.13
12:22
Если Регистратор <> Неопределено Тогда
               Набор.Записать(Ложь);
           КонецЕсли;
Набор - по всей видимости до цикла описан?
Тогда лучше вынести его запись так же за пределы цикла.
4 panteon
 
08.02.13
12:22
выборка у меня большая но по другому нельзя. Сделал еще один регистр для одного документа и теперь надо заполнить его движениями за весь период работы компании без того чтобы перепроводить его регистраторы.
5 Maxus43
 
08.02.13
12:23
(4) порциями делай, по 10 тыщ записей например
6 Maxus43
 
08.02.13
12:23
если съедает память - предположу что это всё в транзакции ещё?
7 salvator
 
08.02.13
12:25
(4) Так вызови процедуру (или кусок процедуры) по созданию записей из модуля объекта.
8 eklmn
 
гуру
08.02.13
12:25
kexit, pfghjc gjrfpfk
9 eklmn
 
гуру
08.02.13
12:25
упс. лучшеб запрос показал
10 hhhh
 
08.02.13
12:27
(4)

1.  вынеси за цикл           Набор = РегистрыНакопления.Ф_ПопулярныеВпечатления.СоздатьНаборЗаписей();

2.           Набор.Прочитать();
 вообще не нужно

3. в запросе

пиши ВЫБРАТЬ РАЗЛИЧНЫЕ
       Регистратор

тогда проверка

       Если Выборка.Регистратор <> Регистратор Тогда


тоже не понадобится
11 НЕА123
 
08.02.13
12:32
(7)+1
12 panteon
 
08.02.13
12:35
(6) нет в транзакции не делаю
(5) обрезал запрос и вроде стало записывать нормально
Всем СПАСИБО!!