![]() |
|
Запись в набор записей регистра сведений | ☑ | ||
---|---|---|---|---|
0
NurSagen
14.01.22
✎
13:32
|
Есть непереодический независимый регистр сведений, с одним измерением. Он имеет уже некоторые записи. Нужно массово в него добавить еще записей.
Я сделал примерно так: НаборЗаписей = РегистрыСведений.РС.СоздатьНаборЗаписей(); НаборЗаписей.Прочитать(); Для Каждого Документ Из МассивДокументов Цикл НовЗапись = НаборЗаписей.Добавить(); НовЗапись.Измерение1 = Документ; КонецЦикла; НаборЗаписей.Записать(Истина); И получаю ошибку, что запись с такими ключевыми полями уже существует. Логично, один из записываемых документов уже есть в регистре, но как тогда переписать код? Писать через менеджер записей - вроде неправильно, ведь массив большой, записей осуществляется много. P.S. я честно говоря, думал, что в "НаборЗаписей.Записать(Истина)" параметр Истина как-раз таки и будет замещать повторяющиеся записи.. |
|||
1
NurSagen
14.01.22
✎
13:33
|
Делать каждый раз отбор по документу и прочитывать в цикле заново и проверять есть ли что-то уже тоже мне не нравиться, кажется что будет долго.
|
|||
2
Галахад
гуру
14.01.22
✎
13:37
|
В массиве-то дублей нет?
|
|||
3
hhhh
14.01.22
✎
13:38
|
(1) делай в транзакции, тогда будет быстро
|
|||
4
NurSagen
14.01.22
✎
13:40
|
(2) нет
|
|||
5
youalex
14.01.22
✎
14:44
|
А Прочитать() зачем?
|
|||
6
Ёпрст
гуру
14.01.22
✎
14:46
|
(0) выкинуть прочитать, добавить отбор
|
|||
7
Kassern
14.01.22
✎
14:47
|
(0)
НаборЗаписей = РегистрыСведений.РС.СоздатьНаборЗаписей(); НаборЗаписей.Загрузить(ПодготовленнаяТаблицаСДокументами); НаборЗаписей.записать(); |
|||
8
Kassern
14.01.22
✎
14:48
|
(7) Запросом получаете все необходимые записи для РС и пихаете в таблицу значений
|
|||
9
timurhv
14.01.22
✎
15:01
|
(8) И через 0.05 сек другой сеанс загружает свои данные, удаляя изменения предыдущего? Блокировки тогда ставить на весь регистр.
|
|||
10
Kassern
14.01.22
✎
15:04
|
(9) надо с пониманием к этому способу подходить. Актуален, когда надо перезаполнить львиную долю регистра
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |