IF OBJECT_ID('P_RC_CLI_CONV_REVISAO_SALDO') IS NOT NULL
    BEGIN
        DROP PROCEDURE P_RC_CLI_CONV_REVISAO_SALDO;
    END;
GO 

--EXEC P_RC_CLI_CONV_REVISAO_SALDO
CREATE PROCEDURE [dbo].[P_RC_CLI_CONV_REVISAO_SALDO]( @TpReprocessa INT = 0)
WITH ENCRYPTION
AS

	if @TpReprocessa  =1 -- Tudo
	begin
		INSERT INTO RC_CLI_CONV_RC_CLI_SALDO_PENDENTE
		SELECT DISTINCT
			RC_CLI_CONV_RC_CLI.CD_EMP
			, RC_CLI_CONV_RC_CLI.CD_CLI
			, RC_CLI_CONV_RC_CLI.CD_CONV
			, GETDATE()
		FROM
			RC_CLI_CONV_RC_CLI
		WHERE
			 NOT EXISTS( SELECT CD_CLI FROM RC_CLI_CONV_RC_CLI_SALDO_PENDENTE 
							WHERE RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_EMP = RC_CLI_CONV_RC_CLI.CD_EMP AND 
							RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_CLI = RC_CLI_CONV_RC_CLI.CD_CLI)						
	end 

	if @TpReprocessa  =1 -- Vendas dos ultimos 5 dias
	begin
		INSERT INTO RC_CLI_CONV_RC_CLI_SALDO_PENDENTE
		SELECT DISTINCT
			 RC_CLI_CONV_RC_CLI.CD_EMP
			, RC_CLI_CONV_RC_CLI.CD_CLI
			, RC_CLI_CONV_RC_CLI.CD_CONV
			, GETDATE()
		FROM
			RC_CLI_CONV_RC_CLI
		WHERE
			 NOT EXISTS( SELECT CD_CLI FROM RC_CLI_CONV_RC_CLI_SALDO_PENDENTE 
							WHERE RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_EMP = RC_CLI_CONV_RC_CLI.CD_EMP AND 
							RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_CLI = RC_CLI_CONV_RC_CLI.CD_CLI)						
	end 

	if @TpReprocessa  =0 -- Vendas dos ultimos 5 dias
	begin
		INSERT INTO RC_CLI_CONV_RC_CLI_SALDO_PENDENTE
		SELECT DISTINCT
			   r.CD_EMP
			 , r.CD_CLI
			 , r.CD_CONV
			 , GETDATE()
		FROM
			 rc_vd_conv r
		WHERE cd_emp = 1
			  AND dt_Vd BETWEEN DATEADD(day, -5, CONVERT(DATE, GETDATE())) AND CONVERT(DATE, GETDATE())
			  AND NOT EXISTS( SELECT CD_CLI 
								FROM 
									RC_CLI_CONV_RC_CLI_SALDO_PENDENTE 
								WHERE 
									RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_EMP = r.CD_EMP AND 
									RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_CLI = r.CD_CLI);

		INSERT INTO RC_CLI_CONV_RC_CLI_SALDO_PENDENTE
		SELECT DISTINCT
			 RC_CLI_CONV_RC_CLI.CD_EMP
			, RC_CLI_CONV_RC_CLI.CD_CLI
			, RC_CLI_CONV_RC_CLI.CD_CONV
			, GETDATE()
		FROM
			RC_CLI_CONV_RC_CLI
		WHERE
			CD_EMP=1
			AND DT_ULT_ALT > DATEADD(DAY, -5, CONVERT(DATE, GETDATE()))
			AND 	 NOT EXISTS( SELECT CD_CLI FROM RC_CLI_CONV_RC_CLI_SALDO_PENDENTE 
							WHERE RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_EMP = RC_CLI_CONV_RC_CLI.CD_EMP AND 
							RC_CLI_CONV_RC_CLI_SALDO_PENDENTE.CD_CLI = RC_CLI_CONV_RC_CLI.CD_CLI
							AND CD_EMP=1)	
		
	end
	 