--Hash:206CBCAEAD49CF5E8BBCBAA10470F194
SET XACT_ABORT ON
BEGIN TRANSACTION;

GO

SET DATEFORMAT mdy;

--Validar que no existan scripts que no se hayan ejecutado
--//
IF EXISTS
(
	SELECT a.NumVersion + 1 AS HuecoInicio
	FROM ZiurVersiones a
	LEFT JOIN ZiurVersiones b ON a.NumVersion + 1 = b.NumVersion
	WHERE a.NumVersion>830 AND b.NumVersion IS NULL
	AND a.NumVersion + 1 < 916
)
RAISERROR('Error : hay un script que no se ejecuto , debe ejecutarlo manualmente.', 20, -1) with log
--//

--Colocar contenido de script diferencial aqui (Ziur.Database.publish.sql)

/*
 Plantilla de script anterior a la implementación							
--------------------------------------------------------------------------------------
 Este archivo contiene instrucciones de SQL que se ejecutarán antes del script de compilación	
 Use la sintaxis de SQLCMD para incluir un archivo en el script anterior a la implementación			
 Ejemplo:      :r .\miArchivo.sql								
 Use la sintaxis de SQLCMD para hacer referencia a una variable en el script anterior a la implementación		
 Ejemplo:      :setvar TableName miTabla							
               SELECT * FROM [$(TableName)]					
--------------------------------------------------------------------------------------
*/
GO

GO
PRINT N'Altering Procedure [dbo].[GetCalcularDiasLiquidados]...';


GO
ALTER PROCEDURE GetCalcularDiasLiquidados

@FechaIni DATE,
@FechaFin DATE,
@IdContrato NVARCHAR(MAX),
@DiasNomina NUMERIC(28,6)

AS
BEGIN

DECLARE

@FechaIniPeriodo DATE,
@FechaFinPeriodo DATE

SET @FechaIniPeriodo = DATEADD(DAY, 1, EOMONTH(@FechaIni, -1))
SET @FechaFinPeriodo = EOMONTH(@FechaFin)

;WITH tmpDaysLiquidated(IdCliente, IdContrato, LiquidatedDays, Descripcion) --Dias que ya fueron liquidados
AS
(
	SELECT s.IdCliente, s.IdContrato,
	CASE WHEN s.tDifContDias > 0 THEN @DiasNomina ELSE s.EstaEnRango * tDifContrato1 END tDifContrato,
	CASE WHEN s.tDifContDias <= 0 THEN 'Dias Contrato:' + CONVERT(NVARCHAR(20),s.EstaEnRango * tDifContrato1) + ' (' + CONVERT(NVARCHAR(20), s.FechaIni, 103) + '-' + CONVERT(NVARCHAR(20), s.tFin, 103) +')' ELSE NULL END AS Descripcion
	FROM 
	(
		SELECT 
		t.*,
		DATEDIFF(DAY, tInicio, tFin)+1 AS tDifContrato1,
		DATEDIFF(DAY, tInicio, tFin)+1 - @DiasNomina AS tDifContDias
		FROM 
		(
			SELECT 
			u.*,
			CASE WHEN u.tFin1<@FechaFin THEN u.tFin1 ELSE @FechaFin END AS tFin,
			CASE WHEN @FechaIni <= tFin1 and FechaIni <= @FechaFin THEN 1 ELSE 0 END as EstaEnRango
			FROM
			(
				SELECT 
				IdCliente, 
				IdContrato,
				FechaIni,
				FechaFin,
				CASE WHEN FechaIni>@FechaIni THEN FechaIni ELSE @FechaIni END AS tInicio, 
				COALESCE(FechaRetiro,FechaFin,@FechaFin) AS tFin1
				FROM Nomina_Contratos cont
				WHERE cont.IdContrato IN (SELECT number FROM iter$simple_intlist_to_tbl(@IdContrato))
			) u
		) t
	) s


	UNION ALL

	--Dias Novedades
	SELECT q3.IdCliente, q3.IdContrato, -1*SUM(q3.Cantidad) AS Cantidad,
	(
		CASE WHEN SUM(q3.Cantidad) = 0 THEN NULL
		ELSE ('Novedades: ' + FORMAT(SUM(q3.Cantidad), '##,##')) END
	) AS Descripcion
	FROM
	(
		SELECT cont.IdCliente, cont.IdContrato, 
		(
			(DATEDIFF(DD, NoMo.FechaIniVac, NoMo.FechaFinVac) + 1) -
			CASE WHEN @FechaFin < NoMo.FechaIniVac OR @FechaIni > NoMo.FechaFinVac THEN (DATEDIFF(DD, NoMo.FechaIniVac, NoMo.FechaFinVac) + 1)
			ELSE
				( CASE WHEN @FechaIni > NoMo.FechaIniVac THEN DATEDIFF(DD, NoMo.FechaIniVac, @FechaIni) ELSE 0 END +
				CASE WHEN @FechaFin < NoMo.FechaFinVac THEN DATEDIFF(DD, @FechaFin, NoMo.FechaFinVac) ELSE 0 END )
			END
		) AS Cantidad
		FROM Nomina_Contratos cont
		INNER JOIN Nomina_Movimientos NoMo ON NoMo.IdContrato = cont.IdContrato
		INNER JOIN Nomina_Items NoIt ON NoIt.IdItem = NoMo.IdItem
		WHERE cont.IdContrato IN (SELECT number FROM iter$simple_intlist_to_tbl(@IdContrato)) 
		AND FechaFinVac >= @FechaIniPeriodo AND FechaFinVac <= @FechaFinPeriodo
		AND NoIt.FactorProv = 1
		AND NoIt.IdClasif = 1
	) AS q3
	GROUP BY q3.IdCliente, q3.IdContrato

	UNION ALL

	--Dias Laborados
	SELECT q4.IdCliente, q4.IdContrato, -1*SUM(q4.Cantidad) AS Cantidad,
	(
		CASE WHEN SUM(q4.Cantidad) = 0 THEN NULL
		ELSE ('Dias Sueldo: ' + FORMAT(SUM(q4.Cantidad), '##,##')) END
	) AS Descripcion
	FROM 
	(	
		SELECT enc.IdEncab, cont.IdCliente, cont.IdContrato,  
		(
			Cantidad -
			CASE WHEN enc.FechaIni > @FechaFin OR enc.FechaFin < @FechaIni THEN Cantidad
			ELSE
				( CASE WHEN enc.FechaIni <= @FechaIni THEN (DATEDIFF(DD, enc.FechaIni, @FechaIni)) ELSE 0 END +
				CASE WHEN enc.FechaFin >= @FechaFin THEN (DATEDIFF(DD, @FechaFin, enc.FechaFin)) ELSE 0 END )
			END
		) AS Cantidad
		FROM Nomina_Contratos cont
		INNER JOIN Nomina_Movimientos NoMo ON NoMo.IdContrato = cont.IdContrato
		INNER JOIN Encabezados enc ON enc.IdEncab = NoMo.IdEncab
		WHERE cont.IdContrato IN (SELECT number FROM iter$simple_intlist_to_tbl(@IdContrato))
		AND enc.FechaIni >= @FechaIniPeriodo AND enc.FechaFin <= @FechaFinPeriodo
		AND NoMo.IdItem = 101
	) AS q4
	GROUP BY q4.IdCliente, q4.IdContrato
)

--Consulta Final
SELECT 
Cont.IdCliente, 
Cont.IdContrato,	
SUM(LiquidatedDays) AS LiquidatedDays,
(
	STUFF
	(	
		(
			SELECT Descripcion + ',' 
			FROM tmpDaysLiquidated tmpDL
			WHERE tmpDL.IdContrato = Cont.IdContrato
			AND tmpDL.IdCliente = Cont.IdCliente
			FOR XML PATH ('')
		), 1, 0, ''
	) 
) AS Descripcion
FROM Nomina_Contratos Cont
LEFT JOIN tmpDaysLiquidated tmp ON tmp.IdContrato = Cont.IdContrato
WHERE Cont.IdContrato IN (SELECT number FROM iter$simple_intlist_to_tbl(@IdContrato))
GROUP BY Cont.IdCliente, Cont.IdContrato

END
GO
PRINT N'Altering Procedure [dbo].[Ziur_CrearClienteDeSistema]...';


GO
ALTER PROCEDURE [dbo].[Ziur_CrearClienteDeSistema]
@IdCliente INT,
@IdEstablec INT = 0,
@CliIdTipoIdent INT,
@CliIdentificacion NVARCHAR(100),
@CliDVCliente NVARCHAR(20),
@CliIdCiudad INT,
@CliCodInterno NVARCHAR(100),
@CliNombre1 NVARCHAR(200),
@CliNota NVARCHAR(200) = NULL,
@CliIdLista INT = NULL,
@CliAsociacion NVARCHAR(200) = NULL,
@DirDireccion NVARCHAR(400) = NULL,
@DirDireccionFormato1 NVARCHAR(400) = NULL,
@DirDireccionFormato2 NVARCHAR(400) = NULL,
@DirTelefonos NVARCHAR(400) = NULL,
@DirCelular NVARCHAR(400) = NULL,
@DirEMail NVARCHAR(400) = NULL,
@DirIdCiudad INT = NULL,
@DirCodigoPostal NVARCHAR(20) = NULL,

@Exito INT = 0 output

AS
BEGIN

DECLARE

@tCliIdentificacion NVARCHAR(100)

SET @tCliIdentificacion = 'XX-' + @CliIdentificacion;

--DESHABILITAR TRIGGERS DE TABLA CLIENTES
--//
EXEC('DISABLE TRIGGER TRG_AuditCli ON Clientes')
--//


--CREACION EPS EMPRESA PROMOTORA DE SALUD ECOOPSOS
IF NOT EXISTS(SELECT IdCliente FROM Clientes WHERE IdCliente=@IdCliente) 
BEGIN
     SET IDENTITY_INSERT dbo.Clientes ON
     INSERT INTO dbo.Clientes
     (IdCliente, IdTipoIdent, Identificacion, DVCliente, IdCiudad, CodigoInterno, Nombre1, Nombre2, Apellido1, Apellido2, EsActivo, Nota, IdTipoRegimen, TarifaIca, EsReteICA, IdCliVendedor, IdAgrup1, IdAgrup2, IdAgrup3, IdZona1, IdZona2, IdZona3, CupoCreditoTiene, CupoCreditoPlazo, CupoCreditoValor, IdLista, ComisionTiene, EsImptoNal, EsImptoLoc, EsEspecial, EsAutoRetenedor, IdPais, IdEstablec, IdActividad, EsCree, IdCuentaCree, IdRiesgo, FechaCreacion, FechaUltModificacion, IdMetodoMora, TasaMoraParteSuperior, TasaMoraParteInferior, FechaIngreso, EsExentoIVA, PlazoTiene, InvCupoTiene)
     VALUES
	 (@IdCliente,@CliIdTipoIdent,@tCliIdentificacion,@CliDVCliente,@CliIdCiudad,@CliCodInterno,@CliNombre1,NULL,NULL,NULL,1,@CliNota,3,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,@CliIdLista,NULL,0,0,1,0,48,@IdEstablec,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0)
	 SET IDENTITY_INSERT [dbo].[Clientes] OFF

	 INSERT INTO dbo.Clientes_Asociacion (IdCliente, IdTipo)
	 SELECT @IdCliente, number FROM iter$simple_intlist_to_tbl(@CliAsociacion)

	 INSERT INTO dbo.Clientes_Direcciones (IdCliente, IdTipoDir, Direccion, DireccionFormato1,DireccionFormato2, Telefonos, Celular, EMail, IdCiudad, EsDirPrincipal, CodigoPostal) 
	 VALUES (@IdCliente, 1, @DirDireccion, @DirDireccionFormato1, @DirDireccionFormato2, @DirTelefonos, @DirCelular, @DirEMail, @DirIdCiudad,1,@DirCodigoPostal)
END

--HABILITAR TRIGGERS DE TABLA CLIENTES
--//
EXEC('ENABLE TRIGGER TRG_AuditCli ON Clientes')
--//


--*************** ACTUALIZAR IDS ANTIGUOS DE CLIENTES *************
--*****************************************************************

IF OBJECT_ID(N'tempdb..#TercerosToUpdate') IS NOT NULL
   DROP TABLE #TercerosToUpdate

select a.idcliente as oldIdCliente, t.idcliente as newIdCliente, t.IdEstablec
into #TercerosToUpdate
from clientes a,
(
	select max(idcliente) as idcliente, replace(identificacion,'XX-','') as identif, IdEstablec, identificacion
	from clientes
	where (IdCliente=@IdCliente)
	group by identificacion, IdEstablec
) t
where 
a.identificacion = t.identif and a.IdEstablec = t.IdEstablec
and a.idcliente>@IdCliente

delete from Clientes_Asociacion where idcliente in (select oldIdCliente from #TercerosToUpdate)
delete from Clientes_InfoComercial where idcliente in (select oldIdCliente from #TercerosToUpdate)
delete from Clientes_Archivos where idcliente in (select oldIdCliente from #TercerosToUpdate)
delete from Clientes_Tributos where idcliente in (select oldIdCliente from #TercerosToUpdate)

update Calendarios_Turnos set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Calendarios_Turnos.IdCliente1 = z.oldIdCliente

update Citas_Clientes set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Citas_Clientes.IdCliente = z.oldIdCliente

update Clientes set IdCliVendedor = z.newIdCliente 
from #TercerosToUpdate z
where Clientes.IdCliVendedor = z.oldIdCliente

update Clientes_Antecedentes_Medicos set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Antecedentes_Medicos.IdCliente = z.oldIdCliente

update Clientes_Archivos set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Archivos.IdCliente = z.oldIdCliente

update Clientes_Asociacion set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Asociacion.IdCliente = z.oldIdCliente

update Clientes_Bancos_Codigos set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Bancos_Codigos.IdCliente1 = z.oldIdCliente

update Clientes_Bancos_Codigos set IdCliente2 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Bancos_Codigos.IdCliente2 = z.oldIdCliente

update Clientes_Contactos set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Contactos.IdCliente = z.oldIdCliente

update Clientes_Direcciones set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Direcciones.IdCliente = z.oldIdCliente

update Clientes_DocRecursos set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_DocRecursos.IdCliente = z.oldIdCliente

update Clientes_Empleados set IdCli_Sena = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCli_Sena = z.oldIdCliente

update Clientes_Empleados set IdCli_Cesantia = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCli_Cesantia = z.oldIdCliente

update Clientes_Empleados set IdCli_ICBF = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCli_ICBF = z.oldIdCliente

update Clientes_Empleados set IdCli_Caja = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCli_Caja = z.oldIdCliente

update Clientes_Empleados set IdCli_Arp = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCli_Arp = z.oldIdCliente

update Clientes_Empleados set IdCli_Pension = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCli_Pension = z.oldIdCliente

update Clientes_Empleados set IdCli_Eps = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCli_Eps = z.oldIdCliente

update Clientes_Empleados set BancoIdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.BancoIdCliente = z.oldIdCliente

update Clientes_Empleados set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados.IdCliente = z.oldIdCliente

update Clientes_Empleados_Bancos set BancoIdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Empleados_Bancos.BancoIdCliente = z.oldIdCliente

update Clientes_Especial set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Especial.IdCliente = z.oldIdCliente

update Clientes_Historia_Clinica set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Historia_Clinica.IdCliente1 = z.oldIdCliente

update Clientes_Historia_Clinica set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Historia_Clinica.IdCliente = z.oldIdCliente

update Clientes_Historia_Clinica set IdCliente2 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Historia_Clinica.IdCliente2 = z.oldIdCliente

update Clientes_Historia_Clinica_Diagnostico set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Historia_Clinica_Diagnostico.IdCliente1 = z.oldIdCliente

update Clientes_Historia_Clinica_Evolucion set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Historia_Clinica_Evolucion.IdCliente1 = z.oldIdCliente

update Clientes_InfoComercial set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_InfoComercial.IdCliente = z.oldIdCliente

update Clientes_Inventarios_Cupos set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Inventarios_Cupos.IdCliente = z.oldIdCliente

update Clientes_Prospectos set IdClienteConv = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Prospectos.IdClienteConv = z.oldIdCliente

update Clientes_Prospectos set IdCliente2 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Prospectos.IdCliente2 = z.oldIdCliente

update Clientes_Prospectos set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Prospectos.IdCliente1 = z.oldIdCliente

update Clientes_Prospectos_Seguim set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Prospectos_Seguim.IdCliente1 = z.oldIdCliente

update Clientes_ResponFiscal set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_ResponFiscal.IdCliente = z.oldIdCliente

update Clientes_Tributos set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Tributos.IdCliente = z.oldIdCliente

update Clientes_Vendedores set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Clientes_Vendedores.IdCliente = z.oldIdCliente

update Comisiones_Configuracion set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Comisiones_Configuracion.IdCliente = z.oldIdCliente

update ConciliacionBanc_Cruces set H_IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where ConciliacionBanc_Cruces.H_IdCliente = z.oldIdCliente

update ConciliacionBanc_MovExtracto set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where ConciliacionBanc_MovExtracto.IdCliente = z.oldIdCliente

update Empresas set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Empresas.IdCliente = z.oldIdCliente

EXEC('DISABLE TRIGGER TRG_AuditEnc ON Encabezados')


update Encabezados set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados.IdCliente1 = z.oldIdCliente

update Encabezados set IdCliente2 = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados.IdCliente2 = z.oldIdCliente

update Encabezados set IdClienteVend2 = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados.IdClienteVend2 = z.oldIdCliente

update Encabezados set IdClienteProp = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados.IdClienteProp = z.oldIdCliente

update Encabezados set IdClienteVend = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados.IdClienteVend = z.oldIdCliente


EXEC('ENABLE TRIGGER TRG_AuditEnc ON Encabezados')


update Encabezados_Cierres set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Cierres.IdCliente1 = z.oldIdCliente

update Encabezados_Clientes set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Clientes.IdCliente = z.oldIdCliente

update Encabezados_Cont set IdEmpleado = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Cont.IdEmpleado = z.oldIdCliente

update Encabezados_Cont set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Cont.IdCliente = z.oldIdCliente

update Encabezados_Cont set IdClienteBanco = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Cont.IdClienteBanco = z.oldIdCliente

update Encabezados_Mov set IdVendedor = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Mov.IdVendedor = z.oldIdCliente

update Encabezados_Mov set IdEmpleado = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Mov.IdEmpleado = z.oldIdCliente

update Encabezados_Mov set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_Mov.IdCliente = z.oldIdCliente

update Encabezados_PagoDet_FormasPago set IdClienteBanco = z.newIdCliente 
from #TercerosToUpdate z
where Encabezados_PagoDet_FormasPago.IdClienteBanco = z.oldIdCliente

update Inventarios_ActivosFijos set IdClienteEncargado = z.newIdCliente 
from #TercerosToUpdate z
where Inventarios_ActivosFijos.IdClienteEncargado = z.oldIdCliente

update Inventarios_Bodegas set IdEncargado = z.newIdCliente 
from #TercerosToUpdate z
where Inventarios_Bodegas.IdEncargado = z.oldIdCliente

update Inventarios_Lotes set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Inventarios_Lotes.IdCliente = z.oldIdCliente

update MediosMag_CuentasFormato set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where MediosMag_CuentasFormato.IdCliente = z.oldIdCliente

update Nomina_Comisiones_Configuracion_Empleados set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Nomina_Comisiones_Configuracion_Empleados.IdCliente = z.oldIdCliente

update Nomina_Movimientos set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Nomina_Movimientos.IdCliente = z.oldIdCliente

update Nomina_Notas set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Nomina_Notas.IdCliente = z.oldIdCliente

update Nomina_Retefuente set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Nomina_Retefuente.IdCliente = z.oldIdCliente

update PH_Conjuntos set IdClienteAdmin = z.newIdCliente 
from #TercerosToUpdate z
where PH_Conjuntos.IdClienteAdmin = z.oldIdCliente

update PH_Inmuebles set IdInquilinio = z.newIdCliente 
from #TercerosToUpdate z
where PH_Inmuebles.IdInquilinio = z.oldIdCliente

update PH_Inmuebles set IdPropietario = z.newIdCliente 
from #TercerosToUpdate z
where PH_Inmuebles.IdPropietario = z.oldIdCliente

update PH_Inmuebles set IdCodeudor = z.newIdCliente 
from #TercerosToUpdate z
where PH_Inmuebles.IdCodeudor = z.oldIdCliente

update PH_Inmuebles_Codeudores set IdCodeudor = z.newIdCliente 
from #TercerosToUpdate z
where PH_Inmuebles_Codeudores.IdCodeudor = z.oldIdCliente

update PH_Inmuebles_Inquilinos set IdInquilino = z.newIdCliente 
from #TercerosToUpdate z
where PH_Inmuebles_Inquilinos.IdInquilino = z.oldIdCliente

update PH_Inmuebles_Propietarios set IdPropietario = z.newIdCliente 
from #TercerosToUpdate z
where PH_Inmuebles_Propietarios.IdPropietario = z.oldIdCliente

update Reparacion_Automotores set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Reparacion_Automotores.IdCliente = z.oldIdCliente

update Rips_Encabezados set IdClienteConductor = z.newIdCliente 
from #TercerosToUpdate z
where Rips_Encabezados.IdClienteConductor = z.oldIdCliente

update Rips_Encabezados set IdClienteMedico = z.newIdCliente 
from #TercerosToUpdate z
where Rips_Encabezados.IdClienteMedico = z.oldIdCliente

update Rips_Encabezados set IdClienteEnfermero = z.newIdCliente 
from #TercerosToUpdate z
where Rips_Encabezados.IdClienteEnfermero = z.oldIdCliente

update Rips_Encabezados set IdClienteSolicitante = z.newIdCliente 
from #TercerosToUpdate z
where Rips_Encabezados.IdClienteSolicitante = z.oldIdCliente

update Rips_Encabezados set IdClientePaciente = z.newIdCliente 
from #TercerosToUpdate z
where Rips_Encabezados.IdClientePaciente = z.oldIdCliente

update Rips_Encabezados set IdClienteElaboro = z.newIdCliente 
from #TercerosToUpdate z
where Rips_Encabezados.IdClienteElaboro = z.oldIdCliente

update Tickets set IdResponsable = z.newIdCliente 
from #TercerosToUpdate z
where Tickets.IdResponsable = z.oldIdCliente

update Tickets set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Tickets.IdCliente = z.oldIdCliente

update Tickets_Seguim set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Tickets_Seguim.IdCliente = z.oldIdCliente

update Usuarios set IdCliente = z.newIdCliente 
from #TercerosToUpdate z
where Usuarios.IdCliente = z.oldIdCliente

update Usuarios_Tareas set IdCliente2 = z.newIdCliente 
from #TercerosToUpdate z
where Usuarios_Tareas.IdCliente2 = z.oldIdCliente

update Usuarios_Tareas set IdCliente1 = z.newIdCliente 
from #TercerosToUpdate z
where Usuarios_Tareas.IdCliente1 = z.oldIdCliente


--Borrar los idclientes repetidos y quitar XX- de la identificacion
--//
EXEC('DISABLE TRIGGER TRG_AuditCli ON Clientes')

delete from clientes where idcliente in (select oldIdCliente from #TercerosToUpdate)
update clientes set identificacion = replace(identificacion,'XX-','') from clientes where IdCliente=@IdCliente

EXEC('ENABLE TRIGGER TRG_AuditCli ON Clientes')
--//


  IF @@error <> 0 GOTO ERR_HANDLER
    
    SET @Exito = 1
    RETURN
    
ERR_HANDLER:
  SET @Exito = 0

END
GO
	/*
	Plantilla de script posterior a la implementación							
	--------------------------------------------------------------------------------------
	 Este archivo contiene instrucciones de SQL que se anexarán al script de compilación.		
	 Use la sintaxis de SQLCMD para incluir un archivo en el script posterior a la implementación.			
	 Ejemplo:      :r .\miArchivo.sql								
	 Use la sintaxis de SQLCMD para hacer referencia a una variable en el script posterior a la implementación.		
	 Ejemplo:      :setvar TableName miTabla							
				   SELECT * FROM [$(TableName)]					
	--------------------------------------------------------------------------------------
	*/

	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/VEktwA6fKhE' WHERE IdInterface = 617
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/jLN_aJ-tIUc' WHERE IdInterface = 618
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/10Xzc9Owmxc' WHERE IdInterface = 619
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/Sf9H1f0iZ44' WHERE IdInterface = 620
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/aZk_Cb6ksOs' WHERE IdInterface = 621
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/EDUJ0-LIJUg' WHERE IdInterface = 622
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/K1C6TqcdV4U' WHERE IdInterface = 623
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/f3fMAy37Yu8' WHERE IdInterface = 624
	UPDATE Permisos_Interfaces SET VideoURL = 'https://youtu.be/YFyfLnLm13w' WHERE IdInterface = 667
GO

	update clientes set CodigoInterno = 'CCF36' where idcliente = 39 
GO

	--Crear EPS COMFAORIENTE
	[Ziur_CrearClienteDeSistema]
	@IdCliente = 294,
	@IdEstablec = 1,
	@CliIdTipoIdent = 31, 
	@CliIdentificacion = '890500675',
	@CliDVCliente = '6',
	@CliIdCiudad = 54418,
	@CliCodInterno = 'CCF050',
	@CliNombre1 = 'COMFAORIENTE',
	@CliNota = 'EPS',
	@CliIdLista = 1,
	@CliAsociacion = '22,8',
	@DirDireccion = 'Avenida 2 No. 13 - 75 Barrio La Playa',
	@DirDireccionFormato1 = 'AV 2 13 - 75 BRR la playa',
	@DirDireccionFormato2 = 'AV 2 13 - 75 BRR la playa ',
	@DirTelefonos = '5713404, 5713732, 5711863, 5836888, 5836890, 5836726',
	@DirCelular = NULL,
	@DirEMail = NULL,
	@DirIdCiudad = 54418,
	@DirCodigoPostal = NULL
GO

GO
PRINT N'Update complete.';

--Actualizar datos de la version
INSERT INTO ZiurVersiones (IdVersion, NumVersion, Descripcion)
VALUES (326,916,'Correcciones en Radian y Nomina')
GO

COMMIT
GO
