Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/21: Рейтинг темы: голосов - 21, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 30.10.2012
Сообщений: 9
1

Проверка статуса при запуске джоба

30.10.2012, 11:16. Показов 4288. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет всем!

Пытаюсь создать скалярную функцию, которая бы возвращала 0, 1 или NULL. Функция проверяет, экзекьютится ли все еще JOB или нет.

При создании этой функции возникает ошибка: Invalid use of side-effecting or time-dependent operator in 'INSERT EXEC' within a function.

Что можно сделать?

Код такой:

T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET NOCOUNT ON
GO
 
CREATE FUNCTION [fn_JobStatusCheck_GAS_log1] (@job_owner sysname)
RETURNS BIT
AS
BEGIN
 
    DECLARE @xp_results TABLE
    (job_id UNIQUEIDENTIFIER NOT NULL,
    last_run_date INT NOT NULL,
    last_run_time INT NOT NULL,
    next_run_date INT NOT NULL,
    next_run_time INT NOT NULL,
    next_run_schedule_id INT NOT NULL,
    requested_to_run INT NOT NULL,
    request_source INT NOT NULL,
    request_source_id sysname COLLATE database_default NULL,
    running INT NOT NULL,
    current_step INT NOT NULL,
    current_retry_attempt INT NOT NULL,
    job_state INT NOT NULL)
 
    SET @job_owner = SUSER_SNAME()
    INSERT INTO @xp_results
    EXECUTE master.dbo.xp_sqlagent_enum_jobs 1, @job_owner
 
    DECLARE @IsJobRunning BIT
 
    SELECT @IsJobRunning = x.running
    FROM @xp_results x
    INNER JOIN msdb.dbo.sysjobs sj ON sj.job_id = x.job_id
    WHERE sj.name = 'MyJobName' 
 
    RETURN @IsJobRunning 
END
GO
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.10.2012, 11:16
Ответы с готовыми решениями:

Проверка данных в Access (проверка Статуса Кандидата)
Всем доброго времени суток! Проблема такая. В бд есть таблица кандидатов, в ней есть номер...

Проверка байт статуса
Напишите программу которая проверяет байт STATUS и переходит к ROUTINE_1, если биты 1, 3 или 5...

Проверка статуса службы
Всем привет. Подскажите, пожалуйста, что не так в этом скрипте? @echo off setlocal set...

Проверка статуса платежа
Приветствую всех! Прошу помочь мне в моей проблеме! Мне нужно приложение, которое бы проверяла...

2
176 / 168 / 27
Регистрация: 12.01.2009
Сообщений: 430
30.10.2012, 12:31 2
Сделать процедурой
0
0 / 0 / 0
Регистрация: 30.10.2012
Сообщений: 9
30.10.2012, 18:50  [ТС] 3
Сработало! Спс

Я новичок. Поэтому у меня сразу куча вопросов. А как синтаксисом отличается, что я пишу скалярную функцию (или процедуру) или обычную?

И как вообще отличать, что лучше, функция или процедура?

Добавлено через 5 часов 38 минут
http://blog.boxedbits.com/archives/124

Нашла все в одном месте по своей задаче.
0
30.10.2012, 18:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.10.2012, 18:50
Помогаю со студенческими работами здесь

Проверка статуса olevariant
строю парсер для магазина. сделал модуль, который тянет информацию о характеристиках товара с...

Проверка статуса чекбокса
Привет всем! Искал похожую тему, но не нашел к сожалению. Подскажите пожалуйста, как на джаве...

Проверка статуса документа
Доброго времени суток. Как можно программно запретить перевод документа в режим редактирования...

Проверка статуса лицензии Windows
Добрый день, проблема такая: Необходим скрипт, проверяющий статус лицензии Windows 7 ,выполняющий...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru