{{/* Раздел «Обмен Fancy» — один и тот же в «Настройка → Обмен Fancy» и на шаге 3 мастера настройки (данные — SetupData). Правки — только здесь. */}} {{define "fancySection"}}

Подключение к серверу БД клиента

Сервер учётной базы Fancy DEPO: картотека лиц, счета и договоры, остатки, опции (признак квалифицированного инвестора), трансферные таблицы обмена. Поддерживаются Microsoft SQL Server и PostgreSQL. База указывается ниже, в карточке «Трансферные таблицы DEPO».

{{if .Settings.Fancy.Server}}{{template "accPrefix" .}}{{end}}

Трансферные таблицы DEPO

Через эти таблицы bj обменивается с учётной системой DEPO: поручения FTV_M2M и их строки FTV_M2M_LINES, события FTV_M2M_EVENTS, справочник участников НРД FTV_M2M_HANDBOOK. Таблицы создаются в базе DEPO на сервере из подключения выше ({{if .DepoTables.Postgres}}PostgreSQL{{else}}Microsoft SQL Server{{end}}). Создание можно повторять: добавляются только недостающие таблицы, колонки и индексы, данные не меняются.

{{if eq .Settings.Fancy.DepoTablesMode "auto"}}
Логин с правами на базу {{.DepoTables.DB}}
{{if .DepoTables.Postgres}}Владелец базы или суперпользователь.{{else}}Роль db_owner в базе (или db_ddladmin + db_securityadmin).{{end}} Если оставить поля пустыми, bj попробует своим логином {{.DepoTables.User}}.
{{else if eq .Settings.Fancy.DepoTablesMode "script"}}
Скрипт для администратора СУБД — скачать {{.DepoTables.ScriptFile}}
{{.DepoTables.Script}}
{{end}}
логином bj: таблицы на месте, колонки совпадают, есть права на чтение и запись
{{if .Settings.Fancy.DepoTablesCheck}}

{{if .Settings.Fancy.DepoTablesCheckOK}}✓{{else}}✗{{end}} {{.Settings.Fancy.DepoTablesCheck}} ({{.Settings.Fancy.DepoTablesCheckAt.Format "02.01.2006 15:04"}})

{{end}}

Где запускается обработка трансферных таблиц DEPO

Поручения и события, которые bj пишет в FTV_M2M*, обрабатывает процедура {{.DepoJob.Proc}} в базе DEPO. Выберите, кто её запускает, выполните инструкцию и нажмите «Проверить готовность» — без зелёной отметки обмен с DEPO работать не будет.

Процедура обработки выполняется от имени пользователя базы DEPO (у разработчика Fancy это SYSDBA). У клиента такого пользователя может не быть или он называется иначе: «Проверить готовность» проверит, что он есть в базе.

{{if eq .Settings.Fancy.DepoJobMode "bj"}}
Инструкция для администратора SQL клиента — выполнить один раз:
{{.DepoJob.GrantScript}}
{{else if eq .Settings.Fancy.DepoJobMode "sql-auto"}}
Создать джобу {{.DepoJob.Name}} — SQL Server Agent должен быть запущен. Логин администратора SQL (sysadmin, например sa) используется один раз и не сохраняется; пусто — bj попробует своим логином.
Без логина администратора: выдать логину bj роль оператора SQL Agent (скрипт)
{{.DepoJob.AgentRights}}
{{else if eq .Settings.Fancy.DepoJobMode "sql-manual"}}
Инструкция для администратора SQL клиента — создать джобу (SQL Agent должен быть запущен, служебная учётная запись Agent должна иметь право выполнять процедуру): Скачать скрипт bj-depo-job-mssql.sql
{{.DepoJob.AdminScript}}
{{end}} {{if .Settings.Fancy.DepoJobMode}}
для вариантов с джобой bj пишет служебное событие BJ_PING и ждёт до 40 с, пока обработчик его отметит
{{if .Settings.Fancy.DepoJobCheck}}

{{if .Settings.Fancy.DepoJobCheckOK}}✓{{else}}✗{{end}} {{.Settings.Fancy.DepoJobCheck}} ({{.Settings.Fancy.DepoJobCheckAt.Format "02.01.2006 15:04"}})

{{end}} {{if and (eq .Settings.Fancy.DepoJobMode "bj") .Settings.Fancy.DepoJobLast}}

Последний вызов процедуры — {{.Settings.Fancy.DepoJobLast}}

{{end}} {{end}}

Процедуры обработки bj2depo

Процедуры FTV_M2M_* встроены в bj. Сначала «Проверить возможности» (ничего не меняет), затем «Установить» — bj выполнит их в базе DEPO в порядке {{depoProcOrder}} и выдаст логину bj право запуска.

Логин sysadmin (например sa) вводится один раз и не сохраняется. Пусто — bj попробует своим логином (прав на создание процедур у него обычно нет).

Скачать скрипт bj-depo-procs-mssql.sql — для ручной установки администратором в SSMS

Тексты процедур — изменить под клиента
{{range depoProcList}}{{end}}
пустое поле или совпадение со встроенным — вернуть исходную версию; изменённые ставятся при «Установить» и при «Подготовить» в мастере
{{if .Settings.Fancy.DepoProcCheck}}

{{if .Settings.Fancy.DepoProcCheckOK}}✓{{else}}⚠{{end}} {{.Settings.Fancy.DepoProcCheck}}{{if not .Settings.Fancy.DepoProcCheckAt.IsZero}} · {{msk .Settings.Fancy.DepoProcCheckAt}}{{end}}

{{end}}
{{end}} {{define "verline"}}{{if and .Title (or devOn (clientVer .Key))}}

{{verTitle .}}: {{if .Version}}{{.Version}}{{else}}не определена{{end}}{{if devOn}}{{with .Detail}} · {{.}}{{end}}{{with .Err}} · {{.}}{{end}}{{end}}

{{end}}{{end}} {{/* Сводка «Обмен с DEPO» (Настройка): что подключено и проверено — одним взглядом; формы — под «Перенастроить». */}} {{define "fancyStatus"}}{{$f := .Settings.Fancy}}{{$ok := and $f.Server $f.DepoTablesCheckOK $f.DepoJobCheckOK}}
{{if $ok}}Обмен с DEPO работает{{else if $f.Server}}Обмен с DEPO настроен не до конца{{else}}Учёт DEPO не подключён{{end}} {{if $ok}}Подключение, трансферные таблицы и обработка проверены — менять ничего не нужно. Если что-то изменилось на сервере DEPO — «Перенастроить» ниже.{{else if $f.Server}}Что не так — в строках ниже с ✗; поправить — в «Перенастроить».{{else}}Подключите базу DEPO — мастером настройки (шаг «Учёт DEPO») или в «Перенастроить».{{end}}
{{if not $f.Server}}Открыть мастер{{end}}
{{if $f.Server}}
База DEPO
{{$f.DepoDB}} на {{$f.Server}}{{if $f.Port}}:{{$f.Port}}{{end}} · {{if eq $f.DBType "postgres"}}PostgreSQL{{else}}Microsoft SQL Server{{end}}
Логин bj
{{$f.User}}
Торговые счета клиентов
номер начинается с {{depoAccPrefix}}
Признак ИИС
договор начинается с {{if $f.IISContractMarker}}{{$f.IISContractMarker}}{{else}}БРИИС{{end}} — такие переводы отклоняются кодом M2M06
Трансферные таблицы
{{if $f.DepoTablesCheckOK}}✓{{else}}✗{{end}} {{if $f.DepoTablesCheck}}{{$f.DepoTablesCheck}}{{else}}ещё не проверялись{{end}}{{if not $f.DepoTablesCheckAt.IsZero}} · {{msk $f.DepoTablesCheckAt}}{{end}}
Обработка событий
{{if $f.DepoJobCheckOK}}✓{{else}}✗{{end}} {{if eq $f.DepoJobMode "bj"}}запускает bj{{if $f.DepoJobEverySec}} каждые {{$f.DepoJobEverySec}} с{{end}}{{else if eq $f.DepoJobMode "sql-auto"}}задание SQL Server Agent {{depoJobNameOf $f}}{{else if eq $f.DepoJobMode "sql-manual"}}задание SQL Server Agent (создано администратором){{else}}не выбрано, кто запускает{{end}}{{if $f.DepoJobCheck}}
{{$f.DepoJobCheck}}{{if not $f.DepoJobCheckAt.IsZero}} · {{msk $f.DepoJobCheckAt}}{{end}}
{{end}}
{{if $f.DepoProcCheck}}
Процедуры обработки
{{if $f.DepoProcCheckOK}}✓{{else}}⚠{{end}} {{$f.DepoProcCheck}}{{if not $f.DepoProcCheckAt.IsZero}} · {{msk $f.DepoProcCheckAt}}{{end}}
{{end}}
{{end}}
{{end}} {{/* Секция «Обновления»: общий блок для страницы настроек и шага 14 мастера. */}} {{define "updateSection"}} {{if .InWizard}}
{{else}}
{{end}} {{if not .InWizard}}

Обновления

{{end}} {{template "verline" (.Versions.Get "bj-server")}}
{{if .UpdatesAvailable}}
Доступно обновление{{with .Settings.Update.Available}} {{.}}{{end}}{{if .Settings.Update.Notes}}{{.Settings.Update.Notes}}{{else}}новые версии компонентов — список ниже, в «Компоненты и версии»{{end}}
{{else if and (not .Settings.Update.LastCheck.IsZero) .UpdateFailed}}
Проверить обновления не удалось{{.Settings.Update.LastResult}} · {{msk .Settings.Update.LastCheck}}
{{else}}
Установлены последние версии{{if .Settings.Update.LastCheck.IsZero}}ещё не проверялось{{else}}проверено {{msk .Settings.Update.LastCheck}}{{end}}{{if .Settings.Update.AutoCheck}} · bj проверяет сам каждые 6 часов{{end}}
{{end}} {{if and .License.Present (not .License.AllowsUpdates)}}

В лицензии нет модуля «Обновления».

{{end}}
Компоненты и версиичто установлено на этом сервере и что есть в выпуске; можно обновить один компонент
{{if devOn}}{{end}} {{range .Components}} {{if devOn}}{{end}} {{end}}
КомпонентУстановленаДоступнаСлужба
{{.Title}}{{if devOn}}
{{.Name}}{{if eq .Name "crypto-service.jar"}}{{with $.Versions.Get "validata"}}{{if .Version}} · работает с «Валидата Клиент L» {{.Version}}{{end}}{{end}}{{end}}
{{end}}
{{if .Present}}{{if .Installed}}{{.Installed}}{{else}}неизвестна{{end}}{{else}}не установлен{{end}} {{if .Available}}{{.Available}}{{if .New}} к установке{{else if .Update}} новее{{end}}{{if .Blocked}}
{{.Blocked}}
{{end}}{{else}}нет данных{{end}}
{{.Unit}}{{if .Update}}
{{end}}
Расширенные настройкиисточник и канал обновлений, обновление из файла для сервера без выхода в интернет

Обновление из файла

Закрытый контур. Если у сервера нет выхода к серверу обновлений, скачайте пакет обновления на портале клиента (lic.zetit.ru → Установка → «Пакет обновления») и загрузите его кнопкой «Обновить из файла». Система сама распознаёт, что внутри — ядро, модули или всё вместе — и ставит в правильном порядке. Модуль, которому нужно более новое ядро, чем установлено, будет пропущен с подсказкой обновить сначала ядро.

Источник обновлений

{{if devOn}} {{else}}{{end}} {{if devOn}} {{else}}{{end}}
{{if .InWizard}}
{{else}}{{end}} {{end}}