Перейти к содержимому
Tez Base

Библиотека на Инфостарте

Пришлите эксель, и чтобы на втором листе была сводная

Листы 1С соберёт и сама, пакетом табличных документов, а сводную таблицу не делает вовсе. Дальше обычно вспоминают про Excel.Application, которого на сервере нет, а под Linux не будет никогда.

Библиотека платная, 10 SM. Если отчётность в Excel нужна регулярная и сложная, мы делаем её как работу, вместе с выгрузкой по расписанию.

Задача звучит безобидно и ломает весь отчёт: клиент просит сводную на отдельном листе. Платформа так не умеет, а привычный обходной путь через COM-объект Excel требует установленного Excel на том компьютере, где формируется файл. На сервере его нет и быть не должно.

Библиотека не заменяет табличный документ, а дописывает в его готовый файл то, чего он не умеет. Оформление, которое платформа уже сделала, остаётся на месте.

Файл пишет сервер 1С: без Excel, без COM, без внешних компонент, в фоновом задании и под Linux.

Шестнадцать функций, четыре группы

Аналитика

Сводная таблица Excel на отдельном листе с полем строк, полем колонок и операцией: сумма, количество, среднее, максимум, минимум. Диаграммы: гистограмма, линейчатая, график, круговая.

Оформление

Условное форматирование с восемью операторами и своими цветами, цветовая шкала градиентом, гистограмма внутри ячейки, значки-светофоры и стрелки, которые сами раскладываются по третям диапазона.

Работа с данными

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

Протокол вместо тишины

Функция сохранения возвращает протокол: видно, что применилось, а что нет, и почему.

Как выглядит вызов

  1. 01

    Получить пустой набор настроек

    ФорматированиеXLSX.НовыеНастройки() - первая строка любого вызова.

  2. 02

    Описать, что добавить

    ФорматированиеXLSX.ДобавитьСводнуюТаблицу(Настройки, "A2:E10", "Склад", "Сумма") - диапазон, поле группировки и операция. Лист под сводную библиотека создаёт сама.

  3. 03

    Сохранить

    ФорматированиеXLSX.Сохранить(ТабДок, "D:\отчёт.xlsx", Настройки) - применяет набор к табличному документу и пишет файл. Три строки на всю задачу.

Не получается самим? Напишите, разберёмся

Связываем 1С с чем угодно: другими базами 1С, сайтами, CRM, банками, госсистемами. Чиним обмены, которые "отваливаются" и копят очереди.

Стоимость
450 000 - 600 000 ₸ТЗ и диагностика, без налогов; типовая задача закрывается в тот же срок, подсистема "ОбменПоHTTP" под ключ - по смете единым счётом

Разборы по теме

Сводная таблица в XLSX из 1С: подготовка и проверка выгрузки

Как подготовить данные для сводной таблицы Excel из 1С без COM. Заголовки, типы ячеек, диапазон и проверка итогов готовой книги.

Регламентное задание 1С обрабатывает не все записи и не выдаёт ошибок: проверка и исправление цикла

Задание прошло, журнал чистый, счётчик обработанных сходится, а утром часть записей по-прежнему ждёт обработки. Частая причина: постраничный обход со смещением по набору, который сам сжимается от обработки. Как подтвердить это холостым прогоном, сколько теряется при разных размерах страницы, как переписать цикл и чем платить за исправление.

Отчёт в хранилище не сходится с 1С: какие правки теряет выгрузка и как сверять по дням

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

Обмен 1С через FTP рвётся на большом пакете: почему он не докачивается и как сделать, чтобы докачивался

Филиал на слабом канале, пакет обмена на сотни мегабайт, и каждая попытка начинает с нулевого байта. Разбираем, что делает штатный FTP-транспорт БСП 3.1, почему платформа не умеет дописывать файл на FTP, откуда на сервере берётся обрезанный пакет под настоящим именем и как устроена доставка частями с проверкой SHA-256. С кодом и тремя прогонами с настоящим обрывом.

Карточка на Инфостарте →

Частые вопросы

В платформе есть ПакетОтображаемыхДокументов. Зачем тогда библиотека?

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

Почему не макрос VBA или LibreOffice без интерфейса?

Оба пути требуют офис на той машине, которая пишет файл, а Excel.Application к тому же падает в регламентном задании. Библиотеке кроме 1С ничего не нужно. Если ставить офис на сервер разрешено, запуск LibreOffice без интерфейса тоже рабочий вариант, и он короче.

Кто считает цифры в сводной и откроется ли она в LibreOffice или Р7-Офисе?

Считает офис получателя при открытии: в файл уходит описание сводной без посчитанных чисел. В Excel 16 проверено, итоги сошлись с источником до копейки, в LibreOffice Calc и Р7-Офисе не проверялось. Пока файл в защищённом просмотре, лист сводной пустой, после разрешения редактирования она рисуется.

Умеет ли библиотека писать формулы и дописывать строки в готовый xlsx?

Формулы умеет: в ячейку встаёт настоящая формула Excel, итог пересчитается при изменении данных, а недостающую ячейку библиотека создаст сама. Открыть готовый xlsx и дописать в него строки нельзя, чтения xlsx в ней нет, основой всегда служит табличный документ.

На какой платформе проверена и как ставится?

Сборка проверена на 8.3.27.1606, прогон на 8.3.20.2290, формы управляемые, конфигурация любая. Основной способ - расширение, оно ничего не заимствует из типовой и только добавляет свой общий модуль, так что обновления конфигурации его не задевают. Где расширения запрещены регламентом, те же вызовы работают через внешнюю обработку.

Куда сохраняется файл и какие нужны права?

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

Бесплатный экспресс-аудит вашей 1С

За 1-2 дня посмотрим вашу базу, найдём, где теряется производительность, и скажем, что с этим делать. Без обязательств.

Получить бесплатный экспресс-аудит

Обсудим задачу

Быстрее всего в WhatsApp: напишите пару строк о задаче, ответим в течение рабочего дня.

[email protected]

Удобнее оставить заявку через форму