Имя: Пароль:
1C
1С v8
Удаление строки регистра сведений. УПП
,
0 Смешной 1С
 
05.05.12
11:15
Добрый день!

Необходимо удалить движения по некоторому регистру.

пишу:


Движения3 = РегистрыСведений.СобытияОС.СоздатьНаборЗаписей();
Движения3.Отбор.Регистратор.Значение = ДокПринятиеКУчетуОС;
Движения3.Прочитать();
Движения3.Очистить();
Движения3.Записать();

При первом выполнении при чтении записей, запись есть программно, потом очищается. Но в режиме предприятия в регистре строчки остаются. А если выполнить второй раз этот же код, то после Движения3.Прочитать() записей нет. Не могу понять чяднт
1 Длинный Клиент
 
05.05.12
11:28
НЗ=РегистрыСведений.АналитикаВидаУчета.СоздатьНаборЗаписей();
НЗ.Отбор.РазделУчета.Установить(Перечисления.РазделыУчета.Затраты);
НЗ.Отбор.Организация.Установить(Организация);
НЗ.Отбор.ПодразделениеОрганизации.Установить(Подразделение);
НЗ.Записать();

вот так 3-его дня очищал регистр, правда, независимый
2 Длинный Клиент
 
05.05.12
11:29
Просто Записать(), не ?
3 ILM
 
гуру
05.05.12
11:34
(0) Как то не нравится мне сам подход ((
Может не следствие, а причину решить. А то, после перепроведения документа, будет вопрос: -Шо, опять?
Тогда лучше корректировку сделать документом "Корректировка записей в регистре". Или код перепишите в процедуре проведения регистратора,

P.S. Пора вам уже завязывать серые схемы в зарплате автоматизировать )))
4 Смешной 1С
 
05.05.12
11:34
(2) Тоже не удаляет
5 Смешной 1С
 
05.05.12
11:35
(3) Клиенту надо не во всех документах удалять. Надо разово в некоторых удалить.
6 Смешной 1С
 
05.05.12
11:53
нет идей?
7 asady
 
05.05.12
11:55
Движения3 = РегистрыСведений.СобытияОС.СоздатьНаборЗаписей();
Движения3.Отбор.Регистратор.Установить(ДокПринятиеКУчетуОС);
Движения3.Записать();
8 Смешной 1С
 
05.05.12
12:00
(7) Пробовал так, все равно, программно не видно движений, а в предприятии видно...

Так тоже пробовал, не канает

       ДвиженияДока = ДокПринятиеКУчетуОС.ПолучитьОбъект().Движения.СобытияОС;
   ДвиженияДока.Прочитать();    
   ДвиженияДока.Очистить();
   ДвиженияДока.Записать();

У кого есть УПП - попробуйте у себя, также будет
9 asady
 
05.05.12
12:18
(8) чтобы удалить движения по регистратору не обязательно их видеть.
всё должно работать - ты просто косячишь где-то

какой тип у переменной ДокПринятиеКУчетуОС?
как ты смотришь движения у этого дока в предприятии?
и как ты смотришь движения этого дока программно?
10 Kom-off
 
05.05.12
12:24
(9)+ Прямо не поленился и проверил. Все удаляется. См. права, RLS...
11 Смешной 1С
 
05.05.12
12:24
(9) какой тип у переменной ДокПринятиеКУчетуОС?  - ДокументСсылка.ПриятятиеКУчетуОС

как ты смотришь движения у этого дока в предприятии? - Документ-Перейти-СобытияОС

и как ты смотришь движения этого дока программно? - Заново запускаю обработку и после Прочитать ничего нет
12 Смешной 1С
 
05.05.12
12:28
(10) Я под полными  выполняю.