Библиотека на Инфостарте
Пришлите эксель, и чтобы на втором листе была сводная
Листы 1С соберёт и сама, пакетом табличных документов, а сводную таблицу не делает вовсе. Дальше обычно вспоминают про Excel.Application, которого на сервере нет, а под Linux не будет никогда.
Библиотека платная, 10 SM. Если отчётность в Excel нужна регулярная и сложная, мы делаем её как работу, вместе с выгрузкой по расписанию.
Задача звучит безобидно и ломает весь отчёт: клиент просит сводную на отдельном листе. Платформа так не умеет, а привычный обходной путь через COM-объект Excel требует установленного Excel на том компьютере, где формируется файл. На сервере его нет и быть не должно.
Библиотека не заменяет табличный документ, а дописывает в его готовый файл то, чего он не умеет. Оформление, которое платформа уже сделала, остаётся на месте.
Файл пишет сервер 1С: без Excel, без COM, без внешних компонент, в фоновом задании и под Linux.
Шестнадцать функций, четыре группы
Аналитика
Сводная таблица Excel на отдельном листе с полем строк, полем колонок и операцией: сумма, количество, среднее, максимум, минимум. Диаграммы: гистограмма, линейчатая, график, круговая.
Оформление
Условное форматирование с восемью операторами и своими цветами, цветовая шкала градиентом, гистограмма внутри ячейки, значки-светофоры и стрелки, которые сами раскладываются по третям диапазона.
Работа с данными
Выпадающий список прямо в ячейке через проверку данных, автофильтр на строке заголовков, закрепление областей.
Протокол вместо тишины
Функция сохранения возвращает протокол: видно, что применилось, а что нет, и почему.
Как выглядит вызов
- 01
Получить пустой набор настроек
ФорматированиеXLSX.НовыеНастройки() - первая строка любого вызова.
- 02
Описать, что добавить
ФорматированиеXLSX.ДобавитьСводнуюТаблицу(Настройки, "A2:E10", "Склад", "Сумма") - диапазон, поле группировки и операция. Лист под сводную библиотека создаёт сама.
- 03
Сохранить
ФорматированиеXLSX.Сохранить(ТабДок, "D:\отчёт.xlsx", Настройки) - применяет набор к табличному документу и пишет файл. Три строки на всю задачу.
Özünüz həll edə bilmirsiniz? Yazın, birlikdə baxaq
1C-i hər şeylə əlaqələndiririk: digər 1C bazaları, saytlar, CRM, banklar, dövlət sistemləri. "Qopan" və növbə yığan mübadilələri təmir edirik.
- Qiyməti
- 450 000 ₸-dənmübadilə altsisteminin tam tətbiqi; vergilərsiz, nöqtəvi tapşırıqlar - daha ucuz
Mövzu üzrə təhlillər
Сводная таблица в XLSX из 1С: подготовка и проверка выгрузки
Как подготовить данные для сводной таблицы Excel из 1С без COM. Заголовки, типы ячеек, диапазон и проверка итогов готовой книги.
Регламентное задание 1С обрабатывает не все записи и не выдаёт ошибок: проверка и исправление цикла
Задание прошло, журнал чистый, счётчик обработанных сходится, а утром часть записей по-прежнему ждёт обработки. Частая причина: постраничный обход со смещением по набору, который сам сжимается от обработки. Как подтвердить это холостым прогоном, сколько теряется при разных размерах страницы, как переписать цикл и чем платить за исправление.
Отчёт в хранилище не сходится с 1С: какие правки теряет выгрузка и как сверять по дням
Ночная выгрузка из 1С во внешнюю базу зелёная, а остаток за март в отчёте не тот. Почти всегда это правка задним числом, до которой не дотянулось окно выгрузки. Разбираем по типам правок, какая проверка что видит: число строк, паспорт дня, версии документов, сверка самого приёмника. С запросом 1С, SQL для приёмника на MS SQL и замерами на 10 миллионах строк.
Обмен 1С через FTP рвётся на большом пакете: почему он не докачивается и как сделать, чтобы докачивался
Филиал на слабом канале, пакет обмена на сотни мегабайт, и каждая попытка начинает с нулевого байта. Разбираем, что делает штатный FTP-транспорт БСП 3.1, почему платформа не умеет дописывать файл на FTP, откуда на сервере берётся обрезанный пакет под настоящим именем и как устроена доставка частями с проверкой SHA-256. С кодом и тремя прогонами с настоящим обрывом.
Tez-tez verilən suallar
В платформе есть ПакетОтображаемыхДокументов. Зачем тогда библиотека?
Пакет собирает книгу из готовых табличных документов, по листу на каждый, и на сервере тоже пишет. Сводную он не сделает: это объект 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С, так что путь указывается в файловой системе сервера, и учётной записи службы нужны права на запись в этот каталог. Несколько фоновых заданий могут сохранять файлы одновременно: рабочий каталог у каждого вызова свой.
1C sisteminiz üçün pulsuz ekspress-audit
1-2 gün ərzində bazanıza baxıb, məhsuldarlığın harada itdiyini tapacağıq və nə etmək lazım olduğunu deyəcəyik. Öhdəliksiz.
Tapşırığı müzakirə edək
Ən sürətlisi WhatsApp: tapşırıq barədə bir-iki sətir yazın, iş günü ərzində cavab verəcəyik.