Конвертация данных 3. Передача пометки удаления

30.08.23

Интеграция - Перенос данных 1C

Два способа, как передать признак объекта ПометкаУдаления средствами КД 3.

В типовых обменах, основанных на ED, не предусмотрен перенос признака ПометкаУдаления, как и признака Проведен. Переданный объект помечается на удаление только в случае, когда в источнике объект удален. В этой статье я опишу два способа, с помощью которых данный признак можно передать, если в этом возникла необходимость.

1. В правилах регистрации объекта не должно быть отбора по ПометкаУдаления = Ложь. Для документов необходимо убрать условие Проведен = Истина, при его наличие.

 

Способ первый

 

1. В КД3 для ПОД необходимо установить признак "Выгружать очистку данных по неиспользуемым ПКО". Для того, чтобы появилась возможность его установить, тумблер "Количество правил конвертации" должен находиться в положении "Несколько". При этом сколько реально ПКО, значения не имеет.

 

 

В модуле менеджера обмена добавится строка ПравилоОбработки.ОчисткаДанных = Истина; и процедура будет выглядеть так:

Процедура ДобавитьПОД_Документ_ЗаписьКнигиПродаж_Отправка(ПравилаОбработкиДанных)
	
	ПравилоОбработки                         = ПравилаОбработкиДанных.Добавить();
	ПравилоОбработки.Имя                     = "Документ_ЗаписьКнигиПродаж_Отправка";
	ПравилоОбработки.ОбъектВыборкиМетаданные = Метаданные.Документы.ЗаписьКнигиПродаж;
	ПравилоОбработки.ПриОбработке            = "ПОД_Документ_ЗаписьКнигиПродаж_Отправка_ПриОбработке";
	ПравилоОбработки.ОчисткаДанных           = Истина;

	ПравилоОбработки.ИспользуемыеПКО.Добавить("Документ_ЗаписьКнигиПродаж_Отправка");
	
КонецПроцедуры

2. В обработчике "При обработке" добавляем следующие условие:

Если ДанныеИБ.ПометкаУдаления Тогда
	ИспользованиеПКО.Документ_ЗаписьКнигиПродаж_Отправка = Ложь;
	ИспользованиеПКО.Вставить("ФиктивноеПКО", Ложь); // имитируем несколько ПКО для отправки команды удаления
КонецЕсли;

Добавлять строку, отмеченную комментарием, необходимо только в том случае, когда в данном ПОД только одно реальное ПКО. Если ПКО несколько добавлять данную строку не надо.

Результатом описанных манипуляций станет добавление в файл обмена команды на удаление объекта по ссылке.

Плюсами указанного способа можно считать простоту реализации и отсутствие необходимости вносить правки в модуль менеджера приемника. К минусам можно отнести невозможность передать другие изменения в объекте, а также тот факт, что команда на удаление не будет воспринята приемником, если поиск на стороне приемника производится не по УИД.

 

Способ второй

 
Доработка на стороне источника

1. В обработчик "При отправке" ПКО источника добавляем выгрузку признака ПометкаУдаления через AdditionalInfo:

	Если Не ДанныеXDTO.Свойство("AdditionalInfo") Или ТипЗнч(ДанныеXDTO.AdditionalInfo) <> Тип("Структура") Тогда
		ДанныеXDTO.Вставить("AdditionalInfo", Новый Структура);
	КонецЕсли;

	ДанныеXDTO.AdditionalInfo.Вставить("ПометкаУдаления", ДанныеИБ.ПометкаУдаления);
 
Доработка на стороне приемника

Если целью доработки является передача только пометки удаления, то все указанные ниже фрагменты кода необходимо вставлять в начало обработчиков. Если же пометка удаления планируется передаваться вместе с другими изменениями объекта, то место вставки кода - произвольное, при этом строки отмеченные комментарием надо удалить.

1. В обработчике "При конвертации данных XDTO" помещаем в дополнительные свойства "ПометкаУдаления", если переданный признак равно истина:

Если ДанныеXDTO.Свойство("AdditionalInfo") И ТипЗнч(ДанныеXDTO.AdditionalInfo) = Тип("Структура") Тогда
	ПометкаУдаления = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДанныеXDTO.AdditionalInfo, "ПометкаУдаления", Ложь);
	Если ПометкаУдаления Тогда
		ПолученныеДанные.ДополнительныеСвойства.Вставить("ПометкаУдаления");
		Возврат; // Если цель передать только признак "ПометкаУдаления"
	КонецЕсли;
КонецЕсли;

2. В обработчике "Перед записью полученных данных" переносим свойство "ПометкаУдаления" из дополнительных свойств ПолученныеДанные в дополнительные свойства ДанныеИБ:

Если ПолученныеДанные.ДополнительныеСвойства.Свойство("ПометкаУдаления") И ДанныеИБ <> Неопределено Тогда
	ДанныеИБ.ДополнительныеСвойства.Вставить("ПометкаУдаления");
	ПолученныеДанные = Неопределено; // Если цель передать только признак "ПометкаУдаления"
	Возврат; // Если цель передать только признак "ПометкаУдаления"
КонецЕсли;

3. Вносим изменение или добавляем алгоритм для обработчика "После загрузки всех данных":

Если Объект.ДополнительныеСвойства.Свойство("ПометкаУдаления") Тогда
	Объект.ПометкаУдаления = Истина;
	Возврат; // Если цель передать только признак "ПометкаУдаления"
КонецЕсли;

Данные способ лишён недостатков предыдущего способа. К его недостаткам можно отнести лишь необходимость вносить изменения в правила как источника, так и приемника.

ПометкаУдаления КД3

См. также

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.21.x).

35000 руб.

23.07.2020    56401    260    73    

215

SALE! 15%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    145964    852    299    

440

Перенос данных 1C Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

55778 руб.

04.08.2015    170945    363    283    

393

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой

55778 руб.

15.04.2019    74419    200    156    

138

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 руб.

03.12.2020    38466    108    70    

102

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.244.x) и БП 3.0 (3.0.172.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    26275    187    56    

143

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Платформа 1C v8.2 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 2, УНФ 1.6 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

16260 руб.

18.02.2016    189329    616    534    

537

Перенос данных 1C Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ ФОМС, ЕФС Платные (руб)

Обработки для быстрого перехода с конфигураций «КАМИН:Расчет заработной платы 3.0», «КАМИН:Зарплата для бизнеса 4.0» и «КАМИН:Зарплата 5.0» на конфигурацию «Зарплата и управление персоналом» версии 3.1.

12000 руб.

25.09.2016    82942    344    254    

292
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. thedarkness 06.02.25 14:58 Сейчас в теме
А если необходимо совершить обратное действие?
Т.е. он выгружает УдалениеОбъекта и как это убрать - не ясно. Нужно целиком постоянно выгружать документ.
2. victorree 25 17.02.25 18:26 Сейчас в теме
(1) Не понял что Вы имеете в виду.
Оставьте свое сообщение