Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вывод сообщений  [new]
avec
Member

Откуда: Москва
Сообщений: 826
Есть одна процедура, состоящая из вызовов других процедур...

CREATE PROCEDURE MAIN
AS
exec PROC1
exec PROC2
exec PROC3
...

Соответственно, выполняться все это вместе может довольно долго... Как-нибудь можно в процессе выполнения определить, какая процедура выполнена. Ну например:

CREATE PROCEDURE MAIN
AS
exec PROC1
вывести "процедура PROC1 выполнена"

exec PROC2
вывести "процедура PROC2 выполнена"

exec PROC3
...

Запускаю пока из QA... Но в перспективе было бы удобно получать такие сообщения и в клиентской программе, которая будет вызывать эту ХП.

Есть для этого какие-то механизмы?
25 июн 04, 16:48    [766539]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4537
Воспользуйтесь поиском :)
print, raiserror и ловите сообщения на клиенте...
25 июн 04, 16:56    [766584]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
автор
Есть для этого какие-то механизмы?

Ага. Изучайте документацию по стедству разработки клиента.
25 июн 04, 17:14    [766685]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
Шотов Вадим
Member

Откуда: Киев
Сообщений: 309
declare @ret int
exec @ret = 'Имя процедуры' 'список параметров'
если ошибка - возвращай return -1 и тут обрабатывай ее
если нет - return 0 - иди дальше
25 июн 04, 17:14    [766688]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
avec
Member

Откуда: Москва
Сообщений: 826
Если пока клиент - QA??? Все принты он выводит уже ПОСЛЕ окончания процедуры
25 июн 04, 17:21    [766729]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
habibi
Member

Откуда: Донецк
Сообщений: 167
Эх... Повезло тебе - если клиент QA 8-)))

Тогда всё просто
CREATE proc habibi_ac_test
as 

declare @CompanyName nvarchar(40)
set @CompanyName = 'Самый Первый тест'

raiserror('%s пройден.',10,1,@CompanyName)with nowait
set @CompanyName = 'Первый тест'
raiserror('%s пройден.',10,1,@CompanyName)with nowait

set @CompanyName = 'Второй тест'
WAITFOR DELAY '00:00:05'
raiserror('%s пройден',10,1,@CompanyName) with nowait


set @CompanyName = 'Третий тест'
WAITFOR DELAY '00:00:05'
raiserror('%s пройден',10,1,@CompanyName) with nowait

select top 5 * from documents

GO

Тут вся тяга в with nowait....

А вот если клиент ут я по стечению обстоятельств - VBScript - то про то, что это сделать - невозможно - читай отут. 8-(( Если когда - нибудь - узнаешь как всётаки это можно сделать используя голое ADO + VBScript (в котором кстати ты не отловишь события ADO-шных объектов), то стукни плиз в аську 82061720....
25 июн 04, 17:33    [766794]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
avec
Member

Откуда: Москва
Сообщений: 826
либо я торможу, но не вижу в приведенном коде вызов процедур-то...
25 июн 04, 17:39    [766822]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
habibi
Member

Откуда: Донецк
Сообщений: 167
Ну я ж блин не ясновидящий, чтоб знать какие там ты захотел процедуры вызывать и в каком порядке 8-)))

Вот и написал WAITFOR DELAY '00:00:05' вместо вызова процедуры чтоб - время потянуть... Пожешь этуи строчки заменить на любые свои процедуры...
25 июн 04, 18:03    [766906]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
habibi
Member

Откуда: Донецк
Сообщений: 167
НУ если искодить из процедур в первом посте, то оттак

CREATE proc habibi_ac_test
as 

declare @CompanyName nvarchar(40)
set @CompanyName = 'Самый Первый тест'

set @CompanyName = 'PROC1'
exec PROC1
raiserror('%s выполнена',10,1,@CompanyName) with nowait

set @CompanyName = 'PROC2'
exec PROC2
raiserror('%s выполнена',10,1,@CompanyName) with nowait

set @CompanyName = 'PROC3'
exec PROC3
raiserror('%s выполнена',10,1,@CompanyName) with nowait


GO
25 июн 04, 18:05    [766914]     Ответить | Цитировать Сообщить модератору
 Re: Вывод сообщений  [new]
avec
Member

Откуда: Москва
Сообщений: 826
и вот ни фига это не работает из QA... все сообщения вылетают после окончания работы ХП
28 июн 04, 15:10    [769165]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить