Универсальная обработка выгрузки/загрузки данных

26.05.20

Интеграция - Перенос данных 1C

Решаем задачу унификации обмена между неидентичными конфигурациями.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Универсальная обработка выгрузки/загрузки данных:
.epf 29,03Kb ver:2020-02-20
45
45 Скачать (3 SM) Купить за 2 450 руб.

        Условия разработки и тестирования:

         -платформа 8.3.9.2170, конфигурация УПП 1.3.131.1

         -платформа 8.3.15.1565, самописная конфигурация для мобильной платформы без БСП

      Эта обработка подходит для переноса данных между базами 1С как с различающимися, так и идентичными конфигурациями. Есть возможность задавать соответствия между именами объектов метаданных и их реквизитов в различных базах. Если соответствие не задано, считается, что они должны совпадать. Настройки соответствий можно хранить как макеты табличных документов и при необходимости без затруднений править.
      Первоначальное и основное предназначение обработки – унификация обмена между приложением мобильной платформы и основной базой данных предприятия и исключение рутинных операций (т.е. выборки и записи в сообщение зарегистрированных для обмена данных) из процесса разработки. Предусмотрена возможность фильтрации реквизитов при программной работе, т.к. на стороне мобильного приложения все реквизиты справочников, имеющиеся в основной базе, как правило, не нужны и могут быть опущены.
      Интерактивный режим работы в данном случае вторичен и по сути является расширением области применения. И при выгрузке, и при загрузке обязательно отмечаем типы объектов, которые планируем выгрузить или загрузить (все иные будут проигнорированы, даже если имеются в записанном сообщении). Предусмотрен как режим выгрузки только зарегистрированных для узла плана обмена, так и всех имеющихся в базе объектов. Дополнительно можно использовать отбор по периоду, который используется для «Документов» и «Задач»
      При выгрузке обработка формирует для каждого типа объектов массив. Элементы массива – структуры, соответствующие объектам. Табличные части выгружаются в виде подчиненных структуре массивов, а элементы этих массивов соответствуют строкам ТЧ.
       При программной работе – разработчик самостоятельно определяется как поместить эти массивы в сообщение обмена (у меня они добавляются в Структуру, а потом все это упаковывается в ХранилищеЗначений). При интерактивном режиме – создается соответствие с текстовыми ключами, соответствующими именам менеджеров объектов и значениями в виде полученных массивов с данными. Полученное соответствие упаковывается в ХранилищеЗначений, а это хранилище записывается в XML-файл с тэгом «Data».
      Основное преимущество такого «формата» файла – компактный размер, особенно в сравнении с классической с XML-сериализацией. Нечитабельность данных в текстовом формате можно расценивать двояко. С одной стороны, это не позволяет потенциальному злоумышленнику без некоторого багажа знаний прочесть файл, с другой – у самого прочитать блокнотом тоже не получится.
      На данный момент реализована загрузка и выгрузка только объектов, имеющих соответствующие им ссылочные типы (т.е. Документы, Справочники, Бизнес-процессы, Задачи, Планы видов характеристик, Планы видов расчета, Планы счетов, Планы обмена).  Сопоставление объектов всегда выполняется по ссылке (т.е. внутреннему идентификатору базы).  Ввиду специфики использования и имеющихся практических задач обкатка пройдена на справочниках и документах при использовании обработки для построения обмена с приложением мобильной платформы. Поддержку работы обработки с регистрами со временем планирую добавить, но для собственных задач пока что актуально не было.

      Пример программного обращения к обработке для выгрузки данных узлу:


Обработка = Обработки.мб_ВыгрузкаЗагрузкаПоИменамРеквизитов.Создать();
    
мФильтрДляНоменклатуры = Новый Массив;
мФильтрДляНоменклатуры.Добавить("Артикул");
мФильтрДляНоменклатуры.Добавить("Услуга");
мНом = Обработка.ВыгрузкаПоОбъектуМетаданных("Справочники.Номенклатура", Узел,,мФильтрДляНоменклатуры, Истина);
Данные.Вставить("Номенклатура", мНом);
мВод = Обработка.ВыгрузкаПоОбъектуМетаданных("Справочники.inf_Водители", Узел,,, Истина);
Данные.Вставить("Водители", мВод);

      Пример программного обращения к обработке для загрузки полученных данных:

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

Обновленная версия от 20-02-2020 г. (опубликовано 26-02-2020 г.)

Добавлены процедуры и функции для работы с Регистрами сведений и Регистрами накопления. Улучшена работа с Планами видов характеристик.

Обработка Мобильная платформа Обмен данными Выгрузка Загрузка XML Мобильное приложение Мобильный клиент Универсальная обработка

См. также

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    169445    352    281    

388

SALE! 20%

Перенос данных 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    144350    837    297    

432

Перенос данных 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.20.x), также подходят для релиза 11.5 (11.5.19.x).

35000 руб.

23.07.2020    54595    242    73    

196

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    73379    193    153    

130

SALE! 10%

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

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    37724    103    69    

98

SALE! 10%

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

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Предлагаем качественное и проверенное временем решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам. При выходе новых релизов конфигураций 1C оперативно выпускаем обновление переноса данных.

55778 50200 руб.

24.04.2015    196532    157    244    

287

Перенос данных 1C Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ ФОМС, ЕФС Платные (руб)

Обработки для быстрого перехода с конфигураций «КАМИН:Расчет заработной платы 3.0», «КАМИН:Зарплата для бизнеса 4.0» и «КАМИН:Зарплата 5.0» на конфигурацию «Зарплата и управление персоналом» версии 3.1.

12000 руб.

25.09.2016    82166    338    253    

287

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

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

35000 руб.

15.12.2021    25363    177    52    

135
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ivanov_alex 66 05.02.20 09:22 Сейчас в теме
Добрый день, загрузка документов не происходит
Соответствия сделал, макет создал по образцу
Доходит до этого кода
		мКлюч = РазложитьСтрокуВМассивПодстрок(Ключ, ".");
		Если мКлюч.Количество() <> 2 Тогда
			Продолжить;
		КонецЕсли;	
		
		мЗначение = РазложитьСтрокуВМассивПодстрок(Значение, ".");
		Если мЗначение.Количество() <> 2 Тогда
			Продолжить;
		КонецЕсли;	
Показать

и все, далее
Возврат СоответствиеИменТипов

неопределено, то есть СоответствиеИменТипов соответствие но пустое
куда копать?
2. Infector 203 05.02.20 11:17 Сейчас в теме
(1) Через файл выгружате/загружаете?
При загрузке макет по которому нужно загружать выбрали?

СоответствиеИменТипов заполнятеся по СоответствиеИменМетаданных, заданному макетом, (т.е. преобразует "Справочники.Номенклатура" к "CatalogRef.Номенклатура")

И в интерактивном режиме обязательно должны быть отмечены флагами метаданные, в которые ожидается загрузка.
3. ivanov_alex 66 05.02.20 11:19 Сейчас в теме
Так и есть
Прикрепленные файлы:
4. Infector 203 05.02.20 12:43 Сейчас в теме
(3)Дополните еще такой строчкой:

Документы.ВозвратТоваровОтКлиента - Документы.ВозвратТоваровПоставщику
5. ivanov_alex 66 05.02.20 12:54 Сейчас в теме
(4)Создался документ, как теперь прописать поиск по наименованию номенклатуры?
они в обеих конфигурациях одинаковые, пока что везде объект не найден
Прикрепленные файлы:
6. Infector 203 05.02.20 13:01 Сейчас в теме
(5)номенклатура и прочие ссылочные типы всегда ищутся по Уникальному идентификатору объекта (т.е. ссылка). Для наших задач это не просто приемлемо, но даже важно.
7. ivanov_alex 66 05.02.20 13:14 Сейчас в теме
(6)ну то есть толку не будет получается, конфы разные-ут11 и розница 2.2
8. Infector 203 05.02.20 13:27 Сейчас в теме
(7) Смысл в том и был, чтобы в базах с разными конфами (УПП и мобильная платформа) сохранить идентичность объектов по ссылкам и при обменах избежать неоднозначностей, связанных с поисками по наименованию, коду или прочим реквизитам.

В принципе можете немного копнуть и под себя адаптировать, примерно здесь:

Функция ЗначениеРеквизита(СтрДанных, ИмяОбъекта, ИмяРеквизита,
				СоответствиеИменМетаданных, СоответствиеИменТипов, ЕстьВИсходнойКоллекции)


А вообще судя по тому, что пытаетесь сделать вам скорее в сторону "конвертации данных" глядеть.
9. DrAku1a 1752 07.02.20 08:19 Сейчас в теме
Скажите, а стандартные "Выгрузка и загрузка данных XML" (для идентичных конфигураций) и обмен через правила обмена КД (для всех остальных случаев) - почему не подходят?
10. Infector 203 07.02.20 09:05 Сейчас в теме
(9)"Выгрузка и загрузка данных XML" - предполагает полную идентичность. Даже если разница на один лишний реквизит валится. А на мобильной платформе еще и не получится вгрузить настольную конфигурацию, ибо натолкнешся на "запрещенки" вроде ПВХ. Кроме того, что запрещенка, так на мобиле это по факту оказывается еще и ненужным мусором. Ну и файл XML, который классическая обработка делает не самый компактный. Через КД - если честно не пытался. несжатый XML, конечно, проблема не слишком большая, но обучалки по мобильной платформе предлагали строить обмен на КД с базой-агрегатором, а от нее городить РБД с мобильными базами. Промежуточной ступени и некоторых неприятных особенностей классической РБД (в частности - снова полная идентичность конфигурации) не хотелось. Из той же обучалки подцепил фокус с "ХранилищемЗначений", понравилось. Сделал по итогу прямую связь УПП - МП без "мусора" на мобильной стороне. В качестве бонуса получил возможность базу, с которой опубликовано мобильное приложение, использовать для разработки и первоначальной отладки вне мобилки. Однако при обменах быстро надоело каждый интересующий справочник/документ отдельно описывать, стал этот универсализм лепить.
11. maxx 997 05.03.20 21:40 Сейчас в теме
12. Infector 203 06.03.20 00:36 Сейчас в теме
(11)наработки от и до собственные, хотя по части конечного функционала может, конечно, и пересекаться. Ну и в моем варианте JSON нет. Есть типовые коллекции 1С (массивы и структуры), если сохранять в файл, то обжатые в хранилище значений.
Оставьте свое сообщение