Skip to content

About

No description or website provided.

Topics

Resources

Stars

33 stars

Watchers

2 watching

Forks

Latest commit

 

History

880 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Управление конфигурациями 1С

Версия .NET Windows/WPF Linux/Avalonia Лицензия

Кроссплатформенное десктопное приложение на .NET для управления информационными базами 1С:Предприятие 8.3, заменяющее стандартный список баз 1С современным интерфейсом. Одна кодовая база собирается под обе ОС: WPF на Windows и Avalonia 11 на Linux.


✨ Возможности

  • Запуск баз в режимах «1С:Предприятие» и «Конфигуратор»; выбор версии и линии платформы, разрядности (32/64), тонкого/толстого клиента, веб-клиента; автопоиск установленной платформы.

  • Запуск из командной строки — ConfigurationManagement.exe --run "Имя базы" [--designer] запускает базу без открытия окна (ярлык на любую базу, скрипты, внешние лаунчеры); --list выводит список баз с Id; глобальные флаги --json (машиночитаемый вывод в едином контракте) и --profile <id>; команды выполняются без GUI (в т.ч. из планировщика ОС); единые коды возврата: 0 — успех, 1 — ошибка, 2 — не найдено, 3 — частичный успех (обе платформы).

  • Управление списком: вкладки Все базы / Избранное / Недавние, иерархические группы с вложенностью, избранное Alt+1…9, закрепление, поиск и мультифильтр по тегам, сортировка; переход к базе в общем списке из любой вкладки — «Найти в списке» (горячая клавиша Ctrl+T, пункт контекстного меню базы): раскрытие цепочки групп, выделение строки и прокрутка к ней именно в разделе «Все базы» (строка в «Закреплённых» не перехватывает переход).

  • Теги баз — назначение прямо в строке списка: кнопка «+ тег» открывает поле с выбором из существующих тегов (выпадающий список) или свободным вводом нового; теги отображаются чипами под названием базы и участвуют в мультифильтре панели «Теги».

  • Горячие клавиши для избранных (закладки баз 1–9) — избранные базы получают слот с номером (1…9), до 9 закладок; в списке баз у закладки отображается бейдж с номером. Установка: Ctrl+Shift+P, Ctrl+Shift+[1..9], меню Ctrl+B или звёздочка в строке. Перемещение: Ctrl+[1..9] (с раскрытием свёрнутой группы), меню Ctrl+B. Очистка: Ctrl+Alt+X (все), удаление конкретной. Запуск: Alt+<номер> — «1С:Предприятие», Ctrl+Alt+<номер> — «Конфигуратор», Alt+E — все базы с закладками.

  • Мультивыделение баз и пакетные операции — Ctrl+щелчок отмечает/снимает базу, Shift+щелчок выделяет диапазон от последней обычной строки до цели; помеченные строки подсвечиваются вторичным фоном. При N > 1 в контекстном меню появляется блок «Для выделенных (N)…»: назначить тег, переместить в группу, добавить в избранное, выполнить сценарий резервирования, проверить доступность, удалить (обе платформы).

  • Массовая замена в строке подключения баз (меню «Утилиты», блок «Для выделенных (N)…») — окно «Заменить в строках подключения…»: поиск по полю строки подключения (сервер, порт, имя ИБ на сервере, путь файловой базы, веб-URL или вся строка) с режимами «Точное совпадение / Префикс / Подстрока / Регулярное выражение» и учётом регистра; области «Все базы / Выделенные (N) / Текущая группа»; предпросмотр «база | поле | было → станет» с подсветкой изменённых строк и сводкой (изменяемых баз / без совпадений / без подключения); подтверждение перед применением; кнопка «Отменить последнюю замену» (в окне и в «Утилитах»); автосоздание JSON-бэкапа списка перед операцией; приватные базы не затрагиваются; прочие параметры строки (Usr/Pwd/SchJobDn/disstt) сохраняются (обе платформы).

  • Пользовательские действия в контекстном меню базы/группы (подменю «Пользовательские действия…») — произвольные команды через системный shell с подстановкой параметров базы ({ИмяБазы}, {СтрокаПодключения}, {Каталог}/{ПутьИБ}, {Id}, {Тип}, {Сервер}, {ИмяНаСервере}, {ИмяГруппы}, {Пользователь}, {Пароль}, {ВебURL}, {Порт}, {Дата}; поддерживается и прежний синтаксис %…%) и экранированием подстановок для cmd/PowerShell/sh; область применения — база / группа / обе; выполнение для всех баз группы и для выделенных (N) баз с параллельным запуском; таймаут по умолчанию 30 с; подтверждение по умолчанию (можно отключить для действия или в настройках); горячие клавиши действий; приватные базы исключаются при заблокированном профиле; пароль в командах маскируется в истории запусков (обе платформы).

  • Командная палитра Ctrl+K — быстрый поиск по базам и командам интерфейса: Enter выполняет выбранное (для баз — «1С:Предприятие», Shift+Enter — Конфигуратор); избранные базы — вверху списка.

  • Настраиваемые горячие клавиши для запуска и действий интерфейса.

  • Создание ИБ — пустая или из шаблона (.cf/.dt), файловые и клиент-серверные; редактирование, удаление, выгрузка .dt/.cf, тестирование, физическое удаление каталога. Последние использованные параметры запоминаются и подставляются при следующем открытии окна: сервер СУБД, порт и тип базы («Файловая»/«Клиент-серверная») — и после успешного создания, и после отмены.

  • Дублирование базы (контекстное меню → «Администрирование») — файловая ИБ: копия каталога рядом с исходным и запись в списке; клиент-серверная ИБ (0.3.9.100): клон на сервере через выгрузку .dt/.cf → CREATEINFOBASE → восстановление данных (режимы «Данные и конфигурация» / «Только конфигурация», с параметрами СУБД и целевым сервером). Новая запись — с новым Id, чистой историей; наследует подключение, авторизации и теги; для запущенной базы копирование запрещено.

  • Drag & drop добавление баз из проводника — перетащите каталог файловой ИБ или файл 1Cv8.1CD из проводника (Windows) / файлового менеджера (Linux) в главное окно: база добавится в список автоматически (несколько путей за один drop; дубликаты пропускаются).

  • Очистка кэша 1С с отображением размеров по базам и остатков от удалённых баз.

  • Синхронизация с ibases.v8i (импорт/экспорт, автоматическая по режиму), импорт из StartManager, резервные копии профиля. Выборочный экспорт и добавляющий импорт отдельных баз — через окно-чеклист (Настройки → Базы → Список). Дедупликация групп при импорте безопасная: удаляются только настоящие дубликаты (одинаковый ID или имя+родитель), группы с детьми/базами не теряются, дети перевешиваются на сохранённую группу. Если папки «пропали» из-за прежних версий — достаточно удалить deleted_groups.json из каталога данных (см. ниже): группы, удалённые ранее вручную, перестанут «не возвращаться», а диагностика импорта в журнале (logs/) покажет количество групп до/после, число баз без группы и пары «удалён дубликат → сохранена группа».

  • Экспорт/импорт списка баз в JSON (меню «Утилиты») — полный перенос состояния списка между установками: базы со всеми полями (подключение файловая/клиент-серверная/веб, имя, группа, теги, закладки 1–9, закрепление, приватность, внешняя обработка, скрипты pre/post запуска, раздельные учётные данные, параметры запуска, порядок сортировки), иерархия групп целиком, избранное и закрепление; приватные базы — при разблокированном профиле. Импорт — добавляющий (дубликаты по строке подключения пропускаются) со сводкой перед подтверждением.

  • HTML-отчёт по базам (меню «Утилиты») — самодостаточный HTML-файл со сводным отчётом по видимому списку баз (стили встроены, внешних зависимостей нет): шапка с датой/временем и профилем, сводка карточками (всего/доступно/недоступно по последним результатам проверки, базы с копиями, объём ИБ, проблемные базы), таблицы по группам (имя, группа, тип, строка подключения, доступность, конфигурация/версия, размер, последняя копия, дата изменений, теги, закладка) с подсветкой проблемных строк по критериям Центра обслуживания (недоступна / нет копии / копия старше 7 дней / мало места / кэш больше 1 ГБ / новый релиз); навигация «Только проблемы» и ссылки-якоря по группам; приватные базы скрыты, как в CSV-экспорте. Открывается в любом браузере, пригоден для печати/рассылки.

  • Поиск потерянных и забытых баз 1С на дисках с инкрементальной отдачей результатов, поиском по каталогу и добавлением найденных баз в программу и/или ibases.v8i.

  • Профили пользователей с паролями (PBKDF2-SHA256), миграция данных.

  • Приватные базы — флаг «Приватная база» в свойствах: база скрывается из всех списков (дерево, поиск, теги, трей, командная палитра, недавние), пока профиль не разблокирован паролем; команда «Открыть приватные базы» в меню «Утилиты» и авто-разблокировка при входе с паролем профиля; запуск приватной базы через CLI отклоняется.

  • Локализация (русский/английский, подключение языков без пересборки).

  • Темы оформления: светлая/тёмная, собственные цветовые схемы с двумя палитрами и живым предпросмотром; автогенерация пары светлой и тёмной палитр из одного базового цвета («Создать схему из цвета…»). Темизация распространяется на все окна приложения, включая диалоги «Сценарии резервирования» и «Задания по расписанию».

  • Проверка доступности всех баз (кнопка «Доступность») — пакетная проверка баз с индикатором хода: пока база проверяется, её значок становится серым с часиками, результат каждой базы публикуется сразу по мере готовности, а по завершении выводится итог «Проверено N баз: доступно M, недоступно K» (ограниченный параллелизм — до 4 баз одновременно; повторный запуск во время проверки игнорируется).

  • Индикатор «база сейчас запущена» — зелёная точка у имени базы, если процесс 1С с параметрами подключения этой базы обнаружен среди запущенных (опрос раз в 10 с: Windows — WMI, Linux — /proc).

  • Автообновление из GitHub Releases с единым диалогом обновления и многопоточной загрузкой (HTTP Range, до 8 сегментов с докачкой каждого и динамической балансировкой: завершившийся сегмент берёт следующий незанятый диапазон, поэтому все соединения работают до конца файла, а «хвост» не докачивается одним потоком) — провайдеры, режущие скорость на одно соединение, больше не тормозят скачивание; при любом сбое параллельного режима загрузка автоматически переходит в однопоточный путь.

  • Проверка обновлений конфигураций 1С (F9) — проверка для выбранной ИБ по ресурсу обновлений 1С, подсветка нового релиза и загрузка дистрибутива; авторизация выполняется через портал 1С (логин/пароль на login.1c.ru, учётные данные ИТС — из справочника its_accounts.json), последняя версия определяется со страницы проекта на releases.1c.ru, дистрибутив скачивается с этого же ресурса. Страница личного кабинета («Личные данные») после POST считается успешным входом, а детектор формы входа опирается на поля username/password (не только на токен execution) — ложного «вход не подтверждён» при корректных кредах нет. При сбое входа (неверные данные, лимит попыток, изменённая форма входа, запрос капчи) показывается понятная причина: отдельное сообщение, если портал запросил подтверждение (капча), и совет проверить ту же пару логин/пароль на login.1c.ru в браузере (режим инкогнито) — если браузер просит капчу или отклоняет пароль, автоматический вход также не сработает; имя используемой учётной записи ИТС и кнопки «Открыть login.1c.ru в браузере» / «Учётные данные ИТС…» — то же поведение в окнах «Обновление платформы 1С» (Ctrl+F9) и «Скачивание версии платформы 1С».

  • Цепочки обновлений конфигурации (issue #352) — в окне «Проверка обновлений» (F9) при наличии нового релиза проверяется, можно ли обновить текущую версию напрямую до последней (по колонке «Список версий» таблицы релизов на releases.1c.ru); если нельзя — строится цепочка обновлений: вариант «снизу вверх» (каждый шаг — максимальная версия, на которую можно прыгнуть с текущей) и вариант «оптимальный» (минимальное число прыжков), показываемый, если отличается; таблица вариантов с колонками «№» и «Список версий», кнопка «Скачать цепочку» (выбор каталога и последовательная загрузка всех версий выбранного варианта с прогрессом «какой файл скачивается и сколько осталось»); при отсутствии данных о совместимости — прежнее поведение (загрузка только последней версии).

  • Окно «Актуальные релизы» (ALT+F9) — пакетная проверка отслеживаемых типовых конфигураций.

  • Автообновление платформы 1С (Ctrl+F9) — окно «Обновление платформы 1С» (меню «Утилиты»): единый список установленных и доступных версий с портала 1С (releases.1c.ru/project/Platform83; логин/пароль сайта 1С — из справочника учётных записей ИТС its_accounts.json, как у проверки конфигураций) с колонками Версия/Размер/Статус/Совместимые базы; загрузка дистрибутива (многопоточная — HTTP Range, до 8 соединений с докачкой, fallback на однопоточный путь; проверка свободного места); «Скачать и установить» на Windows — тихая установка /VERYSILENT /SUPPRESSMSGBOXES /NORESTART с проверкой Authenticode-подписи и запуском с UAC, на Linux — готовая команда sudo для .deb/.rpm с копированием в буфер обмена (для .tar.gz — инструкция); «Только скачать» и «Выбрать файл установщика…»; «Удалить старые версии…» (исключаются новейшая, используемые базами и запущенная версия); предупреждения перед установкой — запущенные процессы 1С, свободное место, подпись файла, права администратора; уведомление о результате (обе платформы).

  • Список типовых конфигураций — предопределённый набор + пользовательские, формирование ссылок обновлений по правилу 1С, настройка связи ИБ ↔ конфигурация и определение версии. В свойствах базы (вкладка «Платформа») — группа «Привязка»: текущая привязка (типовая конфигурация · редакция · адрес каталога релизов), кнопки «Связать…» (повторная привязка через окно «Связать с конфигурацией») и «Очистить» (сброс связи) — обе платформы.

  • Сценарии резервирования (DT/CF/ZIP/RAR, до 3 каталогов) — модель сценария с шаблоном имени и учётными данными, выполнение для выбранной ИБ.

  • Выполнение сценария (SHIFT+CTRL+F5) — пакетная выгрузка .dt/.cf через конфигуратор, упаковка в ZIP/RAR и копирование во все каталоги назначения.

  • Задания по расписанию (меню «Утилиты») — резервная копия, обновление конфигурации ИБ из .cf (/LoadCfg + /UpdateDBCfg), связка «Копия → обновление», проверка целостности файловой ИБ (chdbfl, тихий запуск с ожиданием результата) и обновление самого приложения по времени и дням недели; выполняются фоновым планировщиком, пока приложение запущено. Догоняющее выполнение: если компьютер был выключен в плановый момент, при следующем запуске задание выполняется сразу — один раз (свежие пропуски не старше 7 суток; к «Обновлению приложения» не применяется), с системным уведомлением «Выполнено пропущенных заданий: N»; отключается в настройках (Настройки → Настройки → «Выполнять пропущенные задания по расписанию при старте»). В окне задания рядом с выбором сценария есть кнопка «Сценарии…» — список сценариев открывается без закрытия окна, а созданные/изменённые сценарии сразу появляются в выборе.

  • Список выгрузок и восстановление (SHIFT+CTRL+F7, /RestoreIB) — обзор созданных файлов и загрузка данных обратно в ИБ (в т.ч. без интерактивного конфигуратора).

  • Пакетное обновление конфигураций из хранилищ (меню «Утилиты») — окно со списком баз с заполненным адресом хранилища конфигурации и флажками; выбранные базы последовательно обновляются через конфигуратор в пакетном режиме (/ConfigurationRepositoryF + /ConfigurationRepositoryN/P + /ConfigurationRepositoryUpdateCfg /UpdateDBCfg) с построчным журналом (успех/ошибка/время) и итогом; базы, запущенные в данный момент, пропускаются, результат попадает в историю запусков (RepoUpdate).

  • Хранилище конфигурации (меню «Утилиты») — обозреватель хранилища конфигурации выбранной базы (доступен для базы с заполненным адресом хранилища): подключение к хранилищу (адрес и имя — из свойств базы, логин/пароль — из учётных данных базы с возможностью ручного ввода; пароль не сохраняется на диск), список версий хранилища (номер/дата/автор/комментарий), состав выбранной версии (объекты с типами и владельцами), сравнение версий между собой и с текущей конфигурацией базы (отчёт CSV/TXT), выгрузка версии в файл .cf и захват/отмена захвата всех объектов (комментарий операции ведётся локально — журнал окна и история запусков базы; платформе при Lock/Unlock не передаётся). Механика — пакетный режим конфигуратора (ключи /ConfigurationRepositoryF/N/P, /ConfigurationRepositoryDumpCfg -v, /ConfigurationRepositoryReport, /ConfigurationRepositoryLock//ConfigurationRepositoryUnlock); конфигурация базы должна быть связана с хранилищем, база не должна быть запущена. Ограничение: текстовый формат отчёта по истории не документирован — при его недоступности показывается актуальная версия, и сравнение двух произвольных версий недоступно (состав, сравнение с базой и выгрузка актуальной версии работают).

  • Центр обслуживания (меню «Утилиты») — дашборд состояния всех баз: доступность (с временем последней проверки), последняя копия, размер ИБ, свободное место на диске (файловые базы: диск/точка монтирования и объём со долей, например «C:\ — 23,4 ГБ (12%)»; ниже порога ячейка подсвечивается красным), кэш (вычисляется при открытии), конфигурация/версия, возраст данных и последний результат проверки обновлений конфигурации. Фильтр «Только проблемы» показывает базы с проблемами (недоступна / копия отсутствует или старше 7 дней / кэш больше 1 ГБ / мало свободного места на диске / обнаружен новый релиз); порог свободного места настраивается (Настройки → Базы → Обслуживание, по умолчанию 10 ГБ, 0 — не предупреждать); кнопки «Проверить доступность» и «Открыть базу» (переход к строке в главном списке), двойной клик — выбрать базу в главном окне.

  • Блокировка сеансов файловой ИБ (CTRL+ALT+L) — установка/снятие блокировки без открытия «1С:Предприятия»: время начала (+5 мин), длительность (30 мин), сообщение с параметрами {ДатаНач}/{ДатаКон}, шаблоны «Технические работы» и «Обновление ИБ».

  • Временная блокировка приложения паролем — защита интерфейса на время отсутствия пользователя: команда «Блокировка приложения» (меню «Утилиты», сразу после пунктов «Серверы 1С» и внешней консоли администрирования, можно назначить горячую клавишу) показывает модальное окно блокировки, и пока пароль не введён, приложение недоступно — окно разблокировки закрывается только верным паролем. Первый вызов предлагает задать пароль (хранится в виде PBKDF2-хэша).

  • Интеграция с проводником Windows — ассоциация .1CD и команды контекстного меню «Зарегистрировать в списке баз» / «Запустить 1С:Предприятие» / «Запустить Конфигуратор» (регистр HKCU, без прав администратора; Настройки → Базы → Обслуживание → Интеграция). На Linux функция недоступна.

  • Проверка целостности файловой ИБ (chdbfl, CTRL+ALT+Q) — быстрый запуск утилиты проверки целостности файловой ИБ без открытия «1С:Предприятия» (контекстное меню файловой базы).

  • Поддержка схем вывода rac 8.5.4.1878 (0.3.9.321, issue #324) — парсер list-команд монитора «Серверы 1С» и импорта из кластера понимает новые ключи (conn-id/connected-at/blocked-by-ls/application у соединений; блоки блокировок со стартером connection + object/descr), точное имя кластера из cluster list; job list пробует оба формата параметра --cluster (--cluster=<uuid> и --cluster <uuid>).

  • Вход на portal.1c.ru: 302-редиректы и классическая CAS-форма (0.3.9.323, issue #323) — пробная проверка «живой» сессии следует за 302 (кроме login.1c.ru и /error/403) до финального 2xx — releases.1c.ru отвечает редиректом на канонический URL и для живой сессии, такой probe больше не вызывает лишний вход; в журнал добавляются состав полей POST и имена заголовков ответа (Location); для классической формы login.1c.ru тело POST собирается ровно как в рабочем коде 1С (8 полей, без лишних hidden-полей, на которые CAS отвечает 200 кабинетом вместо 302 с билетом).

  • Серверы 1С (CTRL+ALT+S) — встроенный монитор серверов 1С (меню «Утилиты») вместо запуска внешней оснастки: подключение к серверу по адресу:порт (1540 — агент сервера ragent, 1545 — сервер администрирования RAS) с логином/паролем администратора кластера; просмотр кластеров, рабочих процессов (PID, память, потоки, CPU), сеансов (пользователь, база, время старта, состояние, блокировки), соединений (в т.ч. описание соединения descr), блокировок объектов и информации о выбранном кластере (rac cluster info); завершение сеанса / разрыв соединения с подтверждением; поддержка новых версий rac, отдающих list-команды блоками «ключ : значение» (а не таблицами) — все вкладки заполняются; единственный кластер выбирается в списке сразу; переключатель автообновления и интервал 5/10/15/30/60 с на форме; при нераспознанном выводе rac — понятная ошибка «Ошибка разбора данных от кластера» с остановкой автообновления (без бесконечных повторов), ручное «Обновить» остаётся доступным; данные получаются командами утилиты rac (cluster list/process list/session list/connection list/lock list, поиск rac в каталоге bin платформы 1С) на обеих платформах; пароль администратора кластера не сохраняется на диск и вводится при каждом открытии окна. Внешняя оснастка осталась пунктом «Консоль администрирования серверов (внешняя)».

  • Диагностика подключения к серверу 1С (контекстное меню клиент-серверной/веб-базы → «Администрирование», а также «Диагностика сети…» в окне монитора серверов) — проверка сетевой доступности сервера 1С: резолв DNS (разрешённые IP-адреса), ICMP-пинг с задержкой (на Linux без прав — «не проверено»), TCP-проверка портов с измерением RTT и таймаутом, отличающим «порт закрыт» от «файрвол/потеря сети»; кнопка «Проверить порты 1С» — стандартные порты 1540 (агент ragent) / 1541 (кластер) / 1545 (RAS); сводная карточка хоста и подсказки по типичным проблемам (DNS-ошибка, остановленный сервис, файрвол, кластер слушает другой порт); для веб-баз хост/порт берутся из URL публикации (обе платформы).

  • Быстрая TCP-проверка в проверке доступности баз (Настройки → «Быстрая TCP-проверка порта кластера…») — опциональный quick-fail перед COM-подключением клиент-серверных баз: закрытый порт кластера даёт мгновенное «недоступно» без ожидания длинного COM-таймаута; открытый порт — проверка продолжается как обычно (ложных результатов нет; по умолчанию выключено).

  • Импорт из кластера 1С (меню «Утилиты») — добавление информационных баз сервера 1С в список приложения: подключение к агенту сервера (ragent, порт 1540) или серверу администрирования (RAS, порт 1545) с логином/паролем администратора кластера, выбор кластера и чеклист найденных баз (rac infobase summary list) с колонками «Имя», «Описание», «Кластер», «Подключение», «Статус»; базы, уже присутствующие в списке приложения (по строке подключения), приходят со снятым флажком и пометкой «уже есть в списке», файловые ИБ кластера не импортируются; опция «Создавать группу по имени кластера» (по умолчанию включена, недостающие группы создаются при добавлении); сводка «Будет добавлено баз: N» перед подтверждением; пароль администратора кластера не сохраняется на диск и вводится при каждом открытии окна (обе платформы).

  • Внешняя обработка при запуске ИБ — поле «Внешняя обработка» в свойствах базы; выбранная .epf/.erf автоматически запускается при открытии базы в режиме «1С:Предприятие» (ключи /Execute и /C в строке запуска).

  • Пользовательские скрипты при запуске базы (функция №8) — произвольные команды «Выполнить перед запуском» и «Выполнить после запуска» в свойствах базы (вкладка «Запуск»): выполняются через системный shell (cmd /c на Windows, sh -c на Linux) при каждом запуске этой базы — и в «1С:Предприятии», и в Конфигураторе, из окна, трея, командной палитры, закладок и CLI (--run). Pre-команда ожидается до 30 секунд; при ошибке или таймауте пользователь предупреждается, но запуск базы не блокируется; post-команда запускается без ожидания завершения (fire-and-forget). Команды фиксируются в истории запусков базы (pre:/post: в деталях записи).

  • Действие по двойному щелчку на базе — единая настройка запуска «Запустить 1С:Предприятие», «Запустить Конфигуратор» или «Ничего»; глобально (Настройки → Базы) и индивидуально для каждой ИБ (в свойствах: «Автоматически» — наследование глобального, либо явное действие; переопределяет глобальное).

  • Автозапуск при старте ОС — запуск вместе с операционной системой: ключ реестра HKCU\...\Run на Windows (без прав администратора) / автозапуск десктоп-окружения ~/.config/autostart на Linux (Настройки → Базы → Обслуживание).

  • Сохранение копии экрана по хоткею (Ctrl+F12) — снимок рабочего стола (Windows, все мониторы) или главного окна (Linux) сохраняется в PNG в настраиваемый каталог (Настройки → Клавиши → «Копия экрана», каталог — в Настройки → Базы → Обслуживание).

  • Режимы функциональности: Пользователь / Специалист / Разработчик — выбор режима в окне «Настройки» (Настройки → Настройки → «Режим функциональности») с пояснением каждого режима прямо в окне. В режиме «Пользователь» в контекстном меню базы остаются только запуск, избранное и закрепление; на текущем этапе «Специалист» и «Разработчик» дают одинаковый полный набор операций со списком баз (состав меню не различается), а реальные разработческие инструменты конфигуратора запланированы на последующие этапы дорожной карты.

  • Параметры запуска по умолчанию из 1CLaunch.cfg — ключи configpath (asp/usp/sp), configdir, appmode, selectmodeoff; приоритет аргументов командной строки над файлом; подстановка как значений по умолчанию при запуске 1С.

  • Раздельные учётные данные для запуска и хранилища (функция №7 StartManager) — отдельные логин/пароль для режимов «1С:Предприятие», «Конфигуратор» (с признаком «Авторизация как для 1С:Предприятия») и Хранилища конфигурации; каждый набор передаётся ключами командной строки (/N /P, /ConfigurationRepositoryN /ConfigurationRepositoryP) при запуске соответствующего режима, единый резолвер InfobaseAuthResolver.

  • Портативный режим / установка на сменный носитель — при наличии portable.dat рядом с exe (или env-флага CONFIG_MANAGEMENT_PORTABLE=1) настройки хранятся рядом с приложением (ConfigurationManagement-Data) и переносятся вместе с носителем.

  • Колонка «Дата изменений» файла ИБ (функция №3 StartManager) — настраиваемая колонка списка баз с датой и временем последнего изменения файла информационной базы (LastWriteTime); видимость, ширина и порядок задаются в Настройки → Отображение → Колонки.

  • Автосохранение состояния списка (раскрытые группы) — раскрытие/сворачивание групп списка баз сохраняется между сеансами и периодически автосохраняется (по умолчанию раз в 10 секунд) только при наличии изменений (AutoSaveListState, ListStateAutoSaveIntervalSeconds).

  • Экспорт списка баз в CSV (меню «Утилиты») — выгрузка всех видимых сейчас баз (приватные скрыты; учитываются режим списка, поиск и теги) в CSV-файл для Excel: имя, полный путь группы, тип, строка подключения, теги, закладка 1–9, закрепление, дата изменений файла ИБ и размер. UTF-8 с BOM, разделитель «;», экранирование по RFC 4180; имя файла по умолчанию Bases_ГГГГ-ММ-ДД.csv (обе платформы).

  • Инспектор процессов 1С (меню «Утилиты») — таблица всех запущенных процессов платформы 1С: база (сопоставление командной строки со списком, иначе — «Неизвестная база»), режим (1С:Предприятие / Конфигуратор / Служебный по ключам DESIGNER/CONFIG, /Execute, /C), пользователь, время запуска, PID и краткая строка подключения (в подсказке — полная командная строка). Кнопка «Обновить» и автообновление раз в 5 секунд; «Завершить процесс» — с подтверждением и предупреждением о несохранённых данных (только процессы 1cv8, перезапуск списка после завершения); двойной клик по строке с известной базой — переход к ней в главном окне (обе платформы).

  • Статистика использования баз (меню «Утилиты») — аналитика по истории запусков всех баз: таблица «Имя базы | Запусков | Последний запуск | Первый запуск | Дней с последнего запуска» (сортировка по умолчанию — по числу запусков убыванием, фильтр «Только используемые» — базы без истории скрываются), сводка (всего баз, баз с запусками, всего запусков, среднее на базу, самая запускаемая база) и распределение запусков по дням недели текстовой гистограммой. Учитываются все записи истории запусков каждой базы (включая служебные режимы и запуски из CLI/трея/задач), для баз без истории — «—» в колонках дат (обе платформы). с эталонным файлом .cf или двух файлов .cf между собой: отчёт об отличиях по объектам метаданных (добавленные / изменённые / удалённые, сгруппированные по типам, со статусами, числом файлов и размерами) и экспорт в CSV и TXT. Сравнение выполняется через выгрузку конфигураций в XML-файлы (/DumpConfigToFiles) без открытия графического конфигуратора; каждый .cf распаковывается во временную базу (обе платформы).

  • Сравнение конфигураций (меню «Утилиты») — сравнение конфигурации выбранной базы

  • Обозреватель метаданных конфигурации (меню «Утилиты») — окно для просмотра метаданных выбранной информационной базы или файла .cf без интерактивного конфигуратора: выгрузка XML через /DumpConfigToFiles (для .cf — распаковка во временную базу), дерево «Конфигурация → подсистемы → типы → объекты» с ленивой загрузкой при раскрытии (объекты вне подсистем — раздел «Без подсистемы»); детали объекта (синоним, комментарий, реквизиты/табличные части/формы/команды, признак иерархичности, размер, путь в выгрузке); поиск по имени с подсветкой совпадений и автораскрытием путей (лимит результатов — 500, при превышении — подсказка «уточните запрос»), фильтр по типу; экспорт списка в CSV/TXT (Excel, UTF-8 BOM, разделитель «;»); открытие из отчёта сравнения: «Сравнение конфигураций» → результат → «Обозреватель метаданных…» (режим «База ↔ .cf» — база предвыбрана и загрузка стартует сразу). Ограничение: только метаданные — тела модулей и макеты не разбираются; большие конфигурации выгружаются длительно (подсказка в окне; перед выгрузкой из запущенной базы — предупреждение).

  • Клонирование клиент-серверной ИБ (0.3.9.100, функция №10) — команда «Дублировать базу» для серверной базы создаёт копию на целевом сервере 1С: полная копия (данные + конфигурация: выгрузка .dt, CREATEINFOBASE, восстановление) или только конфигурация (выгрузка .cf, создание с /UseTemplate); диалог с параметрами сервера/Ref/СУБД, окно прогресса с этапами «Выгрузка → Создание → Загрузка», человекочитаемые ошибки из лога платформы (обе платформы).

  • Системные уведомления ОС о завершении фоновых операций — при свёрнутом в трей приложении завершение резервной копии (успех/ошибка, имя базы и сценария), задания по расписанию (успех/ошибка, имя задания и тип) и обнаружение новой версии приложения показываются системным уведомлением (Windows — balloon-tip значка трея, Linux — notify-send); отключаются в настройках (Настройки → Настройки → «Системные уведомления»).

  • Системный трей, компактный режим интерфейса (сжимает отступы строк списка и высоту собственного заголовка окна), виртуализация списков.

  • Механизм отладочных флагов (issue #347, 0.3.9.315; с 0.3.9.316 — в каталоге профиля) — файл-конфиг trace.json лежит в каталоге данных активного профиля — рядом с settings.json (Windows: %APPDATA%\ConfigurationManagement\profiles\<Id>\, Linux: ~/.config/ConfigurationManagement/profiles/<Id>\; в legacy-режиме без профиля и в портативном режиме — каталог данных приложения) и несёт флажки диагностики. По умолчанию все флаги выключены — логи закрытых тикетов больше не «капают». Файл создаётся при каждом старте (если отсутствует) и пишется в pretty-print — с переносами строк и отступами, стабильный порядок ключей. С 0.3.9.320 конфиг не дублируется в корне каталога данных: если файл уже есть в папке активного профиля — новый рядом с profiles.json не создаётся (временный дубль, образовавшийся до выбора профиля, удаляется при переносе; issue #349). При переходе с 0.3.9.315 существующий конфиг из корня каталога данных переносится в профиль автоматически (миграция); старый JSONL-журнал 0.3.9.308–0.3.9.314 (первая строка {"ts":…) при первом старте 0.3.9.315 уже переименован в trace_menuclose_legacy.json (история сохраняется). Конфиг перечитывается при изменении файла без перезапуска:

    {
      "version": 1,
      "CM_COLUMNS": false,
      "CM_MENUCLICK": false,
      "CM_MENUCLOSE": false,
      "CM_REDIRECT": false
    }
    Флаг Что включает Файл/куда пишется
    CM_COLUMNS Диагностику колонок списка (стартовый дамп + изменения ширины, issue #309/#343). Явный false выключает диагностику ВСЕГДА — даже при установленной env CM_COLUMNS_TRACE=1/CM_COLUMNS=1 (записей CM_COLUMNS: total=… нет ни в общем логе, ни в стартовом дампе); env — только запасной способ включения, если флаг в конфиге отсутствует либо true Общий журнал приложения (logs)
    CM_MENUCLOSE Журнал событий меню/кликов дерева: MenuOpened/MenuClosed/MenuClosedCursor, MouseDown/MouseUp (WPF), PointerPressed/PointerReleased (Avalonia), Activated/Deactivated, TryApply/Fallback/Dump500ms/EnsureStableStart/EnsureStable, с 0.3.9.314 также LastPlainClick и стабилизация clickBeforeMenuClose, с 0.3.9.316 — fallback menuClosedOverRow (восстановление выделения строки под курсором после закрытия меню попапом) и предикат ShouldRestoreSelectionForRowUnderCursor, с 0.3.9.317 — надёжный сигнал MenuClickDuringOpen (клик по попапу самого меню, восстановление БЕЗ привязки к давности), итоговое решение MenuCloseDecision, возврат клавиатурного фокуса дереву MenuOpenedFocus/MenuFocusRestore и предикаты ShouldRestoreSelectionAfterMenuClose/ShouldReturnKeyboardFocusToTree — стабилизация выделения работает всегда, лог — под флагом logs\trace_menuclose.json (AppDataDirectory/logs/, ~1 МБ, круговое усечение)
    CM_MENUCLICK Отладку правого клика/открытия контекстного меню (по тексту #347); в этой версии — псевдоним на CM_MENUCLOSE там же
    CM_REDIRECT INFO-диагностику редиректов/входа портала 1С ([Updates] Редирект…, Вход запущен…, инвентаризация cookie, POST-диагностика, звено CAS security_check/alive=True, issue #323/#330/#334); итоговые WARN/ERROR пишутся всегда Общий журнал приложения (logs)

    Включить флаг: открыть trace.json в редакторе, заменить false на true для нужного флага и сохранить — приложение подхватит значение при следующем обращении (перечитывание по времени изменения файла). Окружение (CM_COLUMNS=1, CM_MENUCLOSE=1, CM_REDIRECT=1, прежнее CM_COLUMNS_TRACE=1) — только запасной способ включения: явный false в конфиге имеет приоритет над env (выключить флаг через env нельзя). Прежний menuclose_trace.json (0.3.9.306) продолжает дописываться, если уже существует (обе платформы).

Infostart

📌 Публикация на Infostart: Управление конфигурациями 1С


🔍 Проверка доступности баз

Кнопка «Проверить доступность всех баз» (панель команд) помечает базы списка по фактическому состоянию. Проверка идёт в фоне, а результат виден интерактивно:

  • пока база проверяется, её значок становится серым с часиками, в подсказке — «Проверка доступности…»;
  • результат каждой базы публикуется сразу по мере готовности: значок меняется на иконку типа базы (янтарная — файловая, синяя — веб, фиолетовая — клиент-серверная); если база недоступна, иконка типа остаётся той же (форма не меняется), но становится красной — сразу видно, файловая это база или серверная, даже когда она не прошла проверку;
  • в строке состояния обновляется прогресс «Проверка доступности: i из N…», по завершении — итог «Проверено N баз: доступно M, недоступно K»;
  • проверки выполняются с ограниченным параллелизмом (до 4 баз одновременно), повторный запуск во время проверки игнорируется.

Как именно проверяется доступность

Тип базы Что проверяется
Файловая Наличие каталога или файла базы по пути из строки подключения (Directory.Exists / File.Exists)
Клиент-серверная (Windows) Реальное внешнее подключение к базе через COM-коннектор 1С (процесс-агент ComReadHost, ReadConfigurationInfo) с таймаутом из настройки «Таймаут определения свойств конфигурации» (по умолчанию 30 секунд)
Клиент-серверная (Linux) COM-коннектор на Linux недоступен, поэтому такие базы считаются недоступными (см. примечание)
Веб Заполненность адреса веб-публикации

⚠️ Важно: красная иконка означает «не прошла данную проверку» и НЕ равна «нельзя войти в конфигуратор». Конфигуратор запускается локальным процессом 1cv8 и не проверяет соединение так, как это делает внешний COM-коннектор. Частые причины «красных» клиент-серверных баз при работающем конфигураторе: COM-коннектор не зарегистрирован (comcntr.dll), сетевые задержки/брандмауэр, отсутствие права на внешнее соединение или большое число баз (очередь из таймаутов). Таймаут задаётся настройкой «Таймаут определения свойств конфигурации» (по умолчанию 30 секунд). Список баз можно проверить повторно — результаты перезаписываются, а до запуска проверки иконки показывают расчётное состояние по параметрам подключения.


🖥️ Технологии

Технология Назначение
.NET 10 Платформа разработки (net10.0-windows / net10.0)
WPF Графический интерфейс (Windows)
Avalonia 11 Графический интерфейс (Linux)
MVVM + Microsoft.Extensions.DependencyInjection Архитектура и внедрение зависимостей
MaterialDesignThemes Иконки и современный интерфейс (Windows)
System.Text.Json Хранение данных в JSON-файлах

📦 Требования

Windows

  • Windows 10 / 11
  • .NET 10 SDK (для сборки из исходного кода)
  • Установленная платформа 1С:Предприятие 8.3

Linux

  • .NET 10 SDK (для сборки; self-contained публикация не требует runtime)
  • Установленная платформа 1С:Предприятие 8.3 для Linux (клиент 1cv8)
  • Зависимости пакета: GTK3, glib2, xdg-utils; для трея на GNOME Shell может потребоваться расширение AppIndicator

🔧 Сборка и запуск

git clone https://github.com/sivatorov/ConfigurationManagement.git
cd Configuration Management

# Сборка
dotnet build "Configuration Management/Configuration Management.csproj"

# Запуск
dotnet run --project "Configuration Management/Configuration Management.csproj"

Целевой TFM и набор файлов выбираются автоматически по ОС: на Windows — WPF (net10.0-windows), на Linux — Avalonia (net10.0). Также доступны скрипты [build.sh](Configuration Management/build.sh), [build.ps1](Configuration Management/build.ps1) и упаковка в single-file, AppImage и .deb.


🐧 Linux

Linux-порт выполнен и включает Avalonia UI, сервисы платформы 1С (1cv8, readelf, /proc), системный трей, сборку в AppImage и .deb. Целевые дистрибутивы — Ubuntu LTS, Debian, ALT Linux, Astra Linux (x64). Реализована диагностика окружения при старте (в т. ч. детектор виртуализации и программного рендера) и корректная работа безрамочных модальных окон, что повышает стабильность в виртуализированных средах и на оконных менеджерах X11. Подробнее — в [Configuration Management/LINUX_PORT.md](Configuration Management/LINUX_PORT.md).

# Сборка single-file linux-x64
./build.sh Release publish

# Упаковка в AppImage
./package/linux/appimage.sh

# Упаковка в .deb
./package/linux/deb/build-deb.sh

💾 Хранение данных

Данные сохраняются в %APPDATA%\ConfigurationManagement (на Linux — ~/.config/ConfigurationManagement): infobases.json (базы), groups.json (группы), settings.json (настройки интерфейса), deleted_groups.json (полные пути пустых групп, удалённых вручную: пока под путём нет баз, импорт их не возвращает; удаление файла «возвращает» группы), ColorSchemes/ (цветовые схемы), logs/ (журнал приложения).


🧩 Архитектура

Приложение построено по паттерну MVVM (Models / ViewModels / Views / Services) с единой кодовой базой для Windows и Linux. Подробности — в ARCHITECTURE.md. Полная история изменений — в CHANGELOG.md.


📜 Лицензия

Проект распространяется с открытым исходным кодом и доступен бесплатно. Исходный код размещён в этом репозитории GitHub и в разделе Файлы публикации на Infostart. Подробнее — в LICENSE.


🤝 Вклад и контакты

Буду рад любым улучшениям — сделайте форк, создайте ветку и отправьте pull request. По вопросам и предложениям создавайте issue в репозитории.

About

No description or website provided.

Topics

Resources

Stars

33 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages