1с 8.3 выгрузка номенклатуры. Выгрузка номенклатуры

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

  1. Наименование.
  2. Артикул.
  3. Вид номенклатуры.
  4. Тип номенклатуры.

Вот так будет выглядеть таблица Excel после выгрузки:

Рассмотрим два способа решения: без программирования и с участием программиста.

Программируем

Чтобы выгрузить номенклатуру в XLS-файл сформируем запрос к базе данных для получения номенклатуры и поместим результат в табличную часть обработки выгрузки. Вот форма обработки:

По нажатию на кнопку "Заполнить" заполняется табличная часть "ДанныеВыгрузки" обработки, у которой добавлены соответствующие реквизиты. Обработчик этой кнопки имеет следующий программный код:

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

Здесь все должно быть понятно. Самое интересное начинается по нажатию на кнопку "Сохранить". Сначала вызывается диалог выбора пути для сохранения таблицы XLS. Затем, используя данные в табличной части обработки, заполняется табличный документ по созданному ранее макету. Макет, добавленный в обработку, следующий:

Процедура ОсновныеДействияФормыДействие(Кнопка) // Вызываем диалог выбора файла для сохранения XLS-таблицы Режим = РежимДиалогаВыбораФайла. Сохранение; ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим) ; ДиалогОткрытияФайла. ПолноеИмяФайла = " " ; ДиалогОткрытияФайла. МножественныйВыбор = Ложь ; Текст = " ru = " " Таблица XLS " " ; en = " " XLS table " " " ; Фильтр = НСтр(Текст) + " (* . xls) |* . xls " ; ДиалогОткрытияФайла. Фильтр = Фильтр; ДиалогОткрытияФайла. Заголовок = " Выберите путь для сохранения " ; Если ДиалогОткрытияФайла. Выбрать() Тогда ПутьКФайлу = ДиалогОткрытияФайла. ПолноеИмяФайла; Иначе Текст = " Путь сохранения не выбран! " ; Предупреждение(Текст) ; Возврат ; КонецЕсли ; // Создаем табличный документ ТаблицаСохранение = Новый ТабличныйДокумент; // Получаем макет заполнения и области макета Макет = ЭтотОбъект. ПолучитьМакет(" ТаблицаВыгрузки " ) ; ОбластьШапка = Макет. ПолучитьОбласть(" Шапка " ) ; ОбластьСтрока = Макет. ПолучитьОбласть(" Строка " ) ; // Выводим данные в табличный документ ТаблицаСохранение. Вывести(ОбластьШапка) ; Для Каждого Стр Из ДанныеВыгрузки Цикл ЗаполнитьЗначенияСвойств(ОбластьСтрока. Параметры, Стр) ; ТаблицаСохранение. Вывести(ОбластьСтрока) ; КонецЦикла ; // Сохраняем табличный документ на диск ТаблицаСохранение. Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента. XLS) ; КонецПроцедуры

После сохранения, на диске буде файл таблицы Excel со списком выгруженной номенклатуры. Пример файла Вы могли видеть в начале статьи.

Пользователь может сам

На самом деле участи программиста для подобной задачи не нужно. Пользователь все сам может сделать без каких-либо хитростей.

Например, перейдя в список номенклатуры и выполнив команду "Все действия" -> "Вывести список" из списка номенклатуры, пользователь получит список номенклатуры в сформированном табличном документе.

После того, как табличный документ будет сформирован, нажав на кнопку "Сохранить" или через меню "Файл->Сохранить" пользователь может записать табличный документ в файл XLS указав его имя и конечный каталог.

Вот и все! Никакой обработки для выгрузки не нужно. Конечно, если у вас достаточно простой случай с выгрузкой данных.

Так все просто?

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

Обработку с примером из статьи Вы можете скачать по ссылке .

Наверное, каждый специалист по 1С сталкивался с ситуацией необходимости перенести данные из одной информационной базы в другую. В том случае, когда конфигурации разные, приходится писать правила конвертации данных. Данные правила создаются в конфигурации 1С «Конвертация данных».

Так же данные можно переносить при помощи . Во многих конфигурациях 1С 8.3 есть типовой функционал для настройки синхронизации данных между различными конфигурациями и бесшовная интеграция с 1С Документооборот.

Но когда данные необходимо перенести данные между абсолютно идентичными конфигурациями, можно упростить себе задачу и воспользоваться стандартной обработкой выгрузки и загрузки через XML. Обратите внимание, что такой способ, как и конвертация данных сопоставляет между собой объекты по уникальному идентификатору (GUID), а не по наименованию.

Скачать данную обработку можно на диске ИТС, либо по ссылкам:

Она является универсальной и подойдёт для любой конфигурации.

Рассмотрим пример выгрузки справочника «Номенклатура» из одной информационной базы 1С 8.3 Бухгалтерия 3.0 в другую. Обязательным условием будет отбор по родителю (группе) «Деревообработка».

Выгрузка данных из 1С в XML

Зайдите в ту информационную базу, откуда будут выгружаться данные (источник). Обязательно проверьте их, предусмотрев все возможные условия во избежание возникновения нежелательных последствий.

Откройте обработку выгрузки и загрузки данных XML (Ctrl+O).

Нас интересует вкладка «Выгрузка». Первым делом укажите имя файла, в который будут выгружены данные и путь для сохранения. В данном случае данные выгружаются «В файл на сервере».

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

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

Колонка «Выгружать при необходимости» означает, необходимо ли перегружать данный объект, если на него ссылается реквизит перегружаемого нами справочника. Например, позиция перегружаемой вами номенклатуры имеет такую единицу измерения, которой нет в базе – приемнике. Если напротив справочника с единицами измерения будет установлен флаг в колонке «Выгружать при необходимости», создастся новая позиция. В противном случае в качестве значения реквизита будет надпись «<Объект не найден>» и его уникальный идентификатор.

В простом случае без отборов настройка перегрузки номенклатуры будет выглядеть следующим образом.

В данном примере нужно отобрать только ту номенклатуру, которая находится в папке «Деревообработка».

Аналогичная обработка для 8.2 позволяет в удобной форме устанавливать отборы для каждого объекта конфигурации. В 8.3, к сожалению, такого функционала нет. Одним из вариантов выхода в данной ситуации будет отбор необходимых позиций на вкладке «Дополнительные объекты для выгрузки».

Добавить объекты здесь можно как вручную (кнопка «Добавить»), так и запросом («Добавить запросом…»). При большом их количестве предпочтительнее второй вариант.

В данном случае запрос будет следующим. Заполните параметры, выполните запрос, проверив данные, и нажмите на кнопку «Выбрать результат».

После того, как вы указали все необходимые объекты и дополнительные элементы для выгрузки, нажмите на кнопку «Выгрузить данные». Они попадут в XML файл, имя и путь нахождения которого указывали ранее. Результаты данной операции отобразятся в сообщениях.

В данном примере необходимо было выгрузить только 3 позиции, но выгрузилось пять. Всё потому, что напротив справочника «Номенклатура» в колонке «Выгружать при необходимости» был установлен флаг. Вместе с нужными позициями перегрузились их родители.

Загрузка справочника из XML

После успешной выгрузки данных из конфигурации – источника в XML файл, откройте базу – приемник. Структура объектов и их реквизитов должны совпадать между собой. В данном случае перенос осуществляется между двумя типовыми конфигурациями 1С:Бухгалтерия 3.0.

Откройте обработку в базе – приемнике. Данная обработка используется как для выгрузки, так и для загрузки данных. Перейдите на вкладку «Загрузить» и укажите путь к XML файлу, в который ранее были выгружены данные. После этого нажмите на кнопку «Загрузить данные».

Результат загрузки отобразится в сообщениях. В нашем случае всё прошло успешно.

Справочник «Номенклатура» в базе – приемнике не был заполнен. Теперь в нем пять элементов: три номенклатурных позиции и две группы.

Очень часто у пользователей возникают задачи по выгрузке номенклатурного справочника во внешние файлы (чаще всего Excel или XML). Тут есть простое решение "в лоб" - воспользоваться кнопкой Вывести список в справочнике, однако есть проблемы:

  • очень ограниченное количество реквизитов (конечно их можно добавить, но это отдельная и непростая работа),
  • список нельзя сохранить в XML,
  • в нем нет данных о ценах и складском остатке.

В связи с этим родилась идея создания данного продукта.

Выгрузка номенклатуры в Excel

На форме обработки выбираем источник для формирования названия колонок файла:

Выбираем нужный тип выгрузки:


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


В нижней части формы из предложенного списка реквизитов выбираем те, значения которых нужно выгружать в файл (с помощью синих стрелок можно настроить нужный порядок колонок будущего файла Excel). Помимо стандартных свойств номенклатуры, можно выгружать дополнительные реквизиты, а также данные о цене и свободном складском остатке:


После всех настроек нажимаем Выгрузить , система предлагает указать папку для сохранения файла:


По окончании выгрузки появляется протокол:


Получился вот такой файл:


Выгрузка номенклатуры в XML

Выгрузка в XML как правило требуется для обмена со сторонними информационными системами (чаще всего это сайт), обработка хорошо подходит и для таких задач.

Выбираем тип выгрузки, теперь для примера названия полей в файле будем брать из псевдонима. На этот раз выгружаем всю номенклатуру, имеющуюся на остатках конкретного склада и на которую заведены розничные цены.

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


В результате получается такой файл XML:


Настройки таблицы при закрытии запоминаются и при следующем открытии восстанавливаются автоматически.

Релиз 1.0.1.2 от 07.04.2019

Появилась возможность выгружать отдельными колонками штрихкод и характеристики номенклатуры.

Релиз 1.0.1.3 от 13.04.2019

Добавлена вторая версия обработки, которая позволяет делать выгрузку номенклатуры из табличной части выбранных документов информационной базы (одного или нескольких).


При открытии формы выгрузки автоматически создается отбор по номенклатуре из документа (таблица отборов при этом скрыта).


Разумеется, в своей базе вы сможете пользоваться обоими вариантами обработки.

Очень часто требуется получить данные из 1С 8.3 и сохранить информацию во внешний файл, иными словами, сделать выгрузку из 1С предприятия. Задача практически всегда выполнима без привлечения программистов 1С.

Рассмотрим ряд полезных советов, с помощью которых Вы сможет выгрузить данные из 1С во внешнюю информационную систему.

В 1С есть несколько методов, с помощью которых Вы можете получить информацию без привлечения специалистов:

  • Выгрузка базы из 1С 8.3 целиком — для последующей загрузки на другом компьютере
  • Сохранение отчетов и печатных форм в Excel, Word или PDF
  • Выгрузка таблиц из 1С
  • Получение информации с помощью консоли запросов

Подробнее о них:

Как выгрузить базу из 1с 8.3 целиком (в файл.dt)

Для этого понадобится зайти в режим конфигуратора, затем в главном меню выбрать пункт «Администрирование» — «Выгрузить информационную базу»:

Затем потребуется только указать название будущего файла и его расположение на диске.

Для последующей загрузки в другую базу нажмите на кнопку «Загрузить информационную базу» и выберите предварительно выгруженный файл.

Выгрузка из 1С в Excel отчетов и печатных форм

Этот способ универсальный и очень простой. Для этого достаточно при открытии печатной формы или отчета.

Например, открываем печатную форму ТОРГ 12, нажимаем ctrl+S (или в меню Файл – Сохранить как) и выбираем тип файла и его имя:

Для действует та же система – отчет выгружается в два клика:

Получите 267 видеоуроков по 1С бесплатно:

Доступно сохранение в основные форматы – excel, word, pdf, html, txt и тд.

Выгрузка таблиц из 1С 8.3

Часто встречаются такие банальные задачи, как «получить список платежек за текущий год», «выгрузить книгу покупок или продаж» или «выгрузить товары из накладной №256». Решить такие задачи достаточно просто.

Например, мне необходимо получить все поступления от контрагента «Вектор» с суммой более 1000. Откроем форму списка и установим нужные отборы в списке:

Система предложит вариант вывода – в табличный документ или текстовый, выберем табличный. Программа 1С выведет информацию в такой табличный документ, который, подобно отчетам, можно сохранить в нужный нам формат:

Подобные действия можно произвести практически для любой табличной части в 1С 8.2. Например, нам потребовалось выгрузить список товаров из поступления № МСК00003, не проблема. Делается это очень просто – открываем документ, вызываем контекстное меню и через пару кликов получаем нужную выгрузку в нужном формате:


Выгрузка в Excel журнала проводок из 1С:

Получение информации с помощью консоли запросов

Однако не вся информация может быть найдена в простой табличной части 1С 8.2. Иногда требуется собрать данные из нескольких источников данных, соединить их по некоторым полям.

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

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

Полученную таблицу можно также выгрузить в нужный формат файла:

Загрузить полученные данные можно в другую базу 1С с помощью « «. Смотрите видеоинструкцию на примере номенклатуры:

При создании новой базы данных в 1С: Предприятие у администратора, как правило, возникает вопрос: можно ли заполнить справочник Номенклатура программно из табличного документа, не тратя время на заполнение вручную? Рассмотрим самый простой способ решения задачи.

Вам понадобится:
табличный файл с данными
обработка загрузки
база данных

Инструкция:
1
Открываем табличный файл с данными, например Excel или *.mxl. Он должен содержать, как минимум, наименования элементов справочника. Если есть какая-то другая информация, например, артикул и единицы измерения, ее тоже можно будет загрузить. Допустим, в нашем документе 3 колонки: наименование, полное наименование и артикул. Все элементы являются товаром, а не услугой и измеряются в штуках.
2
Обработку для загрузки можно найти на диске ИТС. Запускаем диск, заходим в раздел Технологическая поддержка, выбираем пункт 1С: Предприятие 8. Далее Универсальные отчеты и обработки -> Загрузка данных из табличного документа -> Описание и установка внешней обработки «Загрузка данных из табличного документа». Нажимаем ссылку «Копировать» и сохраняем обработку в выбранную папку.
3
В нашей базе данных открываем полученную обработку. В поле «Режим загрузки» по умолчанию стоит «Загрузка в справочник». В поле «Вид справочника» устанавливаем «Номенклатура». После чего нажимаем кнопку «Открыть файл…». В открывшемся окне находим табличный документ и выбираем его. Информация из файла отобразится в табличной части обработки.
4
Переходим на вкладку «Настройка». В поле «Первая строка данных табличного документа» ставим 1, если в нашем документе нет шапки, или 2, если шапка есть и данные начинаются со второй строки. Далее в пункте «Нумерация колонок» выбираем «Ручная нумерация колонок».
5
Снимаем все флажки с помощью кнопки слева от Нумерации колонок. Устанавливаем флажки в строках «Наименование», «Полное наименование» и «Артикул», режим загрузки оставляем «Искать», номера колонок ставим соответственно номерам столбцов в табличном документе. В нашем случае это 1, 2 и 3.
6
Если мы загружаем элементы в папку, ставим флажок в строке «Родитель», режим загрузки выбираем «Устанавливать» и в колонке «Значение по умолчанию» выбираем нужную нам группу справочника.
7
И, наконец, выберем единицы измерения и ставку НДС, иначе придется устанавливать их вручную для каждого элемента справочника. Установим флажки в строках «Базовая единица измерения» и «Ставка НДС», режим загрузки «Устанавливать», в поле «Значение по умолчанию» - «шт» и «18%» соответственно.
8
По окончании настройки переходим обратно, за закладку «Табличный документ» и нажимаем кнопку «Контроль заполнения». Если ошибок не выявлено, нажимаем «Загрузить». Загрузка завершена.