|
Конвертация данных + Планы обмена | ☑ | ||
---|---|---|---|---|
0
Serdolik55
28.12.11
✎
11:25
|
Коллеги, сделал правила обмена УТ 10.3 в БП 2.0, выгружаю через универсальный обмен данными. Со временем возникла необходимость выгружать изменённые объекты, добавил план обмена, указал для каких объектов необходимо регистрировать изменения, в инете нашёл механизм, который прописывается в конвертации:
1) В обработчике "ПередВыгрузкойДанных" добавил: //Механизм выборки изменённых данных из плана обмена Узел = ПланыОбмена.Инталев_МТК_ЦО.НайтиПоКоду("00002"); ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(Узел,1); //для убыстрения, помещаем выборку в массив и уже работаем с ним Выборка = Новый Массив; Пока ВыборкаИзменений.Следующий() Цикл Данные = ВыборкаИзменений.Получить(); Выборка.Добавить(Данные); КонецЦикла; Параметры.Вставить("Выборка",Выборка); Параметры.Вставить("Узел",Узел); 2) В правилах выгрузки данных установил способ выгрузки "Произвольный алгоритм" и в обработчике "ПередОбработкой" добавил: Выборка = Параметры.Выборка; Узел = Параметры.Узел; ВыборкаДанных = Новый Массив; Для Каждого ТекВыборка Из Выборка Цикл Данные = ТекВыборка; Если Данные.Метаданные().Имя = "РеализацияТоваровУслуг" Тогда ВыборкаДанных.Добавить(Данные.Ссылка); ПланыОбмена.УдалитьРегистрациюИзменений(Узел,Данные.Ссылка); КонецЕсли; КонецЦикла; Всё работает отлично, выгружаются изменённые объекты, но есть одно "НО": В документе "ВозвратТоваровОтПокупателя" есть добавленный реквизит тип "Булево", при установке этого реквизита и последующем проведении документа формируется "ПоступлениеТоваровУслуг" и в этом случае выгружаться в бухгалтерию должен не возврат, а поступление.Часто бывают случаи, когда возврат сначала идёт без галки и он выгружается в бухгалтерию, а потом ставят эту галку, формируется поступление, оно выгружается в бухгалтерию и получается, что бухгалтерии и возврат и поступление, а должно остаться только поступление, возврат должен быть помечен на удаление. Где в КД или в плане обмена прописать,возможность пометки на удаления этого возвртата в бухгалтерии? Как это организовать? |
|||
1
PCcomCat
28.12.11
✎
11:32
|
ПослеЗагрузки объекта - если есть галка, то ставить пометку.
|
|||
2
Serdolik55
28.12.11
✎
11:40
|
(1) Дело в том что в бухгалтерии у возврата нет галки(бухгалтерия типовая). Галка только в торговле есть. Например, сформировали сначала возврат без галки, он выгрузился в бухгалтерию, потом через неделю поставили галку и выгрузилось ещё и поступление. Нужно возврат этот в бух пометить на удаление в бухгалтерии.Обработчик "ПослеЗагрузкиОбъекта" как я понимаю вызывается уже в приёмнике, то есть в бухгалтерии, а там у возврата этой галки нет.
|
|||
3
Axel2009
28.12.11
✎
11:43
|
выгружай в параметр свою галку. перед загрузкой параметры доступны
|
|||
4
PCcomCat
28.12.11
✎
11:45
|
(2) В комментарий кидайте свой признак
|
|||
5
Serdolik55
28.12.11
✎
11:47
|
(3) Да, в параметры наверное правильнее будет.
(4) А из комментария я как доставать буду? |
|||
6
PCcomCat
28.12.11
✎
11:50
|
+(4) А ещё есть стандартный механизм - дополнительные реквизиты, можно туда кидать.
(5) Как - прочитать комментарий. Есть источник, есть приемник. |
|||
7
Amiralnar
28.12.11
✎
11:56
|
Сделайте пко из галки в пометку удаления
|
|||
8
Pozdnyakov
09.04.12
✎
15:38
|
(6) А как работать с этими доп. реквизитами? У меня есть проблема с обменом одним справочником.
Требуется на приёмник передавать регистр сведений для обмена между элементами справочника (данных из регистра много, в комментарий не запихнёшь; да и там не только строковые значения). Причём в приёмнике такого регистра нет. Вот созданная мной на этом форуме тема: [URL=http://www.1c-galaxy.ru/forum4/topic931284/]Моя тема[/URL] Если действительно есть доп. реквизиты, которые можно передать от источника приёмнику, возможно, это решило бы мою задачу. Но я не вижу, что в книге по КД об этом написано. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |