Версия для печати темы (https://pro1c.org.ua/index.php?s=d2e3fabe98afa3cd3083aa9ac5b3e36d&showtopic=23197)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Конфигурация "1С:Конвертация данных" _ Исходная много складов - Конечная один склад

Автор: DiegoLidabo 10.05.15, 11:48

Здравствуйте!
Конфигурация УТП.
Конвертация данных, редакция 2.1 (2.1.8.2)
Необходимо выгрузить/загрузить данные в одинаковые ИБ с условием:
- В исходной много складов (1 Склад, 2 Склад, ... ) - В конечной один склад ( Склад А )

Автор: sava1 12.05.15, 7:49

Если во всех документах - тогда ПКО Склады - тупо выгружаем только нужный склад
Если один/два документа - тогда ПКО Документа (Перед/ПослеВыгрузки или ПередЗагрузкой) изменить склад на нужный

Автор: DiegoLidabo 12.05.15, 11:17

Наверное не достаточно ясно изложил задачу.
- В исходной много складов (1 Склад, 2 Склад, ... ) - В конечной один склад ( Склад А ) - Это значит что все/ВСЁ по складам в исходной должно пройти по одному складу в конечной.

Автор: sava1 12.05.15, 11:44

В конечной есть все склады в справочнике (Склад1,Склад2....СкладА) или только один СкладА ?

Автор: DiegoLidabo 12.05.15, 12:07

Цитата(sava1 @ 12.05.15, 11:44) *
В конечной есть все склады в справочнике (Склад1,Склад2....СкладА) или только один СкладА ?


Только "Склад А". (Нет ни одного совпадения по названию/коду)

Автор: sava1 12.05.15, 12:19

Проще всего для спр.склады в обработчике ПослеВыгрузки прописать типа:
Объект.Код = // код склада в приемнике

синхронизацию сделать по коду и установить Не создавать новых и т.д.

или создать такой-же склад в источнике и ПриВыгрузке прописать его

Автор: korol1091 12.05.15, 12:22

ПКО, процедура ПослеЗагрузки, пишем:

НашСклад = Справочники.Склады.НайтиПоКоду("123");
Объект.Склад  = НашСклад;



НашСклад можно брать из константы, засунуть в форму обработки или тянуть по коду из справочника

Автор: sava1 12.05.15, 12:34

Цитата(korol1091 @ 12.05.15, 13:22) *
Объект.Склад  = НашСклад;

Охренительно, но это надо будет писАть в каждом документе.

Автор: DiegoLidabo 12.05.15, 12:53

korol1091

Писать ПКО только для тех объектов где есть реквизит склад?

sava1

Цитата(sava1 @ 12.05.15, 12:34) *
Охренительно, но это надо будет писАть в каждом документе.


А как по другому? Подскажите, плз.

Автор: TipsyKID 12.05.15, 13:28

В правиле конвертации объектов ,предположительно "МестаХранения", перед выгрузкой пишем : Значение = "Общий склад";
У этого правила оставляем свойство Наименование ( по нему устанавливаем поиск объекта ). В самом свойстве "Наименования", перед выгрузкой пишем следующее : Значение = Источник;

Объясню логику :
Мы в правило "МестаХранения" подменяем источник, делая его просто строкой, и присваевыем эту строку Наименованию, после чего делаем поиск объекта в базе приемнике, только по наименованию.

Автор: DiegoLidabo 12.05.15, 16:09

Цитата(TipsyKID @ 12.05.15, 13:28) *
В правиле конвертации объектов ,предположительно "МестаХранения", перед выгрузкой пишем : Значение = "Общий склад";
У этого правила оставляем свойство Наименование ( по нему устанавливаем поиск объекта ). В самом свойстве "Наименования", перед выгрузкой пишем следующее : Значение = Источник;

Объясню логику :
Мы в правило "МестаХранения" подменяем источник, делая его просто строкой, и присваевыем эту строку Наименованию, после чего делаем поиск объекта в базе приемнике, только по наименованию.



Спасибо! логику понял... Но как это правило будет работать при выгрузке/загрузке документов у которых есть реквизит склад?

Автор: sava1 12.05.15, 17:18

В ХМЛ файле везде, где есть реквизит склад будет стоять наименование единственного склада.
При загрузке будет искать склад по наименованию и подставлять СкладА

Автор: DiegoLidabo 12.05.15, 17:25

sava1
Спасибо!

Автор: DiegoLidabo 13.05.15, 8:20

TipsyKID, sava1
В XML моего склада, "Склад А", Нет. В приемнике V8Exchan82.epf отрабатывает без ошибок, но в документах реквизит склад имеет занчение "<>". Пожалуйста подскажите "ЧТО НЕ ТАК"?

Автор: sava1 13.05.15, 8:33

Как заполнены параметры в пко Склад ? (синхронизация, поиск, ....)

Автор: DiegoLidabo 13.05.15, 8:49

ПКО "Склады":
Объекты ИБ источника - СправочникСсылка.Склады,
Объекты ИБ приемника - СправочникСсылка.Склады;

Доп настройки - крыжиков нет;

Обработчик событий - Перед выгрузкой: "Значение = Источник;"

ПКС - Поиск по "Наименование", в основной Перед выгрузкой: "Значение = Источник;"





Автор: sava1 13.05.15, 8:55

Поиск по гуид должен быть снят

вариант 1.
наименование Поиск - птиса
Значение = "Имя склада" в приемнике
Вариант2
код поиск - птиса
Значение = код склада в приемнике

Автор: DiegoLidabo 13.05.15, 8:58

Это в ПКС?
Значение = "СкладА";

Автор: sava1 13.05.15, 9:08

Да. ПКС Наименование или Код

Автор: DiegoLidabo 13.05.15, 9:12

ок, переделываю...

Автор: DiegoLidabo 13.05.15, 19:21

К ожалению выполненные действия результата не дали. Попробовал использовать конвертацию значений, но и это привело к тому, что реквизит склад в документах был не заполнен. Что делать дальше не представляю.

Автор: DiegoLidabo 14.05.15, 10:51

Решение:
ПКС "Наименование" событие "Перед выгрузкой"
- Значение = "Склад А";
- установить крыжик искать по полю "Наименование"
- убрать крыжик "Искать" по коду

ПКО "Склады"
- убрать крыжик "Искать по УИДу"
- Установить крыжик "Не замещать сущетвующие объекты..."

Спасибо АБ-Центр, Днепропетровск

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua