КД, пометка на удаление после загрузки объекта #355325


#0 by Loki
Добрый день. Задача такая: отобрать документы по определенному критерию и в базе источнике пометить их на удаление. Делаю так: добавляю параметр "Объекты для удаления", тип не определяю, ставлю галочку "Передавать при выгрузке". Далее перед выгрузкой данных пишу: Параметры.ОбъектыДляУдаления = ОбъектыДляУдаления(пустой массив), в ПВД документа пишу:  Параметры.ОбъектыДляУдаления.Добавить(Объект). В ПКО объекта после загрузки: КонецЕсли; в отладчике параметр ОбъектыДляУдаления = Неопределено. Поскажите, пожалуйста, что не правильно делаю?
#1 by ТелепатБот
#2 by GenV
Массивы в параметрах не выгружаются ...
#3 by Loki
Ужос, а другие структуры? тз, например?
#4 by GenV
А зачем тебе ТЗ без объекта? КД сделана для переноса данных объектов и их сопоставления. Ну, если хочешь можешь написать свою запись/чтение в XML данных массива, ТЗ и т.п. и работу с ней. ЗЫ Твоя задача решается очень просто - нужно после выгрузки данные выгрузить по отдельному ПКО (в котором будет кроме полей поиска только Истина для ПометкаУдаления) удаляемые документы или сразу для них пометку удаления ставить.
#5 by Loki
Спасибо, буду пробовать.
#6 by Loki
Подниму ветку. Ставлю ПометкаУдаления = Истина, но если документ в базе приемнике проведен, то отрабатывает только ОтменаПроведения, а пометка не устанавливатся...
#7 by Loki
ап
#8 by GenV
В ПередВыгрузкой для ПКС ПометкаУдаления у ПКО документа: Значение = Истина; ставил? Можно еще добавить РежимЗаписи = "ОтменаПроведения" для ПередВыгрузкой ПКО документа на всякий случай.
#9 by Loki
да, именно так и делаю. Но происходит только отмена проведения, пометка удаления не ставится
#10 by GenV
Добавть еще в ПередВыгрузкой для ПКС Проведен ПКО документа: Значение = Ложь; Похоже если объет перед отменой проведений проведен, то пометка удаления сбрасывается.
#11 by Loki
уфф... спасибо))) еще есть один момент, был удален зарегестрированный объект, выгружаю ссылку "объект не найден". По идее в базе приемнике он также должен быть помечен на удаление, но при записи ругается на то, что у документа не задана дата(
#12 by Loki
вот, что нашла:
#13 by GenV
Дата то пустая, как он нужный документ найдет. Другое дело если GUID объекта есть и он совпадает в обоих базах, тогда по нему можно синхронизироватья. Иначе восстанавливай объект или вручную удаляй.
#14 by Loki
да, синхронизация по GUID
#15 by Loki
При загрузке идет проверка модификации объекта, не совпадают номера, так как в источнике объект удален и номер пустой. Дальше по логике получается, что надо записать объект и возникает ошибка, так как номер пустой.
#16 by Loki
ап
#17 by GenV
поставь для этих реквизитов "не замещать", тогда когда найдет по GUID их не заменит (если конечно не используешь их для синхронизации).
#18 by Loki
Спасибо, GenV, помогло)))
#19 by Loki
Сразу бы еще хотелось задать вопрос по КД. У меня есть параметр НомерСообщения. У него стоят галочки Передавать при выгрузке и При загрузке. Но значение параметра в файл выгрузки не пишется. Разве эти галочки не для того, чтобы можно было работать со значением параметра при загрузке?
#20 by GenV
Должна еще стоять галочка "редактировать в диалоге". Если не хочешь чтобы пользователи видели этот параметр, то можно самой выгружать его программно через
#21 by Loki
Класс, спасибо)))
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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