|
КД. Подмена ссылки при выгрузке документа. | ☑ | ||
---|---|---|---|---|
0
Sиlьver
26.03.15
✎
09:42
|
Коллеги, подскажите хороший вариант решения.
При выгрузке документа из УТ в БП нужно в случае, если контрагент - это физ. лицо, подменять ссылку Контрагента на значение Розничный покупатель. Я сделал проверку в ПКС: если физлицо, тогда свойство не выгружать. Получается при выгрузке Контрагент пустой. А в ПКО ПослеЗагрузки я заполняю контрагента значением Розничный покупатель, если значение не заполнено. Тут минус в том, что при повторной выгрузке значение может не перезаполниться по моему правилу, т.к. реквизит уже будет заполнен ранее. |
|||
1
hawksib
26.03.15
✎
09:46
|
для свойства поставить "получать значения из входящих данных" и в процедуре ПередВыгрузкой вставить проверку, если физЛицо тогда Значение = Розничный покупатель, если контрагент тогда Значение = Контрагент.
|
|||
2
Alex S D
26.03.15
✎
09:48
|
(1) а зачем получать из входящих данных?
|
|||
3
Sиlьver
26.03.15
✎
09:49
|
(1) А если у меня в базе-источники нет такой ссылки - Розничный покупатель? Нужно как-то через ИсходящиеДанные разруливать?
|
|||
4
hawksib
26.03.15
✎
09:49
|
(3) а в источнике какая ссылка у тебя? что выгружаться должно?
|
|||
5
hawksib
26.03.15
✎
09:50
|
(2) для порядку
|
|||
6
Alex S D
26.03.15
✎
09:50
|
Передавай через ПараметрыОбъекта признак розничного покупателя
|
|||
7
Alex S D
26.03.15
✎
09:50
|
(5) какого еще порядку?)) это лишнее
|
|||
8
Sиlьver
26.03.15
✎
09:53
|
(4) В источнике - док. Приходный кассовый ордер. В самом свойстве Контрагент: Вася, Петя, МарьИванна...
|
|||
9
hawksib
26.03.15
✎
09:56
|
(8) ты хочешь контрагента в физлицо что ли превратить?
|
|||
10
hawksib
26.03.15
✎
09:58
|
у МарьиИванны тип какой?
|
|||
11
Sиlьver
26.03.15
✎
09:59
|
(9) нет. В УТ есть куча контрагентов с типом: физ.лицо. Вот их мне нужно грузить в БП в виде одного контрагента Розничный покупатель. А если контрагент - юрлицо, то надо грузить как есть.
|
|||
12
Sиlьver
26.03.15
✎
09:59
|
(10) речь идет только о Контрагентах
|
|||
13
hawksib
26.03.15
✎
10:02
|
(11) дак это проще, В УТ создай розничного покупателя и если контрагент - это физлицо, тогда значение = ссылка на розничного покупателя
|
|||
14
Sиlьver
26.03.15
✎
10:03
|
(6) Можно чуть подробней, как это делается? и можно ли будет выгружать Контрагента как есть, если это юрлицо?
|
|||
15
Sиlьver
26.03.15
✎
10:04
|
(13) Придется наверно. Не хотелось бы делать поиск по наименованию в правилах, т.к. в случае задвойки в УТ, это же случится и в БП.
|
|||
16
Godofsin
26.03.15
✎
10:07
|
(13) Зачем лишние элементы?
(15) делай через (6) |
|||
17
Sиlьver
26.03.15
✎
10:09
|
(16) Можно чуть подробней, как это делается? и можно ли будет выгружать Контрагента как есть, если это юрлицо?
|
|||
18
Alex S D
26.03.15
✎
10:15
|
Создаешь ПКС с галкой "ПередаватьДанныеВПараметр"
ПередВыгрузкой: Если физлицо Тогда Значение = Код, наименование или уид.. Иначе Отказ = Истина; КонецЕсли; В ПКО после загрузки: Если ПараметрыОбъекта <> Неопределено Тогда ТвойПризнакПоиска = ПараметрыОбъекта["НаименованиеПараметра"]; .... |
|||
19
Sиlьver
26.03.15
✎
10:22
|
А если это не физлицо, то получается не выгрузится реквизит. Тогда отдельное ПКО сделать?
|
|||
20
Alex S D
26.03.15
✎
10:27
|
ну ты же его будешь перезаписывать только если это физлицо. Стандартное правило же остается
|
|||
21
Sиlьver
26.03.15
✎
10:29
|
Т.е. мое ПКС будет идти после уже существующего. Сначала контрагент заполнится по типовым правилам, а потом, если нужно затрется моим значением. Я правильно понял?
Если да, то получится, что все лишние контрагенты будут записываться в базу БП. |
|||
22
Godofsin
26.03.15
✎
10:30
|
(19) Ты не понял смысла. ПКС для контрагента оставляй как есть, ничего не меняя. Добавляешь параметр, в нем в при выгрузке анализируешь , кто там у тебя и вставляешь признак в параметр. В после загрузки ПКО читаешь параметр и если там признак физлица присваиваешь котрагенту розничного покупателя.
|
|||
23
Godofsin
26.03.15
✎
10:31
|
(21) Ну тогда в ПКС напиши чонибудь типа Если физЛицо то Значение ПустаяССылка
|
|||
24
Alex S D
26.03.15
✎
10:35
|
(21) в ПКС контрагента пропиши, если физлицо Тогда Отказ = Истина
|
|||
25
Sиlьver
26.03.15
✎
11:14
|
Спасибо, други! Все работает. Встрял правда немного на том, что ПараметрыОбъекта это соответствие и ПараметрыОбъекта["НаименованиеПараметра"] надо поправить на ПараметрыОбъекта.Получить("НаименованиеПараметра")
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |