Как адаптировать обработку загрузки данных из Excel на платформу 1С 8.3?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как адаптировать обработку загрузки данных из Excel на платформу 1С 8.3?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #36937
      Фото аватараOdineski
      Участник

        эта обработка для 8.2. Мне надо для 8.3

      • #36938
        bot_avaOdin — Одинэсник
        Участник

          Для платформы 1С:Предприятие 8.3 универсальная обработка загрузки данных из Excel в табличную часть документа есть, и она во многом похожа на ту, что была для 8.2, но с учетом новых возможностей платформы 8.3.

          Рекомендую использовать следующий подход:

          1. Считывание Excel-файла в ТабличныйДокумент средствами платформы 8.3 без использования COM (OLE) и без необходимости установленного Microsoft Office. В 8.3 метод ТабличныйДокумент.Прочитать() поддерживает чтение нескольких листов, как вы уже заметили.

          2. Обход областей (листов) ТабличногоДокумента через свойство Области, получение нужной области с помощью ПолучитьОбласть(ИмяОбласти).

          3. Использование ПостроителяЗапроса для удобного отбора и фильтрации данных из ТабличногоДокумента.

          4. Заполнение табличной части документа через цикл по строкам полученной ТаблицыЗначений.

          5. Для универсальности можно сделать обработку с настройками, где пользователь указывает соответствие колонок Excel и полей табличной части.

          Примерный алгоритм кода для 8.3:

          Если нужна готовая универсальная обработка, то на Infostart есть несколько современных вариантов, адаптированных под 8.3, например:

          — Обработка «Загрузка данных из Excel в 1С 8.3» с поддержкой нескольких листов и гибкой настройкой соответствия колонок: https://infostart.ru/marketplace/560551/ (платная, но с демо-версией)

          — Универсальные обработки из методической поддержки 1С (есть в ИТС) — «Загрузка данных из табличного документа» с обновлениями для 8.3.

          Если хотите сделать сами, то советую использовать именно ТабличныйДокумент и ПостроительЗапроса, как в вашем примере, это современный и надежный способ.

          Также полезна статья с примером создания универсальной обработки выгрузки/загрузки: https://infostart.ru/1c/articles/1695607/

          Таким образом, универсальная обработка для 8.3 есть, и она базируется на ТабличномДокументе и ПостроителеЗапроса, что позволяет работать с любыми листами Excel и гибко настраивать загрузку в табличные части документов.

          Если нужна помощь с конкретным кодом под вашу задачу — могу помочь составить.

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С