Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Синхронизация данных. Пометка удаления подчиненных документов. (http://forums.kuban.ru/f1040/sinhronizaciya_dannyh_pometka_udaleniya_podchinennyh_dokumentov-9214219.html)

specx 12.04.2023 16:34

Синхронизация данных. Пометка удаления подчиненных документов.
 
Доброго времени суток, коллеги.
Проблемка такая - есть настроенная синхронизация БП 3 - УНФ. в УНФ делают реализацию. Она успешно передается в БП. в БП ее получают, проводят, делают по ней счет фактуру. Затем в УНФ помечают на удаление реализацию. В БП эта реализация также делается при синхронизации помеченной на удаление, а счет фактура по ней - так и висит проведенной.

Вопрос - как обычно, что сделать чтобы счет фактура тоже распроводилась автоматом при синхронизации ( и помечалась на удаление ) . это так синхронизация не умеет распроводить подчиненный документ или какие то настройки ( порылся ничего не нашел ) ?

qweqwe123123 12.04.2023 23:46

а с чего это она должна распроводиться, если она к синхронизации никакого отношения не имеет? вводить СФ в УНФ.
а еще в реализации есть кнопарик "УПД".

specx 13.04.2023 08:53

[quote=2Green;49112430] а с чего это она должна распроводиться, если она к синхронизации никакого отношения не имеет? вводить СФ в УНФ. а еще в реализации есть кнопарик "УПД". [/quote]

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

а с кнопариком или без - без разницы.

specx 24.04.2023 10:52

В общем , проблему решил так :
сделал расширение, в него добавил процедуру УстановитьПометкуУдаленияУОбъекта из общего модуля ОбменДаннымиXDTOСервер :

&После("УстановитьПометкуУдаленияУОбъекта")
Процедура Синхр1_УстановитьПометкуУдаленияУОбъекта(Объект)


Если (ТипЗнч(Объект.Ссылка)=Тип("ДокументСсылка.РеализацияТоваровУслуг")) Или
(ТипЗнч(Объект.Ссылка)=Тип("ДокументСсылка.ПоступлениеТоваровУслуг")) Тогда
Если Объект.ОбменДанными.Загрузка Тогда
Запрос=Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| СвязанныеДокументы.Ссылка
|ИЗ
| КритерийОтбора.СвязанныеДокументы(&Ссылка) КАК СвязанныеДокументы";



Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка);
Выборка = Запрос.Выполнить().Выбрать();


Пока Выборка.Следующий() Цикл
Если ТипЗнч(Выборка.Ссылка)=Тип("ДокументСсылка.СчетФактураВыданный")
Или ТипЗнч(Выборка.Ссылка)=Тип("ДокументСсылка.СчетФактураПолученный") Тогда

ДокументСчетФактураОбъект=Выборка.Ссылка.ПолучитьОбъект();

Если ДокументСчетФактураОбъект.Проведен Тогда
ДокументСчетФактураОбъект.Записать(РежимЗаписиДокумента.ОтменаПроведения);
КонецЕсли;
ДокументСчетФактураОбъект.ПометкаУдаления=Истина;
ДокументСчетФактураОбъект.Записать();
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЕсли;

КонецПроцедуры


Теперь, если в источнике - помечают на удаление реализацию или поступление, а в приемнике сделали на их на основании счет фактуру, то при синхронизации в приемнике помечается на удаление и счет фактура.


Текущее время: 15:42. Часовой пояс GMT +3.