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

26.09.10

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

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

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

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

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

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

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

КонецЕсли;

См. также

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

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.21.x).

35000 руб.

23.07.2020    57951    268    75    

222

SALE! 15%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 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. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    147389    866    300    

446

SALE! 10%

Перенос данных 1C Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

55778 50200 руб.

04.08.2015    172994    367    284    

397

SALE! 10%

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

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой

55778 50200 руб.

15.04.2019    75574    204    157    

141

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.246.x) и БП 3.0 (3.0.175.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    27335    195    56    

150

SALE! 10%

Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Правила переноса данных из БП 3.0 в УТ 11 | из БП 3.0 в КА 2 | из БП 3.0 в ERP | Сэкономьте свое время - используйте готовое решение для перехода! | Постоянно работаем над развитием переноса данных | Обновляем на новые релизы 1С | Есть фильтр выгрузки по организациям | Переносятся начальные остатки на выбранную дату, документы за период времени и вся возможная справочная информация | Перенос сделан на технологии КД 2 (правила конвертации данных) Воспользовались более 122 предприятий! |

55778 50200 руб.

31.10.2014    239551    107    342    

311

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Бухгалтер Пользователь Платформа 1С v8.3 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Эволюция не стоит на месте - новая удобная версия функциональной обработки для Вашего бизнеса! Что же Вы получаете? Удобный и интуитивно понятный интерфейс с 3-мя этапами работы. 2 режима - автоматический и ручной. Чтение XLSX, XLSM, CSV, XML/YML форматов без офиса, на любом сервере! Визуальное связывание колонок файла и реквизитов простым перетаскиванием колонок. Создание или обновление номенклатуры с иерархией, характеристик, доп. реквизитов, упаковок, загрузка практически неограниченного количества картинок на одну номенклатуру (с возможностью загрузки в несколько потоков одновременно), с хранением в томах или в базе. Загрузка номенклатуры поставщиков или поиск по их данным номенклатуры. Загрузка доп. реквизитов в характеристики. Загрузка штрихкодов с генерацией новых. Создание элементов справочников и ПВХ "на лету" для выбранных реквизитов. (Обновление от 13.05.2025, версия 9.11 - 1010)

18000 руб.

20.11.2015    161859    403    386    

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