Автосценарий «Просрочен по МК»

По многочисленным просьбам наших пользователей в новой версии АСУ МС реализована функция автоматического выполнения Автосценария «Просрочен по МК».

В настоящее время функция «Автосценарий» выполняется Администратором АСУ МС и позволяет  изменять Техническое состояние средства измерений на «Просрочен».

Чтобы свести к минимуму вероятность эксплуатации просроченных средств измерений реализована возможность автоматического выполнения Автосценария «Просрочен по МК».

Для этого потребуется доступ к SQL Server с правами sysadmin. Настройку рекомендуется выполнять силами специалистов IT с навыками администрования SQL Server. 

Настройка автоматического выполнения Автосценария

1.    Убедитесь, что на сервере, где установлена СУБД MS SQL Server, запущена служба SQL Server Agent, стартующая в автоматическом режиме при загрузке сервера.

2. Создайте пользователя на MS SQL Server для технических работ и дайте ему на базу данных АСУ МС следующие роли: db_datareader, db_datawriter, db_owner.

Пользователя можно создать как вручную, так и с помощью скрипта «create_User.sql».
Если создавать пользователя с помощью скрипта, то в скрипте нужно указать:
a.    tmpuser – логин пользователя в базе данных АСУ МС.
b.    tmplogin – имя входа. Требуется указать два раза!

В таблице prmUsers созданному пользователю должны быть сразу предоставлены права 512 (поле roleIds).

3. Создайте хранимую процедуру. Для этого:
a.    Открыть «create_Procedure.sql» в MS SQL Management Studio
b.    В строке «executeasuser = ‘tmpuser’» вместо ‘tmpuser’ указать логин пользователя, от которого будет выполняться запрос.
c.    Можно изменить имя процедуры. Для этого замените фразу [up_EKZ_UpadateState_SPtS], но потом укажите изменённое имя процедуры в скрипте при создании job.
d.    Найти созданную процедуру и в свойствах выставить права на правку и извлечение. Минимум нужны права на извлечение.

4. Создать Job. Для этого:
a. Открыть «create_Job.sql» в MS SQL Management Studio.
b. Указать имя Job в строке @job_name=N'METR6_EKZ_UpdateState', если решили изменить заданое имя Job.
c. В строке @owner_login_name=N'tmplogin', @job_id = @jobId OUTPUT указать tmplogin – владельца созданного job. Лучше администратора.
d. Если меняли имя хранимой процедуры, заменить строку @command=N'EXEC dbo.up_EKZ_UpadateState_SPtS'
e. Указать логин созданного пользователя на шаге 2.а. @database_user_name=N'tmpuser'.

После выполнения получим в SQL Server Agent в папке Job созданное задание
(в нашем примере показана картинка для задания CDW_SERVERNEW_WS4_0)

На текущий момент расписание настроено: запускать каждый день в 5:17 утра. Изменить расписание можно в свойствах job.
Для этого нужно встать на задание, нажать правую кнопку мышки и выбрать Свойства (Properties) и в режиме редактирования провести нужные изменения.

Файлы для скачивания:
sql_agent.zip (0.19 Мб)