![]() |
|
Конвертация данных 2 Исходящие данные | ☑ | ||
---|---|---|---|---|
0
Быдло замкадное
07.10.20
✎
12:53
|
Как передать строку в исходящие данные?!
Есть живой пример? Пишу в ПКО документа: Перед выгрузкой: ВходящиеДанные = Новый Структура; ВходящиеДанные.Вставить("КодБК", "АХАХАХАХА"); ИЛИ: ИсходящиеДанные = Новый Структура; ИсходящиеДанные .Вставить("КодБК", "АХАХАХАХА"); и в формируемом файле нет это строки "АХАХАХАХА" вообще. Каааак сделать то, что только не пробовал уже |
|||
1
fisher
07.10.20
✎
13:06
|
Данные передаются по следующим правилам:
1. ПВД.ИсходящиеДанные -> ПКО.ВходящиеДанные 2. ПКО.ВходящиеДанные -> ПКС.ВходящиеДанные 3. ПКС.ИсходящиеДанные -> ПКО.ВходящиеДанные |
|||
2
fisher
07.10.20
✎
13:07
|
Оно и не должно попадать в файл. Это для передачи между обработчиками при конвертации в источнике.
|
|||
3
fisher
07.10.20
✎
13:10
|
Вообще в типовой ситуации вся конвертация производится в источнике. В файл пишется только результат конвертации - готовый образ объектов-приемника для загрузки.
|
|||
4
Быдло замкадное
07.10.20
✎
13:12
|
(2) "Оно и не должно попадать в файл." ппц а как мне передать произвольную инфу?
В приемнике есть реквизит, которого нет в источнике. Но заполнить надо. Для понимания например: Если в источнике в поле комментарий написано "Васька дурак" то в приемнике надо Реквизит1 = Справочники.Контрагенты.ВаськаДурак; В источнике нет справочника контрагенты, в приемнике нет реквизита Комментарий. Можно реализовать? |
|||
5
Быдло замкадное
07.10.20
✎
13:13
|
вот хочу куда то записать "Васька дурак", а потом уже ПРИ ЗАГРУЗКЕ это анализировать.
ПОтому что при выгрузке я даже не могу написать СПравочники.Контрагенты. Нет такого... |
|||
6
Жан Пердежон
07.10.20
✎
13:15
|
в ПКС "Передавать данные в параметр"
|
|||
7
fisher
07.10.20
✎
13:16
|
(4) С предопределенными вообще просто. ЕМНИП, оно при загрузке хавает текстовые значения для предопределенных. Для непредопределенных можно создать ПКО, которое будет искать нужные по коду.
Т.е. в ПКС для Реквизит1 пишешь в ПередВыгрузкой Если Источник.Комментарий = "Васька дурак" Тогда Значение = "ВаськаДурак"; КонецЕсли; |
|||
8
Быдло замкадное
07.10.20
✎
13:21
|
(7) с Васькой это пример. Мне на самом деле в базе источнике надо искать справочник по реквизиту.
Т.е. Справочники.ВидыНалоговИПлатежейВБюджет.НайтиПоРеквизиту("КодБК", "Васька дурак"); Это уже детали. Я хочу хоть как-то передать текстовую строку, что бы ее анализировать при загрузке можно было. (6) попробовал так, в файле все равно нет "Васька дурак" :( |
|||
9
fisher
07.10.20
✎
13:21
|
Если (4) системный пример и надо кучу разных комментариев конвертить в контрагентов, то можно создать ПКО для контрагентов у которого на входе будет строка и просто назначить это ПКО в ПКС "Комментарий". КД очень гибкая, нужно только один раз разобраться и "вхрустнуть" мозги в ее логику.
|
|||
10
Быдло замкадное
07.10.20
✎
13:22
|
(6) а нет вру, через параметр выгрузилось.. щас буду думать как прочитать этот параметр при загрузке
|
|||
11
fisher
07.10.20
✎
13:24
|
(8) > Я хочу хоть как-то передать текстовую строку, что бы ее анализировать при загрузке можно было.
Я понял, что ты хочешь. Но КД реализует другую логику - конвертация в источнике. Переть супротив - быть ССЗБ. |
|||
12
fisher
07.10.20
✎
13:27
|
(8) > в базе источнике надо искать справочник по реквизиту
Просто создаешь ПКО для этого справочника, где нужный реквизит отмечаешь как поле поиска, на вход - строка, а в ПКС для этого реквизита пишешь Значение=Источник; После этого просто назначаешь это ПКО во всех ПКС где надо и в этих ПКС пишешь Значение=<нужное значение>; В итоге КД будет находить их сама штатно при загрузке плюс это будет переиспользуемое ПКО. |
|||
13
Быдло замкадное
07.10.20
✎
13:28
|
Получилось через параметр, спасибо (6)
после загрузки объекта: Объект.Налог = Справочники.ВидыНалоговИПлатежейВБюджет.НайтиПоРеквизиту("КодБК", ПараметрыОбъекта.Получить("КодБК")); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |