SP llama otro SP
Publicado por Oscar Gonzalez (1 intervención) el 22/08/2002 21:32:52
Amigos. estoy intentando ejecutar un SP que evalúa cada registro recuperado del SP pricipal, pero he tenido problemas, acontinuación adjunto código fuente.
USE Hospital
GO
IF OBJECT_ID('dbo.Cons_BuscaLiquidacionMedico') IS NOT NULL
BEGIN
DROP PROCEDURE dbo.Cons_BuscaLiquidacionMedico
PRINT "Procedimiento Borrado"
END
GO
CREATE PROCEDURE Cons_BuscaLiquidacionMedico
@FechaInicial smalldatetime, @FechaFinal smalldatetime
AS
declare @Estado bit
declare @Hora char(10)
SELECT CargosRayosGlosa.Cargo,
CargosRayosGlosa.Codigo,
Cargos.[Apellidos Paciente] + Space(1) +
Cargos.[Nombres Paciente] AS PACIENTE,
CargosRayosGlosa.Informado,
CargosRayosGlosa.Medico,
InformadoHabil =
CASE ISNULL(LEN(CargosRayosGlosa.Medico),0)
WHEN 0 THEN
CargosRayosGlosa.Valor_Fonasa
ELSE
0
END,
‘En adelante comienza mi problema no funciona, le he colocado paréntesis y nada’
NoHabil =
CASE
WHEN CargosRayos.Habil = "HABIL" THEN
SELECT @Hora = CONVERT(CHAR(10),CargosRayos.Hora,108)
FROM CargosRayos
WHERE Cargo = 5050
exec Cons_HoraMedico @Hora, @Estado OUTPUT
ELSE
0
END
FROM (CargosRayosGlosa LEFT JOIN CargosRayos
ON CargosRayosGlosa.Cargo = CargosRayos.Cargo)
LEFT JOIN Cargos
ON CargosRayos.CargoReal = Cargos.Numero_Cargo
WHERE CargosRayos.Fecha BETWEEN @FechaInicial AND @FechaFinal AND
Cargos.Nulo = 0 AND
(CargosRay
USE Hospital
GO
IF OBJECT_ID('dbo.Cons_BuscaLiquidacionMedico') IS NOT NULL
BEGIN
DROP PROCEDURE dbo.Cons_BuscaLiquidacionMedico
PRINT "Procedimiento Borrado"
END
GO
CREATE PROCEDURE Cons_BuscaLiquidacionMedico
@FechaInicial smalldatetime, @FechaFinal smalldatetime
AS
declare @Estado bit
declare @Hora char(10)
SELECT CargosRayosGlosa.Cargo,
CargosRayosGlosa.Codigo,
Cargos.[Apellidos Paciente] + Space(1) +
Cargos.[Nombres Paciente] AS PACIENTE,
CargosRayosGlosa.Informado,
CargosRayosGlosa.Medico,
InformadoHabil =
CASE ISNULL(LEN(CargosRayosGlosa.Medico),0)
WHEN 0 THEN
CargosRayosGlosa.Valor_Fonasa
ELSE
0
END,
‘En adelante comienza mi problema no funciona, le he colocado paréntesis y nada’
NoHabil =
CASE
WHEN CargosRayos.Habil = "HABIL" THEN
SELECT @Hora = CONVERT(CHAR(10),CargosRayos.Hora,108)
FROM CargosRayos
WHERE Cargo = 5050
exec Cons_HoraMedico @Hora, @Estado OUTPUT
ELSE
0
END
FROM (CargosRayosGlosa LEFT JOIN CargosRayos
ON CargosRayosGlosa.Cargo = CargosRayos.Cargo)
LEFT JOIN Cargos
ON CargosRayos.CargoReal = Cargos.Numero_Cargo
WHERE CargosRayos.Fecha BETWEEN @FechaInicial AND @FechaFinal AND
Cargos.Nulo = 0 AND
(CargosRay
Valora esta pregunta


0