Имя: Пароль:
1C
1С v8
конвертация данных
,
0 МаксимБел
 
19.02.13
17:55
Переношу адрес из спр. Контрагенты в регистр КонтактнаяИнформация.
в регистре 3 измерения: объект, вид, тип
в Объект пишу сам источник с помощью ПКС. В вид и тип пишу с помощью обработчика ПКО ПриЗагрузке:
Объект.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента;
Объект.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
При загрузке выкидывает ошибку:
Ошибка при загрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1566)}: Ошибка в обработчике события ПриЗагрузкеОбъекта
   ИмяПКО                 =  ОсновныеАдресаКонтрагентов
   ТипОбъекта             =  Регистр сведений запись: Контактная информация
   Обработчик             =  ПриЗагрузкеОбъекта
   ОписаниеОшибки         =  Значение не является значением объектного типа (Вид)
   ПозицияМодуля          =  (1)
   КодСообщения           =  20
Уже что только не пробовал. В чем проблема? Помогите кто знает.
1 salvator
 
19.02.13
18:03
В Объект что показывает?
2 МаксимБел
 
19.02.13
18:06
Объект - Запись регистра.
3 acsent
 
19.02.13
18:08
у тебя у источника нет поля вид. скорее это вообще неопределено
4 acsent
 
19.02.13
18:09
хотя нет,тут при загрузке
5 acsent
 
19.02.13
18:09
нужно не при загрузке, а послезагрузки
6 МаксимБел
 
19.02.13
18:11
Самое странное, что ругается на Вид. Пишет, что это не объект, хотя чем еще может является предопределенный элемент справочника?
7 МаксимБел
 
19.02.13
18:12
(5) Пробовал. Не помогает.
8 acsent
 
19.02.13
18:19
сделай сообщить(объект);
9 МаксимБел
 
19.02.13
18:21
Делал. Сообщило, что объект является записью регистра.
10 acsent
 
19.02.13
18:26
а там точно вид есть?
11 acsent
 
19.02.13
18:27
сделай сообщить("вид: " + объект.вид + "--");
12 МаксимБел
 
19.02.13
18:27
(10) Точно есть.
13 МаксимБел
 
19.02.13
18:28
Вот как ругается, если при установку вида и типа в ПослеЗагрузки перенести:
14 МаксимБел
 
19.02.13
18:28
Ошибка при загрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(4795)}: Ошибка записи объекта
   ТипОбъекта             =  Регистр сведений запись: Контактная информация
   Объект                 =  РегистрСведенийНаборЗаписей.КонтактнаяИнформация
   ОписаниеОшибки         =  Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика - 'ПередЗаписью': {ОбщийМодуль.ПроцедурыОбменаТорговляБухгалтерия.Модуль(446)}: Значение не является значением объектного типа (Предопределенный)
   ПозицияМодуля          =  ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(4788)
   КодСообщения           =  26
15 acsent
 
19.02.13
18:29
(14) так у тебя просто база нерабочая.
По оле грузишь?
16 МаксимБел
 
19.02.13
18:30
Нормальная база. Что значит "по оле"?
17 МаксимБел
 
19.02.13
18:31
(15) Базу запуска - всё работает. Руками заполняется без проблем.
18 acsent
 
19.02.13
18:32
(17) можно через файл, а можно напрямую
19 acsent
 
19.02.13
18:32
попробуй ручками добавить адрес
20 iceman2112
 
19.02.13
18:35
так тоже не могу понять почему.
1) попробуй убрать обработчик - посмотри что запишет
2) остановить на этой строке и посмотри выше чем она вызвана, там откопай этот "ОБъект" глянь на него.
21 МаксимБел
 
19.02.13
18:36
(18) Делаю выгрузку из 1С7.7 в файл. Потом этот файл через обработку Универсальный обмен данными загружаю в базу 1С8.2.
Справочники таким макаром перенес без проблем.
(19) Руками всё работает отлично.
22 acsent
 
19.02.13
18:37
у тебя ошибка в конфе. запускай отладчик
23 acsent
 
19.02.13
18:37
ОбщийМодуль.ПроцедурыОбменаТорговляБухгалтерия.Модуль(446)
24 МаксимБел
 
19.02.13
18:38
(20) Убирать обработчик нельзя - в записи регистра все измерения должны быть заполнены.
25 iceman2112
 
19.02.13
18:38
а вообще почему ты используешься ПКО, а не ПКС для вида и типа?
26 iceman2112
 
19.02.13
18:39
хотя...
27 zak555
 
19.02.13
18:41
используй универсальную загрузку
28 iceman2112
 
19.02.13
18:41
скинь правила и файлик
29 МаксимБел
 
19.02.13
18:45
(28) Куда скинуть?
30 МаксимБел
 
19.02.13
18:50
(28) Файл не скину - слишком здоровый.
31 МаксимБел
 
19.02.13
18:52
32 mooo
 
19.02.13
20:32
(22) +1
(14) Смотри модуль набора записей регистра, обработчик ПередЗаписью
33 МаксимБел
 
20.02.13
09:56
(32) ПередЗаписью смотрел. Там вообще ничего не происходит. В самом начале процедуры стоит проверка на ОбменДанными, которая завершает дальнейшее выполнение процедуры.
34 МаксимБел
 
20.02.13
11:16
Запустил отладку. Происходит что-то странное: в измерение регистра "Объект" передается неопределенное значение, хотя в качестве объекта должен выступать Источник. Если источника нету, то никакой передачи вообще быть не должно.
35 МаксимБел
 
20.02.13
11:23
Кажется разобрался. Измерение "Объект" принимает значение источника, по определенному ПКО, а в этом ПКО срабатывает Отказ при выгрузке. Не думал, что Отказ не наследуется.