|
Не удаляется битая ссылка |
☑ |
0
Vade_kirza
25.09.14
✎
17:16
|
Добрый день, побилась база (8.3.4.482, Б.П. типовая 3.0) чекдбфл нашел несколько ошибок. сделал ТиИ с ОчищатьСсылки - УдалятьОбъекты, после этого в базе остались 4 битых ссылки на списание с р.с. сделал еще раз ТиИ - 3 удалилось, одна осталась. Сделал еще раз ТиИ нифига :) сделал ТиИ с видом - Создавать Объекты, тоже ничего не поменялось. не видит он её))) подскажите как мне от нее избавиться? зависла она в регистре бухгалтерии.
|
|
1
YFedor
25.09.14
✎
17:16
|
(0) Удали саму запись регистра программно
|
|
2
Vade_kirza
25.09.14
✎
17:17
|
(1) Вот не пойму как мне к ней обратиться во внешней обработке если регистратор - объект не найден.
|
|
3
HEKPOH
25.09.14
✎
17:18
|
проверяй регистратор на null
|
|
4
Fragster
гуру
25.09.14
✎
17:18
|
Выбрать различные Регистратор Из Регистр Где Регистратор.Ссылка Есть NULL
|
|
5
Fragster
гуру
25.09.14
✎
17:18
|
(3) не регистратор, а регистратор.ссылка
|
|
6
bolobol
25.09.14
✎
17:19
|
Ну ведь не выбрать надо, а удалить! Значит - установить отбор на NULL!
|
|
7
Vade_kirza
25.09.14
✎
17:19
|
(3) (5) (6) Спасибо! сейчас попробую
|
|
8
Vade_kirza
25.09.14
✎
17:20
|
А кто-нибудь может пояснить почему ТиИ ее не находит?
|
|
9
bolobol
25.09.14
✎
17:20
|
А, не, не на NULL, а как раз на Регистратор))
|
|
10
YFedor
25.09.14
✎
17:23
|
(2) Прочитать регистр в набор, пройтись по набору и брать регистраторы, попыткой проверять на регистратор.ПолучитьОбъект(); если ошибка, значит эту запись нужно удалить
|
|
11
samozvanec
25.09.14
✎
18:09
|
(4) ссылка же как раз не нул, не?
таки думаю, что регистратор.номер, и не удалить, а по ссылке создать документ, а уж ег опотом удалять
|
|
12
bolobol
25.09.14
✎
18:32
|
(11) Вангую, что это лишнее. Из запроса уже Регистратор имеем - должно быть достаточно для установки отбора.
|
|
13
Bober
25.09.14
✎
18:37
|
(0)
|
|
14
Fragster
гуру
25.09.14
✎
18:37
|
в результате запроса (4) будут все ссылки на битые регистраторы.
Дальше:
Пока Выборка.Следующий() Цикл
Набор.Отбор.Регистратор.Установить(Выборка.Регистратор);
Набор.Записать();
КонецЦикла;
и все, битые регистраторы пропадут.
Другое дело, что в файловых базах там в регистраторе может быть не <объект не найден...>, а NULL в сиу различных обстоятельств
|
|
15
Fragster
гуру
25.09.14
✎
18:38
|
(14) пропадут вместе с наборами :)
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший