본문으로 건너뛰기
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>"

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

cf-edit

무료

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Nikolay-Shirokov/cc-1c-skills7172026년 10월 22일 업데이트

cf-info

무료

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Nikolay-Shirokov/cc-1c-skills7172026년 10월 22일 업데이트

cf-init

무료

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Nikolay-Shirokov/cc-1c-skills7172026년 10월 22일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Nikolay-Shirokov/cc-1c-skills7172026년 10월 22일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Nikolay-Shirokov/cc-1c-skills7172026년 10월 22일 업데이트

cfe-diff

무료

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Nikolay-Shirokov/cc-1c-skills7172026년 10월 22일 업데이트

Nikolay-Shirokov의 스킬 모두 보기

이 스킬의 문제 신고