Меня зовут Андрей Шантарин, я ИТ-директор на машиностроительном предприятии.
В этой статье разберу ситуацию, знакомую многим производственным компаниям: руководителям нужны управленческие срезы по данным из учётной системы, но в текущей конфигурации 1С нет нужного аналитического функционала.
На практике это часто решается через Excel. Данные выгружаются из 1С, а дальше экономист, аналитик или специалист подразделения вручную собирает сводные таблицы, фильтрует строки, выбирает главное и объясняет руководителю, что происходит.
Пока данных немного, такая схема работает. Но когда в выгрузке появляются тысячи строк, сложная структура заказов, операций и ответственных, Excel становится узким местом. Часть сигнала теряется в ручной обработке, а руководитель получает не данные, а их пересказ.
Системно проблему можно решить через BI-проект или доработку 1С. Но в реальной практике всё упирается в ограничения: бюджет сжат, ресурсы разработки ограничены, а очередь задач в 1С занята более критичными изменениями.
В таких случаях я использую промежуточный подход: лёгкий дашборд поверх выгрузки из учётной системы, собранный под один конкретный управленческий сценарий. Пользователь открывает страницу в браузере, загружает XLSX- или CSV-файл, а приложение локально проверяет структуру, рассчитывает KPI, показывает зоны внимания и даёт перейти к детализации. Отдельной серверной части хранения и расчета данных нет, роли доступа не используются.

Далее я покажу пример создания такого дашборда. Статья будет полезна двум аудиториям:
-
Для руководителей ИТ-функции это пример того, как проверить аналитический сценарий до запуска тяжелого проекта и при этом не разрушить корпоративную архитектуру.
-
Для начинающих аналитиков — пример работы с выгрузкой, KPI, синтетическими данными, контрольными значениями и ИИ-агентом, где агент помогает писать код, но не заменяет постановку задачи и ответственность за смысл показателя.
Кейс
Возьмем производственный пример. Он синтетический: все названия, показатели и строки используются только для демонстрации подхода.
На предприятии АО «Ромашка» применяются сменно-суточные задания — ССЗ. Это рабочий план производства на смену или сутки: какие операции, по каким заказам и в каком объеме должны выполняться на участках.
ССЗ оформляются мастерами в доработанной конфигурации 1С:ERP. Часть операций оформляется по технологии — на основе маршрутов, норм времени и состава работ. Другая часть добавляется вручную, без жесткой связи с технологической информацией.
ИТ-служба наладила передачу технологических данных из PDM-системы в 1С:ERP. Теперь руководство хочет увеличить долю операций, оформленных по технологии, и снизить объем произвольного оформления.
Это значит, что начальнику производства нужно получить ответы на вопросы:
-
какая доля нормо-часов оформлена по технологии;
-
какие операции чаще оформляются не по технологии;
-
кто из мастеров чаще оформляет задания не по технологии;
-
как меняется ситуация по периодам.
Ежемесячно в ССЗ создаётся порядка 10 тысяч операций. Слишком много для того, чтобы аналитик искал отклонения вручную. Разумнее подготовить дашборд и с его помощью провести начальника производства по маршруту: исходные данные → KPI → отклонение → причина → действие.

Данные
Разработку дашборда можно ускорить с помощью ИИ-агента кодинга. Но есть важное ограничение: реальные производственные выгрузки нельзя передавать во внешний ИИ-контур.
В Excel-файле могут быть ФИО сотрудников, номера заказов, подразделения, маршруты, нормы времени, номера документов, коммерческая информация и внутренние комментарии. Даже если удалить фамилии и явные идентификаторы, в файле останутся чувствительные связи: реальные объёмы, редкие операции, структура заказов, последовательность событий и внутренние коды.
Поэтому для разработки нужен не «обезличенный реальный файл», а синтетическая выгрузка.
-
Обезличенный файл — это реальный файл, в котором часть значений удалили или заменили. Он всё равно может сохранять фактические события и связи.
-
Синтетический файл — это файл, созданный заново. Он повторяет форму реальной выгрузки, но не содержит реальных заказов, ФИО, маршрутов и коммерческой информации.
В синтетике важно сохранить проверяемое поведение будущего дашборда:
-
те же колонки, что в реальной выгрузке;
-
похожие типы данных;
-
нормальные и проблемные строки;
-
разные периоды, цеха, заказы, операции и ответственных;
-
пустые или спорные значения, если они бывают в реальности;
-
контрольные отклонения, которые дашборд должен найти;
-
ожидаемые KPI для проверки расчета.

Если дашборд должен находить заказы с низкой долей операций по технологии, такие заказы должны быть в синтетическом файле. Если в реальной выгрузке бывают текстовые числа, лишние пробелы, пустые ответственные или отсутствующие значения, эти случаи тоже нужно заложить в синтетику. Иначе первая версия будет работать только на «идеальном» файле, которого в реальной жизни нет.
Бриф
Одного синтетического файла для ИИ-агента будет недостаточно. Нужно подготовить короткий рабочий бриф: описание задачи, структура загрузочного файла, правила расчета и ограничения.
Иначе агент начнет заполнять пробелы сам: может неверно понять показатель, предложить лишние графики, смешать расчет с интерфейсом или построить экран поверх неправильной модели данных.
Минимальный бриф должен отвечать на несколько вопросов.
|
Блок вопросов |
Что зафиксировать |
|
|
Предметная область |
Что такое ССЗ, зачем нужен дашборд, кто пользователь, какое решение должен поддерживать экран |
|
|
Данные |
Формат файла, листы, обязательные колонки, типы данных, возможные ошибки |
|
|
Метрики (KPI) |
Формула, целевое значение, контрольные значения на синтетическом файле |
|
|
Исключения |
Что делать с пустыми значениями, текстовыми числами, неизвестными статусами |
|
|
Экран |
Главный KPI, отклонение от цели, зоны внимания, фильтры, детализация |
|
|
Границы |
Что входит и что не входит в разрабатываемую версию дашборда |
|
Контекст для такого брифа собирается из двух источников:
-
Сама организация: существующие выгрузки, ручные отчеты, регламенты, опыт экономистов, производственников, диспетчеров и руководителей. Именно здесь находятся реальные правила работы, исключения, привычные формулировки и управленческие вопросы.
-
Внешний исследовательский контур. Если внутри команды не хватает компетенции по проектированию дашбордов, структуре KPI и т.д., можно использовать обычный ИИ-чат как консультанта: попросить его предложить типовую структуру экрана, риски в данных, варианты проверки KPI или критерии приемки. Но в такой чат нельзя передавать реальные выгрузки, ФИО, номера заказов, внутренние документы и коммерческую информацию. Только обобщенное описание задачи и синтетические примеры .
Разработка
После подготовки синтетического файла и постановки можно переходить к работе с ИИ-агентом кодинга.
Краткий глоссарий:
-
ИИ-агент кодинга — инструмент на базе ИИ, который работает с программным проектом: читает файлы, предлагает изменения, пишет код, запускает проверки и объясняет результат.
-
Codex — ИИ-агент OpenAI для работы с программными проектами.
-
Codex App — рабочая среда для работы с Codex в программном проекте. Для аналитика этот инструмент удобен тем, что разработкой можно управлять через привычные сущности: пользовательский сценарий, требования, ограничения, макет, критерии приемки и обратную связь.
-
Skill / скил — заранее описанный сценарий работы агента для типовой задачи. По сути, это способ не давать агенту работать хаотично.
-
Superpowers — методология работы с ИИ-агентами кодинга через набор скилов.
Для создания дашбордов я использую Codex App и скилы Superpowers. Но конкретные инструменты здесь не главное.
Главное — не отдавать агенту один большой запрос вроде «сделай весь дашборд». Лучше вести его по шагам: уточнение задачи → план реализации → контрольные проверки → итерационная реализация → ревью → приёмка → документирование.

Агент кодинга должен использоваться как инструмент сборки и проверки, а не как источник бизнес-логики. Это снизит риск того, что агент начнёт выходить за рамки задачи: добавлять лишние функции, усложнять архитектуру или менять логику без согласования.
|
Этап |
Что делает агент |
Что проверяет человек |
|
Уточнение задачи |
Описывает понимание задачи, риски, вопросы и черновую структуру экрана |
Цель, пользователя, KPI, управленческий сценарий и границы первой версии |
|
План реализации |
Делит работу на небольшие этапы, указывает ожидаемый результат каждого этапа и возможные изменения в проекте |
Нет ли лишней архитектуры, новых KPI и функций за пределами задачи |
|
Контрольные проверки |
Предлагает тесты и контрольные случаи |
Верны ли формулы, исключения и контрольные значения |
|
Реализация по итерациям |
Делает один ограниченный шаг |
Не изменена ли бизнес-логика и не расширены ли границы задачи |
|
Ревью |
Показывает, что реализовано, что проверено и где возможны расхождения |
Соответствует ли результат постановке, ограничениям и ожидаемому поведению |
|
Приемка |
Запускает сборку, расчёты и основные сценарии |
Можно ли показывать результат бизнес-пользователю |
|
Документирование |
Фиксирует правила расчёта, структуру файла и ограничения |
Корректно ли документация описывает фактическую работу дашборда |
Подготовить промпты для каждого из этапов поможет обычный ИИ-чат. Для примера приведу промпт для этапа «Уточнение задачи», составленный с помощью ИИ-чата:
Используй скилы @brainstorming и @frontend-design.Код пока не пиши.Контекст:- нужен локальный дашборд поверх XLSX-выгрузки;- тема: качество оформления сменно-суточных заданий (ССЗ) по технологии;- пользователь: руководитель производства или аналитик;- цель: увидеть, где ССЗ оформляются не по технологии.Главный KPI: доля нормо-часов по технологии = нормо-часы по операциям, оформленным по технологии / все нормо-часы.Функциональные ограничения:- только локальная обработка файла;- бэкенд, база данных, авторизация и внешние API не добавляются;- интеграцию с 1С или другими системами не проектировать;- новые KPI не придумывать;Технические ограничения:- решение должно оставаться клиентским дашбордом, работающим в браузере;- XLSX-файл должен обрабатываться на стороне клиента, без отправки данных во внешний контур;- если проект уже создан, нужно использовать существующий стек и структуру проекта;- не предлагать смену стека, UI-фреймворка или библиотеки визуализации без отдельного обоснования;- не добавлять новые зависимости без объяснения, зачем они нужны;- бизнес-логика расчёта KPI должна быть отделена от интерфейса;- дашборд должен оставаться пригодным для локального запуска или статической публикации.UX/UI-ограничения:- экран должен вести пользователя от общего KPI к причинам отклонения;- главный KPI, отклонение от цели и зоны внимания должны быть видны без лишних переходов;- цветовая индикация не должна быть единственным способом понять статус;- интерфейс должен быть понятен руководителю производства без пояснений разработчика;- детализация должна помогать проверить причину отклонения, а не перегружать экран графиками.Проверь, как ты понял задачу.Покажи:- цель дашборда;- пользователя;- какие управленческие решения должен поддерживать экран;- риски и неоднозначности;- вопросы для уточнения;- предварительную структуру экрана;- какие технические ограничения нужно учесть при проектировании;- что точно не нужно делать в первой версии.
Результат
В результате получается управленческий экран под один конкретный сценарий: быстро увидеть, где ССЗ оформляются не по технологии, найти основные причины отклонений и понять, что нужно изменить, чтобы увеличить долю технологического оформления.
В моём случае этот подход лег в основу линейки дашбордов «Рапорт». Ниже — фрагменты главного экрана дашборда по контролю качества оформления ССЗ.
В верхней части сразу виден главный управленческий сигнал: за выбранный период доля нормо-часов, оформленных по технологии, составляет 48,9% при цели 50%, то есть отклонение — 1,1 п.п. Дальше дашборд не просто показывает процент, а объясняет, где именно теряется технология: проблемный заказ, цех и операция вынесены в блок «Главный вывод».
Сценарий пользователя строится как маршрут от общей картины к действию: руководитель видит KPI и зоны риска, затем переходит к срезам по заказам, цехам, мастерам и операциям, а аналитик может уточнить выборку фильтрами и разобрать конкретное отклонение.
Например, экран позволяет быстро отделить участки, где цель достигнута, от зон ниже цели, увидеть вклад каждого объекта в общий объём нормо-часов и зафиксировать, что требует управленческого разбора на планёрке.
Вы можете пройти путь пользователя самостоятельно c помощью публичной демо-версии «Рапорта»: https://shantarinav.github.io/raport-product-line/ Синтетический файл для проверки сценария ССЗ доступен в репозитории: https://github.com/shantarinav/raport-product-line/tree/main/demo-data/ssz
Внедрение
После разработки дашборда есть риск, знакомый многим ИТ-командам: технически инструмент работает, расчеты сходятся, интерфейс понятен, но в регулярную работу он не попадает.
Причина часто не в качестве решения, а в слабой упаковке. ИТ умеет делать системы, но не всегда объясняет пользователям, зачем новый инструмент нужен, чем он лучше привычного Excel-файла и в какой ситуации его стоит открыть.
Чтобы упаковать дашборд в продукт потребуется:
-
понятное название;
-
короткое описание пользы;
-
инструкция максимум на одну страницу;
-
несколько примеров управленческих вопросов, на которые дашборд отвечает.
Начните с нейминга. Хорошее внутреннее название должно быть коротким, нейтральным и прикладным. Оно должно отвечать на два вопроса: что это за инструмент и какую область он закрывает. Поэтому вместо абстрактных названий вроде «Аналитика 2.0» или «Модуль контроля» лучше использовать формулу: продукт + предметная область Например: «Рапорт по ССЗ».
Продвигать такой инструмент стоит не через перечень реализованных в нем функций, а через конкретный сценарий получения пользы. Например:Теперь можно за пару минут увидеть, где ССЗ оформляются не по технологии, и перейти от общего процента к проблемному заказу, участку или ответственному.
Архитектурная граница
Если внедрение дашборда прошло успешно, пользователи наверняка начнут просить его «немного доработать»: сохранить историю, добавить роли, подтягивать данные из 1С автоматически, разграничить доступ, сделать журнал изменений, настроить регулярную рассылку. Каждая просьба по отдельности выглядит разумной. Но вместе они превращают легкий инструмент в новую информационную систему. Поэтому важно удержать функционал разработанного продукта в разумных архитектурных границах.
Я сформулировал такое правило: легкий дашборд проверяет бизнес-логику, но не берет на себя функции 1С, BI, DWH.
|
Делаем |
Не делаем |
|
Проверяем гипотезу |
Не строим новую учетную систему |
|
Загружаем XLSX/CSV вручную |
Не подключаемся напрямую к учетной системе |
|
Показываем зоны внимания |
Не делаем универсальную BI-модель |
|
Работаем локально в браузере |
Не создаем базу данных |
Вывод
Не каждый запрос бизнеса нужно сразу превращать в BI-проект, доработку 1С или новую информационную систему. Иногда правильный первый шаг — лёгкий дашборд, который проверяет один управленческий сценарий и не выходит за безопасные архитектурные границы.
Для CIO такой подход снижает риск автоматизировать неподтверждённую логику. Сначала мы проверяем KPI, данные, сценарий пользователя и ценность экрана для руководителя. Затем принимаем осознанное решение: оставить инструмент лёгким, встроить логику в BI, перенести её в 1С или включить в развитие корпоративного хранилища.
Для аналитика урок ещё практичнее: не начинайте с диаграмм. Начинайте с того, какое решение должен принять пользователь, какой показатель это решение поддерживает, как он считается, какие ошибки есть в данных и на каких контрольных значениях проверяется результат. Хороший дашборд — это не набор визуализаций, а проверяемая управленческая логика.
ссылка на оригинал статьи https://habr.com/ru/articles/1056466/