Загрузка из Excel с использованием КД 2.0

16.10.12

Интеграция - Загрузка и выгрузка в Excel

Наверно многие сталкивались с проблемой загрузки данных из Excel в 1С. Какая бы обработка не создавалась - простенькая одноразовая или универсальная, уходит немало времени на решение таких проблем как синхронизация данных, описание создания и изменения данных. Но ведь мало только написать обработку, потом сколько времени уходит на отладку. Для решения этих проблем я предлагаю использовать конвертацию данных. С помощью этого инструмента можно очень гибко решать все вышеперечисленные проблемы...

Скачать файлы

Наименование Файл Версия Размер
Все файлы одним архивом
.rar 299,34Kb
276
.rar 299,34Kb 276 Скачать

Последовательность такая:

1. Создаем обработку по настройке загрузки. В ней же пишем экпортную процедуру по возврату прочитанных данных из Excel в виде коллекции значений  

2.  Создаем правила в конвертации данных. В обработчике конвертации "Перед выгрузкой" прописываем открытие формы обработки, созданной в п. 1 для настройки

3.  В конвертации создаем правила выгрузки данных с произвольным алгоритмом. В нем прописываем получение данных Excel с помощью экпортной процедуры, созданной в п. 1.

4. Создаем правила конвертации объектов и их свойств

5. Выгружаем данные из Excel в xml файл с помощью обработки "Универсальный обмен данными в формате XML"

6. Загружаем данные в базу, используя ту же обработку.

Опишем шаги более подробно:

Шаг №1.

Обработка простейшая: есть форма настроек и экспортная процедура (обработка доступна для скачивания в архиве). Вот ее форма:

 Форма настройки

Шаг №2.

1. Выгружаем структуру метаданные той базы, в которую будем заливать данные с помощью обработки MD82Exp.epf (ее можно взять либо в папке с шаблоном конвертации данных либо из приложенного архива)

2. Открываем конфигурацию Конвертация данных (я использовал 2.1.6.4) и загружаем в нее выгруженную структуру метаданных (назовем ее ЗагрузкаExcel).

3. Создаем новые правила обмена данными (ПОД) из  ЗагрузкаExcel в  ЗагрузкаExcel (хотя источник нам совсем не важен, но указать мы его должны)

4.  Подключаем созданную обработку к ПОД и укажем, что обработка используется при выгрузке

Подключение обработки

5. Пропишем открытие формы настройки перед выгрузкой данных

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

 

Шаг №3.

Создаем правила выгрузки данных с произвольным алгоритмом

 ПВД

Шаг №4.

Создадим правила конвертации объектов (ПКО). Полностью ПОД смотрим в архиве файл ПравилаОбменаДанными.xml  

Перед началом создания ПКО подумаем по каким полям будем синхронизироваться:

4.1. Документ я буду синхронизировать по дате

4.2. Контрагента по наименованию

4.3. Договор по владельцу (контрагенту) и наименованию

4.4. Номенклатуру по наименованию и артикулу

Стоит отметить, что для всех ПКО нужно снять галочки синхронизации по UUID, т.к. она не имеет смысла.

Так же стоит внимательно отнестись к полям синхронизации: в поля поиска желательно включать проиндексированные реквизиты, т.к. при больших объемах загружаемых данных поиск объекта в базе может существенно замедлиться.

ПКО "Приход товаров"

ПКО_ПриходТоваров 

Для того чтобы после загрузки документ проводился пропишем код в след. обработчиках:

ПКО_ПриходТоваров_Обработчики 

ПКО "Контрагенты"

Контрагентов складываем в папку Поставщики. Это устанавливается свойством Родитель. 

ПКО_Контрагенты

ПКО "Договоры контрагентов" 

 ПКО_Договоры

 ПКО "Товары"

ПКО_Товары 

 

Шаги 5 и 6.

Данные шаги примитивные: открываем обработку " Универсальный обмен данными в формате XML" указываем правила, указываем файл выгрузки данных. Нажимаем "Выгрузить". Затем переходим на вкладку "Загрузка", указываем файл загрузки и нажимаем загрузить.

Еще отмечу: если база, в которую происходит загрузка, работает в режиме управляемое приложение, то обязательно ее надо запустить в обычном приложении, по причине того что загрузка происходит на сервере, а интерактивная работа с формой настройки на сервере невозможна!

Результат: 

 Результат


См. также

SALE! 10%

Загрузка номенклатуры из Excel в УТ11, КА 2, ERP 2, Розница 2. Дополнительные реквизиты и сведения, характеристики, картинки, цены, остатки

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

Загрузка из файлов xls, xlsx, ods, csv, mxl в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

10560 9504 руб.

29.10.2014    210163    620    524    

439

Загрузка номенклатуры c картинками (несколько потоков одновременно) и сопутствующими данными в базу и любые документы из yml, xls, xlsx, xlsm, ods, ots, csv для УТ 10.3, УТ 11 (все), БП 3, КА 2, ERP 2, УНФ 1.6/3.0, Розница 2

Загрузка и выгрузка в 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 Платные (руб)

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

13200 руб.

20.11.2015    150714    367    375    

501

Маркетплейсный загрузчик для 12-ти маркетплейсов в "БП 3", "УТ 11", "КА 2", ERP, УНФ

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

Реальный помощник, с помощью которого Вы сделаете необходимые документы для Wildberries, OZON, ЯндексМаркет, Мегамаркет, Aliexpress, "Детский мир", Казань-Экспресс, "Леруа Мерлен", ЭНФАНТА (Акушерство), ЛаМода, Летуаль, "Твой дом" в документы "Отчет комиссионера (агента) о продажах" и другие, может работать в "Бухгалтерия 3", "Бухгалтерия 3 КОРП", УТ 11, УНФ, КА 2, ERP. Возможность подключить любые маркетплейсы. Анализ продаж ОЗОН. 30 дней БЕСПЛАТНОГО пользования!

1800 руб.

12.08.2021    31893    226    63    

117

SALE! 20%

Загрузка документов и номенклатуры из Excel в 1С "одним нажатием": УПД, ТОРГ-12, отчеты маркетплейсов, заказы, счета, прайсы

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

Универсальная обработка для загрузки документов из Excel в 1С. Не требует указания параметров (номера колонок, номер первой строки таблицы и т.д.) и предварительной настройки. Просто выбираете файл Excel, документ 1С и нажимаете кнопку "Загрузить". Обработка сама находит таблицу в файле Excel, необходимые для загрузки данные в ней (номенклатура, количество, НДС, цена, сумма) и загружает ее в 1С. Вместе с номенклатурой может найти контрагента, номер и дату документа, штрих-коды, серии ГТД, страну и т.д. Распознает документы ЛЮБОЙ ФОРМЫ (УПД, ТОРГ-12, заказ, отчет комиссионера и т.д.). Не требует MS Office. Для поиска таблиц используются методы эвристического поиска. Загружает только то, что нужно, т.е. пропускает повторы шапки таблицы, заголовки, промежуточные итоги, подписи и т.д. Содержит модуль работы с электронной почтой и api-загрузчик отчетов о продажах маркетплейсов.

5000 4000 руб.

09.11.2016    214923    925    886    

939

Загрузка данных отчета о реализации товаров из Excel файла СберМегаМаркет

Загрузка и выгрузка в Excel Маркетплейсы Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Загрузка данных отчета о реализации товаров из сервиса СберМегаМаркет для конфигурации: Бухгалтерия предприятия, редакция 3.0; Управление торговлей, редакция 11 и Управление нашей фирмой, редакция 3.0 в документ "Отчет комиссионера (агента) о продажах".

4800 руб.

07.06.2022    15077    79    0    

60

SALE! 30%

Распознавание и загрузка сканов в 1С "одним нажатием": УПД, ТОРГ-12, накладные, счета, номенклатура, заказы и т.д.

Загрузка и выгрузка в Excel Документооборот и делопроизводство (СЭД) Учет документов Распознавание документов и образов Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная программа для распознавания ЛЮБЫХ СКАНОВ ИЛИ ФОТО ТОВАРНЫХ ДОКУМЕНТОВ в 1С. Не требует указания параметров и предварительной настройки. Просто выбираете файл (PDF, JPG, DOC, XLS, HTML и т.д.) выбираете документ 1С и нажимаете кнопку "Распознать и загрузить".

6000 5520 руб.

04.06.2019    101373    296    173    

312
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. DoctorRoza 15.10.12 09:49 Сейчас в теме
Спасибо за информацию, хорошая статья!
2. zipik 15.10.12 18:43 Сейчас в теме
3. zipik 15.10.12 18:43 Сейчас в теме
4. echo77 1868 15.10.12 19:21 Сейчас в теме
Советую всем сначала посмотреть обработку с ИТС
С помощью неё все загрузки из excel на хрен не нужны и отпадает нужда создавать "одноразовые" обработки по загрузке данных
5. Alex_grem 256 15.10.12 20:04 Сейчас в теме
(4) echo77, согласен. Если загрузка их таблиц с простой структурой, то быстрее будет загрузить через указанную обработку, но если таблицы сложной структуры и требуются специфические условия поиска и преобразования данных, то данный метод очень сэкономит время разработки и отладки.
6. mihan 117 15.10.12 22:47 Сейчас в теме
по мне дак проще идти путем допила обработки "загрузка данных из табличного документа"
7. fnv 16.10.12 07:44 Сейчас в теме
Сложный способ какой-то, по-моему, проще через Оле, чем через конвертацию.
8. пользователь 16.10.12 11:43
Сообщение было скрыто модератором.
...
9. Alex_grem 256 16.10.12 11:54 Сейчас в теме
(8) Eugeneer, Ответ на вопрос можно получить прочитав статью
12. пользователь 16.10.12 15:14
Сообщение было скрыто модератором.
...
13. Alex_grem 256 16.10.12 15:36 Сейчас в теме
(12) Eugeneer, спасибо за рекламу.
Готового решения Вы тут не найдете - я описал методику, а использовать ее или нет каждый решает сам
ak0710; Трактор; kabanoff; +3 Ответить
15. nafa 657 20.10.12 12:55 Сейчас в теме
(12)

Вы когда статьи/комменты про загрузки с XLS пишете, указывайте, какая ситуация.
Одно дело когда надо есть разовая задача, надо разово загрузить файл, ту же номенклатуру от поставщика, и пофиг что он загрузится на 80%, все равно когда будут конкретные документы вводиться все будет проверяться и исправляться. Тут кончено можно и с диска ИТс обработку взять.

И совершенно другое дело когда реально нужна система, работающая с минимальным участия человека. И когда сбой в работе означает реальные убытки, за которые кому-то придется заплатить.
Ну какие обработки с диска ИТС, какие платные решения.

Во-первых XLS это изначально черти что, где дата/число может оказаться строкой, где ячейка может быть с числом а может быть с формулой, в ячейке может быть забито 2,42, а может быть забито 2,416 и формат с двумя знаками, еще строку вместо того, чтобы удалить, могли скрыть и т.п.
Понятно, что нормальные люди используют четко структурированные форматы, пусть даже и примитивнейший DBF, хоть он и придуман 40 лет назад, но по крайней мере 0 там всегда 0, а 1 там всегда 1 безо всяких XSD схем, а 4х имеющихся там типов данных практически на всех хватает.
Но иногда просто вариантов нет, сейчас повальная мода на веб-приложения, например АШАН дает поставщикам расшифровки платежа и поставки на сайте в видет XLS или HTML. Вместо того, чтобы дать людям возможность сделать всего 2 примитивнейших http запроса. одним давать платежи, вторым неотфактуровки опять же в нормальном формате, безо всяких веб-интерфейсов, интерфейс и сами какой надо сделаем.

Во-вторых XLS изначально допускает совершенно произвольные изменения, типа колонку убрать колонку добавить где-то просто комментарий вписали и т.п. И их еще заметить надо прежде чем что-то грузить.

В третьих, это хорошо, когда вы просто справочник грузите. А когда документы, причем с перекрытием по времени (т.е. в исходном файле есть уже документы, которые были в предыдущем файле и которые загружены в систему). Да еще поставщик файла какие-нибуль коды поменял. И нужно проверять корректность данных да если надо еще и удаления правильные делать ?

Я к тому, что в большинстве реальных ситуаций смысла возиться с типовыми обработками нет никакого вообще смысла. Все равно придете к тому что на каждый чих будете вставлять программный код. И реально быстрее написать программу, чем пытаться что-то настроить.
18. пользователь 20.10.12 16:10
Сообщение было скрыто модератором.
...
19. Alex_grem 256 20.10.12 18:28 Сейчас в теме
(18) Eugeneer, я понял, что надо купить вашу обработку и жизнь наладиться. Обещаю, как только заработаю куплю =))
20. пользователь 21.10.12 05:17
Сообщение было скрыто модератором.
...
31. ZVN 122 06.05.13 18:34 Сейчас в теме
(15) nafa,
Сильно сказано
<quote>
Понятно, что нормальные люди используют четко структурированные форматы, пусть даже и примитивнейший DBF, хоть он и придуман 40 лет назад, но по крайней мере 0 там всегда 0, а 1 там всегда 1 безо всяких XSD схем, а 4х имеющихся там типов данных практически на всех хватает.
</quote>
Но за время работы с 1С Предприятие 7.7 файловый вариант DBF, я не раз при переносе данных обнаруживал вместо числа текст, хотя он и записан как число т.е. например значение 200 становилось числом только после того когда его ручками перебивали в БАЗЕ. Я так и не понял причину этого явления. Так что нужно всегда прикладывать голову к любой обработке.
10. Yashazz 4709 16.10.12 13:26 Сейчас в теме
Уже вроде были такие предложения, и готовые решения на основе Конвертации тоже были. Нэ?
11. Alex_grem 256 16.10.12 13:29 Сейчас в теме
(10) Yashazz, я не нашел, поэтому написал, может кому пригодится схема загрузки
16. KliMich 20.10.12 13:09 Сейчас в теме
Хорошая статья.
Применю на практике
17. borrman 20.10.12 13:23 Сейчас в теме
Применимо. Буду реализовывать. Часто приходится грузить из XLS всякую ерунду и постоянно надо писать разные функции по поиску/созданию объектов. В КД это делать гораздо проще.
21. vervolf9 21.10.12 08:10 Сейчас в теме
А если использовать внешние источники данных? В новых релизах платформы данный механизм есть.
22. Bacemo 21.10.12 10:53 Сейчас в теме
полностью согласен с echo77 . Лучше обработку с ИТС загрузка данных из табличного документа
26. borrman 24.10.12 20:29 Сейчас в теме
(22)
Она не всегда подойдет. У меня в XLS файле было 3 справочника и документы установки цен номенклатуры за разные периоды.
как-то типовой обработкой это загружать не очень удобно.
23. Region102 22.10.12 06:06 Сейчас в теме
Здесь многие говорят о не целесообразности метода, но он интересен, не понимаю, почему 1с сама не развивает КД дальше и людям приходится выдумывать разные методики загрузки из других источников. Те, кто говорит, что работать с ней сложно и не понятно, просто не знают ее. По опыту могу сказать, что если нужно что-то перебросить между не типовыми конфигурациями с минимальными затратами по времени, то это однозначно КД.
24. Lyns_owner 355 23.10.12 02:48 Сейчас в теме
А извращенцев и среди 1с-ков хватает, я погляжу)
25. borrman 24.10.12 20:26 Сейчас в теме
Еще раз спасибо за идею
Чтобы тут не говорили - реализовал 2 загрузки данных - одну из XLS вторую из XML через КД. Очень удобно - не нужно делать всякие поиски и прочее. Особенно мне понравилось загружать иерархический справочник из XML.
27. ~gekK@~ 26.10.12 10:35 Сейчас в теме
возможно пригодится. надо взять на заметку
28. p1l1gr1m 27.10.12 01:42 Сейчас в теме
29. Новенький_2209 04.11.12 00:16 Сейчас в теме
Отличная идея, возьму на вооружение!
30. Zas1402 06.11.12 15:25 Сейчас в теме
32. пользователь 18.05.14 16:48
Сообщение было скрыто модератором.
...
33. пользователь 18.05.14 16:51
Сообщение было скрыто модератором.
...
34. Saldor 29.05.16 04:29 Сейчас в теме
Вот, такой документ можно будет добавить в 1с? И есть еще второй документ, когда сруктура тоже разрушена, но размеры как на картинке, не столбиком идут, а в одной ячейке, выпадающем списком?
Оставьте свое сообщение