Имя: Пароль:
1C
1C 7.7
v7: <Объект не найден> что убило номенклатуру?
0 AMKahm
 
19.12.12
10:15
Есть 3 филиала(УРБД нет)... каждый час синхронизируется номенклатура и часть документов... месяца 2 назад в первом куда-то подевалась часть номенклатуры из нескольких подгрупп самой первой группы.
Восстановил и архива. Доки перетащил и забыл. Заметил странность - висел робот загрузки/выгрузки. Подумал что и повис он из-за <Объект не найден>.

Позавчера тоже произошло со вторым филиалом. Отвалилась вся первая группа. Запустил робота еще раз - всё появилось. Может совпадение - ХЗ. Все старые позиции на месте.
Сегодня третий филиал - опять эта фигня! Но запуск робота уже не помог - он начал недостающие позиции создавать. Загрузил бэкап.
Кстати во втором и третьем случае роботы на момент, когда проблему заметили, тоже висели.

Что может убивать номенклатуру? В обработках никакого удаления позиций/групп нет. Даже пометка на удаления идет только при полной синхронизации, которая вручную запускается.
1 mikecool
 
19.12.12
10:18
хз, где то есть Удалить(1)
2 чувак
 
19.12.12
10:18
журнал проверил?
3 AMKahm
 
19.12.12
10:19
(1) нету нигде... в этом то и проблема.. ктомуж в филиале втором всё почему-то восстановилось "само"
4 AMKahm
 
19.12.12
10:19
(2) на предмет?
5 чувак
 
19.12.12
10:20
(4) Журнал регистрации, там разве не регистрируется удаление документов?
6 Heckfy
 
19.12.12
10:22
(5) Ну если (1), то не регистрируются. Если конечно перед этим ЗаписьЖурналаРегистрации не использовать.
7 AMKahm
 
19.12.12
10:22
(5) а причем тут документы? может неясно написал - пропали элементы из справочника "Номенклатура"
8 Скользящий
 
19.12.12
10:23
кто то номенклатуру левой обработкой удаляет.
9 AMKahm
 
19.12.12
10:23
(8) думал об этом.... :((
10 AMKahm
 
19.12.12
10:25
(8) похоже единственный вариант... слишком уж близко два последних случая... да и то что в каждом филиале по разу...
11 Скользящий
 
19.12.12
10:28
А чо, у вас у пользователей прав есть запускать любые обработки? Это неправильно.
12 vii88
 
19.12.12
10:29
Женщины и вредные привычки
13 чувак
 
19.12.12
10:30
(7) Опечатался. Ну пусть будет справочники :)
14 AMKahm
 
19.12.12
10:31
(11) нет. Но есть такая фишка - ExtForms - некоторые отчеты лежат там, хоть и открываются через интерфейс. Можно заменить + Moduls. Для пары документов модули документов внешние. А доступ к каталогу базы есть. И его "тока чтение" не поставишЪ
15 AMKahm
 
19.12.12
10:31
надо все вовнутрь переносить...
16 Аццкий Чибуражко
 
19.12.12
11:06
запуск тестирования и сиправления в периферийной базе был?
17 Аццкий Чибуражко
 
19.12.12
11:08
(16) сиправления=ИСправления
18 dk
 
19.12.12
11:17
>УРБД нет
>каждый час синхронизируется номенклатура
А чем синхронизируете?
19 Mikeware
 
19.12.12
11:21
(18) видимо, какой-то кривой самописной обработкой...
20 AMKahm
 
19.12.12
11:27
(16) быстрей было восстановить из архива.
(18)(19) Ну да... самописной... и не такой и кривой :)
21 Mikeware
 
19.12.12
11:28
(20) была бы прямой - тогда бы вопроса "что убило номенклатуру" не было бы.
22 dk
 
19.12.12
11:28
на ее кривость указывает существование это темы )
23 mishaPH
 
19.12.12
11:29
(3) а если кто-то где-то что-то удаляет, то если в УРБД это участвует - востановится.
24 Mikeware
 
19.12.12
11:29
(22) :-)
25 AMKahm
 
19.12.12
11:30
эх... ну так в ней даже Удалить() нет... :((
26 AMKahm
 
19.12.12
11:32
+ филиалы номенклатуру создавать не могут... это всё значительно упрощает
27 Mikeware
 
19.12.12
11:38
(25) ну, лично я могу и без "удалить" обойтись...
29 AMKahm
 
19.12.12
11:41
Вообще печаль.... там загрузка документов тоже ведь самописная... притом не мной... и номенклатура с документами тоже едет... отрубать это не стал - на всякий случай оставил если основная сбойнет.
Вот такой в ней код:

       Если спр.НайтиПоКоду(тз.Код) = 1 Тогда    
           НашлиГруппу = 1;
           Если спр.ЭтоГруппа() = 0 Тогда
               НашлиГруппу = 0;
               Сообщить("Элемент с кодом " + тз.Код + " должен быть группой. Удалим и создадим.");  
               Попытка
                   спр.Удалить(1);            
               Исключение
                   Сообщить("Не смогли удалить элемент с кодом " + тз.Код + " прекращаем загрузку.");
                   СтатусВозврата(0);
                   Возврат;
               КонецПопытки;
           КонецЕсли;
       КонецЕсли;
+
           Если спр.НайтиПоКоду(тз.Код) = 1 Тогда
               НашлиЭлемент = 1;
               Если спр.ЭтоГруппа() = 1 Тогда
                   НашлиЭлемент = 0;
                   Сообщить("Группа с кодом " + тз.Код + " должна быть элементом. Убъем и создадим.");  
                   Попытка
                       спр.Удалить(1);      
                       НашлиЭлемент = 2;
                   Исключение
                       Сообщить("Не смогли удалить группу с кодом " + тз.Код);
                       НашлиЭлемент = 2;
                   КонецПопытки;
               КонецЕсли;
           КонецЕсли;

Вопрос: может ли спр.ЭтоГруппа() в какой-то ситуации вернуть неверно?

Отрублю это нафиг...

(27) как? напрямую запросом?
30 Ёпрст
 
19.12.12
11:43
(29) >>>Вопрос: может ли спр.ЭтоГруппа() в какой-то ситуации вернуть неверно?

не может.

А так, нефик привязываться к кодам справочника и явно удалять элементы без контроля ссылочной целостности.
31 Mikeware
 
19.12.12
11:46
(29) осьминогам заказывали?
я вот сейчас с одним творением одних екатеринбургских франчей разбираюсь - весь отдел иначе как осьминогами их назвать не может...
32 AMKahm
 
19.12.12
11:47
(30) удалил этот код... он вообще ненужен...
(31) Рарус вроде... еще когда внедряли только... с тех пор и висит.
33 Mikeware
 
19.12.12
11:49
(32) "папук" - он может...
34 AMKahm
 
19.12.12
11:49
давно это было... лет 5-6 назад... счас наверно лучше делают... надеюсь
35 Mikeware
 
19.12.12
11:52
(34) ну, там разные подразделения есть, и разные программисты  (хотя они как правило полностью соответсвуют критериям франча)...
но вам дали осьминога...
36 пипец
 
19.12.12
11:55
Удалим и создадим."); (с) феерично !!
37 пипец
 
19.12.12
11:55
Попытка
 спр.Удалить(1);      - за это удалять руки надо ;))
38 AMKahm
 
19.12.12
11:57
:D
лан.... вроде проблема решена... надеюсь всё и было из-за этого кода... спасибо всем!
39 Mikeware
 
19.12.12
11:57
(37) у осьминога их восемь...
и все - из жопы
40 Надсмотрщик
 
19.12.12
12:00
(0) Когда ВСЕ завалишь - обращайся!
41 ЧеловекДуши
 
19.12.12
12:21
(29)>>> Отрублю это нафиг...
Запусти ка ТиИ, походу ты будешь в шоке :)
42 AMKahm
 
19.12.12
12:24
(41) Былоб на чем запускать... но если еще раз случится... попробую.
43 Mikeware
 
19.12.12
12:47
(42) шо,тки пипец базе? или просто конфигуратор украли?
44 AMKahm
 
19.12.12
12:50
(43) тык базу то уже восстановил... а снимок не делал... минут 20 всего ушло на все... это я уже опосля для интереса тут написал... может известный глюк иль чего... оказалось осьмокод Ж)
45 Mikeware
 
19.12.12
12:54
(44)так ты скопируй "типповосстановленую", и на ней запусти...
46 AMKahm
 
19.12.12
13:00
(45) непонял... почему она "типповосстановленая"?
я взял копию до глюка и на нее накатил доки что слепить успели...
47 fleur
 
19.12.12
14:38
(0) хорошо пишешь, читается на одном дыхании, прямо детективная история ...
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.