Discriminar Parámetros en Transact Sql
Bueno para comenzar mi nombre es víctor y estoy comenzando con el tema transact.
Lo que pasa es que estoy desarrollando un sistema que trabaja con cristal report y eh creado una consulta, la cual tiene N parámetros, mi duda es la siguiente existe alguna forma de hacer discriminar el resultado del select utilizando los parámetros que yo desee.
Es decir, si mi procedimiento es el siguiente:
CREATE PROCEDURE DeudaPorFuncionario
@DiaPago int, @Empleador int, @ano int, @mes int, @Institucion int, @NomInstitucion as Varchar(50)
AS
select * FROM Deuda LEFT OUTER JOIN
Institucion ON Deuda.CodigoIntitucion = Institucion.CodigoInstitucion LEFT OUTER JOIN
Funcionario ON Deuda.Rut = Funcionario.Rut RIGHT OUTER JOIN
LetraPactada ON Deuda.CodigoDeuda = LetraPactada.CodigoDeuda RIGHT OUTER JOIN
Empleador ON Funcionario.CodigoEmpleador = Empleador.CodigoEmpleador
GROUP BY LetraPactada.EstadoPago, Funcionario.Rut, Funcionario.Nombre, Funcionario.ApellidoPaterno, Funcionario.ApellidoMaterno, Funcionario.DiaDePago,
Deuda.Rut, Empleador.Descripcion, Funcionario.CodigoEmpleador, LetraPactada.FechaDePago, Institucion.CodigoInstitucion
HAVING (LetraPactada.EstadoPago = 'E') AND (Funcionario.DiaDePago = @DiaPago) AND (Funcionario.CodigoEmpleador = @Empleador) AND (MONTH(LetraPactada.FechaDePago)
= @mes) AND (YEAR(LetraPactada.FechaDePago) = @ano) AND (Institucion.CodigoInstitucion = @Institucion)
ORDER BY Nombre
Como puedes ver existen 6 parámetros cual seria la estructura para utilizar algunos de los parámetros por ejemplo solo @ano, solo @mes, o @mes y @ano, o N combinación...
Pero que sean los que necesito...
Estoy trabajando con visual basic 6 y sql server 2000
Lo que pasa es que estoy desarrollando un sistema que trabaja con cristal report y eh creado una consulta, la cual tiene N parámetros, mi duda es la siguiente existe alguna forma de hacer discriminar el resultado del select utilizando los parámetros que yo desee.
Es decir, si mi procedimiento es el siguiente:
CREATE PROCEDURE DeudaPorFuncionario
@DiaPago int, @Empleador int, @ano int, @mes int, @Institucion int, @NomInstitucion as Varchar(50)
AS
select * FROM Deuda LEFT OUTER JOIN
Institucion ON Deuda.CodigoIntitucion = Institucion.CodigoInstitucion LEFT OUTER JOIN
Funcionario ON Deuda.Rut = Funcionario.Rut RIGHT OUTER JOIN
LetraPactada ON Deuda.CodigoDeuda = LetraPactada.CodigoDeuda RIGHT OUTER JOIN
Empleador ON Funcionario.CodigoEmpleador = Empleador.CodigoEmpleador
GROUP BY LetraPactada.EstadoPago, Funcionario.Rut, Funcionario.Nombre, Funcionario.ApellidoPaterno, Funcionario.ApellidoMaterno, Funcionario.DiaDePago,
Deuda.Rut, Empleador.Descripcion, Funcionario.CodigoEmpleador, LetraPactada.FechaDePago, Institucion.CodigoInstitucion
HAVING (LetraPactada.EstadoPago = 'E') AND (Funcionario.DiaDePago = @DiaPago) AND (Funcionario.CodigoEmpleador = @Empleador) AND (MONTH(LetraPactada.FechaDePago)
= @mes) AND (YEAR(LetraPactada.FechaDePago) = @ano) AND (Institucion.CodigoInstitucion = @Institucion)
ORDER BY Nombre
Como puedes ver existen 6 parámetros cual seria la estructura para utilizar algunos de los parámetros por ejemplo solo @ano, solo @mes, o @mes y @ano, o N combinación...
Pero que sean los que necesito...
Estoy trabajando con visual basic 6 y sql server 2000
1 Respuesta
Respuesta de denciso