Правила конвертации для документа ОперацияБух в конфигурациях 8.х на примере УПП 1.3 -> БП 2.0

Столкнулся с вроде бы тривиальной задачей по выгрузке документа ОперацияБух вместе с проводками БУ, но не смог найти ни одного источника, где подробно была бы расписана вся процедура для платформы 8.х. Возможно, кому-то поможет мой опыт.

1) Необходимо выгрузить структуры метаданных источника и приемника. При этом необходимо снять галочку «Не выгружать регистры бухгалтерии»

 

 

2. Загружаем структуры метаданных в Конвертацию данных.

3. Через помощника создаем правило конвертации объектов «Документы.ОперацияБух», «Справочники.Валюты», «Справочники.Организации», «ПланыСчетов. Хозрасчетный» и «ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные». Метаданные регистраторов и субконто будут подтянуты в ПКО автоматически.

Создаем правило выгрузки объекта ОперацияБух.

4. В обработчик события «После загрузки» ПКО ОперацияБух вносим код:

Для каждого Корреспонденция из Объект.Движения.Хозрасчетный Цикл
Для каждого Субконто из Корреспонденция.СубконтоДт Цикл
Флажок = Ложь;
Для каждого ВидыСубконто из Корреспонденция.СчетДт.ВидыСубконто Цикл
Если ВидыСубконто.ВидСубконто = Субконто.Ключ Тогда
Флажок = Истина;
Прервать;
КонецЕсли;
КонецЦикла;

Если НЕ Флажок Тогда
Корреспонденция.СубконтоДт.Удалить(Субконто.Ключ);
КонецЕсли;
КонецЦикла;

Для каждого Субконто из Корреспонденция.СубконтоКт Цикл
Флажок = Ложь;
Для каждого ВидыСубконто из Корреспонденция.СчетКт.ВидыСубконто Цикл
Если ВидыСубконто.ВидСубконто = Субконто.Ключ Тогда
Флажок = Истина;
Прервать;
КонецЕсли;
КонецЦикла;

Если НЕ Флажок Тогда
Корреспонденция.СубконтоКт.Удалить(Субконто.Ключ);
КонецЕсли;
КонецЦикла;
КонецЦикла;

5. В Обработчики события «Перед выгрузкой» ПКС СубконтоДт и ПКС СубконтоКт  (группа Хозрасчетный) ОперацияБух вносим код: 

 ИмяПКОВидСубконто =«ВидыСубконтоХозрасчетные»;

6. После этого корректируем ПКО объектов, чтобы субконто выгрузились по нужным вам правилам.

8 Comments

  1. Melius
    но не смог найти ни одного источника, где подробно была бы расписана вся процедура

    Врать нехорошо. Вся процедура списана с книжки Бояркина. Замена переменной НайденоСубконто на Флажок не прокатила.

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

    Reply
  2. lvictor58

    А не проще ли при выгрузке структуры МД конфры снять крыж «Не выгружать движения документов»? и при сождании правил конвертации выгружать не только реквизиты но и коллекции движений?

    Reply
  3. dimazzz84

    (2) lvictor58, а чем это проще то?

    Reply
  4. Melius

    (2) lvictor58, и получить массу ошибок, если в плане счетов изменяли субконто?

    Reply
  5. kudlach

    Спасибо. Очень помогло.

    Reply
  6. kudlach

    Подошло и для УПП 1.3->Бух3.0

    Reply
  7. Kesak

    Что то и тут не полное описание.

    1. Где выгрузка движений Операции из источника?

    2. «В Обработчики события «Перед выгрузкой» ПКС СубконтоДт и ПКС СубконтоКт (группа Хозрасчетный) ОперацияБух..» — насколько я понимаю группа Хозрасчетный это и есть ПКГС с набором движений по регистру бухгалтерии? Если предположение верно — то с выгрузкой структуры базы требуется выгрузка движений документов.

    3. Если мы выгружаем регистр бухгалтерии, то где он используется в данном правиле?

    Reply
  8. acanta

    В принципе достаточно добавить такой код при выгрузке записи регистра Хозрасчетный (вид субконто в плане счетов получателя отсутствует). Но это частный случай, когда известно в чем проблема.

    В момент выгрузки ПКГС мы не знаем счета получателя.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *