![]() |
![]() |
![]() |
|
очистить регистр | ☑ | ||
---|---|---|---|---|
0
lamme
05.10.11
✎
06:31
|
Есть независимый непериодический регистр сведений.
Хочу его очистить по опр значению: НаборЗаписей=РегистрыСведений.ИмяРегистра.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Сотрудник.Значение = МойВыбрСуперСотр; НаборЗаписей.Отбор.Сотрудник.Использование = Истина; НаборЗаписей.Очистить(); НаборЗаписей.Записать(); Очищает весь регистр. Типы - в регистре и в МойВыбрСуперСотр - один - справочникссылка.физлица |
|||
1
chelentano
05.10.11
✎
06:32
|
сначала надо бы отбор установить
|
|||
2
lamme
05.10.11
✎
06:33
|
это разве не установка отбора
НаборЗаписей.Отбор.Сотрудник.Значение = МойВыбрСуперСотр; НаборЗаписей.Отбор.Сотрудник.Использование = Истина; |
|||
3
guitar_player
05.10.11
✎
06:33
|
прочитать, очистить, записать
|
|||
4
chelentano
05.10.11
✎
06:33
|
(2) не проснулся ещё :)
|
|||
5
lamme
05.10.11
✎
06:36
|
(3)
НаборЗаписей.Отбор.Сотрудник.Значение = МойВыбрСуперСотр; НаборЗаписей.Отбор.Сотрудник.Использование = Истина; НаборЗаписей.Прочитать(); НаборЗаписей.Очистить(); НаборЗаписей.Записать(); тож не хочет. все подряд очищает |
|||
6
lamme
05.10.11
✎
06:37
|
такое ощущение
что не работает сам отбор НаборЗаписей.Отбор.Сотрудник.Значение = МойВыбрСуперСотр; но тип поля и значения - одинаковы |
|||
7
chelentano
05.10.11
✎
06:38
|
(6) НаборЗаписей.Отбор.Сотрудник.Установить(МойВыбрСуперСотр)
|
|||
8
guitar_player
05.10.11
✎
06:39
|
НаборДанных = РегистрыСведений.ИмяРегистра.СоздатьНаборЗаписей();
НаборДанных.Отбор.ИмяОтбора.Установить(Источник); НаборДанных.Прочитать(); НаборДанных.Очистить(); НаборДанных.Записать(); Проверил, работает. в чем то другом у вас косяк.. |
|||
9
guitar_player
05.10.11
✎
06:39
|
причем прочитать и не нужно
|
|||
10
chelentano
05.10.11
✎
06:40
|
(6) а в твоем случае ещё надо добавить ВидСравнения.Равно, по видимому
|
|||
11
guitar_player
05.10.11
✎
06:40
|
(10) он вроде по умолчанию...
|
|||
12
chelentano
05.10.11
✎
06:41
|
(9) да, по моему, и Очистить() не надо, вроде бы при записи очищает на автомате
(11) не знаю, в СП не нашёл ничего насчёт по умолчанию |
|||
13
guitar_player
05.10.11
✎
06:42
|
(12) +100500, Если не читать, то и очищать нечего - просто записать...
|
|||
14
lamme
05.10.11
✎
06:42
|
как его ВидСравнения.Равно - записать праивльно ?
всегда пользовался такой структурой: НаборЗаписей=РегистрыСведений.Проценка.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.ТекДок.Значение = Док.Ссылка; НаборЗаписей.Отбор.ТекДок.Использование = Истина; НаборЗаписей.Записать(); и работало (правда , на 8.1) а тут (8.2)- хоть кол на голове чеши .. |
|||
15
guitar_player
05.10.11
✎
06:47
|
НаборЗаписей.Отбор.ТекДок.Установить(Док.Ссылка);
|
|||
16
lamme
05.10.11
✎
07:44
|
никак не хочет ... чтоб ее ...
как моно очистить независимый непериод регистр по одному из измерений ? Запросом - выбрать данные - а потом как удалить ? |
|||
17
БибиГон
05.10.11
✎
07:54
|
Запросом выбрать все нужные данные, удалить все записи регистра и затем выбранные записи записать обратно.
|
|||
18
Найч
05.10.11
✎
07:54
|
(17)да гори оно конем =)
|
|||
19
lamme
05.10.11
✎
07:56
|
(17)
изврат - но тоже вариант ... чтоб оно ... |
|||
20
БибиГон
05.10.11
✎
07:58
|
мне пришлось так сделать :)
|
|||
21
lamme
05.10.11
✎
08:08
|
все. разобрался. сам дурак.
БЫЛО (весь код - не только удаление): НаборЗаписей=РегистрыСведений.ИмяРегистра.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Сотрудник.Установить(МойВыбрСуперСотр); НаборЗаписей.Записать(); // запись НаборЗаписей = РегистрыСведений.ИмяРегистра.СоздатьНаборЗаписей(); для каждого Стр из ТЗ_П цикл НовЗапись = НаборЗаписей.Добавить(); НовЗапись.Сотрудник = МойВыбрСуперСотр; НовЗапись.Показатель = Стр.Показатель; НаборЗаписей.Записать(Истина); конеццикла; А НАДО БЫЛО: НаборЗаписей=РегистрыСведений.ИмяРегистра.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Сотрудник.Установить(МойВыбрСуперСотр); НаборЗаписей.Записать(); // запись //ЛИШНЯЯ СТРОКА. НаборЗаписей = РегистрыСведений.ИмяРегистра.СоздатьНаборЗаписей(); для каждого Стр из ТЗ_П цикл НовЗапись = НаборЗаписей.Добавить(); НовЗапись.Сотрудник = МойВыбрСуперСотр; НовЗапись.Показатель = Стр.Показатель; НаборЗаписей.Записать(Истина); конеццикла; Убрал лишнюю строку - все заработало |
|||
22
lamme
05.10.11
✎
08:09
|
пока это сделал
забыл - зачем вообще все это надо было |
|||
23
guitar_player
05.10.11
✎
08:45
|
(21) мозг сломался... в (21) нет того, что в (0) спрашивал. Хорошо, что разобрался
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |