![]() |
![]() |
|
Появление битых ссылок в базе! | ☑ | ||
---|---|---|---|---|
0
mzelensky
13.09.10
✎
16:28
|
Доброго времени суток всем!
В базе (конфа УТ) регулярно появляются биты ссылки! Причем если эти ссылки появляются в регистрах, то болячку еще как-то можно вылечить путем перепроведения регистратора. Но иногда эти ссылки появляются в документа "корректировка долга" и "детализация оплат сетевых контрагентов" (один док строится на основании другого)...при этом битая ссылка повяляется в табличной части документа в графе, где должна быть указана реализация... выявить в последующем нужную реализацию ну никак не получается...и выходит что контрагент есть...сумму какая-то висит, а привязки к реализации НЕТ...и лезут косяки!!! Почему появляются эти биты ссылки я не пойму ,потому как удаление документов не производится, а тем более интерактивное удаление (без проверки целостности). Подскажите в чем может быть кося? |
|||
1
le_
13.09.10
✎
16:31
|
Либо документы все-таки удаляются, (ибо в этом деле чудес не бывает),
либо, в ролях настроены РЛСы и там, где показываются битые ссылки на самом деле не битые ссылки, а просто к этим документам у пользователя нет доступа. |
|||
2
H A D G E H O G s
13.09.10
✎
16:32
|
Либо обмен.
|
|||
3
H A D G E H O G s
13.09.10
✎
16:35
|
Либо Гений 1С писал конфу.
http://dff.sytes.net/2844?0 |
|||
4
H A D G E H O G s
13.09.10
✎
16:35
|
Пост 94, который, собственно, он не опроверг.
|
|||
5
mzelensky
13.09.10
✎
16:37
|
Документы НЕ УДАЛЯЮТСЯ...я единственный кто может удалять интерактивно, другим пользователям это запрещено!!!Уже проверял несколько раз!
"в ролях настроены РЛСы и там, где показываются битые ссылки на самом деле не битые ссылки, а просто к этим документам у пользователя нет доступа" - ничего подобного тоже нет, так как для данных документов у пользователя есть все нужные права...да и даже если я потом захожу в эти доки (под полными правами) ссылки битые присутствуют! |
|||
6
mzelensky
13.09.10
✎
16:39
|
(4) данные механизмы вроде не трогали :( ...
|
|||
7
mzelensky
13.09.10
✎
16:40
|
просто я даже проверить не могу откуда эта ссылка битая берется...сперва тоже думал что можек как-то док удалили...поднимал резервные копии базы, искал по ссылке - нифига!
|
|||
8
Buster007
13.09.10
✎
16:41
|
у тебя не распределенная информационная база?
|
|||
9
H A D G E H O G s
13.09.10
✎
16:42
|
Глобально поищи
ПолучитьСсылкуНового( ПолучитьСсылку( и проанализируй, когда они встречаются. |
|||
10
hhhh
13.09.10
✎
16:42
|
(7) в журнале регистрации посмотри эту битую ссылку.
|
|||
11
mzelensky
13.09.10
✎
16:44
|
(8) нет!
(9) пробовал, получал ссылку...пытался найти по ней документ - нет такого! искал в резервных копиях за несколькл месяцев - НЕТ! |
|||
12
mzelensky
13.09.10
✎
16:48
|
(10) а как там ее найти? у меня стоит обработка "регистрация изменений" - с помощью ее ничего найти не удалось!
|
|||
13
H A D G E H O G s
13.09.10
✎
16:50
|
(11) Не то! Может быть такой алгоритм:
Процедура ПередЗаписью(Отказ) Приход.ДокументОснование=ЭтотОбъект.ПолучитьСсылкуНового(); Приход.Записать(); Отказ=Истина; КонецПроцедуры Ну и варианты... |
|||
14
mzelensky
13.09.10
✎
17:07
|
(13) а как можно ЗАПИСАТЬ ТО, что НЕЛЬЗЯ ПОЛУЧИТЬ???
Я просто не пойму смысл " Приход.ДокументОснование=ЭтотОбъект.ПолучитьСсылкуНового(); Приход.Записать(); " ведь так я просто присвою ссылку нового документа?! |
|||
15
H A D G E H O G s
13.09.10
✎
17:19
|
(14) До этого, ссылка на новый ЭтотОбъект может быть уже назначена, например:
ЭтотОбъект.УстановитьСсылкуНового(Документы.ЗаказПокупателя.ПолучитьСсылку(Новый УникальныйИдентификатор())); |
|||
16
mzelensky
13.09.10
✎
17:29
|
(14) ну я что-то типа такого пробовал...положительных результатов не принесло!
|
|||
17
Mitriy
13.09.10
✎
17:37
|
(16) а у тебя точно не стоит разрешение на Интерактивное удаление этих документов для какой-нибудь роли?
|
|||
18
Mitriy
13.09.10
✎
17:39
|
(17)+ прочитал (5)... может, ты сам и удаляешь иногда? ну, типа быстрее так? либо обработку какую периодически запускаешь, которая это делает....
|
|||
19
mzelensky
16.09.10
✎
10:08
|
(18) я сперва тоже так подумал и поэтому не делал определенный период НИКАКИХ УДАЛЕНИЙ...а битые ссылки все-равно появляются!!!
|
|||
20
mzelensky
16.09.10
✎
10:12
|
И еще одна фишка есть!!! Скажем создается реализация, указывается 2 позиции в ТЧ "Товары"...при проведении КАК-ТО в регистр "продажи" попадает не 2 записи, а 4...2 нормальные и 2 точно такие же, но с битой ссылкой в поле "документ заказа" (к примеру).... получается что списание происходит криво и порой из-за этого вылазиют ОЧЕНЬ большие косяки!!! Но если просто перепровести этот документ (ничего не меняя), то движения сформируются правильно!
Вот из-за чего это? Я уже что ток не делал, пытаясь воспроизвести специально такую ситуацию - у меня не получилось...но подобные косяки всплывают периодически...подскажите на что грешить? |
|||
21
dmpl
16.09.10
✎
10:15
|
(20) Для начала выяснить, с какого компьютера такое происходит. Может, там установка платформы 1С битая.
|
|||
22
mzelensky
16.09.10
✎
10:19
|
(21) от компа не зависит....от пользователя тоже... уже проверял! Причем смотрю по журналу изменений (дополнительная обработка у меня стоит) - пишет, что эти реализации создавались и проводились "за раз", без всяких там изменений, переносов и т.д. ...человек набил, провел сразу и все (ну вроде как...разумеется на 100% утверждать не могу)
|
|||
23
mzelensky
16.09.10
✎
10:20
|
+(21) платформа битой быть не может так как все работают в терминалах, обращаясь к серверу!
|
|||
24
dmpl
16.09.10
✎
10:24
|
(22) А ошибок ожидания блокировки транзакций не происходит в этот момент?
|
|||
25
mzelensky
16.09.10
✎
10:27
|
(22) ну именно ОШИБОК никаких не вылазиет!
Замечен ньюанс! Опять таки по примеру в (2) про 2 позиции и 4 строки в регистре... так вот первые 2 записи в регистре (которые кривые) записаны с ПЕРИОДОМ в 12.10.30, а последующие 2 записи (нормальные) полностью идентичны предыдущим, но период выставлен в 12.11.10. Т.е. различаются периоды записи, а следовательно и ДАТЫ В ДОКУМЕНТЕ!!! Как такое может быть, если документ проводился 1 раз? |
|||
26
mzelensky
16.09.10
✎
10:27
|
(25) + сори - пример в (20)
|
|||
27
mzelensky
16.09.10
✎
10:33
|
может кто-нибудь этот полтергейст объяснить?
|
|||
28
Defender77
16.09.10
✎
10:35
|
А эти ссылки не при проведении (или в подписках дока) заполняются?
Есть такая фишка: если в при проведении/подписке создается новый документ и документ в котором он создавался отменилось проведение, то транзакция откатывается и в память о ней остается битая ссылка. |
|||
29
DUDE
16.09.10
✎
10:36
|
(25) Дата записи в регистре может быть не привязана к дате документа.
|
|||
30
mzelensky
16.09.10
✎
10:42
|
(28) (29) да вроде общий механизм проведения реализаций не изменялся (Конфа УТ 10.3.1.17)...тем более я же пробую создавать всевозможными способами эти реализации, проводить, снимать с проведения, перезаписываю, копирую...у меня все нормально происходит, а вот в клиентском сервисе (у операторов), уж не знаю что они там делают и как, но по паре таких реализаций в день вылазиет!
|
|||
31
Defender77
16.09.10
✎
10:48
|
(30) Ну тогда к операторам идти и над душой стоять и смотреть что и как делают. Для локализации можно посмотреть у одного оператора такое вылазит или у всех. И смотреть в сторону нестандартных грудей/ногтей/чтонибудь еще
|
|||
32
dmpl
16.09.10
✎
10:50
|
(25) Ну тогда может быть так, что создан новый объект, ни разу не записан, первое проведение не удалось в самом конце (когда уже движения добавлены), второе/третье - удалось. В типовой УПП будут дублирующиеся движения. Обычно это бывает как раз при ошибке ожидания блокировки транзакции при записи движений. Потому как в обработке проведения движения регистратора удаляются только если мУдалятьДвижения = Истина. А типично мУдалятьДвижения = НЕ ЭтоНовый(). Естественно, что если сразу проводить, и в самом конце это сделать не получится - то движение так и останется. Запись не удалась, и объект как был новым - так и остался.
Можно для проверки вставить Отказ = НЕ ОтражатьВНалоговомУчете, несколько раз попробовать провести новый документ без галочки НУ - а потом ее поставить и провести. Вуаля - сколько раз тыкался - столько дублей движений и будет. |
|||
33
dmpl
16.09.10
✎
10:52
|
(32) Точнее наоборот - с галочкой НУ проводить несколько раз, а потом снять.
|
|||
34
dmpl
16.09.10
✎
10:53
|
Вообще, скажи операторам, чтобы жали не просто ОК, а Записать - ОК. Если ошибка пропадет - значит оно и есть.
|
|||
35
mzelensky
16.09.10
✎
10:54
|
(32) (34) интересная идея - попробую!!!
|
|||
36
mzelensky
16.09.10
✎
10:59
|
(35) тогда это как раз объясняет почему периоды разные в записях и различаются всего в несколько секунд
|
|||
37
mzelensky
16.09.10
✎
11:03
|
в таком случае, если условие
Если мУдалятьДвижения Тогда ОбщегоНазначения.УдалитьДвиженияРегистратора(ЭтотОбъект, Отказ); КонецЕсли; вообще убрать и оставить только ОбщегоНазначения.УдалитьДвиженияРегистратора(ЭтотОбъект, Отказ); Т.е. производить очистку в ЛЮБОМ СЛУЧАЕ...по идее при отсутствии движений (если документ НОВЫЙ), то ошибок не должно быть, да и тормозов тоже! |
|||
38
mzelensky
16.09.10
✎
11:13
|
аппп
|
|||
39
dmpl
16.09.10
✎
11:24
|
(37) Я не разбирался, зачем именно они эту проверку ввели - может и нужна для чего. К тому же, у них такое повсеместно, и если везде исправить - то потом обновлять конфигурацию замучаешься...
|
|||
40
mzelensky
16.09.10
✎
11:37
|
(39) на счет обновления можно не париться...конфа уже ТАК СИЛЬНО ИЗМЕНЕНА, что ни о каком обновлении и речи нет
|
|||
41
mzelensky
16.09.10
✎
11:50
|
апрапр
|
|||
42
mzelensky
16.09.10
✎
12:03
|
апппа-па
|
|||
43
mzelensky
16.09.10
✎
13:34
|
подъем!
|
|||
44
mzelensky
16.09.10
✎
16:07
|
ghf-gf-gf
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |