|
Как программно удалить часть записей регистра сведений, подчиненных регистратору
| ☑ |
0
awbyk
10.10.14
✎
11:23
|
В БГУ в 2013 году часть основных средств организации была списана и принята на забалансовый счет. В конце 2013 года база была свернута. Сейчас получена команда снова принять эти основные средства на баланс, что и было сделано, но в регистре сведений "События ОС" , зарегистрированных документом "корректировки записей регистров", сформированных при свертке базы, остались сведения о списании этих объектов, которые надо удалить. Эти записи можно выбрать по дате, измерению "Событие" и реквизиту "Причина списания".Каким набором операторов или готовой обработкой это можно сделать?
|
|
1
sky2010
10.10.14
✎
11:25
|
(0) для начало сделай запрос, по таким критериям и подключаешься к строчку и удалить.
|
|
2
AlekseyMista
10.10.14
✎
11:26
|
Набор = РегистрыСведений.СобытияОс.СоздатьНаборЗаписей();
набор.Отбор.событие.Установить(НашеСобытие);
Набор.Отбор.причинаСписания.Установить(НашаПричина);
... (устанавливаем все отборы)
Набор.Записать(Истина);
|
|
3
AlekseyMista
10.10.14
✎
11:26
|
только сначала архивную копию сделайте :)
|
|
4
AlekseyMista
10.10.14
✎
11:28
|
Кстати, может перед методом "Записать" надо будет использовать методы "Прочитать" и "Очистить" (хотя должно и так сработать)
|
|
5
Мыш
10.10.14
✎
11:29
|
Регистр то подчиняется регистратору, так шта отбор тока один.
|
|
6
Михаил Козлов
10.10.14
✎
12:19
|
(0) Почему не удалить движения самого документа корректировки записей? Очень много?
|
|
7
rozer76
10.10.14
✎
12:23
|
(4)
>>методы "Прочитать"
ну как бы да, надо же вроде скорректировать данные а не перезаписать все нафиг
|
|
8
Krolik Bezobraznik
10.10.14
✎
12:27
|
(0) Отмени проведение документов за период, которые делали движение в регистре.
|
|
9
AlekseyMista
10.10.14
✎
12:44
|
(5) Да, что-то я насоветовал не того :)
Надо делать один отбор по регистратору, потом читать набор и в цикле, идущем с конца в начало удалять ненужные записи. Потом делать запись набора с замещением.
|
|