|
Какой быстрый способ удаления кучи записей из РС?
| ☑ |
0
Fragster
гуру
03.10.14
✎
12:22
|
Имеем независимый непериодический РС.
Измерения условные - Номенклатура и серийный номер, основной отбор по обоим измерениям. Записей куча. За раз может изменяться (удаляться или добавляться) несколько тысяч записей, но это - проценты от общего числа по номенклатуре. И если с добавлением решается "Записать(ложь)", то с удалением как-то не очень хорошо.
Сейчас удаляю через менеджер записи и "Удалить()". Как ускорить? Прямое удаление в БД не интересует, так как есть еще и файловые базы, где это также должно быстро работать.
|
|
1
Ёпрст
03.10.14
✎
12:26
|
а чего так ?
Если отборы установлены, то удаление же мгновенное, у вас не так разве ?
|
|
2
Широкий
03.10.14
✎
12:29
|
Почему не набор записей?
|
|
3
Fragster
гуру
03.10.14
✎
12:37
|
(1) мгновенное, да не очень, к сожалению
(2) потому что для набора записей РС вид сравнения "в списке" не катит, только "равно". Через менеджер записи чуть быстрее чем через набор у меня по замерам получилось.
|
|
4
butterbean
03.10.14
✎
12:39
|
может получится добавить новое измерение для отбора удаляемых? или не вариант?
|
|
5
Ёпрст
03.10.14
✎
12:40
|
(3) ээ... получить всё запросом и потом через установку отбора и удалить, не ?
|
|
6
Fragster
гуру
03.10.14
✎
12:44
|
(5) я хз, но сейчас так:
Результаты = Запрос.ВыполнитьПакет();
РезультатДобавления = Результаты[Результаты.ВГраница()];
РезультатОбновления = Результаты[Результаты.ВГраница()-1];
Если Не (РезультатДобавления.Пустой() И РезультатОбновления.Пустой()) Тогда
Набор = РегистрыСведений.РегистрСведений.СоздатьНаборЗаписей();
Набор.Загрузить(РезультатДобавления.Выгрузить());
Набор.Записать(Ложь);
Выборка = РезультатОбновления.Выбрать();
Регистр = РегистрыСведений.РегистрСведений;
Пока Выборка.Следующий() Цикл
Запись = Регистр.СоздатьМенеджерЗаписи();
ЗаполнитьЗначенияСвойств(Запись, Выборка);
Если Выборка.Количество = 0 Тогда
Запись.Удалить();
Иначе
Запись.Записать(Истина);
КонецЕсли;
КонецЦикла;
КонецЕсли;
обновление - это в 99,9999% случаев удаление
|
|
7
Fragster
гуру
03.10.14
✎
16:39
|
что, быстрее не получится?
|
|