WisyLink Блог

внутренние инструментыадминкаавтоматизация процессовтаблицыприложения без кода

Внутренний инструмент с ИИ: админка вместо общей таблицы

Внутренний инструмент с ИИ: превратите хрупкую общую таблицу в закрытое приложение со входом, ролями, статусами, журналом изменений и ежедневными письмами.

10 мин. чтение
Внутренний инструмент с ИИ: админка вместо общей таблицы

Внутренний инструмент — это небольшое закрытое веб-приложение, в котором команда ведёт записи: склад, заявки или клиентов. В ИИ-конструкторе приложений вы описываете записи, статусы и роли, а он строит формы, отфильтрованные списки, вход и раздел администратора. Хрупкую общую таблицу заменяет приложение, которое само следит за соблюдением ваших правил.

  • Переносите таблицу в приложение, когда люди перезаписывают правки друг друга, правила живут в комментариях к ячейкам, а кто что поменял, никто сказать не может.
  • До промпта опишите записи, статусы и роли. Эта схема и есть большая часть промпта.
  • Существующие строки переносятся так: приложите файл CSV или XLSX и прямо попросите Wisy загрузить их.
  • Вход, роли и журнал изменений — функции, которые вы описываете. Единого входа (SSO) нет, но вход через Google работает с вашими собственными учётными данными.
  • Плановые сводки запускаются раз в 30–60 минут, а не в точное время по часам.
  • Узнайте ограничения заранее: объём базы данных зависит от тарифа, полнотекстового поиска по большим таблицам нет, экспорта кода нет.

Признаки того, что таблице пора стать приложением

Таблицы — лучший инструмент для прототипов, который есть у большинства команд. Проблемой они становятся, когда через один файл работает процесс сразу нескольких людей. Обратите внимание на такие признаки:

  • Два человека правили одну ячейку, и одно изменение молча пропало.
  • В комментарии к ячейке написано «столбец F не трогать», и кто-то его тронул.
  • В столбце статуса встречаются «Готово», «готово», «ГОТОВО » и «сделано», поэтому каждый фильтр врёт.
  • Никто не может ответить, кто и когда изменил это количество.
  • Поставщику или подрядчику нужно видеть несколько строк, и ему открывают весь файл.
  • Каждое утро кто-то копирует строки в письмо, чтобы сообщить остальным, что просрочено.

Вы не одиноки. Европейская группа по рискам электронных таблиц (EuSpRIG) ведёт каталог публичных историй о провалах с таблицами и отмечает, что такие сообщения «появляются в мировых СМИ с довольно постоянной частотой» и показывают проблемы неконтролируемого использования таблиц.

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

Общая таблица и внутреннее приложение
КритерийОбщая таблицаВнутреннее приложение
Права доступаДоступ ко всему файлу: просмотр или редактированиеРоли на уровне экранов и записей, например «сотрудники видят только свои заявки»
Проверка данныхНеобязательные правила, которые обходятся простой вставкойОбязательные поля и фиксированные варианты, которые проверяются при каждом сохранении
История измененийИстория на уровне файла; отследить одно значение трудноЖурнал изменений по каждой записи: кто, что, старое и новое значение, когда
Одновременная работаПобеждает последняя правка; остатки расходятсяОстатки и счётчики меняются одним защищённым шагом, а конфликтующие правки можно отклонять, а не молча перезаписывать
УведомленияПисьма вручную или скриптыПисьма по событиям и плановые сводки раз в 30–60 минут
ОграниченияГибкие формулы и разовый анализТочные фильтры вместо полнотекстового поиска по большим таблицам; объём задаёт тариф

Опишите процесс: записи, статусы, кто что может

Прежде чем писать промпт, переведите таблицу на язык пяти понятий:

Запись
Одна сущность, которую вы отслеживаете: товар, заявка, клиент. Обычно это один лист или один тип строк.
Поле
Один столбец определённого типа: текст, число, дата, фиксированный список вариантов, файл или ссылка на другую запись.
Статус
Этап, на котором находится запись, плюс разрешённые переходы между статусами.
Роль
Группа людей с одинаковыми правами, например сотрудник, руководитель или бухгалтерия.
Представление
Отфильтрованный список, который кто-то открывает каждый день, например «мои открытые заявки» или «ниже минимального остатка».

Возьмём для примера таблицу заявок на закупку. Сотрудник создаёт заявку и отправляет её. Руководитель одобряет или отклоняет. Бухгалтерия отмечает одобренные заявки как заказанные, а затем как полученные. Сотрудники видят только свои заявки, бухгалтерия видит всё. Запишите это в пять строк, и у вас готов скелет приложения.

Одно решение окупится позже: где только можно, замените свободный текст фиксированными вариантами. Отдел, категория, склад и статус должны быть списками, а не ручным вводом. Приложение фильтрует по точным значениям, и фиксированные варианты делают каждый фильтр и каждый итог правильными.

Соберите приложение: шаблоны промптов для трёх типичных инструментов

  1. Опишите процесс, как показано выше, на одной странице.
  2. Выгрузите чистый CSV или XLSX с текущими данными, подготовленный так, как описано ниже в разделе о переносе данных.
  3. Вставьте шаблон в новый чат WisyLink, приложите файл и прямо напишите, что строки нужно загрузить.
  4. Прочитайте заключительную заметку сборки. В ней сказано, как попасть в раздел администратора (часто для этого нужно зарегистрироваться первым) и какие интеграции, например почта (SMTP), ждут настройки.
  5. Проверьте каждую роль. Создайте по тестовому аккаунту на роль, попробуйте каждый переход статуса, а затем то, что должно быть запрещено.
  6. Выберите день переезда. Сделайте таблицу доступной только для чтения, загрузите последние строки и объявите ссылку. Если вести и таблицу, и приложение параллельно, данные будут вноситься дважды.
  7. Дорабатывайте приложение в том же чате, отправляя по одному сводному списку правок за раз.

Складской учёт

Сделайте закрытое приложение для складского учёта [наших двух складов]. Записи: товары (артикул, название, категория, склад, количество, минимальный остаток, поставщик) и движения товара (товар, изменение, причина: поступление, продажа, брак или корректировка, кто, когда). Количество меняется только через движение, которое применяется одним шагом, чтобы два человека никогда не посчитали одно и то же дважды. Представления: товары с фильтром по складу и категории и список «ниже минимального остатка». Роли: сотрудники вносят движения, руководители редактируют товары и минимальные остатки. Когда я добавлю настройки почты, каждое утро отправляйте руководителям список товаров ниже минимального остатка. Загрузите приложенный inventory.csv как товары.

Согласование заявок

Сделайте инструмент для заявок на закупку для [компании из 30 человек]. Статусы: черновик, отправлена, одобрена, отклонена, заказана, получена. Сотрудники создают и отправляют свои заявки и видят только их. Руководители одобряют или отклоняют заявки до [150 000 ₽]; всё, что дороже, уходит финансовому директору. Бухгалтерия отмечает заявки как заказанные и полученные. Каждая смена статуса фиксирует, кто и когда её сделал, и отправляет письмо автору заявки, когда я добавлю настройки почты. Регистрироваться могут только адреса на домене [ourcompany.ru], а новые аккаунты ждут одобрения администратора.

Простая CRM

Сделайте простую CRM для [нашего отдела продаж из четырёх человек]. Записи: компании, контакты и сделки (этап: лид, связались, предложение, выиграна или проиграна; сумма; ответственный; следующий шаг; дата следующего шага). Все видят все компании, но каждый редактирует только свои сделки. Представления: мои сделки по этапам, сделки с просроченной датой следующего шага и сумма воронки по этапам. Ведите журнал изменений по сделкам. Загрузите приложенный contacts.xlsx как компании и контакты.

На бесплатном тарифе Community первая сборка — компактная версия основного сценария, поэтому журнал изменений или письма могут в неё не войти; попросите их следующим сообщением. Больше приёмов — в нашем сборнике шаблонов промптов.

Вход, роли и журнал изменений

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

  • Ограничьте регистрацию: только адреса на домене вашей компании, а новые аккаунты ждут, пока администратор их одобрит и назначит роль.
  • Добавьте вход через Google с вашими собственными OAuth-ключами Google, которые вводятся в разделе «Интеграции». Корпоративного единого входа (SAML) нет.
  • Отключайте доступ одной кнопкой: попросите кнопку «Деактивировать», которая закрывает человеку доступ, не удаляя его историю.
  • Поставьте пароль на сайт, если даже страница входа должна быть закрыта. Один общий пароль закрывает все страницы, как только вы зададите его в разделе «Интеграции»; до этого сайт остаётся открытым.

Журнал изменений — функция, которой у таблиц по-настоящему никогда не было. Попросите фиксировать каждое изменение: кто, какая запись, какое поле, старое значение, новое значение и когда, — с показом в карточке записи и общей лентой для администраторов. Журнал занимает место в базе данных, поэтому для активно используемых инструментов попросите плановую задачу, которая удаляет записи старше выбранного срока. Для сброса пароля нужны настройки SMTP.

Перенос существующих данных

Приложите таблицу файлом CSV или XLSX до 25 МБ и чётко напишите, что записи нужно загрузить во время сборки. Конструктор меняет живые данные, только когда вы прямо об этом просите. Сначала подготовьте файл:

  • Одна строка заголовков, одна запись на строку, без объединённых ячеек и без строк с итогами.
  • Значения, а не формулы: перед выгрузкой вставьте значения в копию листа.
  • Один формат дат во всём файле, лучше всего год-месяц-день.
  • Статусы и категории написаны единообразно. Исправьте «Готово» и «готово » уже сейчас.
  • Одно значение в ячейке: разбейте «красный, синий» на отдельные строки или связанный список.

Сначала загрузите около 20 строк, проверьте их в приложении, потом загружайте остальное. Если импорт будет регулярным, например еженедельный прайс поставщика, попросите в разделе администратора экран импорта, который принимает CSV, и проверьте его на маленьком файле. Если проскочили дубли, попросите в чате найти и удалить точные дубликаты записей: конструктор проверит живые строки, прежде чем что-либо удалять.

Подключение других сервисов через их API

Внутренний инструмент окупается, когда перестаёт быть островом. Подключить можно любой сервис с API: рабочий мессенджер, учётную систему, CRM, службу доставки. Каждое подключение строится по актуальной документации провайдера, а учётные данные вы вставляете один раз в разделе «Интеграции», никогда не в чат. Пока вы этого не сделали, эта функция неактивна, а всё остальное работает.

Подумайте о направлении обмена:

  • Отправка: приложение обращается к другому сервису, когда что-то происходит, например пишет в рабочий канал, когда заявку одобрили.
  • Получение по расписанию: плановая задача забирает данные раз в 30–60 минут, например остатки у поставщика.
  • Приём событий: другой сервис вызывает адрес вебхука вашего приложения, когда что-то происходит на его стороне.

Выдайте приложению отдельный API-ключ с минимальными правами, которые позволяет провайдер, чтобы его можно было отозвать, ничего больше не сломав. Если вы ещё выбираете между этим путём и low-code-платформой, наше сравнение no-code, low-code и ИИ-конструкторов раскладывает плюсы и минусы.

Ежедневные сводки и очистка по расписанию

Плановые задачи берут на себя то, что никто не должен делать руками: утренний список просроченных заявок, еженедельную сводку по воронке, закрытие заявок, которые 60 дней никто не трогал, удаление устаревших записей. Они запускаются с фиксированным интервалом 30–60 минут, который задаётся при сборке, и отправляют письма через ваш SMTP-аккаунт.

Запуска в точное время по часам нет. Сводка «ежедневно в 8:00» работает так: при каждом запуске задача проверяет время и отправляет письмо, как только 8:00 прошло, поэтому оно приходит в течение примерно часа после этого времени. У расписаний нет своего часового пояса, поэтому указывайте час по UTC или своё смещение в промпте: для Москвы это UTC+3. Каждый запуск обрабатывает небольшую порцию, так что большая очистка растягивается на несколько запусков. Всё срочное, например запрос на согласование, должно уходить в момент изменения записи, а не по расписанию.

Ограничения, которые нужно знать заранее

Внутренние инструменты незаметно становятся критичными, поэтому проверьте это до того, как команда начнёт на них полагаться:

  • Объём: данные, файлы и трафик ограничены тарифом, и лимиты действуют в реальном времени. Панель «Ресурсы» показывает, насколько всё заполнено.
  • Поиск: полнотекстового поиска по большим таблицам нет. Фильтры работают по точным значениям, диапазонам и спискам вариантов. Список примерно до 100 строк можно искать в браузере; для большего объёма проектируйте поля с фиксированными вариантами.
  • Дашборды: число итоговых подсчётов на приложение ограничено, поэтому держите на дашборде несколько итогов, а не десятки живых плиток.
  • Тяжёлые вычисления: запросы короткие, поэтому долгие отчёты и массовая обработка данных не подходят.
  • Вход: SSO и SAML нет; у приложения свои аккаунты.
  • Срок жизни: бесплатные ссылки удаляются через 30 дней плюс неделю с пометкой на удаление. Инструменту, на который опирается команда, место на платном тарифе — от $7 в месяц.
  • Переносимость: экспорта кода нет. Попросите выгрузку в CSV для каждого типа записей и скачивайте её по своему графику.

И проверяйте права так, как это сделал бы аудитор: войдите под каждой ролью и попробуйте открыть записи, которые вам видеть не положено. Проверка того, что построил ИИ, — ваша ответственность. Если часть тех, кому нужен доступ, — клиенты, а не коллеги, прочитайте, как сделать личный кабинет клиента без кода; а общую картину даёт статья о том, что такое ИИ-конструктор приложений.

Замените свою первую таблицу

Выберите таблицу, из-за которой больше всего переписки, опишите на одной странице её записи, статусы и роли и вставьте подходящий шаблон. На странице продукта объясняется, как каждое приложение изолировано от остальных, а в тарифах видно, как с каждым уровнем растут объём и скорость сборок.

Опишите свой инструмент одним сообщением и получите живую ссылку: начните бесплатно на Community, без привязки карты.

ЧАВО

Часто задаваемые вопросы

Можно ли перенести в приложение существующую таблицу?
Да. Выгрузите её в CSV или XLSX, приложите в чате и прямо попросите Wisy загрузить записи во время сборки: конструктор меняет живые данные, только когда вы об этом просите. Из Google Таблиц или Excel Online сначала скачайте CSV. Почистите файл перед импортом, проверьте всё на небольшой выборке и попросите экран импорта, если будете загружать данные регулярно.
Можно ли настроить, кто что видит и редактирует?
Да. Вы задаёте роли, например сотрудник, руководитель и бухгалтерия, и правила для каждой: какие экраны открываются, какие записи видны и какие поля можно менять. Правила на уровне записей вроде «сотрудник видит только свои заявки» — обычное дело. Скройте чувствительные поля, например зарплаты или закупочные цены, от ролей, которым они не нужны, и проверьте каждую роль до запуска.
Можно ли связать приложение с другими нашими сервисами?
Да, если у сервиса есть API. Приложение может отправлять в него данные при событиях, забирать данные по расписанию раз в 30–60 минут или принимать его вебхуки. Учётные данные вы вводите один раз в разделе «Интеграции», где они хранятся в зашифрованном виде. Каждое подключение строится по актуальной документации провайдера, поэтому проверьте его на реальных примерах, прежде чем на него полагаться.
Поддерживается ли единый вход (SSO)?
Встроенного нет. У приложения свои логины, SAML и корпоративного SSO нет. Вход через Google возможен с вашими собственными OAuth-ключами Google, которые вводятся в разделе «Интеграции». Чтобы держать доступ под контролем, разрешите регистрацию только с корпоративного почтового домена, включите одобрение новых аккаунтов администратором и добавьте кнопку деактивации, чтобы уволившиеся теряли доступ в день ухода.
Сколько данных может хранить такое приложение?
Объём ограничен базой данных вашего тарифа, общей для всех ваших ссылок, а загруженные файлы занимают отдельное хранилище; панель «Ресурсы» показывает и то и другое. Каждая запись может содержать до 256 КБ полей — с запасом для обычных строк. Полнотекстового поиска по большим таблицам нет, поэтому опирайтесь на точные фильтры, а старые записи, которые не нужны в работе каждый день, архивируйте или выгружайте.
Может ли приложение присылать нам ежедневную сводку на почту?
Да. Плановая задача проверяет время раз в 30–60 минут и отправляет сводку, как только выбранный час прошёл, через ваш собственный SMTP-аккаунт. Указывайте час по UTC или своё смещение. Делайте сводку короткой: количество по статусам, просроченные записи со ссылками и всё, что ждёт согласования. Сводки для разных ролей могут показывать разное содержание.
Поделиться
XLinkedInFacebook