|
Копирование регистра накопления |
☑ |
0
LopesLeonid
15.12.14
✎
14:22
|
Хочу скопировать записи из одного регистра накопления в другой такой же. Копирование происходит но не правильно. Если один регистратор делал несколько записей в регистре, то копирует последнюю его запись.
Почему так происходит?
Копирую так:
результат = выборка....
НаборЗаписей = РегистрыНакопления.НовыйРегистр.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Установить(результат.Регистратор);
Запись = НаборЗаписей.Добавить();
ЗаполнитьЗначенияСвойств(Запись, результат);
НаборЗаписей.Записать(истина);
|
|
1
Otkr
15.12.14
✎
14:23
|
А где чтение набора записей? Где цикл по обходу записей?
|
|
2
LopesLeonid
15.12.14
✎
14:37
|
(1) а зачем мне её прочитывать?
у меня же записи в выборке
|
|
3
eklmn
гуру
15.12.14
✎
14:40
|
нельзя Выборку пихать через ЗаполнитьЗначенияСвойств
|
|
4
LopesLeonid
15.12.14
✎
14:40
|
Меня сейчас осенило и я написал как мне надо)
|
|
5
LopesLeonid
15.12.14
✎
14:42
|
НаборЗаписей = РегистрыНакопления.НовыйРегистр.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(результат.Регистратор);
НаборЗаписей2 = РегистрыНакопления.КопируемыРегистр.СоздатьНаборЗаписей();
НаборЗаписей2.Отбор.Регистратор.Установить(результат.Регистратор);
НаборЗаписей2.Прочитать();
Для каждого Запись2 Из НаборЗаписей2 Цикл
Запись = НаборЗаписей.Добавить();
ЗаполнитьЗначенияСвойств(Запись, Запись2);
КонецЦикла;
НаборЗаписей.Записать(истина);
|
|
6
DmitryZzz
15.12.14
✎
15:39
|
А почему бы вместо цикла. не сделать вот так?
НаборЗаписей.Прочитать();
НаборЗаписей.Загрузить(НаборЗаписей2.Выгрузить());
НаборЗаписей.Записать(Истина);
|
|