Причина «нет процедур» при успешной установке: проверка идёт логином bj_user, а
OBJECT_ID под ним возвращает NULL для объектов без прав — FTV_M2M_JOB виден (ему
выдан EXECUTE), 4 FTV_M2M_PROCESS_* нет. Процедуры установлены и работают (JOB
вызывает их по цепочке владения dbo), но проверка их не видела.
Теперь установка и скачиваемый скрипт выдают GRANT EXECUTE на все 5 процедур.
Убрана ложная блокировка установки по отсутствию пользователя SYSDBA (CREATE
проходит и без него; строка EXECUTE AS проверяется в рантайме).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn
Процедуры FTV_M2M_PROCESS_* содержат EXECUTE AS USER=SYSDBA; SQL Server требует
этого пользователя при CREATE (FTV_M2M_JOB без EXECUTE AS создаётся, а 4 PROCESS_* — нет).
- «Проверить возможности» проверяет наличие пользователя EXECUTE AS (из текста процедур)
и блокирует установку с понятным сообщением, если его нет.
- Ошибка установки сохраняется в статус (не мелькает флешем) с подсказкой про SYSDBA.
- Подсказка добавлена и в мастере при «Подготовить».
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn
- «Подготовить» в мастере (step 3, режим «дать логин администратора») теперь ставит
и процедуры обработки bj2depo (CREATE OR ALTER) + GRANT, не только логин/таблицы/джобу.
- Скачиваемый скрипт мастера включает процедуры.
- Тексты процедур редактируются под клиента (Настройка → Обмен DEPO → Процедуры):
сохранённый вариант используется при установке и при «Подготовить». Пусто/совпадение
со встроенным — исходная версия.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn
Процедуры FTV_M2M_PROCESS_* и FTV_M2M_JOB встроены в bj (depoprocs/*.sql).
В разделе «Учёт DEPO» карточка «Процедуры обработки bj2depo»:
- «Проверить возможности» — подключение, это ли база DEPO, какие процедуры
установлены, есть ли право CREATE PROCEDURE и логин bj в базе (ничего не меняет);
- «Установить» — логином администратора SQL (разово, не сохраняется) выполняет
CREATE OR ALTER в порядке WIRING→OPERATION→EVENTS→CREATE→JOB и GRANT EXECUTE
на FTV_M2M_JOB логину bj; без прав — отказ без изменений;
- скачивание единого скрипта для ручной установки в SSMS.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn