|
Правила обмена УТ и БП | ☑ | ||
---|---|---|---|---|
0
Gossar1C
22.01.14
✎
12:47
|
Здравствуйте! Пытаюсь настроить правила обмена между УТ 11.0.7.8 и БСО 2.0.54.1. Вылазит эта ошибка:
ВНЕШНЕЕ СОЕДИНЕНИЕ: Ошибка при загрузке данных: {Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(3748)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта ИмяПКО = Организации ТипОбъекта = Организации Объект = ООО "МЭП МОНТАЖ" Обработчик = ПослеЗагрузкиОбъекта ОписаниеОшибки = Получение элемента по индексу для значения не определено ПозицияМодуля = (33) КСообщенияОбОшибках = 21 не могу понять в чем дело. ПКО Организации в правилах установлено что либо он ищет по индентификатору, а если не находит то по полям ИНН - КПП и Наименование. Допустим в том же выгружаемом документе РеализацияТоваровУслуг ПКС Организации вроде бы установлено правильно (СправочникСсылка.Органзации - СправочникСсылка.Организации). С обменом работаю можно сказать впервые! Строго не судите. Прошу помощи. |
|||
1
Godofsin
22.01.14
✎
12:48
|
Открывай модуль и смотри, что там
|
|||
2
Godofsin
22.01.14
✎
12:48
|
Ну я бы сразу глянул в ПослеВыгрузки
|
|||
3
Godofsin
22.01.14
✎
12:49
|
упс, то есть послу загрузки
|
|||
4
МойКодУныл
22.01.14
✎
12:49
|
(0) открываешь в КД правила. Находишь ПКО организации, в нем ищешь обработчик послеЗагрузки. И в нем смотришь, что написано в строке 33.
|
|||
5
Gossar1C
22.01.14
✎
12:53
|
(4)(2) Открыл ПКО организации в обработчике ПослеЗагрузки:
Выполнить(Алгоритмы.ОбновлениеОтветственныхЛицОрганизации); Сам алгоритм: // Обновляем значение периодического реквизита "Руководитель" и его должность Запрос = Новый Запрос("ВЫБРАТЬ | ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо, | ОтветственныеЛицаОрганизацийСрезПоследних.Должность, | ОтветственныеЛицаОрганизацийСрезПоследних.Период |ИЗ | РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних( | , | СтруктурнаяЕдиница = &Ссылка | И ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.Руководитель)) КАК ОтветственныеЛицаОрганизацийСрезПоследних"); Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка); Результат = Запрос.Выполнить(); Если Результат.Пустой() Тогда ПериодЗаписи = '19800101'; СтароеЗначениеРуководителя = Справочники.ФизическиеЛица.ПустаяСсылка(); СтараяДолжностьРуководителя = Справочники.ДолжностиОрганизаций.ПустаяСсылка(); Иначе ВыборкаРезультата = Результат.Выбрать(); ВыборкаРезультата.Следующий(); ПериодЗаписи = ВыборкаРезультата.Период; СтароеЗначениеРуководителя = ВыборкаРезультата.ФизическоеЛицо; СтараяДолжностьРуководителя = ВыборкаРезультата.Должность; КонецЕсли; НовоеЗначениеРуководителя = ПараметрыОбъекта["Руководитель"]; НовоеЗначениеРуководителя = ?(ЗначениеЗаполнено(НовоеЗначениеРуководителя), НовоеЗначениеРуководителя, Справочники.ФизическиеЛица.ПустаяСсылка()); НоваяДолжностьРуководителя = ПараметрыОбъекта.Получить("ДолжностьРуководителя"); НоваяДолжностьРуководителя = ?(ЗначениеЗаполнено(НоваяДолжностьРуководителя), НоваяДолжностьРуководителя, Справочники.ДолжностиОрганизаций.ПустаяСсылка()); Если НовоеЗначениеРуководителя <> СтароеЗначениеРуководителя ИЛИ НоваяДолжностьРуководителя <> СтараяДолжностьРуководителя Тогда ЗаписьРегистра = РегистрыСведений.ОтветственныеЛицаОрганизаций.СоздатьМенеджерЗаписи(); ЗаписьРегистра.Период = ПериодЗаписи; ЗаписьРегистра.СтруктурнаяЕдиница = Объект.Ссылка; ЗаписьРегистра.ОтветственноеЛицо = Перечисления.ОтветственныеЛицаОрганизаций.Руководитель; ЗаписьРегистра.ФизическоеЛицо = НовоеЗначениеРуководителя; ЗаписьРегистра.Должность = НоваяДолжностьРуководителя; ЗаписьРегистра.Записать(); КонецЕсли; // Обновляем значение периодического реквизита "Главный бухгалтер" Запрос = Новый Запрос("ВЫБРАТЬ | ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо, | ОтветственныеЛицаОрганизацийСрезПоследних.Должность, | ОтветственныеЛицаОрганизацийСрезПоследних.Период |ИЗ | РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних( | , | СтруктурнаяЕдиница = &Ссылка | И ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.ГлавныйБухгалтер)) КАК ОтветственныеЛицаОрганизацийСрезПоследних"); Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка); Результат = Запрос.Выполнить(); Если Результат.Пустой() Тогда ПериодЗаписи = '19800101'; СтароеЗначениеГлавногоБухгалтера = Справочники.ФизическиеЛица.ПустаяСсылка(); СтараяДолжностьГлавногоБухгалтера = Справочники.ДолжностиОрганизаций.ПустаяСсылка(); Иначе ВыборкаРезультата = Результат.Выбрать(); ВыборкаРезультата.Следующий(); ПериодЗаписи = ВыборкаРезультата.Период; СтароеЗначениеГлавногоБухгалтера = ВыборкаРезультата.ФизическоеЛицо; СтараяДолжностьГлавногоБухгалтера = ВыборкаРезультата.Должность; КонецЕсли; НовоеЗначениеГлавногоБухгалтера = ПараметрыОбъекта["ГлавныйБухгалтер"]; НовоеЗначениеГлавногоБухгалтера = ?(ЗначениеЗаполнено(НовоеЗначениеРуководителя), НовоеЗначениеГлавногоБухгалтера, Справочники.ФизическиеЛица.ПустаяСсылка()); Если СтароеЗначениеГлавногоБухгалтера <> НовоеЗначениеГлавногоБухгалтера Тогда ЗаписьРегистра = РегистрыСведений.ОтветственныеЛицаОрганизаций.СоздатьМенеджерЗаписи(); ЗаписьРегистра.Период = ПериодЗаписи; ЗаписьРегистра.СтруктурнаяЕдиница = Объект.Ссылка; ЗаписьРегистра.ОтветственноеЛицо = Перечисления.ОтветственныеЛицаОрганизаций.ГлавныйБухгалтер; ЗаписьРегистра.ФизическоеЛицо = НовоеЗначениеГлавногоБухгалтера; ЗаписьРегистра.Должность = СтараяДолжностьГлавногоБухгалтера; ЗаписьРегистра.Записать(); КонецЕсли; |
|||
6
Gossar1C
22.01.14
✎
12:55
|
я так понимаю ошибка кроется в этом фрагменте?
НовоеЗначениеРуководителя = ПараметрыОбъекта["Руководитель"]; НовоеЗначениеРуководителя = ?(ЗначениеЗаполнено(НовоеЗначениеРуководителя), НовоеЗначениеРуководителя, Справочники.ФизическиеЛица.ПустаяСсылка()); НоваяДолжностьРуководителя = ПараметрыОбъекта.Получить("ДолжностьРуководителя"); НоваяДолжностьРуководителя = ?(ЗначениеЗаполнено(НоваяДолжностьРуководителя), НоваяДолжностьРуководителя, Справочники.ДолжностиОрганизаций.ПустаяСсылка()); |
|||
7
Gossar1C
22.01.14
✎
13:07
|
Ладно. Спасибо за подсказку. Буду разбираться дальше
|
|||
8
МойКодУныл
22.01.14
✎
13:07
|
(6) ПараметрыОбъекта скорее всего неопределенно или имеют не тот тип.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |