docs(updater): fix Task Scheduler setup (cmdlets, not schtasks /TR) + Excel-lock note

This commit is contained in:
Iliyas 2026-06-30 09:41:26 +05:00
parent 01419d501f
commit fc046094a9

View File

@ -76,25 +76,38 @@ run_update.bat
## 4. Расписание (раз в сутки) ## 4. Расписание (раз в сутки)
Создать задачу в Планировщике Windows (запуск каждый день в 06:30). Создать задачу в Планировщике Windows (ежедневно в 12:00). **Важно:** не
Выполнить **в PowerShell от администратора**, поправив путь: использовать `schtasks /TR "..."` — из-за пробела в пути («Project 1»)
команда теряет кавычки и сохраняет действие разорванным
(`<Command>...\Project</Command>`), задача падает с `0x80070002` («файл не
найден») и НЕ запускается. Создавайте через PowerShell-командлеты (корректно
обрабатывают пробелы). Выполнить **в PowerShell**, поправив путь:
```powershell ```powershell
$bat = "C:\Users\1\Desktop\QC\Vibecode\Project 1\kpi-dashboard\updater\run_update.bat" $bat = "C:\Users\1\Desktop\QC\Vibecode\Project 1\kpi-dashboard\updater\run_update.bat"
schtasks /Create /TN "KPI Dashboard Update" /TR "`"$bat`"" /SC DAILY /ST 06:30 /RL LIMITED /F $wd = Split-Path $bat
$action = New-ScheduledTaskAction -Execute $bat -WorkingDirectory $wd
$trigger = New-ScheduledTaskTrigger -Daily -At 12:00
$settings = New-ScheduledTaskSettingsSet -StartWhenAvailable -ExecutionTimeLimit (New-TimeSpan -Hours 1)
Register-ScheduledTask -TaskName "KPI Dashboard Update" -Action $action -Trigger $trigger -Settings $settings -RunLevel Limited -Force
``` ```
Проверить / запустить вручную / удалить: Проверить / запустить вручную / посмотреть действие / удалить:
```powershell ```powershell
schtasks /Query /TN "KPI Dashboard Update" /V /FO LIST schtasks /Query /TN "KPI Dashboard Update" /V /FO LIST # Last Result: 0 = успех
schtasks /Run /TN "KPI Dashboard Update" schtasks /Run /TN "KPI Dashboard Update"
schtasks /Query /TN "KPI Dashboard Update" /XML | Select-String Command,WorkingDirectory
schtasks /Delete /TN "KPI Dashboard Update" /F schtasks /Delete /TN "KPI Dashboard Update" /F
``` ```
> Задача выполнится, только когда компьютер включён и (для успешной выгрузки) > **Условия успешного запуска:**
> поднят VPN. Если в момент запуска VPN не подключён, скрипт залогирует ошибку > - ПК включён (с `-StartWhenAvailable` задача догонит пропущенный запуск).
> подключения и завершится с ненулевым кодом — данные останутся прежними. > - Поднят **VPN** — иначе ошибка подключения, данные останутся прежними.
> - Файл `drb_iliyas_kpi_2026.csv` **НЕ открыт в Excel** — Excel блокирует его на
> запись, и KPI-апдейтер падает с `[Errno 13] Permission denied` (код задачи `1`).
> Метрики МП при этом обновятся. На следующий день, если файл закрыт, всё
> догонится автоматически.
--- ---