Как сделать в Конвертации данных? #709824


#0 by Сияющий Асинхраль
Задача такова. За период перекидываются документы из одной конфигурации в другую. Все работает, все здорово. Надо сделать так, чтобы загружались и записывались в конфигурацию назначения только документы из выбранного периода, а из других периодов (по ссылкам) документы не тянулись, а привязывались к уже существующим документам или справочникам, если они есть в конфе назначения, или не переносились вообще, если в конфе назначения их нет. Не подскажете как это сделать в КД?
#1 by Tateossian
Поробуй так: в глобальном обработчике "ПередВыгрузкой" Если ТипЗнч(Источник) = Тип("Документ...") Тогда Если Источник.Дата < Параметры.ДатаНачала Тогда Отказ = Истина КонецЕсли
#2 by DionisSergeevich
", а привязывались к уже существующим документам или справочникам, если они есть в конфе назначения, или не переносились вообще, если в конфе назначения их нет" на ПКО кликни 1 раз и поставь галочку "не создавать ненайденное" - так как то
#3 by Сияющий Асинхраль
Про эту галку я знаю, я же сказал, что в выгружаемом периоде документы и справочники должны грузиться однозначно (и перезаписываться, если что), т.е. эта галка стоять не должна, а вот для документов из старых периодов она должна срабатывать... В этом и вопрос - как это реализовать?
#4 by Фокусник
вероятно, этот "флаг" можно установить программно для каждого документа. Я бы справку по обработчика почитал. Но в телефоне это сложно будет сделать :)
#5 by novice
прошу ТС рассказать о результатах успешности или неуспешности задумки
#6 by Генератор
или можно еще 2 правила создать для дока, в одном создавать в другом не создавать; выгружать то которое создавать, а в прочих ссылках указать то, которое не создавать
#7 by Генератор
+ приоритет у того которое не создавать выше поставить
#8 by SleepyHead
В обработчике ПКС "Перед загрузкой" выбирать правило тогда уж, если нет уверенности в том, что Фокусник посоветовал ИмяПКО = ...
#9 by Генератор
что проще, для каждого свойства прописать обработчик (а ведь могут быть свойства составного типа) или один раз проставить пко в правиле выгрузки и приоритет?
#10 by SleepyHead
Ну, если вопрос ставится именно так - что проще, то конечно флажок. :)
#11 by SleepyHead
Не понял только вашу идею, каким образом приоритет и флажок вы свяжете с датой документа (смотрю идею ТС о том, что документы ранее определенной даты должны переноситься по ссылкам, а прочие загружаться).
#12 by Генератор
Документы которые должны загружаться он выгружает явно, правилом выгрузки. Документы на которые должны загружаться только ссылки, выгружаются не явно, по свойствам. Указываем у свойств и у правила выгрузки разные ПКО и все.
#13 by Рэйв
В ПослеЗагрузки ПКО документа: Если Объект.Дата<НачПериода И Объект>КонПериода И Объект.ссылка.Пустая Тогда
#14 by Рэйв
Объект>КонПериода -> Объект.Дата>КонПериода
#15 by SleepyHead
Перечитал посты и , ничего подобного не увидел про явную выгрузку. Самый нормальный совет дал Фокусник, в ПКО можно установить параметр "НеЗамещатьОбъект" , в обработчике "ПередЗагрузкой" в самом ПКО. Проанализировать дату документа в ПКО и установить при необходимости. Цитата из справки: "НеЗамещатьОбъект - Если для данного параметра установить значение Истина, то объект идентифицированный при загрузке (т.е. найденный в информационной базе приемнике по значению синхронизирующих полей) не будет изменен/замещен."
#16 by SleepyHead
Таким образом, не нужно плодить лишние ПКО.
#17 by ASU_Diamond
а как при загрузке отработает система то что в реквизит нужно занести значение, а самого значения нет в файле?
#18 by Сияющий Асинхраль
Прав. Уже перед выгрузкой можно проанализировать даты и расставить флаги программно: НеЗамещатьОбъектПриЗагрузке - Булево. По умолчанию  - определяется в правилах обмена, но может быть изменено. Если для данного параметра установить значение Истина, то объект идентифицированный при загрузке (т.е. найденный в информационной базе приемнике по значению синхронизирующих полей) не будет изменен/замещен. НеСоздаватьЕслиНеНайден – Булево. По умолчанию определяется в форме элемента правила конвертации объекта. Если Истина, то выполняется только поиск объекта в приемнике, новый объект не создается.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С