|
Как очистить не битые а пустые записи в регистре накопления ? | ☑ | ||
---|---|---|---|---|
0
antgrom
11.12.13
✎
10:17
|
V8
Розница Бывает битые ссылки. Вместо регистратора <Объект не найден ...> А у меня в одной из баз - пустые ссылки в Регистре накопления. просто несколько строк пустые. как их удалить ? код типа : Запрос = Новый Запрос(" |ВЫБРАТЬ Регистратор |ИЗ "+ТипРегистраЗ+"."+ИмяРегистра+" |ГДЕ "+ТипРегистраЗ+"."+ИмяРегистра+".Период >= &врДата и Регистратор.Ссылка ЕСТЬ NULL И НЕ Регистратор = &ПустаяСсылкаДокумента"); Запрос.УстановитьПараметр("ПустаяСсылкаДокумента",Неопределено); Запрос.УстановитьПараметр("врДата",врДата); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Набор = ТипРегистра[ИмяРегистра].СоздатьНаборЗаписей(); Набор.Отбор.Регистратор.Установить(Выборка.Регистратор); Набор.Записать(); ОбработкаПрерыванияПользователя(); Состояние(""+ТипРегистра+" "+ИмяРегистра); КонецЦикла; не работает , т.к. невозможно установить отбор , т.к. регистратора "Выборка.Регистратор" нет. ТиИ ? с проверкой( логическую и ссылочную ) и удалением ? |
|||
1
mikecool
11.12.13
✎
10:20
|
в кач регистратора - пустую ссылку, не?
|
|||
2
Wobland
11.12.13
✎
10:21
|
>("ПустаяСсылкаДокумента",Неопределено)
за что ты её так? |
|||
3
Рэйв
11.12.13
✎
10:24
|
Где
Ссылка Есть NULL И Ссылка <>&ПараметрПустаяСсылка |
|||
4
Рэйв
11.12.13
✎
10:24
|
хотя в 0 вроде атк и есть:-)
|
|||
5
antgrom
11.12.13
✎
10:26
|
если получится сделать программно , без ТиИ - это лучше.
|
|||
6
НЕА123
11.12.13
✎
10:45
|
(5)
как вариант. прочитать в наборы все правильные записи. грохнуть регистр (записать без отбора пустой набор). |
|||
7
Maxus43
11.12.13
✎
10:50
|
Набор = ТипРегистра[ИмяРегистра].СоздатьНаборЗаписей();
Набор.Отбор.Регистратор.Установить(Документы.ТвойДок.ПустаяСсылка()); набор.Прочитать(); Сообщить(набор.Количество()); типы твой док - цикл по метаданным из регистратора регистра, зачем запрос вобще не понятно |
|||
8
Maxus43
11.12.13
✎
10:52
|
точно бы понять ещё пустая ссылка там или неопределено
|
|||
9
Адинэснег
11.12.13
✎
11:10
|
шо опять?
v8: Очищение регистра сведений |
|||
10
antgrom
11.12.13
✎
11:10
|
(6) не вариант , база большая. и не хочу.
(8) отладчик показывает что Выборка.Регистратор = неопределено |
|||
11
antgrom
11.12.13
✎
11:14
|
(9) вопрос не как получить данные запросом , а как удалить запись в РН , в которой нет данных. Ни данных , ни битых ссылок.
|
|||
12
antgrom
11.12.13
✎
11:29
|
у регистратора тип Неопределено , у видов оплат - тип оплат Чека ККМ , т.е. раньше записи принадлежали документам ЧекККМ
|
|||
13
antgrom
11.12.13
✎
11:48
|
Идея грохнуть все записи в регистре нравится мне всё больше - это регистр оборотов. Данные о продажах по платежным картам. Они уже на фиг никому не нужны. Нужное взять запросом , остальное грохнуть ...
|
|||
14
hhhh
11.12.13
✎
11:53
|
(13) всё-таки ТИИ лучше. Чего вы его боитесь?
|
|||
15
antgrom
11.12.13
✎
12:05
|
(14) на копии базы оно сейчас идёт уже несколько часов.
Мне же нужно , чтобы при ненахождении ссылки запись удалялась ? это переферийная база , там не делалось никогда ТиИ , там сейчас тысячи строк сообщений про удаление. Мне ну нужно чтобы эта инфа об изменениях попала в центральную базу. И вообще изменения не нужны. Просто удалить несколько строк только в одном регистре. А выборочно ТиИ не сделать ... |
|||
16
antgrom
11.12.13
✎
15:30
|
Решил сделать удалением регистра.
И потом его восстановлением. Данные не уверен что нужны , их можно сохранить в таблицу и потом перезаписать. Или перепровести документы. |
|||
17
George Wheels
11.12.13
✎
15:55
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
//Удаление данных из регистра сведений НаборЗаписей = РегистрыСведений.Регистр1.СоздатьНаборЗаписей(); НаборЗаписей.Прочитать(); Парам = 0; Пока Истина Цикл Если Парам = НаборЗаписей.Количество() Тогда Прервать; КонецЕсли; Запись = НаборЗаписей[Парам]; Если Запись.Объект = Неопределено Тогда НаборЗаписей.Удалить(Парам); Иначе Парам = Парам + 1; КонецЕсли; КонецЦикла; НаборЗаписей.Записать(); КонецПроцедуры |
|||
18
Леха Дум
11.12.13
✎
16:00
|
(17) для РН это работать не будет
|
|||
19
George Wheels
11.12.13
✎
16:01
|
(18) Да. Не обратил внимания, что это РН.
|
|||
20
antgrom
16.12.13
✎
08:57
|
отписываюсь.
отвязал этот узел удалил РН обновил загрузил конфу с центр базы привязал этот узел Данные по платежным картам были не нужны , поэтому не восстанавливал. Но еслиб были нужны , сделал бы так : п.1 выгрузил данные в файл в т.з. , а потом п. последний записал бы данные из файла. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |