本文へ移動
cccskills
無料GitHub で公開

db-list

Управление реестром баз данных 1С (.v8-project.json). Используй когда нужно работать с реестром баз — список баз, зарегистрировать базу в реестре, какие базы есть

インストール方法を見る

含まれるファイル(1)

  • SKILL.md12.3 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

/db-list — Управление реестром баз данных

Управляет файлом .v8-project.json — реестром информационных баз проекта. Файл хранит параметры подключения, алиасы, привязку к веткам Git.

Usage

/db-list                    — показать список баз
/db-list add                — добавить базу (интерактивно)
/db-list remove <id>        — удалить базу из реестра
/db-list show <id|alias>    — подробности по базе

Формат .v8-project.json

Файл размещается в корне проекта (рядом с .git/).

{
  "v8path": "C:\\Program Files\\1cv8\\8.3.25.1257\\bin",
  "v8args": ["/UseHwLicenses+"],
  "databases": [
    {
      "id": "dev",
      "name": "Разработка",
      "type": "file",
      "path": "C:\\Bases\\MyApp_Dev",
      "v8path": "C:\\Program Files\\1cv8\\8.3.27.1688\\bin",
      "user": "Admin",
      "password": "",
      "aliases": ["dev", "разработка"],
      "branches": ["dev", "develop", "feature/*"],
      "configSrc": "C:\\WS\\myapp\\cfsrc",
      "repository": {
        "path": "\\\\srv01\\repo\\MyApp",
        "user": "Ivanov",
        "password": ""
      },
      "extensions": [
        {
          "name": "МоёРасширение",
          "src": "src\\cfe\\МоёРасширение",
          "repository": { "path": "\\\\srv01\\repo\\MyApp_Ext", "user": "Ivanov", "password": "" }
        }
      ]
    },
    {
      "id": "test",
      "name": "Тестовая",
      "type": "server",
      "server": "srv01",
      "ref": "MyApp_Test",
      "user": "Admin",
      "password": "123",
      "aliases": ["test", "тест"]
    }
  ],
  "default": "dev"
}

Поля корневого объекта

ПолеТипОписание
v8pathstringКаталог bin платформы 1С. Необязательный — если не задан, автоопределение
v8argsarrayДоп. аргументы запуска 1cv8.exe для всех навыков, напр. ["/UseHwLicenses+"]
ibcmdargsarrayДоп. аргументы ibcmd (форма --ключ=значение)
newObjectPosition"end" / "byName"Куда попадает новый объект в составе конфигурации: в конец своего вида (по умолчанию) или на место по имени. Переопределяется в databases[]
extensionApplyCheckboolПроверять ли применимость расширения после загрузки в базу (по умолчанию true). Разово отключается ключом -NoApplyCheck
externalCheckboolПроверять ли исходники внешней обработки/отчёта платформой перед сборкой (по умолчанию true). Разово отключается ключом -Checks off
xsdPathstringКаталог XSD-схем платформы для проверки выгрузок по версиям формата; по умолчанию .v8-xsd рядом с этим файлом. Наполняется /v8-xsd-fetch
databasesarrayМассив баз данных
defaultstringid базы по умолчанию

Поля объекта базы данных

ПолеТипОбязательноеОписание
idstringдаУникальный идентификатор (латиница, без пробелов)
namestringдаЧеловекочитаемое имя
type"file" / "server"даТип подключения
pathstringдля fileПуть к каталогу файловой базы
serverstringдля serverАдрес сервера 1С
refstringдля serverИмя базы на сервере
v8pathstringнетПлатформа именно этой базы — перекрывает корневой v8path (см. ниже)
userstringнетИмя пользователя 1С
passwordstringнетПароль
aliasesstring[]нетАльтернативные имена для быстрого доступа
branchesstring[]нетGit-ветки или glob-паттерны (release/*, feature/*), привязанные к этой базе
configSrcstringнетКаталог XML-выгрузки конфигурации
repositoryobjectнетХранилище конфигурации: path, user, password (см. ниже)
extensionsarrayнетРасширения: name, src, необязательное repository (см. ниже)

Хранилище конфигурации

База, подключённая к хранилищу конфигурации 1С, не принимает ни одной операции конфигуратора без реквизитов доступа к хранилищу — это касается не только /db-repo, но и /db-load-xml, /db-dump-xml, /db-update, /db-load-git. Реквизиты берутся из repository записи базы, передавать их в каждом вызове не нужно.

ПолеТипОбязательноеОписание
repository.pathstringдаКаталог хранилища или tcp://<хост>[:<порт>]/<имя>
repository.userstringнетПользователь хранилища. Не наследуется от user базы
repository.passwordstringнетПароль пользователя хранилища

У расширения своё хранилище со своим путём, поэтому одного repository мало:

ПолеТипОбязательноеОписание
extensions[].namestringдаИмя расширения, как в конфигурации
extensions[].srcstringнетКаталог XML-исходников расширения
extensions[].repositoryobjectнетХранилище расширения. Расширение без хранилища — обычный случай

Пароль хранилища — такой же секрет, как password базы; .v8-project.json в .gitignore.

Сетевое хранилище. Адрес — tcp://<хост>[:<порт>]/<имя>, порт по умолчанию 1542. Обслуживается сервером хранилища. Если он недоступен, платформа отвечает «Соединение с хранилищем конфигурации не установлено» — тем же сообщением, что и при отсутствии реквизитов.

Алгоритм разрешения базы данных

Этот алгоритм используется ВСЕМИ навыками (db-*, epf-build, epf-dump, erf-build, erf-dump) для определения целевой базы.

  1. Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
  2. Если пользователь указал базу по имени — ищи совпадение в таком порядке:
    1. По id (точное совпадение)
    2. По aliases (совпадение в массиве с учётом морфологии: «тестовую» = «тестовая» = «тестовой»)
    3. По name (нечёткое совпадение с учётом морфологии и регистра)
  3. Если пользователь не указал базу — сопоставь текущую ветку Git с databases[].branches:
    • Точное совпадение: ветка dev → "branches": ["dev"]
    • Glob-паттерн: ветка release/2.1 → "branches": ["release/*"]
  4. Если ветка не совпала — используй default
  5. Если не найдено или неоднозначно — спроси пользователя
  6. Если файл .v8-project.json не найден — спроси параметры подключения и предложи создать файл

После выполнения: если использованная база не зарегистрирована — предложи добавить через /db-list add.

Выбор платформы

Порядок: явный -V8Path в вызове → v8path записи базы → корневой v8path → автоопределение. Запись базы находит сам скрипт, сопоставляя параметры соединения с databases[], — передавать -V8Path руками не нужно. Поле у базы нужно, когда базы проекта живут на разных версиях платформы: формат XML-выгрузки задаёт та платформа, которая выгружает, а автоопределение берёт самую старшую установленную.

Если v8path не задан нигде:

$v8 = Get-ChildItem "C:\Program Files\1cv8\*\bin\1cv8.exe" | Sort-Object -Descending | Select-Object -First 1

Операции

Показать список баз

Прочитай .v8-project.json, выведи таблицу:

ID      Имя           Тип      Путь/Сервер              По умолч.
dev     Разработка    file     C:\Bases\MyApp_Dev       ✓
test    Тестовая      server   srv01/MyApp_Test

Добавить базу

Спроси у пользователя через AskUserQuestion:

  • id, name, type (file/server)
  • path (для file) или server + ref (для server)
  • user, password (необязательно)
  • aliases, branches (необязательно)
  • если база под хранилищем конфигурации — repository: путь, пользователь, пароль

Добавь в массив databases. Если это первая база — установи как default.

Удалить базу

Удали из массива databases по id. Если удаляемая была default — спросить новый default.

Подробности по базе

Выведи все поля конкретной базы.

Формирование строки подключения

Для использования в шаблонах команд других навыков:

Файловая база:

/F "<path>"

Серверная база:

/S "<server>/<ref>"

Аутентификация (добавляется если user задан):

/N"<user>" /P"<password>"

Важно: между /N и именем пробела нет. Между /P и паролем пробела нет. Если пароль пустой — опусти /P целиком.

Хранилище конфигурации (если у базы задан repository) — скрипты навыков подставляют сами, сопоставляя параметры соединения с записью реестра:

/ConfigurationRepositoryF"<path>" /ConfigurationRepositoryN"<user>" /ConfigurationRepositoryP"<password>"

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

cf-edit

無料

Точечное редактирование конфигурации 1С. Используй когда нужно изменить свойства конфигурации, добавить или удалить объект из состава, настроить роли по умолчанию, поменять раскладку панелей, настроить начальную страницу

日本語の概要は準備中です。原文の説明を表示しています。

Nikolay-Shirokov/cc-1c-skills6832026年10月12日 更新

cf-info

無料

Анализ структуры конфигурации 1С — свойства, состав, счётчики объектов. Используй для обзора конфигурации — какие объекты есть, сколько их, какие настройки

日本語の概要は準備中です。原文の説明を表示しています。

Nikolay-Shirokov/cc-1c-skills6832026年10月12日 更新

cf-init

無料

Создать пустую конфигурацию 1С (scaffold XML-исходников). Используй когда нужно начать новую конфигурацию с нуля

日本語の概要は準備中です。原文の説明を表示しています。

Nikolay-Shirokov/cc-1c-skills6832026年10月12日 更新

Валидация конфигурации 1С. Используй после создания или модификации конфигурации для проверки корректности

日本語の概要は準備中です。原文の説明を表示しています。

Nikolay-Shirokov/cc-1c-skills6832026年10月12日 更新

Заимствование объектов из конфигурации 1С в расширение (CFE). Используй когда нужно перехватить метод, изменить форму или добавить реквизит к существующему объекту конфигурации

日本語の概要は準備中です。原文の説明を表示しています。

Nikolay-Shirokov/cc-1c-skills6832026年10月12日 更新

cfe-diff

無料

Анализ расширения конфигурации 1С (CFE) — состав, заимствованные объекты, перехватчики, проверка переноса. Используй когда нужно понять что содержит расширение или проверить перенесены ли вставки в конфигурацию

日本語の概要は準備中です。原文の説明を表示しています。

Nikolay-Shirokov/cc-1c-skills6832026年10月12日 更新

Nikolay-Shirokov のスキルをすべて見る

このスキルの問題を報告する