Имя: Пароль:
1C
1С v8
Ошибка при обновлении
,
0 kamy
 
22.04.14
12:19
Добрый день.
При запуске программы 1с8.2 происходит обновление конфигурации
Появляется сообщение "Выполняется обновление информационной базы с версии 2.0.56.4 на версию 2.0.57.10" и практически сразу выходит сообщение об ошибке "{Обработка.ОбновлениеИнформационнойБазы.МодульОбъекта(10114)}: Преобразование значения к типу Число не может быть выполнено
        ЗаписьАдреса.Код = Число(КлассификаторАдресов.Область(Сч, 1, Сч, 1).Текст);"

Может что-нибуть подскажите как это исправить?
Сильно ногами не пинать...
1 Люблю_УПП
 
22.04.14
12:20
посмотрите порядок обновления на данный релиз.  Возможно  еще платформа не подходящая.
2 Люблю_УПП
 
22.04.14
12:20
а вообще я через Конфигуратор обновляю.
3 kamy
 
22.04.14
12:21
Платформа - 1С:Предприятие 8.3 (8.3.4.408)
4 Люблю_УПП
 
22.04.14
12:22
(3)  платформа 8.3   а    конфиг 8.2?
5 kamy
 
22.04.14
12:23
Угу..))
6 Люблю_УПП
 
22.04.14
12:24
описание  релиза  откройте. там написано для какой платформы он
7 Люблю_УПП
 
22.04.14
12:25
не уверен что именно в нем беда но это первое что  в голову пришло).

попробуйте скачать  обновление руками и обновить через конфигуратор
8 kamy
 
22.04.14
12:30
Уже и так и этак делали..(((
9 Люблю_УПП
 
22.04.14
12:31
а при обновлении через конфигуратор какая ошибка?
10 chigsrOck
 
22.04.14
12:34
Посмотрите откуда он берет макет по переменной КлассификаторАдресов. Видно же что он получает циклом значение ячейки этого макета из первого столбца и пытается преобразовать его в число. В вашем случае в ячейке какое-то другое значение, которое не преобразуется в число и лезет ахтунг. Решается отладчиком с установленной галочкой "останавливаться на ошибке"
11 kamy
 
22.04.14
12:34
Тоже самое..((
12 Люблю_УПП
 
22.04.14
12:41
d 8.3  уже поменяли  они эту обработку.  Если можно код процедуры скинте Обработка.ОбновлениеИнформационнойБазы.МодульОбъекта(10114)
13 kamy
 
22.04.14
12:56
Процедура ЗагрузитьРегионы() Экспорт
    
    АдресныеСведения = РегистрыСведений.АдресныйКлассификатор.СоздатьНаборЗаписей();
    КлассификаторАдресов = РегистрыСведений.АдресныйКлассификатор.ПолучитьМакет("ТаблицаРегионов");
    
    ВсегоЗаписей = КлассификаторАдресов.ВысотаТаблицы - 1;
    
    Для Сч = 2 По КлассификаторАдресов.ВысотаТаблицы Цикл
        
        ЗаписьАдреса = РегистрыСведений.АдресныйКлассификатор.СоздатьМенеджерЗаписи();
        
        ЗаписьАдреса.Код = Число(КлассификаторАдресов.Область(Сч, 1, Сч, 1).Текст);
        КодРегиона = Цел(ЗаписьАдреса.Код / УправлениеКонтактнойИнформацией.МаскаРегиона());
        
        ЗаписьАдреса.Наименование = СокрЛП(КлассификаторАдресов.Область(Сч, 2, Сч, 2).Текст);
        ЗаписьАдреса.Сокращение   = СокрЛП(КлассификаторАдресов.Область(Сч, 3, Сч, 3).Текст);
        ЗаписьАдреса.Индекс       = СокрЛП(КлассификаторАдресов.Область(Сч, 4, Сч, 4).Текст);
        ЗаписьАдреса.ТипАдресногоЭлемента = 1;
        
        ЗаписьАдреса.КодРегионаВКоде           = КодРегиона;
        ЗаписьАдреса.КодРайонаВКоде            = Цел(ЗаписьАдреса.Код / УправлениеКонтактнойИнформацией.МаскаРайона()) % 1000;
        ЗаписьАдреса.КодГородаВКоде            = Цел(ЗаписьАдреса.Код / УправлениеКонтактнойИнформацией.МаскаГорода()) % 1000;
        ЗаписьАдреса.КодНаселенногоПунктаВКоде = Цел(ЗаписьАдреса.Код / УправлениеКонтактнойИнформацией.МаскаНасПункта()) % 1000;
        ЗаписьАдреса.КодУлицыВКоде             = Цел(ЗаписьАдреса.Код / УправлениеКонтактнойИнформацией.МаскаУлицы())% 10000;
        
        ЗаписьАдреса.Записать(Истина);
        
    КонецЦикла;
    
КонецПроцедуры
14 Люблю_УПП
 
22.04.14
13:13
хех .  они это потом перенесли в Модуль регистра).

Поставте точку останова  напротив

      ЗаписьАдреса.Код = Число(КлассификаторАдресов.Область(Сч, 1, Сч, 1).Текст);

и посмотрите что там вообще
15 kamy
 
22.04.14
13:20
Простите меня за тупость..(( Это как?
16 Мимохожий Однако
 
22.04.14
13:33
Очисти Классификатор адресов перед обновлением. Загрузить всегда можно.
17 kamy
 
22.04.14
13:44
Так ведь в программу не зайдешь...((( Там постоянно выскакивает незаконченное обновление...((
18 chigsrOck
 
22.04.14
13:46
Зайди в конфигураторе в регистр сведений КлассификаторАдресов там должен быть макет Таблица регионов. Посмотри что там в первой колонке у тебя
19 kamy
 
22.04.14
14:00
Даже при полностью очищенной "Обработка.ОбновлениеИнформационнойБазы" происходит ошибка... такое ощущение, что где-то что-то записалось..((
Регистр сведений КлассификаторАдресов - уже полностью чистый.. Не помогло..(((
20 chigsrOck
 
22.04.14
14:16
(19) дык он не из самого регистра, а макета код получает и дальше фигачит записи в этот регистр. Если не хочется разбираться можно просто очистить содержимое процедуры ЗагрузитьРегионы() тогда ошибки не будет. Правда это не исключает наличие других ошибок....
21 kamy
 
22.04.14
14:23
(20) Уже полностью процедуры удалены...(( и всё таже самая ошибка..
Поставим вопрос по другому..
Как сделать так, что-бы при запуске программы это обновление не происходило?
22 chigsrOck
 
22.04.14
14:36
(20) это как? он ругается на строчку кода, которая в конфигурации уже отстутствует?:() Если так, надо чистить кэш. Удалять скопом все процедуры нельзя, так как на них есть вызовы из других модулей, и система будет ругаться что вызываемые процедуры/функции не обнаружены. В данном случае было достаточно только очистить содержимое этой процедуры и всё.
Что касается вообще обновления, в УПП есть функция НеобходимоОбновлениеИнформационнойБазы() в модуле ОбновлениеИнформационнойБазы, в которой достаточно прописать Ложь в качестве возвращаемого значения. Не факт что у вас так же, но можно поискать...
23 DmitriyDI
 
22.04.14
14:38
(0) закомментируй строчку, обновись, а потом назад верни, я так сто раз делал) да и все!
24 hhhh
 
22.04.14
14:57
(21) попробуйте на 8.2.90 обновиться.
25 Пеппи
 
22.04.14
15:01
Откатить конфигурацию на конфигурацию базы данных, наверное  еще можно если база еще не обновилась
26 kamy
 
22.04.14
15:28
Почистили кэш - не помогло..
Запускали с 8.2.19.90 и обновлялись - не помогло..
Откатывали конфигурацию - не помогло..(((

Внемлю Вашим советам..))

или скажем так:

Кто сможет исправить проблему с базой за разумные деньги?
27 chigsrOck
 
22.04.14
16:02
(26) сейчас то он при запуске на какую строчку ругается?
28 kamy
 
22.04.14
16:03
Всё тоже самое..((Обработка.ОбновлениеИнформационнойБазы.МодульОбъекта(10114)
29 chigsrOck
 
22.04.14
16:04
(28) ну значит вы ее не закомментили/удалили, поэтому и ругается:)))
30 kamy
 
22.04.14
16:06
процедуру удаляли..(((( всё по старому...
31 chigsrOck
 
22.04.14
16:09
Там же кнопочка у ошибки есть типа "открыть конфигуратор", по нажатии которой 1ска прям носом тыкает на место где прошла ошибка. Куда он тыкает? В пустоту что-ли?
32 kamy
 
22.04.14
16:11
При убранной процедуре практически в пустоту.. или на "левую" процедуру... и всё время пишет про ошибку: "{Обработка.ОбновлениеИнформационнойБазы.МодульОбъекта(10114)}: Преобразование значения к типу Число не может быть выполнено
        ЗаписьАдреса.Код = Число(КлассификаторАдресов.Область(Сч, 1, Сч, 1).Текст);"
33 chigsrOck
 
22.04.14
16:17
Вы после удаления конфигурацию БД по F5 обновляли или просто сохранили? И еще раз. Процедуру надо очистить, но не удалять ее всю с объявлением. Попробуйте в конфигураторе верхняя строчка Отладка->Остановка по ошибке-> галочка "останавливаться при ошибке" и дальше запускать базу по F5. Должен ткнуть именно на эту строчку.
34 neo_matrix_123
 
22.04.14
16:19
(33)+1
35 kamy
 
22.04.14
16:27
36 chigsrOck
 
22.04.14
16:34
(35) ну зашибись...процедура на месте целёхонькая. что вы тогда удаляли не понятно. Очистите ее и F5 тогда...
37 kamy
 
22.04.14
16:40
38 Eugene_life
 
22.04.14
16:51
(32) Ну уже закомментируй эту строку:
ЗаписьАдреса.Код = Число(КлассификаторАдресов.Область(Сч, 1, Сч, 1).Текст);
Она находится в обработке "Обновление информационной базы".
Сохрани конфигурацию и все получится.
39 chigsrOck
 
22.04.14
16:57
картинка из (37) не понятно о чем... после очистки типа кажет все-равно на ту же строчку, но там уже совсем другой код что-ли? или что? Конфигурация БД точно была обновлена? Восклицательный знак рядом со словом "Конфигурация" пропал?
40 Alexman13
 
22.04.14
17:07
(39) у меня кстати есть такая база УПП, не обновляется с 51.3 на 51.5. Ругается на какой то регистр сведений прав доступа, при попытки закомментировать код, он все равно на НЕМ спотыкается. Платформа последняя 8.2.19.90.
На 8.3 такой проблемы не замечено, все проходит отлично.
41 chigsrOck
 
22.04.14
17:29
(40) угу тоже шляпа была при переходе на 51.5.
42 Alexman13
 
22.04.14
21:13
(41) Как решил?! Только переходом на 8.3?
43 chigsrOck
 
22.04.14
22:10
(42) Зачем? Там как минимум возникла проблема с кешем, после очистки которого во всяком случае пропала проблема "призрачного" кода, которого в конфигураторе не видно. В главной базе обновилось как бы нормально(не считая косяков с кешем), а в подчиненках при первом запуске вылезала ошибка - как минимум часть модулей остались старой версии, конфигурация поставщика тоже осталась старой версии.
В общем есть волшебное слово "бэкапы", базы пришлось откатывать и повторять процедуру обновления заново, рисковать просто не хотелось.
Но надо сказать за 6 лет это первый раз такая ерунда при обновлении...
Независимо от того, куда вы едете — это в гору и против ветра!