Как передать параметры Конвертации из источника в приемник так, чтобы обработать на стороне Приемника.

1. beard1 19.12.16 07:58 Сейчас в теме
КД 2.1
Источник - управляемое приложение
Приемник - управляемое приложение

Для Конвертации на вкладке "Параметры" описываю параметр "ПокупателиПоставщики", устанавливаю флаг "Передавать при выгрузке"
Для Конвертации в обработчике "Перед выгрузкой данных" заполняю ТЗ результатами запроса
 Параметры.ПокупателиПоставщики = Новый ТаблицаЗначений;
Параметры.ПокупателиПоставщики = Запрос.Выполнить().Выгрузить();

Хотелось бы обработать эту таблицу на стороне Приемника в обработчике "После загрузки", но получаю ошибку

Смотрю файл выгрузки, а там
<ЗначениеПараметра Имя="ПокупателиПоставщики" Тип="">
	<Пусто/>
</ЗначениеПараметра>


Что не так делаю?

Хотелка в том, чтобы заполнить ТЗ ПокупателиПоставщики по данным Источника, а на стороне Приемника проставить реквизиты Объекта по данным ТЗ.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. beard1 19.12.16 15:14 Сейчас в теме
(2) Спасибо за подсказку! Сам на форуме не нашел, оч. полезно.

Но это немного не то...
Хотелка в том, чтобы передать в Приемник параметры Конвертации, а не ПКО или ПКС




4. alexlights 19.12.16 15:33 Сейчас в теме
(3) А если так?
Параметры.ПокупателиПоставщики = ЗначениеВСтрокуВнутр(Запрос.Выполнить().Выгрузить());
ko-alla55; +1 Ответить
5. beard1 19.12.16 19:07 Сейчас в теме
Не-а, пусто в параметрах. Попробовал и в Хранилище значения завернуть и ВСтрокуВнутр и проч...
Не передает (

Для чистоты эксперимента создал тестовую Конвертацию, добавил там Параметр (Строка) со всеми "крыжиками". Присвоил ему значение в обработчике "Перед выгрузкой данных". Выгрузил. Смотрю файл - пусто, т.е. нет значения Параметра в файле.

Вычитал, на просторах и-нета, что Параметр должен быть указан в таблице настройки параметров.
Прописал значение параметра интерактивно - работает! Есть параметр и его значение в файле.

Конечно, можно его принудительно прописать программно, но это надо КД смотреть изнутри, а пока времени нет. Скорее всего должно сработать.

ИМХО, в обработчике "Перед выгрузкой данных" формируем и заполняем ТЗ, заворачиваем ТЗ в Хранилище (или сериализуем, надо тестить), пишем значение в таблицу "ТаблицаНастройкиПараметров" (для деталей надо КД смотреть в конфигураторе), а на стороне Приемника в обработчике "ПередЗагрузкойДанных" получаем ТЗ из хранилища, возвращаем обратно в параметр и пользуем через Параметры.ххх

Как то так должно сработать.
6. dmitrit 22 23.12.16 12:48 Сейчас в теме
Ссылку на Спр.Контрагенты передал так:
в таблице параметров конфигурации указал Имя, Описание, Тип значения и поставил флаги "ПриЗагрузке" и "Передавать при выгрузке"
В результате в файле данных увидел:
<ЗначениеПараметра Имя="ПоставщикЛариса" Тип="Контрагенты">
<Значение>976396a8-75ae-4b92-8886-d55d98ad1395</Значение>
</ЗначениеПараметра>

Дело в том что в конвертации нельзя передавать таблицу в виде параметра. Тип параметра ограничен значениями, перечисленными в списке типов (когда "Тип значения" заполняется"). Чтобы передать таблицу ее надо преобразовать в строку. А "Перед обработкой" вынуть из строки. Я таким макаром передавал тз в ПКО для документа. Работает. Но я пробовал небольшую табличку кидать. Просто чтоб посмотреть работу механизма. Если у вас тз большая, то преобразование может дать очень длинную строку. Тогда придется изголяться.... Но методика должна по моему быть именно такая.
7. user1031030 03.11.22 03:01 Сейчас в теме
Для параметра, у которого установили галку "ПередаватьПриВыгрузке", в обработчике "Конвертация_ПередВыгрузкойДанных" используйте процедуру:
"УстановитьЗначениеПараметраВТаблице("Имя_Твоего_Параметра", Твое_Значение);"
8. userzak 24.01.23 11:08 Сейчас в теме
(7)
УстановитьЗначениеПараметраВТаблице("Имя_Твоего_Параметра", Твое_Значение);

Спасибо Бро!
Оставьте свое сообщение

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