Сравнение с Google Sheets, CSV и ручной импорт

Умный импорт из Google Sheets: синхронизация по разрезам, а не по координатам ячеек

Google Sheets, CSV и ручной импорт

Обложка статьи: Умный импорт из Google Sheets

Умный импорт из Google Sheets не ломается при перемещении строк и столбцов: конфигурация описывает не координаты ячеек, а разрезы — лист, строки-метрики и колонки шапки. gssync находит значение на их пересечении, формирует BKI-файл и при необходимости загружает его в таблицу Интеграма.

Обычная загрузка таблицы хорошо работает, когда источник стабилен: одни и те же столбцы, одинаковое число строк, понятная первая строка шапки. В реальной управленческой таблице Google Sheets структура часто двигается: финансовый директор добавляет новый месяц, менеджер переносит блок факта ближе к плану, часть строк скрывается, а в шапке есть объединённые ячейки. Если импорт привязан к координатам вроде C12 или диапазону A1:Z200, любое такое изменение становится риском. Умный импорт gssync решает другую задачу: он описывает смысловые ориентиры таблицы и берёт значение на пересечении найденной строки и найденной колонки.

Контекст

Компания ведёт план-факт в Google Sheets. На листе «(План-Факт) (2026)» есть строки «Выручка» и «Поступления», по месяцам идут периоды, внутри каждого периода есть «ПЛАН» и «ФАКТ». Типичные проблемы ручной синхронизации:

  • после добавления нового столбца импорт по номеру колонки начинает читать не тот месяц;
  • после перемещения строки «Выручка» фиксированная координата указывает на соседнюю метрику;
  • объединённая шапка месяца визуально понятна пользователю, но API Google Sheets отдаёт значение только в верхней левой ячейке объединения;
  • пустой факт за месяц может означать нормальное отсутствие значения, а не удалённую строку, поэтому его нужно уметь сохранить осознанно;
  • команде нужен повторяемый запуск: вручную проверить книгу, сформировать файл и загрузить его в Интеграм без копипаста.