Передача параметров на приёмник

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. Rabot 91 27.12.13 12:19 Сейчас в теме
Здравствуйте!
При интерактивной(ручной) выгрузке передать параметр можно так:
1. В карточке КД на вкладке "Параметры" добавляем необходимые параметры и ставим галку "Передавать при выгрузке"(остальные галки сами ставятся);
2. В обработчике "ПослеЗагрузкиПравилОбмена" добавляем код "Параметры.НомерПринятого = 555;".
И всё, данный параметр доступен везде, и на стороне приёмника и на стороне источника. Замечательно.

Но! При НЕ интерактивной выгрузке, а именно, программным способом запускаем обработку "УниверсальныйОбменДаннымиXML", вызываем по очереди необходимые экспортные процедуры данной обработки(в которой есть и "ЗагрузкаПравилОбмена") и выгружаем данные. В файле с выгруженными данными параметр присутствует, но всегда ПУСТОЙ.

Думал обработчик "ПослеЗагрузкиПравилОбмена" не срабатывает, перенёс заполнение параметра в обработчик "ПередВыгрузкойДанных". Так ни при ручной, ни при программной выгрузке параметр не заполняется.

Попробовал заполнение параметра через "ПередатьОдинПараметрВПриемник("НомерПринятого", 555);" в обраотчике "ПередВыгрузкойДанных", но в этом случае происходит дублирование параметров, один из них доступен на приёмнике, другой(пустой) - на источнике.


Вопрос: как правильно передать параметр на приёмник, но чтобы он был доступен и на источнике?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. ZergKRSK 130 19.02.14 05:57 Сейчас в теме
(1) Rabot, подозреваю что при программном вызове выгрузки надо самому вызывать обработчик "ПослеЗагрузкиПравилОбмена". По этому параметр есть, но не заполнен.
6. Rabot 91 25.02.14 20:32 Сейчас в теме
(4) ZergKRSK, не подскажете, как можно вызвать обработчик программно? Что-то не сообразить на ночь глядя.
2. DimaP 64 13.01.14 16:39 Сейчас в теме
Автор, решил проблему?
Если да, то как?
3. Rabot 91 18.02.14 14:04 Сейчас в теме
(2) DimaP, к сожалению, всё ещё актуально.
5. Meson 19.02.14 13:10 Сейчас в теме
(0) Я как-то сталкивался с проблемой передачи параметров в приемник.
Выкрутился следующим образом: в обработчик конвертации "Перед выгрузкой данных" прописал следующий код (для своего параметра "ПроводитьПриЗагрузке"):
СтрокаТЗ = ТаблицаНастройкиПараметров.Найти("ПроводитьПриЗагрузке", "Имя");
Если СтрокаТЗ <> Неопределено Тогда
СтрокаТЗ.Значение = Истина;
КонецЕсли;
7. Rabot 91 25.03.14 13:41 Сейчас в теме
УРА! Разобрался)

Внимательно ознакомившись с алгоритмом интерактивной выгрузки, выяснил, что заполнение параметров производится не в процедуре "ЗагрузкаПравилОбмена()", а в процедуре "ИнициализироватьПервоначальныеЗначенияПараметров()". Следовательно, при программной выгрузки необходимо вызывать экспортную процедуру заполнения параметров.

Обработка.ЗагрузитьПравилаОбмена();
Обработка.ИнициализироватьПервоначальныеЗначенияПараметров();
Обработка.ВыполнитьВыгрузку();
KirinaAS; andrey_462; +2 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот