Hola a todos!
Tengo una aplicación en C# y la base de datos la estoy manejando en sql server 2005.
Estoy nuevamente por aquí con la siguiente pregunta
tengo dos tablas una que se llama programaciones que es la tabla principal y la otra se llama DlleFechas que es la detalle.
el código de programaciones es autonúmerico. Las fechas que se van guardando en la DlleFechas se guardan con ese codigo, pero varias es decir:
tengo algo así
Cod_Programaciones
1
2
3
.......cada codigo es un contrato, en el que pueden haber varias fechas.
entonces en la tabla Dlle me va a guardar algo así:
Cod_Programaciones Fecha Inicial Fecha Final
1 05/08/2011 06/08/2011
1 17/08/2011 19/08/2011
1 24/09/2011 25//9/2011
2 09/08/2011 10/ 08/2011
2 17/08/2011 18/08/2011
Entonces el reporte que necesito generar debe sacar sólo la fecha inicial y la final por contrato es decir
del contrato 1 me debe sacar 5/08/2011 y 25/09/2011
del 2 9/08/2011 y 18/08/2011
Para Generarlo utilizo algunos parámetros de entrada. el procedimiento que tengo actualmente este no me sirve porqué me trae todas las fechas del contrato.
espero me puedan ayudar con esto
De antemano muchisimas gracias
Este es el SP que tengo:
USE [Universidad89]
GO
/****** Objeto: StoredProcedure [dbo].[SP_MostrarContratos] Fecha de la secuencia de comandos: 08/10/2011 09:38:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[SP_MostrarContratos]
@Plan_Trabajo varchar(15),
@Fecha_Inicio Datetime,
@Fecha_Fin Datetime,
@Codigo_seccional int
AS
BEGIN TRY
BEGIN TRAN
SELECT Programacion.Codigo_Fecha, Programacion.Cedula_empleado AS Cédula, Empleados.Nombres, Empleados.Primer_Apellido AS [1er Apellido],
Empleados.Segundo_Apellido AS [2do Apellido], Programacion.Codigo_seccional, Seccional.Nombre_seccional AS Seccional,
Seccional_CentroCostos.Codigo_CentroCostos AS [Centro Costos], Detalle_Viaje.Codigo_programa AS [Cod.Programa],
Detalle_Viaje.Codigo_asignatura AS [Cod.Asignatura], Asignatura.Nombre_asignatura AS Asignatura, Fecha_Clase.Fecha_Inicial AS [Fecha Inicio],
Fecha_Clase.Fecha_Final AS [Fecha Fin], Programacion.Horas_Presenciales AS [H.Presenciales],
Programacion.HorasAtencion AS [H.Atención Estudiantes], Programacion.TotalHoras AS [Total Horas],
Programacion.[Fundamento_Legal] AS [Fundamento Legal]
FROM Programacion INNER JOIN
Empleados ON Programacion.Cedula_empleado = Empleados.Cedula_empleado INNER JOIN
Seccional ON Programacion.Codigo_seccional = Seccional.Codigo_seccional INNER JOIN
Seccional_CentroCostos ON Seccional.Codigo_seccional = Seccional_CentroCostos.Codigo_seccional INNER JOIN
Programa ON Seccional.Codigo_seccional = Programa.Codigo_seccional INNER JOIN
Detalle_Viaje ON Programacion.Codigo_Fecha = Detalle_Viaje.Codigo_Fecha AND
Programa.Codigo_programa = Detalle_Viaje.Codigo_programa INNER JOIN
Asignatura ON Detalle_Viaje.Codigo_asignatura = Asignatura.Codigo_asignatura INNER JOIN
Fecha_Clase ON Programacion.Codigo_Fecha = Fecha_Clase.Codigo_Fecha
WHERE (Plan_Trabajo = @Plan_Trabajo) and (Fecha_Inicial between @Fecha_Inicio and @Fecha_Fin) and (Programacion.Codigo_seccional = @Codigo_seccional)
ORDER BY Fecha_Clase.Fecha_Inicial ASC, Fecha_Clase.Fecha_Final DESC
COMMIT
END TRY
BEGIN CATCH
ROLLBACK
PRINT ERROR_STATE()
END CATCH