Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

КонвертацияДанных 2.1 Обработчик ПослеЗагрузки. Как обратиться к реквизиту узла?

КонвертацияДанных 2.1 Обработчик ПослеЗагрузки. Как обратиться к реквизиту узла?
Я
   altaykniga
 
19.06.20 - 15:47
Доброго времени суток, товарищи.

Для узла установлена дата начала выгрузки документов = 01.06.2020

Загружается документ ЗакрытиеЗаказовПокупателей, дата = 01.06.20.20
В табличной части этого документа содержится ЗаказПокупателя, дата = 20.05.2020.
После завершения обмена в базе данных создается пустой док ЗаказПокупателя, где заполнены только дата и номер документа.
Каким образом избежать загрузки данного документа в базу данных?

Делаю так.
Открыл конвертацию в КонвертацияДанных 2.1. В обработчике ПослеЗагрузки пишу след.код:

Если СтрНайти(Объект.Метаданные().ПолноеИмя(), "Документ") <> 0 Тогда
    Если Объект.Дата < УзелДляОбмена.ДатаНачалаВыгрузкиДокументов Тогда
            Отказ = Истина;
            Сообщить(""+Объект+". Не загружен в базу данных. Начальная дата обмена документами больше даты документа" );
    КонецЕсли;
КонецЕсли;

При выгрузке данных из базы-источника выходит ошибка:
Ошибка при загрузке данных: {Обработка.ОбменДаннымиXML.МодульОбъекта(1596)}: Ошибка в глобальном обработчике события ПослеЗагрузкиОбъекта (конвертация)
ОписаниеОшибки         =  Значение не является значением объектного типа (ДатаНачалаВыгрузкиДокументов)

Прошу подсказать, как нужно изменить код, чтобы цель была достигнута )
   Ёпрст
 
1 - 19.06.20 - 15:55
Дык надо передивыгрузкой не давать выгружать жешь
   altaykniga
 
2 - 19.06.20 - 15:58
(1) как в обработчике ПередВыгрузкой обратится к реквизиту узла?
   PuhUfa
 
3 - 19.06.20 - 16:03
(0) >> Каким образом избежать загрузки данного документа в базу данных?
И что будет у тебя в ТЧ вместо не загруженного ЗаказаПокупателя?
   altaykniga
 
4 - 19.06.20 - 16:07
(3) пустая ссылка
   PuhUfa
 
5 - 19.06.20 - 16:09
(4) И при проведении ЗакрытиеЗаказовПокупателей 1С наверняка скажет, что не могу так как не заполнен ЗаказПокупателя? -)
   mistеr
 
6 - 19.06.20 - 16:10
(0) В Обработчике Перед выгрузкой ПКГС проверяешь дату, если не подходит, Отказ = Истина
   mistеr
 
7 - 19.06.20 - 16:11
(6) Обращаешься к ОбъектКоллекции, это строка ТЧ.
   altaykniga
 
8 - 19.06.20 - 16:17
(6,7) прошу детальней объяснить, как получить реквизит ДатаНачалаВыгрузкиДокументов
   PuhUfa
 
9 - 19.06.20 - 16:18
А по существу, мне кажется, у тебя ЗаказПокупателя (дата = 20.05.2020) в обмене и нету. А создается он с "заполнены только дата и номер документа" исключительно потому что на него есть ссылка.
Какие галки у тебя выставлены в ПКО "ЗаказПокупателя"?
   altaykniga
 
10 - 19.06.20 - 16:22
(9) да, так и есть - на него есть ссылка, и поэтому он создается. Каким образом запретить создание дока по ссылке, если дата этого дока меньше, чем датаНачалаВыгрузкиДокументов?
   PuhUfa
 
11 - 19.06.20 - 16:25
(10) Какие галки у тебя выставлены в ПКО "ЗаказПокупателя"?
Там есть галка "Не создавать объект если он не найден" и есть "Не создавать объект а переносить только ссылку". Точно не помню, лень КД открывать. Надо с ними поиграться
   altaykniga
 
12 - 19.06.20 - 16:34
   altaykniga
 
13 - 19.06.20 - 16:35
(11) галки эти будут работать для ВСЕХ заказов покупателя, а мне нужно по условию... только если дата заказа меньше даты начала выгрузки документов!
   altaykniga
 
14 - 19.06.20 - 16:36
<img src="https://i.paste.pics/9CHRT.png"; width="692" height="462" alt="Screenshot">
   PuhUfa
 
15 - 19.06.20 - 16:52
При переносе объекта по ссылке НЕ создавать новый объект, а только переносить ссылку - флаг определяет нужно ли создавать новый объект в информационной базе - приемнике, если он не был найден по уникальному идентификатору или по полям поиска в том случае если объект переносится по ссылке. Если объект не находится и у него установлен поиск по уникальносу идентификатору то будет перенесена только ссылка на объект (без полей поиска - одна ссылка). Если же объект выгружается непосредственно (то есть выгружается не только ссылка на объект, но и все его реквизиты), то флаг ни на что не влияет.
   mistеr
 
16 - 19.06.20 - 17:27
(8) Параметры.ДатаНачалаВыгрузкиДокументов

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.