1. s0u1 11.01.17 13:27 Сейчас в теме

Удаление записей независимого регистра сведений

Добрый день!

Подскажите, пожалуйста, решение:

Есть независимый и не подчиненный регистратору регистр сведений с 1 измерением "документ", в который постоянно добавляются и удаляются новые записи.

У меня есть список документов, которые необходимо удалить оттуда. В связи с тем, что их много, мне кажется глупо удалять каждую запись по отбору.

Если я делаю блокировку данных, чтобы прочитать запросом текущие данные и удалить ненужные мне документы, то на тот момент времени не получится добавить туда запись.

Пробовал установить отбор через список:

НаборЗаписей.Отбор.Документ.ВидСравнения = ВидСравнения.ВСписке;

Вылетает ошибка: Недопустимый тип сравнения

Как оптимально решить эту проблему? Заранее спасибо!
Найденные решения
5. herfis 276 11.01.17 13:52 Сейчас в теме
Оптимизировать никак. Только через установку отбора по конкретным комбинациям измерений. Отбор только на равенство. Т.е. придется в цикле. Еще можно полностью перезаписать весь регистр если это проще (без установки отбора).
Но обычно подобной необходимости не возникает. Возможно, вы выбрали неправильный инструмент для вашей задачи.
Остальные ответы
Избранное Подписка Сортировка: Древо
2. spacecraft 11.01.17 13:40 Сейчас в теме
(1)
регистр сведений с 1 измерением "документ"

В свойствах измерения установлено "Ведущий"?
Если установлено, то просто удаляете документы и всё.
4. s0u1 11.01.17 13:45 Сейчас в теме
(2) Нет, "Ведущее" не установлено. Просто удалить это отбор в цикле?

Извините, не сразу понял. Сами документы удалять нельзя, нужно удалить ссылки на них из регистра.
3. Caspersky 11.01.17 13:42 Сейчас в теме
(1) Допустимый вид сравнения для измерения - только "Равно", если я не ошибаюсь...поэтому - каждую запись по отбору...
Если записей действительно много и удаление повлияет на текущую работу - сделать в момент наименьшей загрузки ИБ.
5. herfis 276 11.01.17 13:52 Сейчас в теме
Оптимизировать никак. Только через установку отбора по конкретным комбинациям измерений. Отбор только на равенство. Т.е. придется в цикле. Еще можно полностью перезаписать весь регистр если это проще (без установки отбора).
Но обычно подобной необходимости не возникает. Возможно, вы выбрали неправильный инструмент для вашей задачи.
6. herfis 276 11.01.17 13:53 Сейчас в теме
Если таки нужно удалять большие объемы, то просто удаляйте пачками в транзакциях. Будет быстро.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Санкт-Петербург
зарплата от 110 000 руб. до 120 000 руб.
Полный день

Аналитик 1С
Санкт-Петербург
зарплата от 80 000 руб.
Полный день

Программист 1С
Самара
зарплата от 50 000 руб.
Полный день

Программист 1С
Нижний Новгород
зарплата до 120 000 руб.
Полный день

Программист 1С
Волгоград
зарплата от 45 000 руб. до 90 000 руб.
Полный день