|
Порядок выгрузки объектов: Конвертация данных
| ☑ |
0
borrman
24.04.12
✎
16:28
|
Добрый день!
Есть обмен Розница->УТ (доработанная).
Из розницы в УТ передаются документы Перемещение товаров и, созданный на его основании, Расходный ордер.
После загрузки документа ПТ его табличная часть заполняется сериями (ЗаполнитьПоСериям - функция). Расходный ордер необходимо заполнить по табличной части ПТ.
Все хорошо, но ПТ загружается ПОСЛЕ расходного ордера. И на момент вызова обработчика ПослеЗагрузки у расходного ордера ПТ еще не заполнен и не загружен в базу (есть только ссылка на него и все). Как обойти эту ситуацию?
Спасибо!
|
|
1
Нуф-Нуф
24.04.12
✎
16:28
|
есть реквизит порядок выгрузки
|
|
2
borrman
24.04.12
✎
16:31
|
Это в ПВД?
Порядок?
У ПТ - 100, у РасходныйОрдерНаТовары - 850.
|
|
3
fisher
24.04.12
✎
16:43
|
(0) Конвертация вся при выгрузке делается в источнике. Поэтому если ты чего-то там уже при загрузке в приемнике делаешь, то обратно никак. Либо все в источнике конвертируй, либо уже сам всё ручками при загрузке.
Если серии ну никак в источнике не сопоставить (нету физически нужной инфы), тогда можно еще в два приема извратиться - сначала конвертить ордера без серий, а при загрузке ПТ находить их и дозаполнять.
|
|
4
borrman
24.04.12
✎
16:48
|
(3) Ну все верно. Вот я при загрузке в обработчике ПослеЗагрузки хочу обработать документ ПТ.
При повторной выгрузке все отлично получается.
|
|
5
fisher
24.04.12
✎
17:13
|
Попробуй передвинуть ПТ в списке ПКО выше ордера (при этом автоматом приоритет поменяется).
|
|
6
borrman
24.04.12
✎
17:29
|
(5) попробовал - без изменений. кроме того в (2) я писал порядок правил :(
|
|
7
borrman
24.04.12
✎
17:30
|
Вот еще - возможно очень важно: это выгрузка только измененных объектов. Что-то мне кажется, что тут этот порядок не работает. (обработка ОбменДаннымиXML).
|
|
8
Vovan1975
24.04.12
✎
17:45
|
если у расходного ордера имеется реквизит "Документ-Основание" то выгружай не перемещения а расходные ордера а они через этот реквизит вытащат документ перемещение.
|
|
9
Vovan1975
24.04.12
✎
17:49
|
другой вариант - в ПВД в событии "после выгрузки" перемещения принудительно (выгрузить по правилу)выгружай расходные ордера по даному перемещению.
другой вариант - создавать расходные ордера "на месте" - в базе-приемнике.
|
|
10
fisher
24.04.12
✎
17:50
|
(6) Я про ПКО, а не про ПВД
|
|
11
Stim
24.04.12
✎
17:52
|
сделать повторную загрузку, когда ПТ уже загружен - предлагали?
|
|
12
Vovan1975
24.04.12
✎
17:53
|
(11) предлагали - это вариант "ПВД в событии "после выгрузки" перемещения принудительно (выгрузить по правилу)выгружай расходные ордера по даному перемещению."
|
|
13
borrman
24.04.12
✎
20:37
|
Спасибо.
Тема закрыта.
Использовал совет - (9), но ошибка была просто в другом - использование запроса к базе с незаписанным объектом.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший