![]() |
|
Конвертация. ПриВыгрузке свое значение | ☑ | ||
---|---|---|---|---|
0
Симпатяга
19.01.19
✎
16:19
|
Доброго времени суток.
Осваиваю Конвертацию, прошу сильно не пинать) Вопрос такой. Как заполнить значение Свойства при выгрузке, которого нет в источнике, значением, полученным в том же Источнике. Например. В источнике справочник КонтактноеЛицо. У него есть реквизит с типом СправочникСсылка. В этом справочнике нужное мне значение. Строка например А в источнике есть тот же справочник КонтактноеЛицо, но у него значение нужного мне свойства вынесли в реквизит с типом строка. Нужно Приемник.Свойство = Источник.Реквизит.Свойство |
|||
1
Симпатяга
19.01.19
✎
16:20
|
в описании обработчиков ПриВыгрузке следующий пример
ИнформацияОПользователе = СоздатьУзел("ИнформацияОПользователе"); УстановитьАтрибут(ИнформацияОПользователе, "АутентификацияОС", Источник.АутентификацияОС); УстановитьАтрибут(ИнформацияОПользователе, "АутентификацияСтандартная", Источник.АутентификацияСтандартная); УстановитьАтрибут(ИнформацияОПользователе, "ПоказыватьВСпискеВыбора", Источник.ПоказыватьВСпискеВыбора); УстановитьАтрибут(ИнформацияОПользователе, "ПользовательОС", Источник.ПользовательОС); УстановитьАтрибут(ИнформацияОПользователе, "ПолноеИмя", Источник.ПолноеИмя); ЧислоРолей = 1; Для Каждого Роль Из Источник.Роли Цикл УстановитьАтрибут(ИнформацияОПользователе, "Роль"+ЧислоРолей, Роль.Имя); Сообщить(Роль.Имя); ЧислоРолей = ЧислоРолей + 1; КонецЦикла; ДобавитьПодчиненный(Приемник, ИнформацияОПользователе); |
|||
2
Симпатяга
19.01.19
✎
16:21
|
пробовал так
ИнформацияОПользователе = СоздатьУзел("Фамилия"); УстановитьАтрибут(ИнформацияОПользователе, "Фамилия", Источник.КонтактноеЛицо.Фамилия); ДобавитьПодчиненный(Приемник, ИнформацияОПользователе); не заработало |
|||
3
SleepyHead
гуру
19.01.19
✎
17:01
|
В источнике - ничего. В правилах конвертации свойства в приемнике -
Значение = .... (тут выражение); |
|||
4
Симпатяга
19.01.19
✎
17:02
|
(3) да. пока ждал ответа, попробовал сам этот вариант)
все заработало. спасибо |
|||
5
Симпатяга
21.01.19
✎
16:26
|
а еще вопрос по конвертации.
Если на стороне Источника есть объект с реквизитом, заполненным предопределенным справочником. По коду этого справочника, мне нужно подставить значение реквизита Приемника, но тип этого справочника другой. и он не будет переносится. Если Источник.ВидДокумента = Справочники.ВидыДокументов.Паспорт тогда Приемник.ВидДокументаВПриемнике = Спраовочники.ВидыДокументовВПриемнике.НайтиПоКоду("1"); ИначеЕсли Источник.ВидДокумента = Справочники.ВидыДокументов.ПаспортИностр тогда Приемник.ВидДокументаВПриемнике = Спраовочники.ВидыДокументовВПриемнике.НайтиПоКоду("2"); . . . КонецЕсли |
|||
6
Симпатяга
21.01.19
✎
16:28
|
(5) При ПКС ПриВыгрузке ВидДокументаВПриемнике я могу задать условие, но чем заполнять Значение???
Строкой "Справочники.ВидыДокументовВПриемнике.НайтиПоКоду("1")"??? Или это ПослеЗагрузки в ПКО? |
|||
7
Йохохо
21.01.19
✎
16:38
|
(6) можно передать код в ПКО ВидыДокументовВПриемнике например
Значение = Новый Структура; Если Источник.ВидДокумента = Справочники.ВидыДокументов.Паспорт тогда Значение.Вставить("Код", "1"); ИначеЕсли Источник.ВидДокумента = Справочники.ВидыДокументов.ПаспортИностр тогда Значение.Вставить("Код", "2"); |
|||
8
Симпатяга
21.01.19
✎
16:41
|
(7) а как инициализировать заполнение по этому Коду при загрузке в Приемник
|
|||
9
Симпатяга
21.01.19
✎
16:42
|
(8) + (7) я так понимаю это ПриВыгрузке в ПКО. а дальше что делать?
|
|||
10
Симпатяга
21.01.19
✎
16:43
|
(9) это не читать
|
|||
11
Симпатяга
21.01.19
✎
16:43
|
(8) разве можно использовать Значение в ПКО?
|
|||
12
Йохохо
21.01.19
✎
16:45
|
(8) ничего не надо, типовой метод сработает. Инициализируешь в ПКО Это Группа Наименование ПометкаУдаления хоть как то, Код придет при обработке Значение + галка ПолеПоиска
(11) в ПКС значение структура будет передано в пко |
|||
13
Симпатяга
21.01.19
✎
16:50
|
(12) объясните, в каких обработчиках.
|
|||
14
Йохохо
21.01.19
✎
16:53
|
(13) в ПКС Перед или При
|
|||
15
Симпатяга
21.01.19
✎
17:41
|
(14) Сделал ПриВыгрузке в ПКС
Значение = Новый Структура; Если Источник.ДокументВид = Справочники.ДокументыУдостоверяющиеЛичность.ИМНС21 тогда Значение.Вставить("Наименование", "Паспорт гражданина РФ"); ИначеЕсли Источник.ДокументВид = Справочники.ДокументыУдостоверяющиеЛичность.ИМНС91 тогда Значение.Вставить("Наименование", "Иные документы, выдаваемые органами МВД"); ИначеЕсли Источник.ДокументВид = Справочники.ДокументыУдостоверяющиеЛичность.ИМНС10 тогда Значение.Вставить("Наименование", "Иностранный паспорт"); КонецЕсли Не взлетело. в Источнике по коду искать нельзя. Только по наименованию. В файл выгрузки ничего не попало |
|||
16
Симпатяга
21.01.19
✎
17:42
|
(15) реквизиты все правильно написаны. проверил 10 раз уже
|
|||
17
Симпатяга
21.01.19
✎
17:45
|
||||
18
hhhh
21.01.19
✎
17:46
|
(15) всё там можно
|
|||
19
Симпатяга
21.01.19
✎
17:46
|
(18) ?
|
|||
20
Симпатяга
21.01.19
✎
17:50
|
(18) в справочнике кода нет в стандартных реквизитах
|
|||
21
Йохохо
21.01.19
✎
17:58
|
в (15) должно работать вроде, проверь ПКО для виды документов, мб надо "не запоминать выгруженные" поставить
|
|||
22
Симпатяга
21.01.19
✎
18:01
|
(21) стоит галка
|
|||
23
Симпатяга
21.01.19
✎
18:05
|
(21) я в ПКО вообще ничего не делал.
Только в ПКС. для свойства ВидДокумента https://yadi.sk/i/gB44HuFLRn58bg |
|||
24
Вафель
21.01.19
✎
18:31
|
если что-то можно кодом заполнить в уже загруженных, то лучше кодом (ПередЗагрузкой).
меньше файл выгрузки будет |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |