mcpField
D
db-load-dt

db-load-dt

github.com/nikolay-shirokovデータ・データベース74145 回インストール今日更新
リポジトリ

db-load-dt について

DT ファイルから構成とデータを含む 1C 情報ベース全体を読み込むスキルです。データベースを復元する開発者向けで、既存内容を上書きするため、事前のバックアップと明示的な確認が必要です。

主な機能

  1. 01DT から構成とデータを復元
  2. 02ファイル型とサーバー型に対応
  3. 03プロジェクト設定からデータベースを解決
  4. 04読み込み前にバックアップと確認を要求

活用シーン

  1. 01DT バックアップから既存データベースを復元
  2. 02保存済みスナップショットでデータベースを置換

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nikolay-shirokov/cc-1c-skills --skill db-load-dt

インストール後、Claude Code で/db-load-dtを入力して読み込まれたか確認します。

同梱ファイルscripts/db-load-dt.ps1scripts/db-load-dt.py

README(原文)English

プロジェクトの README より

この README の日本語訳はまだありません。以下は英語の原文です。日本語の紹介はページ上部をご覧ください。

/db-load-dt — Загрузка информационной базы из DT-файла

Восстанавливает информационную базу целиком (конфигурация + данные) из DT-файла.

⚠️ Необратимая операция. Загрузка .dt полностью перезаписывает базу — и конфигурацию, и все данные. Текущее содержимое базы будет потеряно. После загрузки /db-update не нужен — конфигурация БД уже синхронна внутри снимка.

Когда НЕ использовать

  • Нужно создать новую базу из .dt → используй /db-create (из DT-шаблона), а не загрузку в существующую.
  • Нужно обновить только конфигурацию (без данных) → /db-load-cf или /db-load-xml.

Usage

/db-load-dt <input.dt> [database]
/db-load-dt backup.dt dev

Порядок действий перед загрузкой

  1. Предложи пользователю сначала сделать /db-dump-dt текущего состояния базы — это точка отката (восстановиться будет нечем, если не сохранить).
  2. Запроси явное подтверждение: вся база (данные + конфигурация) будет перезаписана.
  3. Только после подтверждения выполняй загрузку.

Параметры подключения

Прочитай .v8-project.json из корня проекта и разреши базу:

  1. Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
  2. Если указал базу по имени — ищи по id / alias / name в .v8-project.json
  3. Если не указал — сопоставь текущую ветку Git с databases[].branches
  4. Если ветка не совпала — используй default Платформа — v8path найденной записи базы, иначе корневой v8path. Не задан ни там, ни там — -V8Path не передавай. Если файла нет — предложи /db-list add. Если использованная база не зарегистрирована — после выполнения предложи добавить через /db-list add.

Команда

powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-dt.ps1" <параметры>
Параметры скрипта
ПараметрОбязательныйОписание
-V8Path <путь>нетКаталог bin платформы, или полный путь к 1cv8.exe / ibcmd.exe
-InfoBasePath <путь>*Файловая база
-InfoBaseServer <сервер>*Сервер 1С (для серверной базы)
-InfoBaseRef <имя>*Имя базы на сервере
-UserName <имя>нетИмя пользователя
-Password <пароль>нетПароль
-InputFile <путь>даПуть к DT-файлу
-JobsCount <N>нетЧисло фоновых заданий загрузки (0 = по числу процессоров)
-UnlockCode <код>нетКод разблокировки (/UC), если заблокировано начало сеансов
-AdditionalV8Arguments <список>нетДоп. аргументы запуска 1cv8.exe через запятую, напр. /UseHwLicenses+
-AdditionalIbcmdArguments <список>нетДоп. аргументы ibcmd через запятую, в форме --ключ=значение

* — нужен либо -InfoBasePath, либо пара -InfoBaseServer + -InfoBaseRef

После выполнения

Если база занята (активные сеансы), загрузка не выполнится — для серверной базы можно передать -UnlockCode; иначе освободи базу и повтори.

Примеры

# Файловая база
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-dt.ps1" -InfoBasePath "C:\Bases\MyDB" -UserName "Admin" -InputFile "C:\backup\base.dt"

# Серверная база с ускорением загрузки
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-dt.ps1" -InfoBaseServer "srv01" -InfoBaseRef "MyApp_Test" -UserName "Admin" -Password "secret" -InputFile "base.dt" -JobsCount 4

Связанные навыки

  • /db-dump-dt — выгрузка ИБ в DT (обратная операция, точка отката перед загрузкой)
  • /db-create — создать новую базу (в т.ч. из DT-шаблона)

コメント