Skip to content
Back to skills

1c Db Load Dt

ASecurity

Восстановление информационной базы 1С из DT-файла (полная замена базы - данные, конфигурация, пользователи). Используй когда пользователь просит восстановить базу из dt, развернуть dt-файл, загрузить выгрузку ИБ

  • 73 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 2, 2026
ai-agentspythonshellbashgitdatabase

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 29, 2026

npx -y skills add Desko77/claude-code-skills-1c --skill 1c-db-load-dt --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 1c Db Load Dt?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 1c Db Load Dt
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/desko77-1c-db-load-dt/badge)](https://www.skillsdirectory.com/skills/desko77-1c-db-load-dt)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: 1c-db-load-dt
description: Восстановление информационной базы 1С из DT-файла (полная замена базы - данные, конфигурация, пользователи). Используй когда пользователь просит восстановить базу из dt, развернуть dt-файл, загрузить выгрузку ИБ
argument-hint: <input.dt> [database]
disable-model-invocation: true
allowed-tools:
  - Bash
  - Read
  - Glob
  - AskUserQuestion
---

# /db-load-dt - Восстановление информационной базы из DT-файла

Загружает DT-файл в информационную базу: конфигурация, данные, список пользователей, настройки - все содержимое базы замещается содержимым DT.

## Usage

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

> **ДЕСТРУКТИВНАЯ ОПЕРАЦИЯ**: восстановление из DT **полностью уничтожает** текущее содержимое базы - данные, конфигурацию, пользователей, настройки. Откат невозможен. Перед выполнением ОБЯЗАТЕЛЬНО:
> 1. Предложи сначала снять бэкап текущего состояния через `/db-dump-dt` (точка отката).
> 2. Назови пользователю базу-приемник и DT-файл (путь, дата изменения, размер).
> 3. Предупреди, что текущие данные базы будут потеряны, а список пользователей заменится списком из DT (учетные записи могут смениться).
> 4. Запроси явное подтверждение через AskUserQuestion. Без подтверждения не запускай.

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

Прочитай `.v8-project.json` из корня проекта. Возьми `v8path` (путь к платформе) и разреши базу:
1. Если пользователь указал параметры подключения (путь, сервер) - используй напрямую
2. Если указал базу по имени - ищи по id / alias / name в `.v8-project.json`
3. Если не указал - сопоставь текущую ветку Git с `databases[].branches`
4. Если ветка не совпала - используй `default`
Если `v8path` не задан - автоопределение: `Get-ChildItem "C:\Program Files\1cv8\*\bin\1cv8.exe" | Sort -Desc | Select -First 1`
Если файла нет - предложи `/db-list add`.
Если использованная база не зарегистрирована - после выполнения предложи добавить через `/db-list add`.
База с ролью `prod` в `.v8-project.json` отказывает изменяющей операции: скрипт завершается кодом 1, пока не передан `-AllowProd`.

## Команда

```powershell
powershell.exe -NoProfile -File skills/1c-db-load-dt/scripts/db-load-dt.ps1 <параметры>
```

### Параметры скрипта

| Параметр | Обязательный | Описание |
|----------|:------------:|----------|
| `-V8Path <путь>` | нет | Каталог bin платформы (или полный путь к 1cv8.exe) |
| `-InfoBasePath <путь>` | * | Файловая база |
| `-InfoBaseServer <сервер>` | * | Сервер 1С (для серверной базы) |
| `-InfoBaseRef <имя>` | * | Имя базы на сервере |
| `-UserName <имя>` | нет | Имя пользователя (текущей базы, до восстановления) |
| `-Password <пароль>` | нет | Пароль |
| `-AllowProd` | нет | Разрешить операцию над базой, помеченной боевой (`role: prod` в `.v8-project.json`) |
| `-InputFile <путь>` | да | Путь к DT-файлу |
| `-JobsCount <N>` | нет | Число фоновых заданий загрузки (0 = решает платформа) |
| `-UnlockCode <код>` | нет | Код разрешения начала сеансов, если база заблокирована (`/UC`) |
| `-StrictLog` | нет | Отказ в журнале поднимает код возврата до 1, даже если платформа вернула 0 |

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

Восстановление требует монопольного доступа: активные сеансы должны быть завершены.

## Коды возврата

| Код | Описание |
|-----|----------|
| 0 | Успешно |
| 1 | Ошибка (см. лог) |
| 2 | Неверные аргументы (python-версия, argparse) |

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

1. Прочитай лог-файл и покажи результат. Типовые причины ошибок: активные сеансы (нужен монопольный доступ), поврежденный или несовместимый DT. Если серверная база заблокирована с кодом разрешения - повтори с `-UnlockCode`.
2. `/db-update` НЕ нужен: DT содержит согласованную базу целиком.
3. Напомни, что аутентификация теперь идет по пользователям из DT.

## Примеры

```powershell
# Восстановление файловой базы
powershell.exe -NoProfile -File skills/1c-db-load-dt/scripts/db-load-dt.ps1 -InfoBasePath "C:\Bases\MyDB" -UserName "Admin" -InputFile "C:\backup\MyDB.dt"

# Серверная база
powershell.exe -NoProfile -File skills/1c-db-load-dt/scripts/db-load-dt.ps1 -InfoBaseServer "srv01" -InfoBaseRef "MyApp_Test" -UserName "Admin" -Password "secret" -InputFile "MyApp_Dev.dt"
```

Files in this skill

  • SKILL.md5.8 KB
  • evals/evals.json3.2 KB
  • scripts/db-load-dt.ps110.6 KB
  • scripts/db-load-dt.py10 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.