ALTER    PROCEDURE [dbo].[sp_cobDepositos] 
    @foliodep varchar(100),
	@fechaini  date = GETDATE,
	@fechafin  date = GETDATE
	
AS

IF @foliodep > 0 
BEGIN
SELECT    1 AS tipo,cobPagoDocumentos.depositado, 
			idPago AS ID, 
			cobPagoDocumentos.fechamov, 
            COALESCE(conBancos.nombre,'') AS nomban, 
			cobPagoDocumentos.serie, 
			SUM(cobPagoDocumentos.monto) AS monto, 
			cobPagoDocumentos.fecha, 
			COALESCE(conCtacte.nomcte,'') AS nomcte, 
            COALESCE(conCtacte.rutcte,'') AS rutcte, 
            COALESCE(conCtacte.digcte,'') AS digcte, 
            COALESCE(venCondicionPago.nompag,'') AS nompag, 
            cobPagoDocumentos.foliodep, 
            cobPagoDocumentos.numerodep, 
            cobPagoDocumentos.fechadep, 
            cobPagoDocumentos.bancodep, 
            cobPagoDocumentos.conceptoDeposito,
            cobPagoDocumentos.banco,
			venCondicionPago.cuentacontable,
			'PAGO' AS tipodesc,
			COALESCE(idcartola,0) AS idcartola,
			flujo,
			cobPagoDocumentos.vencimiento as fechaven
FROM         cobPagoDocumentos INNER JOIN
                      venCondicionPago ON cobPagoDocumentos.fpago = venCondicionPago.codpag LEFT OUTER JOIN
                      conBancos ON cobPagoDocumentos.banco = conBancos.idBanco LEFT OUTER JOIN
                      conCtacte ON cobPagoDocumentos.rut = conCtacte.rutcte
WHERE     (venCondicionPago.depositable = 1) 
AND		  (cobPagoDocumentos.foliodep = @foliodep)
 
GROUP BY cobPagoDocumentos.depositado, 
			cobPagoDocumentos.fechamov, 
			cobPagoDocumentos.serie, 
 			cobPagoDocumentos.fecha, 
            conBancos.nombre,
			conCtacte.nomcte, 
            conCtacte.rutcte, 
            conCtacte.digcte,
            venCondicionPago.nompag, 
            cobPagoDocumentos.foliodep,
            cobPagoDocumentos.numerodep, 
            cobPagoDocumentos.fechadep, 
            cobPagoDocumentos.bancodep, 
            cobPagoDocumentos.conceptoDeposito,
            cobPagoDocumentos.banco,
		    venCondicionPago.cuentacontable,
			idPago,
			idcartola,
			flujo,
			cobPagoDocumentos.vencimiento
UNION  ALL      
SELECT      2 as tipo, 
				cobAnticipos.depositado,
				cobAnticipos.id_anticipo AS ID , 
				cobAnticipos.fechamov, 
				COALESCE (conBancos.nombre, '') AS nomban, 
				cobAnticipos.serie,
				SUM(cobAnticipos.monto) AS monto,
				cobAnticipos.fechamov as fecha,
				COALESCE (conCtacte.nomcte, '') AS nomcte, 
				COALESCE (conCtacte.rutcte, '') AS rutcte, 
				COALESCE (conCtacte.digcte, '') AS digcte, 
				COALESCE (venCondicionPago.nompag, '') AS nompag, 
				cobAnticipos.foliodep, 
				cobAnticipos.numerodep, 
				cobAnticipos.fechadep, 
				cobAnticipos.bancodep, 
				cobAnticipos.conceptoDeposito,
				cobAnticipos.banco,
				venCondicionPago.cuentacontable,
				CASE cobAnticipos.TIPO WHEN 1 THEN 'ANTICIPO' ELSE 'EXCEDENTE' END AS tipodesc
				,COALESCE(idcartola,0) AS idcartola,flujo
				,cobAnticipos.vencimiento as fechaven
FROM            cobAnticipos INNER JOIN
                         venCondicionPago ON cobAnticipos.codpag = venCondicionPago.codpag LEFT OUTER JOIN
                         conBancos ON cobAnticipos.banco = conBancos.idBanco LEFT OUTER JOIN
                         conCtacte ON cobAnticipos.rut = conCtacte.rutcte
WHERE     (venCondicionPago.depositable = 1) 
AND		  (cobAnticipos.foliodep = @foliodep)
GROUP BY CobAnticipos.TIPO,
		 cobAnticipos.depositado,
		 cobAnticipos.fechamov,
		 cobAnticipos.serie,
		 conBancos.nombre,
		 conCtacte.nomcte,
		 conCtacte.rutcte,
		 conCtacte.digcte,
		 venCondicionPago.nompag,
		 cobAnticipos.foliodep,
		 cobAnticipos.numerodep,
		 cobAnticipos.fechadep,
		 cobAnticipos.bancodep,
		 cobAnticipos.banco,
		 venCondicionPago.cuentacontable,
		 cobAnticipos.id_anticipo,
		 cobAnticipos.cdeposito,
		 cobAnticipos.conceptoDeposito,
		 idcartola,
		 flujo,
		 cobAnticipos.vencimiento


END


IF @foliodep = 0 
BEGIN
SELECT    1 AS tipo,cobPagoDocumentos.depositado, 
			idPago AS ID, 
			cobPagoDocumentos.fechamov, 
            COALESCE(conBancos.nombre,'') AS nomban, 
			cobPagoDocumentos.serie, 
			SUM(cobPagoDocumentos.monto) AS monto, 
			cobPagoDocumentos.fecha, 
			COALESCE(conCtacte.nomcte,'') AS nomcte, 
            COALESCE(conCtacte.rutcte,'') AS rutcte, 
            COALESCE(conCtacte.digcte,'') AS digcte, 
            COALESCE(venCondicionPago.nompag,'') AS nompag, 
            cobPagoDocumentos.foliodep, 
            cobPagoDocumentos.numerodep, 
            cobPagoDocumentos.fechadep, 
            cobPagoDocumentos.bancodep, 
            cobPagoDocumentos.conceptoDeposito,
            cobPagoDocumentos.banco,
			venCondicionPago.cuentacontable,'PAGO' AS tipodesc
			,idcartola
			,cobPagoDocumentos.vencimiento as fechaven
FROM         cobPagoDocumentos INNER JOIN
                      venCondicionPago ON cobPagoDocumentos.fpago = venCondicionPago.codpag LEFT OUTER JOIN
                      conBancos ON cobPagoDocumentos.banco = conBancos.idBanco LEFT OUTER JOIN
                      conCtacte ON cobPagoDocumentos.rut = conCtacte.rutcte
WHERE     (venCondicionPago.depositable = 1) 
AND		  (cobPagoDocumentos.foliodep = 0) AND (cobPagoDocumentos.depositado <> 's')
AND		  CONVERT(DATE,cobPagoDocumentos.vencimiento) BETWEEN @fechaini AND @fechafin
GROUP BY cobPagoDocumentos.depositado, 
			cobPagoDocumentos.fechamov, 
			cobPagoDocumentos.serie, 
 			cobPagoDocumentos.fecha, 
            conBancos.nombre,
			conCtacte.nomcte, 
            conCtacte.rutcte, 
            conCtacte.digcte,
            venCondicionPago.nompag, 
            cobPagoDocumentos.foliodep,
            cobPagoDocumentos.numerodep, 
            cobPagoDocumentos.fechadep, 
            cobPagoDocumentos.bancodep, 
            cobPagoDocumentos.conceptoDeposito,
            cobPagoDocumentos.banco,
		    venCondicionPago.cuentacontable,
			idPago,
			idcartola,
			cobPagoDocumentos.vencimiento
UNION  ALL      
SELECT      2 as tipo, 
				cobAnticipos.depositado,
				cobAnticipos.id_anticipo AS ID , 
				cobAnticipos.fechamov, 
				COALESCE (conBancos.nombre, '') AS nomban, 
				cobAnticipos.serie,
				SUM(cobAnticipos.monto) AS monto,
				cobAnticipos.fechamov as fecha,
				COALESCE (conCtacte.nomcte, '') AS nomcte, 
				COALESCE (conCtacte.rutcte, '') AS rutcte, 
				COALESCE (conCtacte.digcte, '') AS digcte, 
				COALESCE (venCondicionPago.nompag, '') AS nompag, 
				cobAnticipos.foliodep, 
				cobAnticipos.numerodep, 
				cobAnticipos.fechadep, 
				cobAnticipos.bancodep, 
				cobAnticipos.conceptoDeposito,
				cobAnticipos.banco,
				venCondicionPago.cuentacontable,
				CASE cobAnticipos.TIPO WHEN 1 THEN 'ANTICIPO' ELSE 'EXCEDENTE' END AS tipodesc
				,idcartola
				,cobAnticipos.vencimiento as fechaven
FROM            cobAnticipos INNER JOIN
                         venCondicionPago ON cobAnticipos.codpag = venCondicionPago.codpag LEFT OUTER JOIN
                         conBancos ON cobAnticipos.banco = conBancos.idBanco LEFT OUTER JOIN
                         conCtacte ON cobAnticipos.rut = conCtacte.rutcte
WHERE     (venCondicionPago.depositable = 1) 
AND		  (cobAnticipos.foliodep = 0) AND		  ( cobAnticipos.depositado <> 's')
AND		  CONVERT(DATE,cobAnticipos.vencimiento) BETWEEN @fechaini AND @fechafin
GROUP BY CobAnticipos.TIPO,
		 cobAnticipos.depositado,
		 cobAnticipos.fechamov,
		 cobAnticipos.serie,
		 conBancos.nombre,
		 conCtacte.nomcte,
		 conCtacte.rutcte,
		 conCtacte.digcte,
		 venCondicionPago.nompag,
		 cobAnticipos.foliodep,
		 cobAnticipos.numerodep,
		 cobAnticipos.fechadep,
		 cobAnticipos.bancodep,
		 cobAnticipos.banco,
		 venCondicionPago.cuentacontable,
		 cobAnticipos.id_anticipo,
		 cobAnticipos.cdeposito,
		 cobAnticipos.conceptoDeposito,
		 idcartola,
		 cobAnticipos.vencimiento
END