Передача параметра из источника в приемник #765682


#0 by ArtemSV
Суть задачи. Нужно допилить типовые правила синхронизации между Бухгалтерией 3.0 и Документооборотом 2.0, чтобы передавать программно установленный параметр из источника в приемник. Использую подход из . В событие ПередВыгрузкойДанных использую процедуру ПередатьОдинПараметрВПриемник  при помощи, которой передаю параметр. В событие ПослеЗагрузкиПараметров собираюсь анализировать этот параметр. Однако типовая обработка «КонвертацияОбъектовИнформационныхБаз», через которую происходит обмен, читает файл выгрузки последовательно. И тэг «ЗначениеПараметров» в файле выгрузке должен располагаться после тэга «ИнформацияОТипахДанных». В моем же случае он располагается до "ИнформацияОТипахДанных" и загрузка в источники вываливается по ошибке «Ошибка формата сообщения обмена».  Подскажите, как обойти эту проблему и передать  корректно этот параметр.
#1 by Ma3eIIa
Сударь значит вы накосячили. там же написано. что ваш параметр будет доступен после обработчика ПердЗагрузкойДанных Сохраняйте его в файл и дергайте его где вам надо
#2 by Ma3eIIa
3. Передача глобальных параметров при конвертации 7.7 ==> 8 без правки штатных модулей что то подобное нужно и вам
#3 by ArtemSV
Проблема в том, что файл который создает КонвертацияОбъектовИнформационныхБаз кривой, и она не может его корректно прочитать. Обмен между двумя 8-ками
#4 by Ma3eIIa
он кривым не может быть. у всех работает. у тебя кривой.
#5 by ArtemSV
Не знаю как у всех, а у меня в правиле выгрузке указано: <ПослеЗагрузкиПараметров> Попытка ДопРеквизитТипДокумента=ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ПолучитьСсылку(Новый УникальныйИдентификатор(Параметры.УИДДопРеквизитаТипДокумента)); Если Найти(Строка(ДопРеквизитТипДокумента),"Объект не найден") Тогда Параметры.Вставить("ДопРеквизитТипДокумента",Неопределено); ТекстСообщения = НСтр("ru = 'Ошибка при обновлении значений доп. реквизита ""Тип документа"":'") +" не найден дополнительный реквизит с УИД " + Параметры.УИДДопРеквизитаТипДокумента; ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными с 1С:Документооборотом'"), УровеньЖурналаРегистрации.Ошибка,,,ТекстСообщения); Иначе Параметры.Вставить("ДопРеквизитТипДокумента",ДопРеквизитТипДокумента); КонецЕсли; Исключение Параметры.Вставить("ДопРеквизитТипДокумента",Неопределено); ТекстСообщения = НСтр("ru = 'Ошибка при обновлении значений доп. реквизита ""Тип документа"":'") + " " + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными с 1С:Документооборотом'"), УровеньЖурналаРегистрации.Ошибка,,,ТекстСообщения); КонецПопытки; Попытка ДопРеквизитФормаДокумента=ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ПолучитьСсылку(Новый УникальныйИдентификатор(Параметры.УИДДопРеквизитаФормаДокумента)); Если Найти(Строка(ДопРеквизитФормаДокумента),"Объект не найден") Тогда Параметры.Вставить("ДопРеквизитФормаДокумента",Неопределено); ТекстСообщения = НСтр("ru = 'Ошибка при обновлении значений доп. реквизита ""Форма документа"":'") +" не найден дополнительный реквизит с УИД " + Параметры.УИДДопРеквизитаФормаДокумента; ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными с 1С:Документооборотом'"), УровеньЖурналаРегистрации.Ошибка,,,ТекстСообщения); Иначе Параметры.Вставить("ДопРеквизитФормаДокумента",ДопРеквизитФормаДокумента); КонецЕсли; Исключение Параметры.Вставить("ДопРеквизитФормаДокумента",Неопределено); ТекстСообщения = НСтр("ru = 'Ошибка при обновлении значений доп. реквизита ""Форма документа"":'") + " " + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными с 1С:Документооборотом'"), УровеньЖурналаРегистрации.Ошибка,,,ТекстСообщения); КонецПопытки; А в файле с данными:
#6 by ArtemSV
проблема понятна?
#7 by ArtemSV
Реально нужна помощь знатоков конвертации и типовых обменов
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С