AJUDA COM RECORD SET POVOADO POR STORED PROCEDURE
Fala Galera,
Tenho a SP no SQL SERVER 7 assim
CREATE PROCEDURE USP_LISTAGEM_RIO
@DATA AS VARCHAR(12)
AS
DECLARE @ID_BANCO AS INT
SET @ID_BANCO = 4 -- RIO DE JANEIRO
DECLARE @ID_DCP AS INT
DECLARE @LIG_N AS INT
DECLARE @TEMPO_N AS INT
DECLARE @LIG_R AS INT
DECLARE @TEMPO_R AS INT
DECLARE @ID_DESC AS INT
DECLARE @DESCRICAO AS VARCHAR(30)
CREATE TABLE #TEMP(
ID_DCP INT,
DATA VARCHAR(12),
DESCRICAO VARCHAR(50),
LIG_NORMAL INT ,
TEMPO_NORMAL INT,
LIG_REDUZIDO INT,
TEMPO_REDUZIDO INT)
--Cliente XPTO - CODIGO - 8
SET @DESCRICAO = [ô]XPTO[ô]
SET @ID_DESC = 8
SELECT
@ID_DCP = ID_DCP,
@LIG_N = LIG_NORMAL_DCP,
@TEMPO_N = TEMPO_NORMAL_DCP,
@LIG_R = LIG_REDUZIDO_DCP,
@TEMPO_R = TEMPO_REDUZIDO_DCP
FROM TBL_DETALHE_CAIXA_POSTAL
WHERE ID_DESC_DCP = @ID_DESC
AND DATA_DCP LIKE @DATA
AND ID_BD_DCP = @ID_BANCO
INSERT INTO #TEMP(ID_DCP,DATA,DESCRICAO,LIG_NORMAL,TEMPO_NORMAL,LIG_REDUZIDO,TEMPO_REDUZIDO)
VALUES(@ID_DCP,@DATA,@DESCRICAO,@LIG_N,@TEMPO_N,@LIG_R,@TEMPO_R)
-- assim até o cliente N.
--depois disso
SELECT * FROM #TEMP
DROP TABLE #TEMP
/* Fim da PROCEDURE */
no vb 6
faço....
Set Rs = Conexao.Execute ( [ô]EXEC USP_LISTAGEM_RIO 4[ô])
Galera essa proc deveria me retornar umas 150 linhas .....
mas isso não acontece....
ele me retorna lá em Rs.RecordCount o valor 0
detalhe: fiz um select Monstro p/ fazer quase msm coisa.... mas o ideal é a SP, pq posso colocar a ordenação que eu precisar aqui na empresa.....
é só isso tudo.....
valeu galera
Tenho a SP no SQL SERVER 7 assim
CREATE PROCEDURE USP_LISTAGEM_RIO
@DATA AS VARCHAR(12)
AS
DECLARE @ID_BANCO AS INT
SET @ID_BANCO = 4 -- RIO DE JANEIRO
DECLARE @ID_DCP AS INT
DECLARE @LIG_N AS INT
DECLARE @TEMPO_N AS INT
DECLARE @LIG_R AS INT
DECLARE @TEMPO_R AS INT
DECLARE @ID_DESC AS INT
DECLARE @DESCRICAO AS VARCHAR(30)
CREATE TABLE #TEMP(
ID_DCP INT,
DATA VARCHAR(12),
DESCRICAO VARCHAR(50),
LIG_NORMAL INT ,
TEMPO_NORMAL INT,
LIG_REDUZIDO INT,
TEMPO_REDUZIDO INT)
--Cliente XPTO - CODIGO - 8
SET @DESCRICAO = [ô]XPTO[ô]
SET @ID_DESC = 8
SELECT
@ID_DCP = ID_DCP,
@LIG_N = LIG_NORMAL_DCP,
@TEMPO_N = TEMPO_NORMAL_DCP,
@LIG_R = LIG_REDUZIDO_DCP,
@TEMPO_R = TEMPO_REDUZIDO_DCP
FROM TBL_DETALHE_CAIXA_POSTAL
WHERE ID_DESC_DCP = @ID_DESC
AND DATA_DCP LIKE @DATA
AND ID_BD_DCP = @ID_BANCO
INSERT INTO #TEMP(ID_DCP,DATA,DESCRICAO,LIG_NORMAL,TEMPO_NORMAL,LIG_REDUZIDO,TEMPO_REDUZIDO)
VALUES(@ID_DCP,@DATA,@DESCRICAO,@LIG_N,@TEMPO_N,@LIG_R,@TEMPO_R)
-- assim até o cliente N.
--depois disso
SELECT * FROM #TEMP
DROP TABLE #TEMP
/* Fim da PROCEDURE */
no vb 6
faço....
Set Rs = Conexao.Execute ( [ô]EXEC USP_LISTAGEM_RIO 4[ô])
Galera essa proc deveria me retornar umas 150 linhas .....
mas isso não acontece....
ele me retorna lá em Rs.RecordCount o valor 0
detalhe: fiz um select Monstro p/ fazer quase msm coisa.... mas o ideal é a SP, pq posso colocar a ordenação que eu precisar aqui na empresa.....
é só isso tudo.....
valeu galera
acredito que o ideal seria usar o objeto Command da ADO. Com ele vc pode indicar os parâmetros. Eu não posso te indicar nada funcional pois não trabalho cm SGDBs ainda . Mas de acordo com o que venho estudando, é mais ou menos por aà ...
Tópico encerrado , respostas não são mais permitidas