MCP:RSV Data Pro 2.3.0
MCP:RSV Data Pro 2.3.0
Выпуск про то, чтобы продукт обновлялся прямо из базы, а помощник доходил до ответа сам.
В окне «О программе» видно установленную версию и что вышло нового — обновление ставится
тремя нажатиями; большие разделы сданной отчётности больше не подвешивают ответ; на пустой
ответ и на ошибку запроса помощник теперь получает следующий шаг, а не тупик.
Что в этом выпуске
- О программе и обновление
- Что за продукт установлен и какой он версии — видно в самой базе
- Новая версия проверяется, скачивается и ставится тремя нажатиями
- Обновление обходится без доступа в интернет с сервера 1С
- Неудачная проверка обновления называет причину и следующий шаг
- Версия, разработчик и почта копируются мышью
- Что умеет продукт — понятно за пару секунд
- Блок обновления больше не выглядит как незаполненное поле
- Окно разложено в том порядке, в котором его читают
- Типовые отчёты
- Сданная отчётность
- Поиск отчётности спрашивает организацию вместо восьми страниц подряд
- Огромный раздел отчётности больше не заканчивается ожиданием без ответа
- Из чего состоит отчёт — видно, не читая ни одной строки
- Помощник больше не ходит по кругу и получает рабочую замену
- Непрочитаемым оказывается один раздел, а не весь отчёт
- Запросы к данным
- Где в базе есть данные
- Структура объектов
- Подключение ИИ-клиента
- Рекомендуемый способ подключения работает с первого раза
- Настройка для ИИ-клиента называет базу, из которой её взяли
- Имя базы можно передать программе прямо при запуске
- Незаполненные настройки больше не выглядят как поломка базы
- Список команд приходит сразу, а недоступная база не выглядит поломкой продукта
- Связь с базой через опубликованную базу
- Отказ даёт готовую проверку публикации адресом в браузере
- В отказе виден адрес, по которому обращается сама программа
- Недоступный веб-сервер больше не отправляет настраивать прокси-сервер
- Памятка администратору объясняет, как проверить публикацию
- Диагностика связи спрашивает базу сама и различает три разные беды
- Когда к программе подключено несколько баз
- Подсказки помощнику при любом способе подключения
- Пояснения к командам одинаковы во всех базах
- Помощник узнаёт про обезличивание с первого вызова
- Встроенные руководства открываются в любой базе
- Неизвестный режим обезличивания назван неизвестным
- Обзор возможностей — строка на команду вместо стены текста
- Раздел справки про обезличивание найдётся в перечне тем
- Ошибка в тексте запроса объясняется человеческим языком
- Лицензия
- Пробный период начинается с первого нажатия
- Пока идёт долгое первое обращение, видно, что программа работает
- Отказ по связи стал человеческим и называет следующий шаг
- Молчание сервера больше не выглядит как отказ в ключе
- Путь к файлу настроек больше не принимается за ключ активации
- Опечатка в команде получает ответ, а не молчаливую попытку активации
- Ответ команды проверки лицензии виден на экране
- Путь к файлу, вставленный в поле ключа, никуда не отправляется
- Ключ принят — базы работают сразу
- Ложное «Сведения о лицензии не найдены» больше не появляется
- Завершение работы не портит сведения о лицензии
- Права ИИ-агента
- Обезличивание персональных данных
- Журнал регистрации
- Руководство и памятка администратору
- Как обновиться
О программе и обновление
Что за продукт установлен и какой он версии — видно в самой базе
Узнать, вышла ли новая версия, было негде. В базе не было ни строчки о том, что за продукт
установлен, какая у него версия и кто его разработал, а про новые выпуски человек узнавал только
из канала в Telegram — или не узнавал вовсе. Теперь в разделе продукта первым пунктом стоит «О
программе»: что продукт умеет — готовые отчёты конфигурации, регламентированная отчётность,
чтение любых данных базы и произвольные запросы, изменение данных по выданным правам, —
установленная версия, разработчик, почта для связи и ссылки на руководство, страницу продукта и
историю версий. Кнопка «Написать разработчику» открывает новое письмо: адрес и тема с номером
установленной версии подставлены заранее.
Новая версия проверяется, скачивается и ставится тремя нажатиями
Обновление приходилось искать и ставить вручную. Найти страницу продукта, скачать архив,
распаковать, открыть список расширений базы, выбрать файл. Теперь всё это делается в окне «О
программе» тремя нажатиями: «Проверить обновление» показывает, есть ли версия новее
установленной, и что в ней изменилось; «Скачать обновление» приносит файл на компьютер и
сверяет его размер и контрольную сумму с описанием выпуска; «Установить обновление» ставит
новую версию в базу — после вопроса, в котором видны обе версии, установленная и новая. Ни один
шаг не делается сам: скачивание тратит канал, а установка заменяет то, что уже работает.
Обновление обходится без доступа в интернет с сервера 1С
За новой версией ходит программа подключения — она работает на компьютере пользователя и берёт
настройки прокси-сервера из Windows. Открывать серверу 1С доступ наружу не нужно. Если на
компьютере программы ещё нет, окно так и говорит и ведёт в «Подключение ИИ» — а сведения о
версии и ссылки работают в любом случае.
Неудачная проверка обновления называет причину и следующий шаг
Нет связи — сказано, что проверить, и что список изменений всегда есть на сайте. Скачанный файл не
сошёлся с описанием выпуска — он не сохраняется вовсе. Нет права администрирования — окно
предлагает передать скачанный файл администратору и показывает, где файл лежит. Установка не
удалась — установленная версия остаётся рабочей: платформа применяет файл целиком либо не
применяет вовсе.
Версия, разработчик и почта копируются мышью
Адрес почты разработчика нельзя было скопировать. Он был написан обычной подписью, а из подписи
текст не выделяется: чтобы написать письмо со своей почты, адрес приходилось перебивать руками по
буквам. Теперь версия, разработчик и почта показаны значениями, которые выделяются мышью и
копируются обычным Ctrl+C; изменить их по-прежнему нельзя. Кнопка Написать разработчику
осталась на месте — она нужна тем, у кого почтовая программа настроена.
Что умеет продукт — понятно за пару секунд
Описание продукта читалось с трудом. Всё, что продукт умеет, шло одним плотным абзацем на шесть
строк во всю ширину окна. Теперь главное сказано одной фразой крупным шрифтом, а виды работы —
списком тем же шрифтом, по строке на каждый: понятно за пару секунд, и ни один пункт не
разрывается переносом.
Блок обновления больше не выглядит как незаполненное поле
Блок обновления выглядел как незаполненное поле. Подсказка «Нажмите „Проверить обновление"» лежала
внутри рамки размером в треть окна — её читали как поле, которое надо заполнить. Теперь подсказка
и итог проверки — обычный текст, а рамка осталась только там, где ей есть что показать: под
описание найденного выпуска.
Окно разложено в том порядке, в котором его читают
Четыре части идут в том порядке, в котором их читают: что это за программа → Сведения о
продукте (версия, разработчик, почта) → Помощь и связь (руководство, страница продукта,
письмо разработчику) → Обновление. Кнопки История версий и Новости версий переехали в
блок обновления — они про версии, а не про помощь. Кнопка Показать файл встала в один ряд с
остальными действиями обновления.
Типовые отчёты
Первая группа строк подписана так же, как все остальные
У первой группы строк пропадала подпись разреза. В отчётах, которые печатают свою шапку заново
перед каждой частью (например «Полный свод начислений, удержаний и выплат» в зарплатной базе),
первые строки приходили без подписи — просто «Начислено», «Удержано», — а все следующие были
подписаны полностью: «Организация: … / Месяц: Февраль 2025 / Начислено». Подпись первой части
стоит в самой шапке отчёта, и до этого выпуска она терялась. Строку без подписи легко отнести не к
тому месяцу или потерять вовсе, а в отчётности такая ошибка стоит дорого. Теперь первая часть
подписана ровно тем же образом, что и все остальные.
Режим «только итоги» отдаёт строки, а не один общий итог
Режим «только итоги» отдавал одну бесполезную строку. Оборотно-сальдовая ведомость за год с
режимом «только итоги» возвращала единственную строку общего итога и сообщение, что 63 строки в
неё не вошли. Но строки по счетам и есть содержание такой ведомости, а дебет и кредит баланса
всегда равны сами себе — ответом это назвать было нельзя. Теперь у отчёта без промежуточных итогов
режим «только итоги» отдаёт строки самого крупного уровня вместе с общим итогом, а если ответ
всё-таки состоит из одного итога, к нему прилагается готовый следующий шаг.
Самопроверка отчётов замечает свод, от которого остался один итог
Самопроверка готовых отчётов не видела этот случай. Она сверяла у свода колонки и числа — они были
на месте все до единого, и вердикт звучал «сходится с полной выдачей», хотя строк в своде не
осталось ни одной. Теперь самопроверка считает и строки: свод, от которого остался только общий
итог, попадает в её отчёт как расхождение.
Сданная отчётность
Поиск отчётности спрашивает организацию вместо восьми страниц подряд
В базе с десятками организаций поиск отчётности предлагал листать вместо того, чтобы спросить
организацию. Запрос вроде «6-НДФЛ за 2025 год» в базе на 84 организации находил полторы сотни
отчётов и советовал переходить на следующую страницу — восемь страниц подряд. Теперь ответ сразу
говорит, сколько отчётов и по скольким организациям найдено, и предлагает готовый вызов с
организацией: нужный отчёт приходит одним обращением. Если организаций немного, ответ перечисляет
их все с числом отчётов у каждой. Постраничный просмотр остался там, где сужать уже нечем.
Огромный раздел отчётности больше не заканчивается ожиданием без ответа
У годовых расчётов бывают приложения на десятки и сотни тысяч строк — например, справки о доходах
в приложении к годовому 6-НДФЛ большой организации. Такой отчёт не прочитывался вовсе: помощник
просил его страницами, каждая страница упиралась в отведённое время, и после нескольких попыток
база оказывалась занята предыдущим запросом. Со стороны это выглядело как зависание программы, и
листать страницы не помогало.
Из чего состоит отчёт — видно, не читая ни одной строки
Появился быстрый ответ «из чего состоит этот отчёт». Теперь можно спросить размеры разделов вместо
самих цифр: сколько в каждом разделе строк бланка, сколько из них заполнено и сколько страниц.
Строки при этом не читаются, поэтому ответ приходит там, где обычное чтение обрывалось: у годового
6-НДФЛ на сто тысяч строк бланка размеры разделов приходят за считаные секунды — там, где само
чтение не укладывалось в отведённое время вовсе.
Помощник больше не ходит по кругу и получает рабочую замену
В ответе прямо сказано, какие разделы читаются обычным способом (и дан готовый вызов по каждому),
а какие не прочитать ни целиком, ни по страницам. По неподъёмному разделу продукт честно говорит,
что сплошной сверки по нему через отчётность не получится, и называет рабочую замену — посчитать
нужные сведения по данным учёта, обязательно пометив такой ответ как расчёт по данным базы, а не
сданный отчёт. Раньше на этом месте помощник получал совет листать страницы и тратил на него
попытку за попыткой.
Непрочитаемым оказывается один раздел, а не весь отчёт
Маленькие разделы огромного отчёта читаются как обычно — непрочитаемым оказывается сам
раздел-великан, а не весь отчёт целиком, и теперь это видно сразу, а не выясняется опытным путём.
Запросы к данным
Напоминание о готовых отчётах приходит вместе с ответом
Помощник считал своими запросами там, где в базе есть готовый отчёт. На большой задаче — например,
при подготовке ответа по налоговому спору — он ни разу не открывал типовой отчёт: дни, часы и
суммы добывались сложным путём, хотя типовой свод отдаёт их готовой колонкой. Теперь напоминание
приходит ВМЕСТЕ С ОТВЕТОМ: выполнив запрос к регистру или документу, помощник получает рядом с
данными короткую справку — по этим же данным в базе есть такие-то готовые отчёты и вот вызов,
которым их выполнить. Данные ответа при этом не меняются. Справка появляется только там, где
отчёты действительно есть и их немного: по таблице, которую читает половина отчётов конфигурации,
ничего не печатается — это был бы шум.
Правило «сначала готовый отчёт» узнаёт живые формулировки вопроса
Правило «сначала готовый отчёт» не срабатывало на самых частых формулировках. Оно было написано
про «аналитический вопрос», а живые задачи звучат иначе: «сколько всего начислено», «в разрезе
такого-то реквизита», «помесячно». Теперь эти формулировки названы прямо — и в описаниях
инструментов чтения, и в справке.
Ошибка запроса объяснена и ведёт к следующему шагу
Ошибка запроса приходила голым текстом платформы, без следующего шага. Три самых частых промаха
теперь объясняются человеческим языком и ведут к результату: поле не найдено — ответ называет
похожие поля именно этой таблицы (а если похожих нет — её ресурсы и измерения) и вызов, которым
посмотреть весь состав; «ожидается имя» после КАК — ответ говорит, что псевдонимом дали служебное
слово языка запросов, и предлагает другое имя; «неверные параметры в операции сравнения» — ответ
объясняет, что представление сравнивать со строкой нельзя, и показывает рабочую замену через
точку. Незнакомая ошибка остаётся ровно такой, какой пришла: угадывать продукт не станет.
Где в базе есть данные
Одним обращением видно, в каких таблицах записи есть
Выяснять, что данных просто нет, приходилось перебором. Помощник спрашивал регистр — пусто,
спрашивал соседний — пусто, менял отбор, пробовал другой период: на живой работе с базой заметная
часть вопросов уходила не на расчёт, а на выяснение того, что искать здесь нечего. Хуже того,
пустой ответ выглядит одинаково в двух совершенно разных случаях — когда отбор составлен неверно и
когда данных действительно нет, — и помощник тратил вызовы, подозревая сначала себя. Теперь есть
отдельный вопрос «где в базе есть данные»: одним обращением видно, в каких таблицах записи есть,
сколько их и за какой период — первая и последняя дата. Можно спросить по всей базе, по теме
(«НДФЛ», «касса», «табель»), по конкретным таблицам, а также в разрезе организации и периода.
«Пусто у этой организации, а не в базе» — видно сразу
По каждой таблице показываются ДВА числа: сколько записей попало под запрошенный отбор и сколько
их в таблице всего. Таблицы, где под отбор ноль, а записи есть, собраны в отдельный блок с прямым
предупреждением: это не «данных нет» — данные принадлежат другой организации или другому периоду.
Так помощник не скажет человеку «в базе ничего нет», когда данные лежат рядом.
Пустой ответ называет следующие шаги
Ответ не заканчивается словом «пусто». Не нашлось ничего — названы следующие шаги: снять отбор,
расширить период, посмотреть справочники, проверить, та ли это база. Организация не найдена —
ответ ведёт к её точному написанию (следующая запись). На большой базе, где за один раз обойти все
таблицы не успеть, ответ честно говорит, сколько таблиц просмотрено, и показывает, как продолжить
с того же места.
Ответ «организация не найдена» ведёт к точному написанию
Ответ «организация не найдена» заводил в тупик. Организация ищется полным совпадением наименования
или кода, а человек называет её иначе: «ООО Ромашка» вместо «Ромашка», «Ромашка» вместо «Ромашка
ООО». В ответе при этом печатались первые десять организаций справочника словами «в базе есть» —
то есть как весь список; в базе на восемь десятков организаций нужной там чаще всего не было, и
помощник делал вывод, что такой организации нет вовсе. При включённом обезличивании список состоял
из условных обозначений, сопоставить которые с названием из вопроса нельзя в принципе. Теперь
ответ объясняет правило полного совпадения, помечает примеры как неполный список и даёт готовый
поиск по части названия: точное написание находится одним обращением и сразу подставляется в
повторный запрос. Работает одинаково при включённом и выключенном обезличивании, и точно так же —
при поиске сданной отчётности по организации.
Структура объектов
Сотни полей-близнецов свёрнуты в одну строку
Структура табеля и подобных документов тонула в сотнях полей-близнецов. У таких документов подряд
идут «Часов1», «Часов2» … «Часов31», и так по каждому показателю — двести полей в одном ответе.
Полезное (таблицы, типы, реквизиты) в этом списке терялось, а ответ раздувался настолько, что
помощник переставал видеть его целиком. Теперь такая серия показывается ОДНОЙ строкой: сколько в
ней полей, как называются первое, последнее и одно из середины. Каждое поле серии по-прежнему
существует само по себе — его можно указать в отборе, сортировке и в тексте запроса, и ответ прямо
говорит, как собрать нужное имя.
Подключение ИИ-клиента
Рекомендуемый способ подключения работает с первого раза
Рекомендуемый способ подключения не работал ни у кого, кроме давних установок. Помощник отвечал
ошибкой платформы «Неверные или отсутствующие параметры соединения» — а кнопка «Проверить связь с
базой» в том же окне на тех же настройках тут же сообщала, что связь есть. Человек получал от
одного и того же продукта взаимоисключающие ответы и делал вывод, что продукт сломан. Теперь
рекомендуемый способ работает с первого раза, и оба пути отвечают об одном и том же одинаково.
Настройка для ИИ-клиента называет базу, из которой её взяли
Файл настроек на компьютере один, а баз в нём бывает много; раньше готовая настройка базу не
называла, и помощник попадал в первую подключённую — то есть человек мог молча работать с чужими
данными. Теперь кнопка «Получить настройку для ИИ-клиента» выдаёт настройку именно этой базы.
Прежние настройки, выданные раньше, продолжают работать: без имени базы программа берёт первую
подключённую и прямо пишет об этом при запуске, называя выбранную базу.
Имя базы можно передать программе прямо при запуске
Выбрать базу можно и вручную — параметром --base с именем базы (тем самым, что показано в поле
«Имя базы» окна «Подключение ИИ»). Имя можно писать небрежно: регистр и разделители не важны. Имя,
которого нет, даёт отказ со списком доступных баз, а имя, подходящее сразу нескольким, — просьбу
назвать базу точнее: выбирать за человека программа не будет.
Незаполненные настройки больше не выглядят как поломка базы
Если файла настроек нет, он испорчен, в нём нет ни одной базы или у базы не указано, куда
подключаться, программа говорит об этом человеческими словами и называет следующий шаг — вместо
того чтобы идти подключаться с пустыми параметрами и возвращать техническую ошибку платформы.
Список команд приходит сразу, а недоступная база не выглядит поломкой продукта
Помощник запускает программу и первым делом спрашивает, что она умеет, — и раньше в этом способе
подключения списка приходилось ждать несколько секунд, глядя на «подключение». А если базы в этот
момент не было на связи (сервер выключен, не поднят VPN), помощник получал ошибку и объявлял
продукт нерабочим, хотя не работала одна лишь связь с базой. Теперь список команд приходит сразу,
а при недоступной базе помощник видит привычный список и понятное объяснение — на первой же
команде программа пишет, по какому адресу она стучится и что там никто не отвечает. Способ
«постоянный адрес на этом компьютере» так работал и раньше, теперь оба способа ведут себя
одинаково.
Связь с базой через опубликованную базу
Отказ даёт готовую проверку публикации адресом в браузере
Отказ «по этому адресу сервиса подключения нет» перечислял причины, но не говорил, как их
проверить. Человек шёл разбираться сам: открывал в браузере адрес публикации, видел окно ввода
логина и делал вывод «публикация работает, значит дело в программе». Вывод ложный — веб-сервер
спрашивает вход РАНЬШЕ, чем выясняется, есть ли по этому адресу сервис подключения, поэтому окно
входа появляется и там, где базу опубликовали без сервисов расширений. На этой ловушке легко
потерять вечер. Теперь отказ даёт готовую проверку: печатает адрес, по которому идёт сама
программа, с хвостом /ping — его достаточно скопировать в браузер на том же компьютере. Пришёл
короткий ответ со словом ok — сервис на месте; пришло «страница не найдена» — базу нужно
опубликовать заново с флажком «Публиковать HTTP сервисы расширений по умолчанию». Про ловушку с
окном входа сказано в самом отказе.
В отказе виден адрес, по которому обращается сама программа
Отказ различает два случая, которые раньше сливались в один. Кроме «сервиса по адресу нет» есть
второй, куда более обидный: программа обращается не по тому адресу, который проверял человек, —
опечатка, http вместо https, другое имя публикации, проверка с другого компьютера. Поэтому
адрес в отказе теперь показывается прямо: его видно и можно сверить с тем, что открывали.
Недоступный веб-сервер больше не отправляет настраивать прокси-сервер
Сообщение утверждало, что программа ходит к базе «напрямую, минуя прокси-сервер», — с версии 2.2.0
это не так: путь до базы подбирается ровно так же, как у браузера на этом компьютере, вместе со
списками исключений Windows. Совет вёл человека не туда. Теперь на его месте та же проверка
адресом в браузере и понятный вывод из двух вариантов.
Памятка администратору объясняет, как проверить публикацию
Памятка системному администратору дополнена разделом о проверке публикации: какой адрес открывать,
откуда, почему окно входа ничего не доказывает и что делать по каждому ответу.
Диагностика связи спрашивает базу сама и различает три разные беды
Раньше диагностика докладывала одно короткое «связь есть» или «связи нет» — и это была та же
неразличимая беда: за отказом одинаково стояли и не та публикация, и выключенное расширение, и
разошедшийся ключ доступа. Теперь отчёт называет адрес, по которому обращается сама программа,
дословный ответ службы базы и, если путь до базы отличается от прямого, — чем именно. Три разные
беды читаются по-разному: службы по адресу нет — отчёт даёт ту же готовую проверку адресом в
браузере; служба ответила, а сведения о конфигурации не пришли — публикация в порядке, дело в
доступе, и чинится это в окне «Подключение ИИ», а не на веб-сервере. Ту проверку, ради которой
раньше просили человека открыть адрес руками, программа делает за него.
Когда к программе подключено несколько баз
Рядом с каждой базой видно состояние связи
Помощник не видел, какая из баз молчит. На вопрос «с чем ты сейчас связан» программа перечисляла
имена баз и способ связи — и всё. Когда баз десяток и часть из них на удалённых серверах, из
такого списка нельзя понять, до какой базы связь есть, а до какой нет: помощнику оставалось
пробовать каждую по очереди. Теперь рядом с каждой базой стоит состояние связи — «отвечала только
что», «отвечала 12 мин назад», «не отвечает» или «не проверялась», — и недоступная база видна с
первого взгляда. Сам ответ по-прежнему не тревожит ни одну базу: программа отвечает по тому, что
уже знает.
Проверка связи говорит, что перечисляет базы, подключённые сейчас
Совет «спросите у программы, какие базы подключены» упирался в тупик. Помощнику подсказывали:
перечень баз в описании мог устареть, спросите проверку связи — она покажет подключённые прямо
сейчас. Но сама проверка связи о себе такого не сообщала, и до перечня помощник просто не доходил.
Теперь она честно говорит, что перечисляет базы, подключённые в эту секунду, и состояние связи с
каждой.
Подсказки помощнику при любом способе подключения
Пояснения к командам одинаковы во всех базах
Помощник получал разные пояснения к одним и тем же командам. Пояснения, по которым ИИ решает,
какой командой воспользоваться, приходили из той базы, к которой он подключился, — и зависели от
того, какой версии в этой базе установлено расширение. У одного и того же пользователя одна база
рассказывала помощнику про режим обезличивания персональных данных, а другая молчала о нём вовсе;
обновление самой программы подключения ничего не меняло. Теперь пояснения ведёт сама программа:
они одинаковы во всех базах и при обоих способах подключения (прямой запуск и постоянный адрес) и
обновляются вместе с программой.
Помощник узнаёт про обезличивание с первого вызова
Главное, что помощник узнаёт с первого вызова, — включено ли обезличивание. От этого зависит,
придут ли фамилии, контрагенты и телефоны метками или как есть. Теперь об этом сказано прямо в
пояснении к проверке связи, а если база о режиме не сообщает (в ней стоит старое расширение) —
помощнику сказано считать режим неизвестным и не строить догадок.
Встроенные руководства открываются в любой базе
Встроенные руководства по командам не открывались в базах со старым расширением. Пояснение к
команде отсылало к её подробному руководству, а в ответ приходило «нет справки по такой теме»:
руководства лежали в самом расширении, и в базе, где стояла версия постарше, части из них просто
не было. Помощник делал вывод, что возможности нет, и шёл длинной дорогой. Теперь все руководства
ведёт программа: они открываются в любой базе, одинаковы везде и обновляются вместе с программой,
а не после обновления расширения в каждой базе по отдельности. Заодно ответ на несуществующую тему
теперь перечисляет все действующие — помощнику не нужно гадать.
Неизвестный режим обезличивания назван неизвестным
Помощник не знал, что режим обезличивания ему неизвестен. В базе, где стоит расширение прежней
версии, проверка связи отвечала одной строкой «на связи», а паспорт базы о режиме молчал — при том
что фамилии и контрагенты приходили метками. Помощнику приходилось замечать то, чего в ответе НЕТ,
и он этого не замечал: метку вида [ОРГ-00007] он мог выдать человеку за настоящее название.
Теперь программа говорит об этом сама: «Обезличивание персональных данных: НЕИЗВЕСТНО» — и тут же
называет безопасный порядок работы. Обновить расширение в базе по-прежнему стоит, но до тех пор
помощник не ошибётся.
Обзор возможностей — строка на команду вместо стены текста
Обзор возможностей читался как стена текста. В общем списке команд восемь команд базы печатались
своими полными описаниями — больше половины всего обзора уходило на них, и дальше помощник этот
текст просто не читал. Теперь в списке одна короткая строка на команду, а подробности открываются
руководством по нужной команде.
Раздел справки про обезличивание найдётся в перечне тем
Раздел про обезличивание не был назван там, где его ищут. В пояснении к справке перечислялись
общие разделы, а самого нужного — про метки и про то, как вернуть настоящие значения, — среди них
не было. Теперь он назван и в пояснении, и в описании параметра. Заодно появилось руководство по
самой справке (раньше запрос по теме «справка» отвечал «нет такой темы»), а из перечня разделов
убран дубль одного и того же раздела под двумя именами.
Ошибка в тексте запроса объясняется человеческим языком
Ошибка в тексте запроса приходила словами платформы. На опечатку в запросе помощник получал ответ
вида «Ошибка при вызове метода контекста (Выполнить): {(1, 9)}…» — ни причины, ни следующего шага,
и он начинал искать поломку в программе или в связи с базой. Теперь к такому ответу добавляется
объяснение человеческим языком: разбор запроса оборвался вот на этом слове, исправьте его и
повторите. Отдельно разобран случай «такой таблицы в базе нет» — ответ подсказывает, чем найти
правильное имя.
Лицензия
Пробный период начинается с первого нажатия
Пробный период не начинался с первого нажатия. Человек ставил продукт, открывал «Подключение ИИ»,
нажимал «Получить пробный период» — и читал, что связи с сервером лицензий нет, хотя интернет
работал. Догадаться, что надо просто нажать ещё раз, было неоткуда — на только что купленном
продукте это выглядит как «не работает». Теперь ждать и повторять запрос программа умеет сама:
кнопку достаточно нажать один раз. То же исправление касается ввода ключа активации, кнопки
«Проверить» и получения ключа доступа к базе.
Пока идёт долгое первое обращение, видно, что программа работает
Надпись движется и считает секунды («Запрашиваю пробный период… (23 с)»), после двадцатой секунды
объясняет задержку, а после сороковой прямо говорит: сервер отвечает не сразу, программа ждёт и
пробует ещё раз, нажимать ничего не нужно.
Отказ по связи стал человеческим и называет следующий шаг
Раньше в окне появлялся кусок технического сообщения с длинным адресом и английскими словами.
Теперь продукт говорит на человеческом языке и называет следующий шаг: либо «нет связи с
интернетом — проверьте, открываются ли сайты в браузере», либо «сервер лицензий не ответил,
программа пробовала связаться 3 раза за 68 с; обычно это временно — подождите минуту и повторите».
Молчание сервера больше не выглядит как отказ в ключе
Если во время ввода купленного ключа связи не было, продукт писал «Ключ не принят» — то есть
обвинял ключ. Теперь ответ честный: «Ключ не проверен», и дальше сказано, что делать. Сам ключ при
этом никуда не девается.
Путь к файлу настроек больше не принимается за ключ активации
Команда проверки лицензии принимала путь к файлу за ключ активации. Если при проверке состояния
лицензии из командной строки указать файл настроек, программа считала этот путь введённым ключом,
пыталась его активировать и отвечала «Ключ не принят». На только что установленном продукте это
выглядело как отказ активации, хотя с лицензией всё было в порядке. Теперь файл настроек указывать
можно — команда просто покажет состояние лицензии и предупредит, что этот файл ей не нужен:
лицензия относится к рабочему месту целиком, а не к отдельной базе.
Опечатка в команде получает ответ, а не молчаливую попытку активации
Опечатка в команде молча превращалась в попытку активации. Незнакомый параметр пропускался, а всё,
что не начиналось с дефиса, уходило активацией — включая пути к файлам и слова вроде refresh,
написанные без дефисов. Теперь непонятый параметр сразу получает ответ на месте: что именно не
так, что написать вместо и что ничего не отправлено и не изменено. Появилась подсказка по самой
команде — license --help.
Ответ команды проверки лицензии виден на экране
Ответ команды проверки лицензии не был виден на экране. Запущенная вручную из командной строки,
она ничего не показывала: человек повторял вызов, думая, что ничего не произошло. Теперь ответ
виден.
Путь к файлу, вставленный в поле ключа, никуда не отправляется
Продукт объясняет, как выглядит ключ (ACT-XXX-XXXXXXXX), и ничего никуда не отправляет — это
касается и формы в 1С, и просьбы к ИИ-агенту «активируй ключ».
Ключ принят — базы работают сразу
Ключ приняли, а базы ещё какое-то время отказывали. Редкий, но крайне неприятный случай: человек
оплачивал продукт, вводил ключ, читал «Ключ принят, лицензия действует» — и получал на любой
запрос к базе «Лицензия приостановлена поставщиком продукта». Само проходило только к следующей
сверке с сервером, то есть могло длиться до четверти часа. Теперь принятый ключ действует сразу —
ждать нечего.
Ложное «Сведения о лицензии не найдены» больше не появляется
На работающем оплаченном продукте могло появиться «Сведения о лицензии на этом компьютере не
найдены». Это была ложная тревога: с лицензией всё в порядке, а сообщение появлялось на ровном
месте. Теперь оно приходит только тогда, когда сведения о лицензии действительно недоступны.
Завершение работы не портит сведения о лицензии
Завершение работы программы могло повредить сведения о лицензии на компьютере. Следующий запуск
читал их как испорченные и требовал подтверждения в интернете — на компьютере без связи это
означало отказ на ровном месте. Теперь выключение проходит аккуратно и сведения не портит, а связь
с сервером обрывается сразу, не задерживая завершение.
Права ИИ-агента
Выданное право доходит до помощника само
Набор команд, который видит помощник, зависит от прав пользователя базы. Раньше программа узнавала
о выданном или отобранном праве, только когда помощник сам обращался к базе, — а он и не
обращался: команды, которой нет в его списке, он не вызовет. Круг замыкался, и в инструкции честно
стояло «переподключите клиента». Теперь программа сама переспрашивает базу о составе команд: при
связи через опубликованную базу новая команда появляется у помощника в течение минуты после записи
настроек, при прямом соединении — при первом же его обращении к базе. Заодно состав обновляется по
просьбе «проверь связь с базой» — так можно убедиться сразу. База, которую в этот момент никто не
занимает, по-прежнему не будится зря: обновление конфигурации ей ничто не мешает.
Таблица доступа больше не позволяет править то, что не сохраняется
Раньше в таблице окна «Настройка доступа MCP» с виду редактировались имя пользователя и его
представление, а также добавлялись и удалялись строки — но записывались только галочки прав и имя.
Опечатка в имени молча выдала бы права не тому человеку или никому. Теперь список пользователей
строится по самой базе и правке не подлежит: меняются только галочки, и записывается ровно то, что
показано. Колонок стало меньше — осталась одна, «Пользователь», с полным именем и именем входа.
Право, выданное удалённому пользователю, видно и снимается
Если пользователя удалили или переименовали, его строка раньше исчезала из окна, а право
оставалось в базе — и первая же запись настроек убирала его молча. Теперь такая строка
показывается с пометкой «такого пользователя в базе нет»: право видно и снимается галочками, как у
всех остальных.
Что на самом деле означает право «Выполнение кода»
В описании права не было сказано главного. «Выполнение кода» подавалось как ещё одна галочка в
ряду с «Записью», «Групповыми операциями» и «Проведением», хотя оно другого порядка: агент с этим
правом делает с базой то же, что программист, — в том числе меняет настройки самого продукта и
права остальных пользователей. Три другие галочки при этом остаются честными границами: без них
команда не выполнится. Теперь справка по кнопке «?» и инструкция говорят об этом прямо: право
«Выполнение кода» равно доступу разработчика к базе, выдаётся только тем, кому вы такой доступ и
так доверяете, и снимается, когда разовая задача закончена.
Обезличивание персональных данных
Включено обезличивание или нет — сказано прямо
Понять, включена ли замена персональных данных метками, было негде. Помощник узнавал об этом,
только наткнувшись на метку в ответе, — и предупреждал человека о метках даже там, где
обезличивание было выключено и все данные приходили настоящими. Теперь режим назван прямо:
проверка связи с базой отдельной строкой сообщает, включено обезличивание или нет и что это значит
для ответов, а сведения о базе показывают состояние, признак включения и пояснение. Догадываться
больше не нужно.
Короткое слово больше не превращается в метку
Вместо ответа помощник иногда возвращал метку персональных данных. Если в базе кто-то заполнил,
скажем, адресное поле словом «Нет», то дальше КАЖДОЕ «Нет» в любом ответе заменялось меткой адреса
— вместо ответа приходил мусор, и отличить его от настоящей метки было нельзя. Теперь слишком
короткие значения (меньше четырёх символов) с персональными данными не сверяются: никого не
опознают, а совпадают со всем подряд. Распознавание почты, ИНН, СНИЛС, телефона и адреса по их
формату работает как раньше — они длиннее.
Изменение защиты данных попадает в журнал
Отключение обезличивания нигде не фиксировалось. Настройку можно было снять — и следа не
оставалось: ни кто снял, ни когда. Теперь каждое изменение защиты данных попадает в журнал
регистрации отдельным событием уровня «Предупреждение», с названием настройки, прежним и новым
значением и указанием, кого изменение касается — всех или конкретного пользователя. Уровень этого
события не настраивается. Повторное сохранение окна без изменений записи не создаёт, поэтому в
журнале только настоящие изменения.
Менять защиту данных может не любой администратор
Снять защиту мог любой администратор базы, и запретить это было нечем. Появилась настройка
«Разрешено менять защиту данных»: пока она включена (как и раньше), обезличивание и уровень записи
в журнал меняет любой, кто открывает окно настроек. Выключите её — и менять защиту смогут только
те, кому это разрешено лично, в таблице «Отдельные пользователи». Остальные видят настройки, но
поля закрыты, и в окне написано почему. Запрет действует не только в этом окне: изменить настройку
другим путём тоже не выйдет, и отказ попадёт в журнал. Запретить всем сразу программа не даст —
иначе включить защиту обратно не смог бы никто. Право «Выполнение кода» этим запретом не
ограничивается: оно даёт агенту возможности программиста, поэтому выдаётся только тем, кому вы
доверяете базу целиком.
Журнал регистрации
Уровень записи в журнал выбирается в настройках
В базе, где отключён уровень «Информация», успешные действия помощника не записывались вовсе.
Продукт писал их именно этим уровнем, а политика журнала регистрации во многих организациях его
отключает — в журнале оставались только отказы и ошибки. Для обслуживающей организации, которая
журналом отчитывается перед своим клиентом, это означало, что показать сделанное просто нечем.
Теперь уровень записи выбирается в настройках программы, раздел «Журнал регистрации»: «Информация»
(как было), «Примечание», «Предупреждение» или «Ошибка». Отказы по правам по-прежнему пишутся
уровнем «Предупреждение», сбои — «Ошибка», и настройкой это не меняется: событие о запрете обязано
попасть в журнал в любой базе.
Сообщение «не удалось обезличить ответ» в журнале не теряется
Сообщение «не удалось обезличить ответ» тоже писалось уровнем «Информация» — и там, где этот
уровень отключён, пропадало вместе со всем остальным. А это самое важное сообщение из всех: оно
означает, что персональные данные могли уйти помощнику открытыми. Теперь оно пишется уровнем
«Ошибка» и в журнале не теряется.
В записи о выполнении кода виден сам код
Запись о выполнении кода была, а самого кода в ней не было. В журнале стояло «код отработал», но
чем именно занимался помощник, было не разобрать — для отчёта перед клиентом такая запись
бесполезна. Теперь при просмотре журнала виден сам выполненный текст; очень длинный показывается
началом с честной пометкой, сколько символов из скольких показано, а целиком он по-прежнему
хранится в журнале базы. Многострочный текст выводится с отступом и не сливается с остальными
полями записи.
У записи объекта видно, какие реквизиты меняли
У записи объекта не было видно, что именно меняли. В журнале значилось, какой объект изменён, но
не какие реквизиты. Теперь список изменённых реквизитов записывается вместе с событием — сами
значения при этом в журнал не попадают.
Обезличивание распространяется и на записи журнала
Если в базе включена защита персональных данных, выполненный код и изменённые реквизиты заменяются
метками так же, как в остальных ответах.
Руководство и памятка администратору
Что уходит на сервер лицензий — перечислено точно
Что уходит на сервер лицензий, было не написано нигде. Вопрос задаёт каждый, кто читает продукт
глазами службы безопасности, а ответа на сайте не было — оставалось верить на слово. Теперь в
руководстве есть точный перечень: что именно уходит при проверке лицензии и зачем, чего не уходит
ни при каких условиях (ни имя компьютера и пользователя Windows, ни название базы и конфигурации,
ни версия платформы, ни то, какими командами и сколько раз пользовался помощник, ни тексты
запросов, ни сами данные) и что хранится на стороне поставщика. Сбора статистики использования в
продукте нет вовсе.
Границы обезличивания названы прямо
Перечень защищаемых сведений был написан как общее обещание, а не как исчерпывающий список, и
умалчивал о границах. Теперь в разделе об обезличивании перечислены все виды сведений, которые
закрываются метками, и рядом стоит прямая оговорка о том, чего продукт НЕ маскирует: свободный
текст он не разбирает, поэтому телефон, адрес или имя человека, которого нет в справочниках, уйдут
в модель как есть. Названы и пределы поиска известных наименований внутри текста. Это лучше
прочитать в руководстве до покупки, чем обнаружить самому после.
Где хранится соответствие меток и настоящих значений
Появился ответ на вопрос, где лежит таблица «метка → настоящее значение». Она хранится внутри
самой информационной базы и не покидает её никогда: наружу уходят только метки, расшифровка
выполняется внутри базы, и у того, кто получил метку, соответствия нет.
Как запретить физическое удаление, оставив запись
Описан приём «запись без физического удаления». Отдельного права на удаление в настройке доступа
нет — оно входит в право «Запись». Разделить их можно слоем ниже: снять право «Удаление» у роли
пользователя базы, под которым работает помощник. Изменение и пометка на удаление продолжат
работать, физическое удаление станет невозможным.
Памятка администратору начинается с рекомендуемого пути, а не с проброса порта
Памятка системному администратору начиналась с проброса порта, хотя чаще всего пробрасывать ничего
не нужно. Рекомендуемого пути — программа подключения на компьютере пользователя, а до базы через
опубликованную базу — в памятке не было вовсе, и администратор шёл настраивать туннели там, где
хватало разовой публикации. Теперь этот путь стоит первым: что сделать на стороне базы, что
понадобится пользователю, чем путь лучше остальных и какие у него ограничения. Заодно уточнён
способ «прямое соединение с кластером 1С по сети»: одного VPN для него мало — нужны порты
кластера, разрешение имён его серверов и совпадение версии платформы с сервером приложений.
Как обновиться
- Скачайте новую версию расширения и установите её в базу поверх прежней.
- Откройте «Подключение ИИ» и нажмите кнопку «Подключить».
Второй шаг обязателен: по этой кнопке обновляется сама программа подключения. Без неё
расширение уже новое, а программа продолжает работать прежняя.