Если вам часто приходится выгружать данные из базы в файлы excel для их анализа, то обработка "Универсальная выгрузка данных в excel" поможет вам.
Обработка "Универсальная выгрузка данных в excel" позволяет создать неограниченное количество заданий на выгрузку из базы 1С8 в файлы excel. Для выгрузки в excel используется метод для COM объекта с использованием объекта COMSafeArray, что позволяет выгружать данные на существующие листы книги excel и подхватывать данные в с этих листов в формулах на других листах, или в других файлах excel.
Обработка работает в конфигурациях на управляемых формах и добавляется в разделе «Дополнительные отчеты и обработки». При настройке заданий запрос можно вставлять как копированием, так и вызовом конструктора запросов. Результат запроса текущего задания можно тут же просмотреть с помощью встроенной консоли запросов.
В заданиях можно использовать параметры стандартного периода &ДатаНачала и &ДатаОкончания. Если вы хотите использовать другие параметры для дат в запросах, то называйте их по другому. Кроме того можно задать правила вычисления параметров с помощью кода 1С. Таблица заданий сохраняется в файл xml и может быть загружена при дальнейшей работе.
При запуске обработки открывается окно с таблицей заданий для выгрузки. В открывшемся окне заполняем период выгружаемых данных (при необходимости получения данных с отбором по периоду, причем для того, чтобы использовать этот параметры в запросе должны иметь имена &ДатаНачала и &ДатаОкончания), и добавляем новые задания выгрузки (кнопка «Добавить задание»), или загружаем ранее сохраненные задания для выгрузки (кнопка «Загрузить задания для выгрузки»)
При добавлении нового задания нажимаем кнопку «Добавить задание», и в новой строке выбираем файл выгрузки в колонке Полное имя файла
В колонке «Лист» вносим имя листа, на который будут выгружены данные (если не заполнить в начало файла excel будет вставлен лист с именем Выгрузка_dd_MM_yyyy_HH_mm_ss), и в колонке «Запрос» вставляем текст запроса (для открытия конструктора запросов нажимаем кнопку Выбрать в поле запроса, или F4), после чего в поле Параметры будут вставлены параметры из запроса. Для заполнения параметров в колонке «Параметры» нажимаем кнопку Выбрать и, в открывшемся окне, заполняем значения параметров, причем нажав соответствующие галочки мы можем вводить параметры в списке и выбирать тип при вводе параметров составного типа
Параметры запроса можно вносить как непосредственно в виде значений, или списка значений, так и програмно. Для этого открываем список параметров для соответствующего задания и ставим галочку «Вычислять параметры», после чего заполняем код в колонке «Правило вычисления параметра». Заполнение параметров можно проверить нажав кнопку «Вычислить параметры», после чего значение параметра будет заполнено результатом выполнения кода из колонки «Правило вычисления параметра» из переменной ЗначениеПараметра. В дальнейшем, чтобы при выгрузке в excel параметр заполнялся каждый раз програмно ставим галочку в колонке «Вычислять»
Например, для того, чтобы получать продажи за вчерашний день заполняем параметры как на картинке
Для того, чтобы просмотреть результат запроса текущего задания нажимаем кнопку «Выполнить запрос текущего задания», после чего результат запроса отображается в поле «Результат запроса текущего задания».
После заполнения всех строк с заданиями нажимаем кнопку «Выгрузить в excel». В строках, отмеченных галочками, данные запросов выгружаются в выбранные excel-файлы, в выбранные листы, причем если на других листах, или в других книгах есть формулы, связанные с выбранными листами, при открывании они пересчитываются новыми значениями.
Для Сохранения Списка заданий на выгрузку в excel-файлы нажимаем кнопку «Сохранить задания для выгрузки».
Обработка проверена на 1С:Предприятие 8.3 (8.3.18.1483) в конфигурациях 1С:Комплексная автоматизация 2 (2.4.13.209); Бухгалтерия предприятия , редакция 3.0 (3.0.100.16); Управление торговлей 11.4 (11.4.13.271); Зарплата и управление персоналом, редакция 3.1 (3.1.19.48)
В последней версии обработки добавлена простая консоль запросов и возможность вводить код 1С для вычисления параметров запросов.