DiegoLidabo
10.05.15, 11:48
Здравствуйте!
Конфигурация УТП.
Конвертация данных, редакция 2.1 (2.1.8.2)
Необходимо выгрузить/загрузить данные в одинаковые ИБ с условием:
- В исходной много складов (1 Склад, 2 Склад, ... ) - В конечной один склад ( Склад А )
Если во всех документах - тогда ПКО Склады - тупо выгружаем только нужный склад
Если один/два документа - тогда ПКО Документа (Перед/ПослеВыгрузки или ПередЗагрузкой) изменить склад на нужный
DiegoLidabo
12.05.15, 11:17
Наверное не достаточно ясно изложил задачу.
- В исходной много складов (1 Склад, 2 Склад, ... ) - В конечной один склад ( Склад А ) - Это значит что все/ВСЁ по складам в исходной должно пройти по одному складу в конечной.
В конечной есть все склады в справочнике (Склад1,Склад2....СкладА) или только один СкладА ?
DiegoLidabo
12.05.15, 12:07
Цитата(sava1 @ 12.05.15, 11:44) необходимо зарегистрироваться для просмотра ссылки
В конечной есть все склады в справочнике (Склад1,Склад2....СкладА) или только один СкладА ?
Только "Склад А". (Нет ни одного совпадения по названию/коду)
Проще всего для спр.склады в обработчике ПослеВыгрузки прописать типа:
Объект.Код = // код склада в приемнике
синхронизацию сделать по коду и установить Не создавать новых и т.д.
или создать такой-же склад в источнике и ПриВыгрузке прописать его
korol1091
12.05.15, 12:22
ПКО, процедура ПослеЗагрузки, пишем:
НашСклад = Справочники.Склады.НайтиПоКоду("123");
Объект.Склад = НашСклад;
НашСклад можно брать из константы, засунуть в форму обработки или тянуть по коду из справочника
Цитата(korol1091 @ 12.05.15, 13:22) необходимо зарегистрироваться для просмотра ссылки
Объект.Склад = НашСклад;
Охренительно, но это надо будет писАть в каждом документе.
DiegoLidabo
12.05.15, 12:53
korol1091Писать ПКО только для тех объектов где есть реквизит склад?
sava1Цитата(sava1 @ 12.05.15, 12:34) необходимо зарегистрироваться для просмотра ссылки
Охренительно, но это надо будет писАть в каждом документе.
А как по другому? Подскажите, плз.
В правиле конвертации объектов ,предположительно "МестаХранения", перед выгрузкой пишем : Значение = "Общий склад";
У этого правила оставляем свойство Наименование ( по нему устанавливаем поиск объекта ). В самом свойстве "Наименования", перед выгрузкой пишем следующее : Значение = Источник;
Объясню логику :
Мы в правило "МестаХранения" подменяем источник, делая его просто строкой, и присваевыем эту строку Наименованию, после чего делаем поиск объекта в базе приемнике, только по наименованию.
DiegoLidabo
12.05.15, 16:09
Цитата(TipsyKID @ 12.05.15, 13:28) необходимо зарегистрироваться для просмотра ссылки
В правиле конвертации объектов ,предположительно "МестаХранения", перед выгрузкой пишем : Значение = "Общий склад";
У этого правила оставляем свойство Наименование ( по нему устанавливаем поиск объекта ). В самом свойстве "Наименования", перед выгрузкой пишем следующее : Значение = Источник;
Объясню логику :
Мы в правило "МестаХранения" подменяем источник, делая его просто строкой, и присваевыем эту строку Наименованию, после чего делаем поиск объекта в базе приемнике, только по наименованию.
Спасибо! логику понял... Но как это правило будет работать при выгрузке/загрузке документов у которых есть реквизит склад?
В ХМЛ файле везде, где есть реквизит склад будет стоять наименование единственного склада.
При загрузке будет искать склад по наименованию и подставлять СкладА
DiegoLidabo
12.05.15, 17:25
sava1
Спасибо!
DiegoLidabo
13.05.15, 8:20
TipsyKID, sava1
В XML моего склада, "Склад А", Нет. В приемнике V8Exchan82.epf отрабатывает без ошибок, но в документах реквизит склад имеет занчение "<>". Пожалуйста подскажите "ЧТО НЕ ТАК"?
Как заполнены параметры в пко Склад ? (синхронизация, поиск, ....)
DiegoLidabo
13.05.15, 8:49
ПКО "Склады":
Объекты ИБ источника - СправочникСсылка.Склады,
Объекты ИБ приемника - СправочникСсылка.Склады;
Доп настройки - крыжиков нет;
Обработчик событий - Перед выгрузкой: "Значение = Источник;"
ПКС - Поиск по "Наименование", в основной Перед выгрузкой: "Значение = Источник;"
Поиск по гуид должен быть снят
вариант 1.
наименование Поиск - птиса
Значение = "Имя склада" в приемнике
Вариант2
код поиск - птиса
Значение = код склада в приемнике
DiegoLidabo
13.05.15, 8:58
Это в ПКС?
Значение = "СкладА";
Да. ПКС Наименование или Код
DiegoLidabo
13.05.15, 9:12
ок, переделываю...
DiegoLidabo
13.05.15, 19:21
К ожалению выполненные действия результата не дали. Попробовал использовать конвертацию значений, но и это привело к тому, что реквизит склад в документах был не заполнен. Что делать дальше не представляю.
DiegoLidabo
14.05.15, 10:51
Решение:
ПКС "Наименование" событие "Перед выгрузкой"
- Значение = "Склад А";
- установить крыжик искать по полю "Наименование"
- убрать крыжик "Искать" по коду
ПКО "Склады"
- убрать крыжик "Искать по УИДу"
- Установить крыжик "Не замещать сущетвующие объекты..."
Спасибо АБ-Центр, Днепропетровск
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.