|
Использование транзакции при очистки движений | ☑ | ||
---|---|---|---|---|
0
Sasha_H
21.03.12
✎
14:29
|
Необходимо очситить в РН движения, использую транзакцию, но после фиксирования ее, движения остаются. Вот собственно сам код:
НачатьТранзакцию(); СчетчикТранзакций=0; Пока ВыборкаПоДокументам.Следующий() Цикл СчетчикТранзакций=СчетчикТранзакций+1; УдаляемыйОбъект = ВыборкаПоДокументам.ТекущийДокумент.ПолучитьОбъект(); ДвиженияОбъекта = УдаляемыйОбъект.Движения; Для каждого НаборДвижений из ДвиженияОбъекта Цикл ИмяТаблицы = НаборДвижений.Метаданные().Имя; Если ОбщегоНазначения.ПринадлежностьКлассуМетаданных("РегистрыНакопления",НаборДвижений.Метаданные()) Тогда НаборЗаписей = РегистрыНакопления[ИмяТаблицы].СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Установить(ВыборкаПоДокументам.ТекущийДокумент); НаборЗаписей.Прочитать(); НаборЗаписей.Записать(); ИначеЕсли ОбщегоНазначения.ПринадлежностьКлассуМетаданных("РегистрыСведений",НаборДвижений.Метаданные()) Тогда НаборЗаписей = РегистрыСведений[ИмяТаблицы].СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Установить(ВыборкаПоДокументам.ТекущийДокумент); НаборЗаписей.Прочитать(); НаборЗаписей.Записать(); ИначеЕсли ОбщегоНазначения.ПринадлежностьКлассуМетаданных("РегистрыБухгалтерии",НаборДвижений.Метаданные()) Тогда НаборЗаписей = РегистрыБухгалтерии[ИмяТаблицы].СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Установить(ВыборкаПоДокументам.ТекущийДокумент); НаборЗаписей.Прочитать(); НаборЗаписей.Записать(); КонецЕсли; Если СчетчикТранзакций >= 200 Тогда ЗафиксироватьТранзакцию(); НачатьТранзакцию(); СчетчикТранзакций=0; КонецЕсли; КонецЦикла; КонецЦикла; ЗафиксироватьТранзакцию(); |
|||
1
Axel2009
21.03.12
✎
14:30
|
а почему должно очиститься?
|
|||
2
Sasha_H
21.03.12
✎
14:32
|
как это почему, я же установил отбор по регистратору и записал пустой набор, он бы должен его чикнуть!
|
|||
3
Ненавижу 1С
гуру
21.03.12
✎
14:32
|
это все в обработке проведения что ли?
|
|||
4
Ахмадинежад
21.03.12
✎
14:33
|
пустой ?
|
|||
5
zinch
21.03.12
✎
14:34
|
В каком месте там пустой набор?
|
|||
6
Ненавижу 1С
гуру
21.03.12
✎
14:34
|
и кстати да, где там пустой набор записей?
|
|||
7
Sasha_H
21.03.12
✎
14:34
|
(3) Нет :)
это обработина отдельная. Вообще задача почистить СУБД от определенных документов. Но УстановитьПоМеткуНаУдаление отрабатывается долго из-за проверок, вот хочу начать все из самих документов. |
|||
8
Sasha_H
21.03.12
✎
14:35
|
i Как удалить записи из регистра сведений, подчиненного регистратору?
Запрос = Новый Запрос; Запрос.Текст = " | ВЫБРАТЬ | ЦеныНоменклатурыКонтрагентов.Регистратор |ИЗ | РегистрСведений.ЦеныНоменклатурыКонтрагентов КАК ЦеныНоменклатурыКонтрагентов"; Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); НаборЗаписей = РегистрыСведений.ЦеныНоменклатурыКонтрагентов.СоздатьНаборЗаписей(); Пока Выборка.Следующий() Цикл НаборЗаписей.Отбор.Регистратор.Установить(Выборка.Регистратор); НаборЗаписей.Записать(); КонецЦикла; |
|||
9
Sasha_H
21.03.12
✎
14:36
|
вопрос закрадывается перед тем как почитить надо прочитать!?
|
|||
10
zinch
21.03.12
✎
14:36
|
не надо
|
|||
11
Ахмадинежад
21.03.12
✎
14:36
|
чувак, Набор.Очистить()
|
|||
12
Ненавижу 1С
гуру
21.03.12
✎
14:38
|
зачем читать вообще?
|
|||
13
Sasha_H
21.03.12
✎
14:39
|
(12) кхм...
|
|||
14
Axel2009
21.03.12
✎
14:39
|
НаборЗаписей = РегистрыНакопления[ИмяТаблицы].СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(ВыборкаПоДокументам.ТекущийДокумент); НаборЗаписей.Прочитать(); НаборЗаписей.Очистить(); НаборЗаписей.Записать(); вот здесь будет пустой |
|||
15
Sasha_H
21.03.12
✎
14:41
|
(12) хороший вопрос.
|
|||
16
Sasha_H
21.03.12
✎
14:42
|
Выходит так, что я замещал набор сам собой
|
|||
17
Ненавижу 1С
гуру
21.03.12
✎
14:46
|
(14) проще надо быть
НаборЗаписей = РегистрыНакопления[ИмяТаблицы].СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Регистратор.Установить(ВыборкаПоДокументам.ТекущийДокумент); НаборЗаписей.Записать(); |
|||
18
Sasha_H
21.03.12
✎
14:47
|
(17) да-да я так и сделал.
(14) я так понял он просто показал пример, что у меня набор то не чистый. |
|||
19
Sasha_H
21.03.12
✎
14:47
|
Все спс. Вопр - закрыт ;)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |