При выполнении обмена данными между конфигурациями Розница и Бухгалтерия предприятия часто возникает потребность в специфической фильтрации переносимых документов. Одной из наиболее частых задач является исключение возвратов товаров из документа Отчет о розничных продажах (ОРП). Давайте разберем по шагам, как определить текущий механизм обмена и как реализовать фильтрацию данных.
Перед внесением изменений важно понять, какая технология лежит в основе вашей синхронизации: Конвертация данных 2.1 или универсальный формат EnterpriseData (КД 3.0). От этого напрямую зависит способ доработки.
.xml).ПравилаОбмена или ПравилаКонвертацииОбъектов, значит, вы используете КД 2.1.КД 2.1.Если обмен работает через КД 2.1, мы можем вмешаться в процесс выгрузки данных через обработчики событий правил конвертации объектов (ПКО). Для решения задачи исключения возвратов лучше всего воспользоваться обработчиком ПередВыгрузкой для документа Отчет о розничных продажах.
Логика работы заключается в том, чтобы перед сериализацией документа в XML-структуру программно очистить табличные части, содержащие информацию о возвратах. Рассмотрим примерный алгоритм действий:
Разберем структуру документа Отчет о розничных продажах. Поскольку возвраты могут располагаться в отдельных табличных частях (например, Возвраты), мы должны прописать код, который удалит строки из этих частей непосредственно перед отправкой объекта.
// В обработчике ПередВыгрузкой для ПКО ОтчетОРозничныхПродажах
// Очищаем табличную часть возвратов, чтобы они не попали в выгрузку
Объект.Возвраты.Очистить();
// Если есть другие табличные части, связанные с возвратами, очищаем и их
Важное замечание: ОРП — это целостный документ. Если вы удаляете строки из табличной части «на лету», в Бухгалтерию попадет документ с «обрезанным» составом товаров. Убедитесь, что это не приведет к нарушению равенства сумм между базами, иначе документы в БП могут не провестись из-за несоответствия итогов.
Если вы используете современный формат EnterpriseData, прямое редактирование файлов правил не является рекомендованным подходом. Механизм обмена здесь опирается на XDTO-пакеты.
В этом случае эффективнее применить расширение конфигурации:
Отчет о розничных продажах.Такой подход позволит сохранить возможность обновления основной конфигурации и сделает ваше решение более устойчивым к изменениям версий 1С.
Приступая к модификации правил, всегда помните о следующих правилах безопасности:
Бухгалтерии: исключение возвратов из ОРП может изменить сальдо по счету учета выручки или товаров, что потребует корректировки проводок вручную или через другие механизмы.Работа с правилами конвертации требует внимательности к структуре объектов метаданных. Пользуясь обработчиками событий, вы получаете полный контроль над процессом переноса данных между Розницей и Бухгалтерией предприятия.