- «Время и сеть»: пояс компьютера пользователя предлагается одной кнопкой, пояс применяется сразу при
выборе; сервер времени — только если не синхронизируется; «сделано установщиком» — строкой внизу.
- «Лицензия»: модули словами, а не кодами (quik-mnp → «QUIK: неторговые поручения…»); пояснения — только
пока ключа нет; поле ключа крупное, одно.
- «Учёт DEPO»: главный вопрос «Как подготовить базу» первым, короткие подписи; кружки переключателей
больше не сплющиваются длинным текстом.
- «QUIK»: одна кнопка «Сохранить и проверить»; база и шифрование — под «Дополнительно», без «true/disable»
и TrustServerCertificate; автоматический цикл и справочник получателей в мастере свёрнуты.
- «Организация»: без логотипа (он в «Оформлении»), кнопки одного цвета. «Шлюз НРД», «Ключ», «Оповещения»:
по одному абзацу, письма и устройство автообновления сертификатов — под раскрытием.
- Мастер и «Подготовка модулей» — без меню системы; подзаголовок не повторяет названия глав.
- Подсказка о восстановлении из копии ведёт на первую страницу (в мастере его больше нет).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
varmoduleTitles=map[string]string{"esia-finance":"ЕСИА Финанс","quik-mnp":"QUIK: неторговые поручения и обмен с DEPO","quik-export":"Экспорт биржевой информации QUIK","web-cabinet":"Личный кабинет клиента","npr":"Риск-монитор НПР / УДС"}
// moduleTitle — признак лицензии словами (в мастере и на странице лицензии — не коды вроде quik-mnp).
forstep,want:=rangemap[string]string{"1":"QUIK: неторговые поручения","3":"wiz-depo","5":"Сохранить и проверить","12":"wiz-tz-suggest","10":"Проверка"}{
<pstyle="text-align:center;margin:-14px 0 18px;font-size:13px"><ahref="/admin/">Пропустить мастер и перейти в систему →</a><spanclass="muted">— вернуться к нему можно из «Настройка → Мастер настройки»</span></p>
<pstyle="text-align:center;margin:-14px 0 18px;font-size:13px"><ahref="/admin/"title="Вернуться к мастеру — «Настройка → Мастер настройки»">Настроить позже и перейти в систему →</a></p>
<divclass="help-block"><strong>Что это.</strong> Ключ продукта (BJ-XXXX-XXXX-XXXX) привязывает этот сервер к вашей лицензии.<br>
<strong>Зачем.</strong> От лицензии зависят модули (обмен с DEPO и QUIK, личный кабинет, НПР/УДС) и получение обновлений: bj скачает и поставит модули, входящие в лицензию, автоматически.<br>
<strong>Где взять.</strong> Портал клиента <ahref="https://lic.zetit.ru/portal/"target="_blank">lic.zetit.ru/portal</a> или письмо от ZETIT.</div>
<pclass="muted"style="margin:0;font-size:13.5px">{{if eq .Lic.Plan "enterprise"}}Все модули{{else if .Lic.Features}}Входит: {{range $i, $f := .Lic.Features}}{{if $i}}, {{end}}{{modTitle $f}}{{end}}{{else}}Только ядро: обмен с НРД и переводы M2M{{end}} · {{.Lic.Message}}</p>
{{else}}<pstyle="margin:4px 0 0">Введите ключ продукта — bj сам скачает и поставит модули вашей лицензии.</p>
<pclass="muted"style="margin:4px 0 0;font-size:13px">Ключ вида BJ-XXXX-XXXX-XXXX — в портале клиента <ahref="https://lic.zetit.ru/portal/"target="_blank">lic.zetit.ru/portal</a> или в письме от ZETIT.</p>{{end}}
<divclass="help-block"><strong>Что это.</strong> bj подключается к базе учёта DEPO (Fancy): сверяет с учётом каждый перевод (клиент, счёт, остаток, квалификация) и передаёт в DEPO поручения и их исполнение — документы в учёте создаются сами.<br>
<strong>Что понадобится.</strong> Адрес сервера базы DEPO. Имя базы знать не нужно — bj найдёт её сам. Подготовить базу (логин bj, таблицы обмена, задание обработки) можно одним действием: логином администратора SQL — он используется один раз и не сохраняется, — или администратор выполнит один готовый скрипт.</div>
<pstyle="margin:2px 0 0">bj сверяет каждый перевод с учётом DEPO и сам создаёт в нём поручения. Нужен только адрес сервера — базу DEPO bj найдёт сам.</p>
<divid="wiz-depo-job"><divstyle="font-weight:600;margin-bottom:4px">Обработку обмена в DEPO запускает</div>
<labelstyle="display:flex;gap:8px;align-items:flex-start;font-weight:400;margin:0 0 4px"><inputtype="radio"name="depo_job"value="agent"{{ifne$mode"bj"}}checked{{end}}style="width:auto;margin-top:3px"><span><b>Задание SQL Server Agent</b><spanclass="muted"style="font-size:13px">— рекомендуется: работает, даже когда bj выключен. Скрипт создаст его сам.</span></span></label>
<labelstyle="display:flex;gap:8px;align-items:flex-start;font-weight:400;margin:0"><inputtype="radio"name="depo_job"value="bj"{{ifeq$mode"bj"}}checked{{end}}style="width:auto;margin-top:3px"><span><b>Сервер bj</b><spanclass="muted"style="font-size:13px">— bj вызывает обработку каждые {{.DepoJob.Every}} с (если на сервере нет SQL Server Agent, например Express).</span></span></label>
<labelstyle="display:flex;gap:8px;align-items:flex-start;font-weight:400;margin:0 0 6px"><inputtype="radio"name="mode"value="auto"checkedonchange="wizDepo()"style="width:auto;margin-top:3px"><span><b>bj сделает всё сам</b><spanclass="muted"style="font-size:13px">— нужен логин администратора SQL (sysadmin) на один раз: bj найдёт базу, создаст свой логин, таблицы обмена и задание. Логин администратора не сохраняется.</span></span></label>
<labelclass="wiz-opt"><inputtype="radio"name="mode"value="auto"checkedonchange="wizDepo()"><span><b>bj сделает всё сам</b><spanclass="muted">— нужен логин администратора SQL на один раз, bj его не сохраняет</span></span></label>
<labelstyle="display:flex;gap:8px;align-items:flex-start;font-weight:400;margin:0 0 6px"><inputtype="radio"name="mode"value="script"onchange="wizDepo()"style="width:auto;margin-top:3px"><span><b>Скрипт для администратора</b><spanclass="muted"style="font-size:13px">— если логин администратора не дают: один файл делает то же самое (находит базу, создаёт логин bj, таблицы и задание).</span></span></label>
<labelclass="wiz-opt"><inputtype="radio"name="mode"value="script"onchange="wizDepo()"><span><b>Отдать скрипт администратору</b><spanclass="muted">— если логин администратора не дают: один файл сделает то же самое</span></span></label>
<spanclass="muted"style="font-size:12.5px">Пароль логина bj придумывает bj и уже вписал в скрипт. Администратор выполняет файл в SSMS — потом нажмите «Проверить».</span>
<spanclass="muted"style="font-size:12.5px">Пароль для bj уже вписан в скрипт. Администратор выполняет файл в SSMS — потом нажмите «Проверить».</span>
{{template "letterCard" (letter "dba")}}
</div>
<labelstyle="display:flex;gap:8px;align-items:flex-start;font-weight:400;margin:0 0 6px"><inputtype="radio"name="mode"value="existing"onchange="wizDepo()"style="width:auto;margin-top:3px"><span><b>Логин для bj уже есть</b><spanclass="muted"style="font-size:13px">— база уже подготовлена раньше: только проверить.</span></span></label>
<labelclass="wiz-opt"><inputtype="radio"name="mode"value="existing"onchange="wizDepo()"><span><b>Логин для bj уже есть</b><spanclass="muted">— база подготовлена раньше, только проверить</span></span></label>
{{if not .DepoCands}}<detailsstyle="font-size:13px"><summarystyle="cursor:pointer;color:var(--accent)">Дополнительно: указать базу DEPO вручную (обычно не нужно)</summary>
<labelclass="wiz-opt"><inputtype="radio"name="depo_job"value="agent"{{ifne$mode"bj"}}checked{{end}}><span><b>SQL Server Agent</b><spanclass="muted">— рекомендуется: работает, даже когда bj выключен</span></span></label>
<labelclass="wiz-opt"><inputtype="radio"name="depo_job"value="bj"{{ifeq$mode"bj"}}checked{{end}}><span><b>Сервер bj</b><spanclass="muted">— если Agent нет (например, SQL Server Express)</span></span></label>
</div>
{{if not .DepoCands}}<detailsstyle="font-size:13px"><summarystyle="cursor:pointer;color:var(--accent)">Указать базу DEPO вручную (обычно не нужно)</summary>
<inputtype="text"name="depo_database"id="wiz-depo-dbman"value=""placeholder="имя базы DEPO на сервере"pattern="[A-Za-z][A-Za-z0-9_]*"style="padding:8px;width:100%;box-sizing:border-box;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:4px;margin-top:6px;max-width:320px"></details>{{end}}
<div><buttontype="submit"class="btn"id="wiz-depo-btn">Подготовить базу и проверить →</button></div>
<div><buttontype="submit"class="btn"id="wiz-depo-btn">Подготовить и проверить</button></div>
document.getElementById('wiz-depo-btn').textContent=m==='auto'?'Подготовить базу и проверить →':'Проверить →';}
document.getElementById('wiz-depo-btn').textContent=m==='auto'?'Подготовить и проверить':'Проверить';}
wizDepo();</script>
{{else if eq $sub "done"}}
<tablestyle="margin:6px 0 10px">
<tr><td>Подключение к базе DEPO</td><td>{{if .Settings.Fancy.Server}}<spanstyle="color:var(--ok)">✓ {{.Settings.Fancy.Server}}, база {{.DepoTables.DB}}</span>{{else}}<spanstyle="color:var(--err)">не настроено</span>{{end}}</td></tr>
<tr><td>Таблицы обмена FTV_M2M</td><td>{{if .Settings.Fancy.DepoTablesCheckOK}}<spanstyle="color:var(--ok)">✓ на месте</span>{{else}}<spanstyle="color:var(--err)">✗ {{.Settings.Fancy.DepoTablesCheck}}</span>{{end}}</td></tr>
<tr><td>Запуск обработки (джоба)</td><td>{{if .Settings.Fancy.DepoJobCheckOK}}<spanstyle="color:var(--ok)">✓ {{.Settings.Fancy.DepoJobCheck}}</span>{{else}}<spanstyle="color:var(--err)">✗ {{.Settings.Fancy.DepoJobCheck}}</span>{{end}}</td></tr>
<divclass="help-block"><strong>Что это.</strong> Депозитарий — участник MOEX МОСТ, от имени которого bj отправляет и принимает переводы: код участника, ИНН и наименование попадают в пакеты НРД{{if .DepoLicensed}} и в поручения QUIK{{end}}.<br>
<strong>Откуда взять.</strong> {{if .DepoLicensed}}Если подключена база DEPO (раздел «Учёт DEPO»), bj сам определяет реквизиты по учёту — проверьте их и сохраните. Иначе выберите{{else}}Выберите{{end}} себя из справочника участников НРД или введите вручную.</div>
<pstyle="margin:2px 0 0">От имени вашей организации bj отправляет и принимает переводы. {{if .DepoLicensed}}Реквизиты bj берёт из DEPO — проверьте и сохраните.{{else}}Найдите себя в справочнике участников НРД.{{end}}</p>
{{if .Suggest}}{{if .Suggest.OrgName}}{{if not .Done.Org}}<pstyle="margin:8px 0;padding:8px 12px;border-radius:8px;background:var(--accent-weak)">✓ <strong>Определено из DEPO</strong>: {{.Suggest.OrgName}}, ИНН {{.Suggest.OrgINN}}, код {{.Suggest.OrgCode}}{{if .Suggest.AccountID}}, счёт НРД {{.Suggest.AccountID}}{{end}}. Поля ниже заполнены — проверьте и нажмите «Сохранить».</p>{{end}}{{end}}{{end}}
<h2><spanclass="dot {{if and .Settings.NSD.DeponentCode .Settings.NSD.AccountID .Settings.NSD.SectionID}}ok{{else}}err{{end}}"></span>Депозитарные реквизиты в НРД</h2>
<pclass="muted"style="margin:0 0 8px">Где в НРД учитываются бумаги вашей организации: место хранения указывается в каждом пакете перевода. Берутся из договора с НРД{{if .Settings.Fancy.Server}} — или кнопкой «Определить из DEPO»{{end}}.</p>
<pclass="muted"style="margin:0 0 8px">Где в НРД учитываются бумаги организации — из договора с НРД{{if .Settings.Fancy.Server}} или кнопкой «Определить из DEPO»{{end}}.</p>
{{if .Suggest}}{{if .Suggest.AccountID}}<divclass="help-block"style="margin:0 0 8px"><strong>Найдено в DEPO:</strong> счёт {{.Suggest.AccountID}}, код {{.Suggest.DeponentCode}}, раздел {{.Suggest.SectionID}}.{{range .Suggest.Notes}}<br><spanclass="muted">⚠ {{.}}</span>{{end}}</div>{{end}}{{end}}
<divstyle="display:flex;gap:8px;flex-wrap:wrap"><buttontype="submit"class="btn">Сохранить</button>{{if .Settings.Fancy.Server}}<buttontype="submit"class="btn"formaction="/admin/setup/fancy/detect"style="background:var(--card);color:var(--text);border:1px solid var(--border-strong,#c9cdd8)">Определить из DEPO</button>{{end}}</div>
</form>
</div>
<divclass="card"style="margin-top:12px">
<h3style="margin:0 0 6px">Логотип организации (необязательно)</h3>
<pclass="muted"style="margin:0 0 10px;font-size:13px">Показывается справа в шапке отчётов для регулятора. Можно загрузить сейчас или позже в «Настройка → Оформление».</p>
<divclass="help-block"><strong>Что это.</strong>Модуль неторговых поручений QUIK (МНП) — продукт компании ARQA Technologies, разработчика QUIK. Через него bj блокирует бумаги клиента в QUIK на время перевода, снимает блокировку при отказе и после исполнения проводит поручение.<br>
<strong>Если МНП у вас ещё нет.</strong> Обратитесь в ARQA Technologies (<ahref="https://arqatech.com"target="_blank"rel="noopener">arqatech.com</a>, служба поддержки QUIK) и попросите подключить модуль неторговых поручений для работы с внешней системой. После подключения ARQA выдаст адрес сервера МНП и учётные данные — их и нужно ввести ниже.<br>
<strong>Если МНП уже есть.</strong> Адрес сервера и учётные данные — у вашего администратора QUIK.</div>
<pstyle="margin:2px 0 0">Адрес и логин модуля неторговых поручений — у вашего администратора QUIK. Если модуля ещё нет, его подключает ARQA Technologies — письмо для них готово ниже.</p>
{{if .Settings.Quik.M2MMissing}}<pstyle="color:var(--err);margin:8px 0">✗ Подключение есть, но под этим логином не видно объектов M2M: {{.Settings.Quik.M2MMissing}}. Проверьте имя базы МНП и права логина (роль InstrEu) и нажмите «Проверить» ещё раз.</p>{{end}}
<divclass="help-block"style="margin-top:12px"><strong>Справочник депозитариев-получателей.</strong> Чтобы QUIK принимал поручения M2M, в МНП должен быть справочник депозитариев-получателей (<code>M2MDepoRecipients</code>): bj заполняет его сам по справочнику участников НРД. <b>Модуль МНП читает справочник только при запуске</b> — после первого заполнения попросите администратора QUIK перезапустить модуль неторговых поручений, иначе QUIK ответит «Неизвестный депозитарий получателя».<br><spanclass="muted">{{quikRecipientsInfo}}</span></div>{{end}}
<pstyle="margin:6px 0 0">Чтобы QUIK принимал поручения M2M, bj ведёт в МНП справочник депозитариев-получателей (<code>M2MDepoRecipients</code>) по справочнику участников НРД. <b>МНП читает его только при запуске</b> — после первого заполнения попросите администратора QUIK перезапустить модуль, иначе QUIK ответит «Неизвестный депозитарий получателя».<br><spanclass="muted">{{quikRecipientsInfo}}</span></p></details>{{end}}
<strong>Что это.</strong> Интеграционный шлюз — программа НРД на этом же сервере: через неё bj отправляет пакеты M2M в НРД и получает ответы. bj работает со шлюзом по его адресу на сервере (обычно <code>http://localhost:8090</code>).<br>
<strong>К кому обратиться.</strong> Дистрибутив ИШ выпускает НРД (<ahref="https://www.nsd.ru/workflow/system/programs/"target="_blank"rel="noopener">nsd.ru/workflow/system/programs</a>). Доступ к контурам — сначала тестовому TEST3, затем боевому — НРД открывает по заявке: обратитесь к своему менеджеру НРД или в поддержку электронного документооборота.
<pstyle="margin:2px 0 0">Через интеграционный шлюз НРД (ИШ) на этом сервере bj отправляет переводы и получает ответы. bj ставит и настраивает шлюз сам; доступ к тестовому и боевому контуру НРД открывает по заявке — письма готовы.</p>
{{template "igateInstall" .}}
<detailsstyle="margin-top:4px"><summarystyle="cursor:pointer;color:var(--accent);font-size:13px">Письма в НРД о доступе к контурам</summary>
{{template "letterCard" (letter "nsd-test")}}
{{template "letterCard" (letter "nsd-prod")}}
{{template "igateInstall" .}}
</details>
<detailsstyle="margin-top:8px"><summarystyle="cursor:pointer;color:var(--accent);font-size:13px">Дополнительно: адрес шлюза (обычно не нужно)</summary>
<h2><spanclass="dot {{if .Done.Certs}}ok{{else}}err{{end}}"></span>Ключ и сертификаты</h2>
<p>Здесь две части: ключ и сертификат вашей организации (ставите вы) и сертификаты НРД и удостоверяющих центров (bj ведёт их сам).</p>
{{if not .Done.NSD}}<pstyle="padding:8px 12px;border-radius:8px;background:var(--accent-weak);margin:8px 0">Ключ устанавливается в профиль интеграционного шлюза — сначала установите шлюз в разделе<ahref="/admin/wizard?step=7">«Шлюз НРД»</a>.</p>{{end}}
<pstyle="margin:2px 0 0">Ключ электронной подписи организации для обмена с НРД. Его выдаёт Удостоверяющий центр Московской биржи: вам передадут архив ключа и пароль.</p>
{{if not .Done.NSD}}<pstyle="padding:8px 12px;border-radius:8px;background:var(--accent-weak);margin:10px 0 0">Ключ ставится в шлюз НРД — сначала установите <ahref="/admin/wizard?step=7">шлюз</a>.</p>{{end}}
<h3style="margin-top:14px">1. Ключ и сертификат организации</h3>
<divclass="help-block"><strong>Что это.</strong> Ключ электронной подписи вашей организации для обмена с НРД и его сертификат.<br>
<strong>К кому обратиться.</strong> Ключ выдаёт Удостоверяющий центр Московской биржи; оформляется по заявке в рамках подключения к электронному документообороту НРД. Вам передадут архив ключа и пароль к нему — его и загружают в мастере установки ключа.<br>
<strong>Как поставить.</strong> Мастер установки ключа: загрузить архив → запись на носитель → справочник сертификатов → проверка подписи Валидатой.</div>
<ahref="/admin/setup/keywizard"class="btn"style="text-decoration:none;display:inline-block">Открыть мастер установки ключа →</a>
<h3style="margin-top:22px">2. Сертификаты НРД и УЦ — автоматически</h3>
<p>✓ <strong>Автоматическое обновление {{if .Settings.NSDCerts.Manual}}<spanstyle="color:var(--warn)">выключено</span> (включается в «Настройка → Криптография»){{else}}включено{{end}}.</strong> Делать на этом шаге ничего не нужно.</p>
<divclass="help-block"style="font-size:13px">
<strong>Как это работает.</strong> Действующие сертификаты НРД и удостоверяющих центров Московской биржи поставляются вместе с bj и приезжают с обновлениями. Каждые 6 часов bj сверяет их со справочником сертификатов ИШ: добавляет недостающие, а заменённые НРД убирает строго после срока, который НРД объявил в уведомлении. Перед каждым изменением делается резервная копия и проверка подписи, при ошибке всё откатывается.<br>
<strong>Тестовые и боевые.</strong> Сертификат попадает только в справочник своего контура: боевые (издатель «Корневой УЦ») — только к боевому ключу, тестовые (издатель «Тестовый УЦ») — только к тестовому. Поэтому смешать контуры нельзя.<br>
<strong>Откуда берутся.</strong> НРД и Московская биржа публикуют сертификаты в постоянных местах: комплект ГОСТ МБ, НКЦ и НРД — <code>https://fs.moex.com/cdp/sert/GOST.zip</code>, сертификаты УЦ — <code>https://fs.moex.com/cdp/</code>. Когда там появляется новый сертификат, мы добавляем его в комплект bj, и он приезжает к вам с обновлением.<br>
Состояние, ручная проверка и выключение — «Настройка → Криптография → Сертификаты НРД в справочнике ИШ».
{{if .Settings.NSDCerts.LastRows}}<pclass="muted"style="font-size:13px">Последняя сверка: {{.Settings.NSDCerts.LastRun.Format "02.01.2006 15:04"}}{{if .Settings.NSDCerts.LastProfile}}, профиль ИШ {{.Settings.NSDCerts.LastProfile}}{{end}}.</p>{{else}}<pclass="muted"style="font-size:13px">Первая сверка пройдёт сразу после установки ключа.</p>{{end}}
<detailsstyle="margin-top:6px;font-size:13px"><summarystyle="cursor:pointer;color:var(--accent)">Как это работает</summary>
<pstyle="margin:6px 0 0">Действующие сертификаты НРД и удостоверяющих центров Московской биржи приезжают вместе с bj и его обновлениями. Каждые 6 часов bj сверяет их со справочником шлюза: добавляет недостающие, а заменённые убирает строго после срока, объявленного НРД. Перед изменением — резервная копия и проверка подписи, при ошибке всё откатывается. Тестовые сертификаты попадают только к тестовому ключу, боевые — только к боевому.</p></details>
{{if .Settings.NSDCerts.LastRows}}<pclass="muted"style="font-size:13px">Последняя сверка: {{.Settings.NSDCerts.LastRun.Format "02.01.2006 15:04"}}{{if .Settings.NSDCerts.LastProfile}}, профиль ИШ {{.Settings.NSDCerts.LastProfile}}{{end}}.</p>{{else}}{{end}}
<pclass="muted"style="margin:0 0 6px;font-size:13px">По нему — время в журналах, уведомлениях и сроках поручений. Время НРД — московское; если сервер в другом поясе, выберите свой.</p>
<h2><spanclass="dot {{if .Done.Server}}ok{{else}}warn{{end}}"></span>Время и сеть</h2>
<pstyle="margin:0 0 6px;font-size:13px">{{if .Done.Server}}<spanstyle="color:var(--ok)">✓ время синхронизируется</span>{{else}}<spanstyle="color:var(--warn)">⚠ время не синхронизируется — укажите сервер времени вашей сети (обычно контроллер домена или маршрутизатор)</span>{{end}}</p>
<pid="wiz-tz-hint"class="muted"style="margin:4px 0 0;font-size:13px">По нему — время в журналах, уведомлениях и сроках поручений. Время НРД — московское.</p>
{{if .Done.Server}}<spanstyle="color:var(--ok)">✓ синхронизируется</span>{{else}}<spanstyle="color:var(--warn)">⚠ не синхронизируется</span>{{end}}
</div>
<detailsstyle="margin-top:6px"{{ifnot.Done.Server}}open{{end}}><summarystyle="cursor:pointer;color:var(--accent);font-size:13px">{{if .Done.Server}}Свой сервер времени (обычно не нужно){{else}}Укажите сервер времени вашей сети — обычно контроллер домена или маршрутизатор{{end}}</summary>
<pstyle="margin:0;font-size:13px">Сервер: <code>{{serverAddrs}}</code>. Вход по HTTPS: <ahref="https://{{serverIP}}:8443/admin/">https://{{serverIP}}:8443/</a>.</p>
<pclass="muted"style="font-size:12.5px;margin:4px 0 0">Чтобы адрес не менялся, задайте постоянный — на консоли сервера: <code>sudo bj-network</code>. Перенаправление на HTTPS и сертификат организации — в «Настройка → Сервер».</p>
<pclass="muted"style="font-size:12.5px;margin:4px 0 0">Чтобы адрес не менялся, задайте постоянный: на консоли сервера — <code>sudo bj-network</code>.</p>
<h2><spanclass="dot {{if .Done.Modules}}ok{{else}}warn{{end}}"></span>Модули по лицензии</h2>
<pclass="muted"style="margin:0 0 8px">Здесь только модули, которые входят в вашу лицензию. Каждый настраивается в своём разделе — кнопка «Настроить» откроет его, а вернуться в мастер можно ссылкой вверху раздела.</p>
<h2><spanclass="dot {{if .Done.Alerts}}ok{{else}}warn{{end}}"></span>Оповещения и резервные копии</h2>
<divclass="help-block"><strong>Зачем.</strong> bj сам следит заобменом: НРД не отвечает, перевод не доставлен{{if .DepoLicensed}}, ошибка обработки в DEPO{{end}}, истекает сертификат ключа. Чтобы об этом узнали сразу, а не открыв bj, — укажите почту. Резервные копии позволят восстановить сервер целиком (настройки, заявки, шлюз НРД) после сбоя или переустановки.<br>
<strong>Можно позже.</strong> Шаг необязательный — обмен работает и без него, но мы настоятельно советуем настроить оба пункта.</div>
<pstyle="margin:2px 0 0">bj напишет напочту, если НРД не отвечает, перевод застрял{{if .DepoLicensed}}, DEPO не обработал поручение{{end}} или истекает ключ, — и будет сам делать копии сервера. Обмен работает и без этого, но мы советуем настроить оба пункта.</p>
<h2><spanclass="dot {{if not $b.Enabled}}warn{{else if and $bs $bs.OK}}ok{{else}}err{{end}}"></span>Копии сервера bj на сетевое хранилище</h2>
<pclass="muted">Что копируется: база bj (заявки, сделки, кабинет), база и папка шлюза НРД (настройки, сертификаты, полученные от НРД документы), настройки и данные bj. Пароль хранилища bj у себя не хранит — он лежит на сервере в файле, доступном только системе. Восстановить копию можно в мастере настройки (глава «Сервер», «Восстановить из резервной копии»).</p>
<pclass="muted">Что копируется: база bj (заявки, сделки, кабинет), база и папка шлюза НРД (настройки, сертификаты, полученные от НРД документы), настройки и данные bj. Пароль хранилища bj у себя не хранит — он лежит на сервере в файле, доступном только системе. Восстановить копию можно на первой странице нового сервера bj — «Восстановить из резервной копии».</p>
<pstyle="margin:8px 0">{{if $bs}}Последняя копия: <b>{{backupWhen $bs.At}}</b> — {{if $bs.OK}}<spanstyle="color:var(--ok)">✓ {{$bs.Dir}}, {{$bs.Msg}}</span>{{else}}<spanstyle="color:var(--err)">✗ {{$bs.Msg}}</span>{{end}}{{else}}<spanclass="muted">Копий ещё не было.</span>{{end}}</p>
<pclass="muted"style="font-size:13px;margin:0 0 8px">Сначала работают на тестовом контуре TEST3; когда переводы на нём проходят — переходят на боевой. У каждого контура свой ключ (в мастере установки ключа выберите контур) и свой канал в ИШ. bj работает с одним контуром — активным.</p>
<pclass="muted"style="font-size:13px;margin:0 0 8px">Сначала — тестовый контур TEST3; когда переводы на нём проходят, переходите на боевой. У каждого контура свой ключ.</p>
<h2><spanclass="dot {{if .Settings.Quik.Verified}}ok{{else if .Settings.Quik.Server}}warn{{else}}err{{end}}"></span>Подключение к БД МНП QUIK (MSSQL)</h2>
<pclass="muted">При выводе бумаг клиентом bj блокирует их количество в QUIK через API Модуля неторговых поручений (хранимые процедуры). БД<strong>боевая</strong> — проверка только на чтение (версия + наличие M2M-объектов), без записи. Подключение под логином с ролью <code>InstrEu</code>.<br>
<ahref="/admin/help/quik"><strong>Инструкция для администратора QUIK</strong></a> — что настроить в QuikAdmin для M2M · <ahref="/admin/docs/">документы ARQA</a>.</p>
<h2><spanclass="dot {{if .Settings.Quik.Verified}}ok{{else if .Settings.Quik.Server}}warn{{else}}err{{end}}"></span>Подключение к модулю неторговых поручений</h2>
<pclass="muted">{{if not .InWizard}}bj блокирует бумаги клиента в QUIK на время перевода через модуль неторговых поручений (МНП). {{end}}Нужен логин SQL с ролью<code>InstrEu</code> — его выдаёт администратор QUIK: <ahref="/admin/help/quik">что ему настроить</a> · <ahref="/admin/docs/">документы ARQA</a>.</p>
<inputtype="password"name="password"placeholder="{{if .Settings.Quik.Password}}•••••• — оставьте пустым, чтобы не менять{{else}}пароль SQL-логина{{end}}"autocomplete="off"style="width:100%"></label>
<label>Шифрование канала
<selectname="encrypt"style="width:100%">
<optionvalue="true"{{ifeq.Settings.Quik.Encrypt"true"}}selected{{end}}>true — с TLS (боевой сервер обычно требует)</option>
<optionvalue="disable"{{ifeq.Settings.Quik.Encrypt"disable"}}selected{{end}}>disable — без TLS</option>
<inputtype="password"name="password"placeholder="{{if .Settings.Quik.Password}}сохранён — пусто, чтобы не менять{{end}}"autocomplete="new-password"style="width:100%"></label>
</div>
<details><summarystyle="cursor:pointer;color:var(--accent);font-size:13px">Дополнительно: база и шифрование (обычно не нужно)</summary>
<divstyle="display:grid;gap:10px;margin-top:8px">
<label>База МНП <spanclass="muted"style="font-weight:400">— пусто: база логина по умолчанию</span>
Доверять сертификату сервера, даже самоподписанному</label>
</div>
</details>
<div><buttontype="submit"class="btn">Сохранить и проверить</button><spanclass="muted"style="font-size:12.5px;margin-left:6px">проверка только читает — в QUIK ничего не меняется</span></div>
<h2><spanclass="dot {{if .Settings.Quik.Emulate}}warn{{else if not .Settings.Quik.WritesEnabled}}warn{{else if or .Settings.Quik.AutoOut .Settings.Quik.AutoIn}}ok{{else}}warn{{end}}"></span>Автоматический цикл M2M в МНП{{if .Settings.Quik.Emulate}} <spanclass="hero-status warn">{{if devOn}}имитация{{else}}остановлен{{end}}</span>{{end}}</h2>
{{if .InWizard}}<details><summarystyle="cursor:pointer;list-style:none"><h2style="display:inline">{{else}}<h2>{{end}}<spanclass="dot {{if .Settings.Quik.Emulate}}warn{{else if not .Settings.Quik.WritesEnabled}}warn{{else if or .Settings.Quik.AutoOut .Settings.Quik.AutoIn}}ok{{else}}warn{{end}}"></span>Автоматический цикл M2M в МНП{{if .Settings.Quik.Emulate}} <spanclass="hero-status warn">{{if devOn}}имитация{{else}}остановлен{{end}}</span>{{end}}</h2>{{if .InWizard}} <spanclass="muted"style="font-size:13px">— {{if .Settings.Quik.WritesEnabled}}включён{{else}}выключен: bj ничего не пишет в QUIK{{end}} · настроить ▸</span></summary>{{end}}
<pclass="muted">Что делает bj в Модуле неторговых поручений по ходу перевода: <strong>исходящий</strong> — при отправке в НРД регистрирует «Вывод ЦБ (M2M)» (QUIK блокирует бумаги), по подтверждению подписывает (списание), по отказу снимает с причиной; <strong>входящий</strong> — после приёма нашего поручения НРД регистрирует «Ввод ЦБ (M2M)» (зачисление сразу). Каждый шаг виден в карточке перевода и на странице <ahref="/admin/quik">QUIK МНП</a>.</p>
Принимаем поручения M2M из QUIK: клиентам разрешена подача «Вывод ЦБ (M2M)» из терминала / мобильного приложения — bj опрашивает их и создаёт заявку оператору. Если фирма такую подачу не разрешает, оставьте выключенным: раздел «Поручения QUIK» их показывать не будет.</label>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.