|
|
|
Как изменить значение измерения записей регистра сведений. | ☑ | ||
|---|---|---|---|---|
|
0
simol
26.09.06
✎
10:24
|
Есть регистр сведений имеющий 4 измерения. Мне надо в записях регистра сведений значения первого измерения равные ЗНАЧЕНИЕ1 заменить на ЗНАЧЕНИЕ2. Регистр непериодический.
Как это лучше сделать кроме удалить строки со ЗНАЧЕНИЕМ1 и записать новые со ЗНАЧЕНИЕ2? |
|||
|
1
ZolotarevAA
26.09.06
✎
10:39
|
(0) Ничего не удалять. Просто заменить значения.
|
|||
|
2
Рассада
26.09.06
✎
10:46
|
НаборЗаписей = РегистрыСведений.Рр.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Изм1.Установить(Значение1); НаборЗаписей.Прочитать(); Для Каждого Запись Из НаборЗаписей Цикл //меняем значение измерения записи КонецЦикла; НаборЗаписей.Записать(); |
|||
|
3
simol
26.09.06
✎
12:40
|
(2)Я добавил строку
НаборЗаписей.Отбор.Изм1.Использовать = Истина; Но при записи ошибка. Мне кажется в том, что отбор какраз по тому измерению, которое я меняю и при записи измерение наверно не соответсвует отбору. |
|||
|
4
Рассада
26.09.06
✎
13:51
|
Наверное, тогда могу предложить только менять в цикле.
|
|||
|
5
simol
26.09.06
✎
14:52
|
Сделал так
НаборЗаписей = РегистрыСведений.КомплектующиеНоменклатуры.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Номенклатура.Значение = ПоНоменклатуре.Номенклатура; НаборЗаписей.Отбор.Номенклатура.Использование = Истина; НаборЗаписей.Прочитать(); НовыйНабор = РегистрыСведений.КомплектующиеНоменклатуры.СоздатьНаборЗаписей(); НовыйНабор.Отбор.Номенклатура.Значение = Комплект.Ссылка; НовыйНабор.Отбор.Номенклатура.Использование = Истина; НовыйНабор.Загрузить(НаборЗаписей.Выгрузить()); НаборЗаписей.Очистить(); Для каждого Запись Из НовыйНабор Цикл Запись.Номенклатура = Комплект.Ссылка; КонецЦикла; НовыйНабор.Записать(); НаборЗаписей.Записать(); |
|||
|
6
simol
26.09.06
✎
14:54
|
Так лучше:
НаборЗаписей = РегистрыСведений.КомплектующиеНоменклатуры.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Номенклатура.Значение = ПоНоменклатуре.Номенклатура; НаборЗаписей.Отбор.Номенклатура.Использование = Истина; НаборЗаписей.Прочитать(); НовыйНабор = РегистрыСведений.КомплектующиеНоменклатуры.СоздатьНаборЗаписей(); НовыйНабор.Отбор.Номенклатура.Значение = Комплект.Ссылка; НовыйНабор.Отбор.Номенклатура.Использование = Истина; ВременнаяТаблица = НаборЗаписей.Выгрузить(); ВременнаяТаблица.ЗаполнитьЗначения(Комплект.Ссылка, "Номенклатура"); НовыйНабор.Загрузить(Загрузить); НаборЗаписей.Очистить(); НовыйНабор.Записать(); НаборЗаписей.Записать(); |
|||
|
7
simol
26.09.06
✎
15:12
|
+(6)
...НовыйНабор.Загрузить(ВременнаяТаблица);... |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |