Выгрузка данных по организации через правила обмена

26.09.10

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

Делюсь опытом. Ниже представлен код, который необходимо добавить в секцию "Обработчики "Конвертация".
Данный метод можно использовать, когда необходимо выгрузить элементы справочников и регистров только по выбранной организации.
При этом в качестве объектов выгрузки следует выбрать документы и все объекты для которых есть поле "Организация" или владельцем является "Организация" будут выгружены.

Обработчик "Перед выгрузкой объекта"

Если Объект.Метаданные().Реквизиты.Найти("Организация") <> Неопределено Тогда
    Если (Параметры.Организация <> Объект.Организация) Тогда
        Отказ = Истина;
    КонецЕсли;
КонецЕсли;
Если Объект.Метаданные().Реквизиты.Найти("Владелец") <> Неопределено Тогда
    Если Объект.Владелец.Метаданные().Имя = "Организации" Тогда
        Если (Параметры.Организация <> Объект.Владелец) Тогда
            Отказ = Истина;
        КонецЕсли;
    КонецЕсли;
ИначеЕсли Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Объект)) Тогда
    Если Объект.Метаданные().Владельцы.Содержит(Параметры.Организация.Метаданные()) Тогда 
        Если Объект.Владелец <> Параметры.Организация Тогда
            Отказ = Истина;
        КонецЕсли; 
    КонецЕсли;
КонецЕсли;

Обработчик "Перед конвертацией объекта"

Если Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Источник)) Тогда

    Если Источник.Метаданные().Реквизиты.Найти("Организация") <> Неопределено Тогда
        Если (Параметры.Организация <> Источник.Организация) Тогда
            Отказ = Истина;
        КонецЕсли;
    КонецЕсли;
    Если Источник.Метаданные().Реквизиты.Найти("Владелец") <> Неопределено Тогда
        Если Источник.Владелец.Метаданные().Имя = "Организации" Тогда
            Если (Параметры.Организация <> Источник.Владелец) Тогда
                Отказ = Истина;
            КонецЕсли;
        КонецЕсли;
    ИначеЕсли Источник.Метаданные().Владельцы.Содержит(Параметры.Организация.Метаданные()) Тогда 
        Если Источник.Владелец <> Параметры.Организация Тогда
            Отказ = Истина;
        КонецЕсли; 
    КонецЕсли;

КонецЕсли;

Вступайте в нашу телеграмм-группу Инфостарт

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27633 руб.

12.06.2017    161399    972    321    

482

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Переносите справочную информацию, остатки и документы из УПП 1.3 в Бухгалтерию 3.0 с помощью готовых правил. Переносится более 50 видов документов. Простой интерфейс и понятные настройки.

42000 37800 руб.

15.12.2021    34555    258    64    

195

Операции по ВЭД Файловый обмен (TXT, XML, DBF), FTP Программист Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Платные (руб)

Федеральная таможенная служба России давно поддерживает унифицированный формат электронных документов для обмена с информационными системами предприятий. xmlns="urn:customs.ru:Information:ExchangeDocuments:". Структура, утвержденная комиссией Таможенного союза. Осталось только сделать загрузку в 1С из этого формата. На выходе - два документа ГТД по импорту и Поступление (акты, накладные) Обработка актуализирована на начало 2026 года (ставка НДС 22%)

24400 руб.

09.08.2016    94884    372    379    

116

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 10 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

85400 руб.

05.10.2022    13664    15    8    

16

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 3, УНФ 3 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

16531 руб.

18.02.2016    204439    675    543    

563

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

122000 руб.

19.08.2020    29815    27    3    

29

Перенос данных 1C Системный администратор Программист Бухгалтер 1С:Предприятие 8 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Не хочется настраивать штатный механизм переноса между УТ 11 и Бухгалтерией 3.0 после каждого обновления? Предлагаем удобное решение для одностороннего переноса данных из Управления торговлей 11 в Бухгалтерию 3.0.

24400 руб.

22.04.2015    100110    221    187    

201
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. infosoft-v 1095 13.10.11 10:07 Сейчас в теме
Здравствуйте.
Ваше сообщение направило меня искать решение в правильное русло, спасибо. У меня был задача перенести зарплату из Комплексной конфигурации в конфигурацию Зарплата и управление персоналом. Сразу скажу, вычленить только одну организацию не удалось. Трудоёмкость переноса превысила ценность того что перенесётся только одна организация, поэтому перенёс все три организации.
2. Stepan_1c 09.12.11 07:28 Сейчас в теме
Спасибо за статью. но нам пришлось немного дополнить её, чтобы не было ошибок. добавили Попытка-Исключение-КонецПопытки в каждом обработчике перед "Если...".
3. psih12 132 20.12.11 11:50 Сейчас в теме
(2) Stepan_1c, Перед каждым "Если" поставили?
4. psih12 132 20.12.11 12:41 Сейчас в теме
У меня всё равно выгружает данные по нескольким организациям(Предприятие 8.2, УТ 10.3).
5. НатальяАлекс 35 01.02.12 13:20 Сейчас в теме
Именно этим вопросом занималась. Прямо сейчас и попробую.
6. НатальяАлекс 35 01.02.12 14:27 Сейчас в теме
Спасибо. У меня все получилось.
7. psih12 132 21.02.12 08:33 Сейчас в теме
(6) НатальяАлекс, Как у тебя получилось? Что ты сделала?
8. НатальяАлекс 35 21.02.12 09:06 Сейчас в теме
По поводу справочников и регистров ничего сказать не могу. Меня интересовали только документы. С небольшими изменениями, но все чудесно работает.
9. psih12 132 21.02.12 13:42 Сейчас в теме
(8) НатальяАлекс, Меня тоже интересуют документы. Я всё сделал, как автор указывает. Вызываю свою настройку обмена и параметра "Организация" нигде нет. Где он должен появиться-в закладке "сопоставление объектов" ? И что за изменения ты сделала?
10. пользователь 21.02.12 14:04
Сообщение было скрыто модератором.
...
11. НатальяАлекс 35 22.02.12 09:00 Сейчас в теме
Параметр должен появиться на вкладке "Выгрузка" - закладка "Параметры".
Правила я использовала нетиповые, сама делала. Изменения сейчас посмотрю.
12. НатальяАлекс 35 22.02.12 09:04 Сейчас в теме
Нет, изменений нет. Все в точности, как описал автор. Спасибо ему еще раз. psih12 проверь еще раз все.
14. cbr900 172 16.03.12 05:33 Сейчас в теме
Уже и не помню почему закинул именно в "Перед конвертацией объекта" и "Перед выгрузкой объекта", видимо, какие-то объекты не выгружались полностью корректно.
15. rhtr 95 17.09.14 19:50 Сейчас в теме
Спасибо, но чуть переделал (явно указал организацию), может кому пригодится. А и в параметры в этом случаи не надо добавлять организацию.

//+ПередВыгрузкойОбъекта
МояОрг = Справочники.Организации.НайтиПоРеквизиту("ИНН","ТутИннОрганиазции").Ссылка;

Если Объект.Метаданные().Реквизиты.Найти("Организация") <> Неопределено Тогда

Если
//(Параметры.Организация <> Объект.Организация)
Объект.Организация <> МояОрг
Тогда

Отказ = Истина;

КонецЕсли;

КонецЕсли;


Если Объект.Метаданные().Реквизиты.Найти("Владелец") <> Неопределено Тогда

Если Объект.Владелец.Метаданные().Имя = "Организации" Тогда

Если //(Параметры.Организация <> Объект.Владелец)

Объект.Организация <> МояОрг

Тогда

Отказ = Истина;

КонецЕсли;

КонецЕсли;


ИначеЕсли Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Объект)) Тогда

Если Объект.Метаданные().Владельцы.Содержит(МояОрг.Метаданные()) Тогда

Если //Объект.Владелец <> Параметры.Организация
Объект.Организация <> МояОрг
Тогда

Отказ = Истина;

КонецЕсли;

КонецЕсли;


КонецЕсли;

//+ПередКонвертациейОбъекта

МояОрг = Справочники.Организации.НайтиПоРеквизиту("ИНН","ТутИННОрг").Ссылка;

Если Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Источник)) Тогда



Если Источник.Метаданные().Реквизиты.Найти("Организация") <> Неопределено Тогда

Если //(Параметры.Организация <> Источник.Организация)
Источник.Организация <> МояОрг

Тогда

Отказ = Истина;

КонецЕсли;

КонецЕсли;

Если Источник.Метаданные().Реквизиты.Найти("Владелец") <> Неопределено Тогда

Если Источник.Владелец.Метаданные().Имя = "Организации" Тогда

Если //(Параметры.Организация <> Источник.Владелец)
Источник.Владелец <> МояОрг

Тогда

Отказ = Истина;

КонецЕсли;

КонецЕсли;

ИначеЕсли Источник.Метаданные().Владельцы.Содержит(МояОрг.Метаданные()) Тогда

Если //Источник.Владелец <> Параметры.Организация
Источник.Владелец <> МояОрг

Тогда

Отказ = Истина;

КонецЕсли;



КонецЕсли;

КонецЕсли;
16. imagica 07.08.15 12:01 Сейчас в теме
Большое Вам спасибо !
17. kosko 11.10.15 16:54 Сейчас в теме
Автору спасибо, все отлично получилось. Кто не понял, то уже в настройках обмена нужно указать фильтр по организации
18. mm_84 27.01.16 13:55 Сейчас в теме
если выгрузка данных идет через произвольный набор, то эти отборы не работают, необходимо делать отборы в самих запросах, мне например при выгрузки данных из ЗУП 2.5 в ЗУП 3.0 где сплошь произвольные алгоритмы выборки переносимых данных, совсем не помогло. Хотя правила типовые. пришлось править запросы и алгоритмы, вставляя отборы.
19. bocharovki 7 22.02.16 08:42 Сейчас в теме
Немного не понятно зачем приведены разные алгоритмы в данных обработчиках. Я так понимаю отличие ведь должно быть только Объект - Источник?
И по второму ЕСЛИ. Разве Реквизиты.Найти("Владелец") не тоже самое что и Владельцы.Содержит?
20. musatov1c.ru 6 13.03.16 06:36 Сейчас в теме
Спасибо большое! Очень помогло! :)
21. cbr900 172 13.03.16 10:03 Сейчас в теме
Добрый день всем, кто задает вопросы!
Эта публикация была в 2010 году, тогда я еще программировал. Сейчас уже давно не программирую. Поэтому на вопросы по существу ответить не смогу.
Кому эта публикация помогла - супер!
tani6e4ka; +1 Ответить
22. Twirus 14.12.16 11:00 Сейчас в теме
Очень помогло! Спасибо автору.
23. tt33 15.03.17 13:56 Сейчас в теме
А если наоборот не нужно выгружать доки определьной организации
24. tt33 15.03.17 14:05 Сейчас в теме
Сам спросил сам ответил использовал вариант rhtr Иванов (rhtr) но вместо <> поставл =
25. wingnut 02.03.12 15:31 Сейчас в теме
Большое спасибо, как раз то что надо.

Вот только есть вопрос по оптимизации...
1. Вроде Обработчик "Перед конвертацией объекта" выполняется для вех объектов, как для выгружаемых напрямую, так и по ссылке. Зачем тогда отбор в обработчике "Перед выгрузкой объекта" ? Есть случаи, когда выгрузка есть, а конвертации нет?
26. user1090556 31.01.19 11:49 Сейчас в теме
Спасибо, пригодилось, единственное есть такие объекты у которых есть реквизит Организация, и они нужны всем если например этот реквизит не заполнен и Объект принадлежит всем организациям. Например справочник Соглашения с клиентами.

Если Объект.Метаданные().Реквизиты.Найти("Организация") <> Неопределено Тогда
Если (Параметры.Организация <> Объект.Организация) Тогда
Если Объект.Метаданные().Имя="СоглашенияСКлиентами" и НЕ ЗначениеЗаполнено(Объект.Организация)Тогда //типовое
Отказ=Ложь;
Иначе
Отказ = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
27. Heiton007 26.06.20 14:36 Сейчас в теме
Большое спасибо! Единственная адекватная инфа по глобальному отбору по параметру. Очень помогло!
28. VAAngelov 564 18.05.21 15:55 Сейчас в теме
Спасибо. Пригодилось.
Для отправки сообщения требуется регистрация/авторизация