SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_0] 
   @idRegistro as bigint, 
   @idRegistro_Aux_Long1 as bigint, 
   @idRegistro_Aux_Long2 as bigint, 
   @idRegistro_Aux_Long3 as bigint, 
   @idRegistro_Aux_String1 as varchar(255), 
   @idRegistro_Aux_String2 as varchar(255), 
   @idRegistro_Aux_DateTime1 as datetime, 
   @idRegistro_Aux_DateTime2 as datetime, 
   @tabla varchar(50), 
   @idTerminal as bigint, 
   @desasignar as bit = 0 
 AS 
 BEGIN 
   SET NOCOUNT ON; 
   DECLARE @id_TablaSincronizacion as bigint 
   DECLARE @tipoAccion as varchar(1) 
   DECLARE @orden as int=0 
 
   -- Buscar el Orden de la Tabla para poner a Bajar.......................... 
   SELECT @orden = orden 
   FROM CRMB_RegistrosSincronizacionOrden 
   WHERE tabla = @tabla 
   --......................................................................... 
 
   -- Buscar registro en la tabla de Sincronizacion para saber que fechaActualizacion......... 
   SELECT @id_TablaSincronizacion = id, @tipoAccion = tipoAccion 
   FROM CRMB_RegistrosSincronizacion 
   WHERE   tabla = @tabla and 
           idTerminal = @idTerminal and 
           isnull(idRegistro,-1) = isnull(@idRegistro, -1) AND 
           isnull(idRegistro_Aux_Long1,-1)=isnull(@idRegistro_Aux_Long1,  -1) and 
           isnull(idRegistro_Aux_Long2,-1)=isnull(@idRegistro_Aux_Long2,  -1) and 
           isnull(idRegistro_Aux_Long3,-1)=isnull(@idRegistro_Aux_Long3,  -1) and 
           isnull(idRegistro_Aux_String1,'')=isnull(@idRegistro_Aux_String1,  '') and 
           isnull(idRegistro_Aux_String2,'')=isnull(@idRegistro_Aux_String2 ,  '') and 
           isnull(idRegistro_Aux_DateTime1,'01/01/1900')=isnull(@idRegistro_Aux_DateTime1,  '01/01/1900') and 
           isnull(idRegistro_Aux_DateTime2,'01/01/1900')=isnull(@idRegistro_Aux_DateTime2,  '01/01/1900')  
   -- ........................................................................................ 
 
   -- No existe en la tabla de Sincronizacion se inserta 
   IF(@id_TablaSincronizacion IS NULL or @id_TablaSincronizacion<0) 
 
       BEGIN	 
       -- Si era para desasignar y no existia, no se inserta nada 
           IF @desasignar = 0 
               BEGIN 
                   INSERT INTO CRMB_RegistrosSincronizacion 
                       (idRegistro, 
                       idRegistro_Aux_Long1, 
                       idRegistro_Aux_Long2, 
                       idRegistro_Aux_Long3, 
                       idRegistro_Aux_String1, 
                       idRegistro_Aux_String2, 
                       idRegistro_Aux_DateTime1, 
                       idRegistro_Aux_DateTime2, 
                       tabla, 
                       idTerminal, 
                       tipoAccion, 
                        orden) 
                   VALUES(@idRegistro, 
                       @idRegistro_Aux_Long1, 
                       @idRegistro_Aux_Long2, 
                       @idRegistro_Aux_Long3, 
                       @idRegistro_Aux_String1, 
                       @idRegistro_Aux_String2, 
                       @idRegistro_Aux_DateTime1, 
                       @idRegistro_Aux_DateTime2, 
                       @tabla, 
                       @idTerminal, 
                       '1', 
                       @orden) 
               END 
       END 
   ELSE 
       BEGIN 
 
           DECLARE @tipoAccion_Final varchar(1) 
           SET @tipoAccion_Final = '1'-- Por defecto se pone a insertar/actualizar 
 
           -- Si el tipoAccion era 2 anteriormente o es para desasignar se poner el tipoAccion=2(Borrar) 
           IF @desasignar = 1 or @tipoAccion = '2' 
               SET @tipoAccion_Final = '2' 
 
           UPDATE CRMB_RegistrosSincronizacion 
           SET tipoAccion = @tipoAccion_Final 
           WHERE id = @id_TablaSincronizacion 
 
 
       END 
 END 
SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_0_TodosLosTerminales]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_0_TodosLosTerminales] 
   @idRegistro as bigint,  
   @tabla varchar(50),  
   @borrado as bit=0  
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRMB_RegistrosSincronizacion CURSOR FOR  
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion  
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRMB_RegistrosSincronizacion  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRMB_RegistrosSincronizacion INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
       BEGIN  
           -- Si la variable borrado esta a 1, se desasigna 
           IF @borrado = 1 
               BEGIN 
                   EXEC P_CRM_Sincronizar_UnRegistro_0 @idRegistro,null,null,null,null,null,null,null, @tabla, @idTerminal,1  
               END 
           ELSE 
               BEGIN 
                   EXEC P_CRM_Sincronizar_UnRegistro_0 @idRegistro,null,null,null,null,null,null,null, @tabla, @idTerminal,0  
           END 
   FETCH NEXT FROM CURSOR_CRMB_RegistrosSincronizacion INTO @idTerminal 
 END   
 
 --Liberar Cursor 
 DEALLOCATE CURSOR_CRMB_RegistrosSincronizacion 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_CRM_ClientesPotenciales]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_CRM_ClientesPotenciales] 
   @idClientePotencial as bigint,  
   @idTerminal as bigint,  
   @desasignar as bit = 0 
 AS 
 BEGIN 
   SET NOCOUNT ON;  
 
   DECLARE @id_TablaSincronizacion as bigint 
   DECLARE @tipoAccion as varchar(1) 
   DECLARE @orden as int=0  
 
   -- Buscar el Orden de la Tabla para poner a Bajar.......................... 
   SELECT @orden = orden 
   FROM CRMB_RegistrosSincronizacionOrden 
   WHERE tabla = 'CRM_ClientesPotenciales' 
   --......................................................................... 
 
   -- Buscar registro en la tabla de Sincronizacion para saber que fechaActualiacion......... 
   SELECT @id_TablaSincronizacion = id, @tipoAccion = tipoAccion 
   FROM CRMB_RegistrosSincronizacion 
   WHERE tabla = 'CRM_ClientesPotenciales' and idRegistro = @idClientePotencial and idTerminal = @idTerminal 
   --........................................................................................ 
 
   -- No existe en la tabla de Sincronizacion se inserta 
   IF (@id_TablaSincronizacion IS NULL or @id_TablaSincronizacion<0) 
       BEGIN	  
           -- Si era para desasignar y no existia, no se inserta nada 
           IF @desasignar = 0 
               BEGIN 
                   INSERT INTO CRMB_RegistrosSincronizacion 
                       (idRegistro, tabla, idTerminal, tipoAccion, orden) 
                   VALUES(@idClientePotencial, 'CRM_ClientesPotenciales', @idTerminal, '1', @orden) 
               END 
       END 
   ELSE 
       BEGIN 
           DECLARE @tipoAccion_Final varchar(1) 
           SET @tipoAccion_Final = '1'-- Por defecto se pone a insertar/actualizar  
 
           -- Si el tipoAccion era 2 anteriormente o es para desasignar se poner el tipoAccion=2(Borrar)  
           IF @desasignar = 1 or @tipoAccion = '2' 
               SET @tipoAccion_Final = '2' 
 
           UPDATE CRMB_RegistrosSincronizacion 
           SET tipoAccion = @tipoAccion_Final 
           WHERE id = @id_TablaSincronizacion 
       END  
 
 
   --Actualizar relaciones si hiciera falta  
   --MAE_Contactos 
   EXEC P_CRM_Sincronizar_VariosRegistros_MAE_Contactos @idTerminal, @idClientePotencial, @desasignar 
 END  

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_CRM_Encuestas]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_CRM_Encuestas] 
   @idEncuesta as bigint, 
   @idTerminal as bigint,  
   @desasignar as bit = 0 
 AS 
 BEGIN 
 
   SET NOCOUNT ON;  
 
   DECLARE @id_TablaSincronizacion as bigint 
   DECLARE @tipoAccion as varchar(1) 
   DECLARE @orden as int=0  
 
   -- Buscar el Orden de la Tabla para poner a Bajar.......................... 
   SELECT @orden = orden 
   FROM CRMB_RegistrosSincronizacionOrden 
   WHERE tabla = 'CRM_Encuestas' 
   --......................................................................... 
 
   -- Buscar registro en la tabla de Sincronizacion para saber que fechaActualiacion......... 
   SELECT @id_TablaSincronizacion = id, @tipoAccion = tipoAccion 
   FROM CRMB_RegistrosSincronizacion 
   WHERE tabla = 'CRM_Encuestas' and idRegistro = @idEncuesta and idTerminal = @idTerminal 
   --........................................................................................ 
 
   -- No existe en la tabla de Sincronizacion se inserta 
   IF (@id_TablaSincronizacion IS NULL or @id_TablaSincronizacion<0) 
       BEGIN	  
           -- Si era para desasignar y no existia, no se inserta nada 
           IF @desasignar = 0 
               BEGIN 
                   INSERT INTO CRMB_RegistrosSincronizacion 
                       (idRegistro, tabla, idTerminal, tipoAccion, orden) 
                   VALUES(@idEncuesta, 'CRM_Encuestas', @idTerminal, '1', @orden) 
               END 
       END 
   ELSE 
       BEGIN 
           DECLARE @tipoAccion_Final varchar(1) 
           SET @tipoAccion_Final = '1'-- Por defecto se pone a insertar/actualizar  
 
           -- Si el tipoAccion era 2 anteriormente o es para desasignar se poner el tipoAccion=2(Borrar)  
           IF @desasignar = 1 or @tipoAccion = '2' 
               SET @tipoAccion_Final = '2' 
 
           UPDATE CRMB_RegistrosSincronizacion 
               SET tipoAccion = @tipoAccion_Final 
           WHERE id = @id_TablaSincronizacion 
       END  
 
   --Actualizar relaciones si hiciera falta  
   --CRM_EncuestasPreguntas 
   EXEC P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasPreguntas @idTerminal, @idEncuesta, @desasignar 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_CRM_Terminales]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_CRM_Terminales] 
   @idTerminal as bigint, 
   @desasignar as bit = 0 
 AS 
 BEGIN 
   SET NOCOUNT ON; 
 
   DECLARE @id_TablaSincronizacion as bigint 
   DECLARE @tipoAccion as varchar(1) 
   DECLARE @orden as int=0 
 
   -- Buscar el Orden de la Tabla para poner a Bajar.......................... 
   SELECT @orden = orden 
   FROM CRMB_RegistrosSincronizacionOrden 
   WHERE tabla = 'CRM_Terminales' 
   --......................................................................... 
 
   -- Buscar registro en la tabla de Sincronizacion para saber que fechaActualiacion......... 
   SELECT @id_TablaSincronizacion = id, @tipoAccion = tipoAccion 
   FROM CRMB_RegistrosSincronizacion 
   WHERE tabla = 'CRM_Terminales' and idRegistro = @idTerminal 
 --........................................................................................ 
 
   -- No existe en la tabla de Sincronizacion se inserta 
   IF (@id_TablaSincronizacion IS NULL or @id_TablaSincronizacion<0) 
       BEGIN	 
           -- Si era para desasignar y no existia, no se inserta nada 
           IF @desasignar = 0 
               BEGIN 
                   INSERT INTO CRMB_RegistrosSincronizacion 
                       (idRegistro, tabla, idTerminal, tipoAccion, orden) 
                   VALUES(@idTerminal, 'CRM_Terminales', @idTerminal, '1', @orden) 
               END 
       END 
   ELSE 
       BEGIN 
           DECLARE @tipoAccion_Final varchar(1) 
           SET @tipoAccion_Final = '1'-- Por defecto se pone a insertar/actualizar 
 
           -- Si el tipoAccion era 2 anteriormente o es para desasignar se poner el tipoAccion=2(Borrar) 
           IF @desasignar = 1 or @tipoAccion = '2' 
               SET @tipoAccion_Final = '2' 
 
           UPDATE CRMB_RegistrosSincronizacion 
               SET tipoAccion = @tipoAccion_Final 
           WHERE id = @id_TablaSincronizacion 
       END  
 
   --Actualizar relaciones si hiciera falta 
   IF @desasignar = 0  
       BEGIN  
           --Consulta que obtiene los ids del Terminal 
           declare @idEmpleado bigint 
           SELECT @idEmpleado = idEmpleado FROM CRM_Terminales WHERE id = @idTerminal 
           -- MAE_EMPLEADOS................................................ 
           IF @idEmpleado is not null and @idEmpleado >0  
               --Si no existe en la tabla de sincronizacion 
               IF NOT EXISTS(  SELECT id 
                               FROM CRMB_RegistrosSincronizacion 
                               WHERE tabla = 'MAE_Empleados' and idRegistro = @idEmpleado) 
                   BEGIN 
                       EXEC P_CRM_Sincronizar_UnRegistro_0 @idEmpleado,null,null,null,null,null,null,null,'MAE_Empleados', @idTerminal,0 
                   END 
           -- .............................................................................	 
 
           --CRM_ClientesPotenciales_Terminales 
           EXEC P_CRM_Sincronizar_VariosRegistros_CRM_ClientesPotenciales_Terminales @idTerminal 
           --CRM_Terminales_Encuestas 
           EXEC P_CRM_Sincronizar_VariosRegistros_CRM_Terminales_Encuestas @idTerminal 
           --CRM_Terminales_Provincias 
           EXEC P_CRM_Sincronizar_VariosRegistros_CRM_Terminales_Provincias @idTerminal 
 
       END 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_GEN_Provincias]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_GEN_Provincias] 
   @idProvincia as bigint, 
   @idTerminal as bigint,   
   @desasignar as bit = 0  
 AS 
 BEGIN 
 
   SET NOCOUNT ON;   
 
   DECLARE @id_TablaSincronizacion as bigint 
   DECLARE @tipoAccion as varchar(1) 
   DECLARE @orden as int=0   
 
   -- Buscar el Orden de la Tabla para poner a Bajar.......................... 
   SELECT @orden = orden 
   FROM CRMB_RegistrosSincronizacionOrden 
   WHERE tabla = 'GEN_Provincias' 
   --......................................................................... 
 
   -- Buscar registro en la tabla de Sincronizacion para saber que fechaActualiacion......... 
   SELECT @id_TablaSincronizacion = id, @tipoAccion = tipoAccion 
   FROM CRMB_RegistrosSincronizacion 
   WHERE tabla = 'GEN_Provincias' and idRegistro = @idProvincia and idTerminal = @idTerminal 
   --........................................................................................ 
 
   -- No existe en la tabla de Sincronizacion se inserta 
   IF (@id_TablaSincronizacion IS NULL or @id_TablaSincronizacion<0) 
       BEGIN	   
           -- Si era para desasignar y no existia, no se inserta nada 
           IF @desasignar = 0 
               BEGIN 
                   INSERT INTO CRMB_RegistrosSincronizacion 
                       (idRegistro, tabla, idTerminal, tipoAccion, orden) 
                   VALUES(@idProvincia, 'GEN_Provincias', @idTerminal, '1', @orden) 
               END 
       END 
   ELSE 
       BEGIN 
           DECLARE @tipoAccion_Final varchar(1) 
           SET @tipoAccion_Final = '1'-- Por defecto se pone a insertar/actualizar   
           -- Si el tipoAccion era 2 anteriormente o es para desasignar se poner el tipoAccion=2(Borrar)   
           IF @desasignar = 1 or @tipoAccion = '2' 
               SET @tipoAccion_Final = '2' 
 
           UPDATE CRMB_RegistrosSincronizacion 
               SET tipoAccion = @tipoAccion_Final 
           WHERE id = @id_TablaSincronizacion 
       END   
 
   --Actualizar relaciones si hiciera falta  
   --GEN_Municipios 
   EXEC P_CRM_Sincronizar_VariosRegistros_GEN_Municipios @idTerminal, @idProvincia, @desasignar 
 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_MAE_Contactos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE[dbo].[P_CRM_Sincronizar_UnRegistro_1_MAE_Contactos] 
   @idContacto as bigint, 
   @idTerminal as bigint, 
   @desasignar as bit = 0 
 AS 
 BEGIN 
  
     SET NOCOUNT ON; 
  
     DECLARE @id_TablaSincronizacion as bigint 
     DECLARE @tipoAccion as varchar(1) 
     DECLARE @orden as int=0 
  
 	 -- Buscar el Orden de la Tabla para poner a Bajar.......................... 
    SELECT @orden = orden 
    FROM CRMB_RegistrosSincronizacionOrden 
    WHERE tabla = 'MAE_Contactos' 
     --......................................................................... 
  
   -- Buscar registro en la tabla de Sincronizacion......... 
   SELECT @id_TablaSincronizacion = id, @tipoAccion = tipoAccion 
   FROM CRMB_RegistrosSincronizacion 
   WHERE tabla = 'MAE_Contactos' and idRegistro = @idContacto and idTerminal = @idTerminal 
   --........................................................................................ 
  
   -- No existe en la tabla de Sincronizacion se inserta 
   IF (@id_TablaSincronizacion IS NULL or @id_TablaSincronizacion<0) 
       BEGIN	 
           -- Si era para desasignar y no existia, no se inserta nada 
           IF @desasignar = 0 
               BEGIN 
                   INSERT INTO CRMB_RegistrosSincronizacion 
                   (idRegistro, tabla, idTerminal, tipoAccion, orden) 
                   VALUES(@idContacto, 'MAE_Contactos', @idTerminal, '1', @orden) 
               END 
       END 
   ELSE 
       BEGIN  
           DECLARE @tipoAccion_Final varchar(1) 
           SET @tipoAccion_Final = '1'-- Por defecto se pone a insertar/actualizar  
           -- Si el tipoAccion era 2 anteriormente o es para desasignar se poner el tipoAccion=2(Borrar)  
  
           IF @desasignar = 1 or @tipoAccion = '2' 
               SET @tipoAccion_Final = '2' 
  
           UPDATE CRMB_RegistrosSincronizacion 
           SET tipoAccion = @tipoAccion_Final 
           WHERE id = @id_TablaSincronizacion 
       END   
  
 --Actualizar relaciones si hiciera falta  
 --MAE_ContactosEmails 
 EXEC P_CRM_Sincronizar_VariosRegistros_MAE_ContactosEmails @idTerminal, @idContacto, @desasignar  
 --MAE_ContactosTelefonos 
 EXEC P_CRM_Sincronizar_VariosRegistros_MAE_ContactosTelefonos @idTerminal, @idContacto, @desasignar 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_CRM_ClientesPotenciales]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_CRM_ClientesPotenciales] 
   @idClientePotencial as bigint, 
   @borrado as bit=0  
 AS 
 BEGIN  
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_ClientesPotenciales_TodosLosTerminales CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRM_ClientesPotenciales_Terminales 
   WHERE idClientePotencial=@idClientePotencial  
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_CRM_ClientesPotenciales_TodosLosTerminales  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_ClientesPotenciales_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
       BEGIN  
 
           --Si la variable borrado esta a 1, se desasigna 
           IF @borrado = 1 
               BEGIN 
                   EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_ClientesPotenciales @idClientePotencial, @idTerminal,1 
               END 
           ELSE 
               BEGIN 
                   EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_ClientesPotenciales @idClientePotencial, @idTerminal,0  
               END  
           -- .............................................................................  
       FETCH NEXT FROM CURSOR_CRM_ClientesPotenciales_TodosLosTerminales INTO @idTerminal 
       END   
 
 --Liberar Cursor 
 DEALLOCATE CURSOR_CRM_ClientesPotenciales_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_CRM_Encuestas]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_CRM_Encuestas] 
   @idRegistro as bigint,  
   @borrado as bit=0  
 AS 
 BEGIN  
 
 -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
 DECLARE CURSOR_CRMB_RegistrosSincronizacion_CRM_Encuestas CURSOR FOR 
 
 --Consulta para el Cursor 
 SELECT distinct idTerminal 
 FROM CRMB_RegistrosSincronizacion  
 
 -- Variables que rellena el Cursor 
 DECLARE @idTerminal bigint  
 
 --Se abre el Cursor 
 OPEN CURSOR_CRMB_RegistrosSincronizacion_CRM_Encuestas  
 -- Recorrer Registros del Cursor 
 FETCH NEXT FROM CURSOR_CRMB_RegistrosSincronizacion_CRM_Encuestas INTO @idTerminal  
 --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
 WHILE @@fetch_status = 0  
 BEGIN  
   -- Si la variable borrado esta a 1, se desasigna 
   IF @borrado = 1  
       BEGIN 
           EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_Encuestas @idRegistro, @idTerminal,1 
       END 
   ELSE 
       BEGIN 
           EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_Encuestas @idRegistro, @idTerminal,0 
       END 
 FETCH NEXT FROM CURSOR_CRMB_RegistrosSincronizacion_CRM_Encuestas INTO @idTerminal 
 END   
 
 --Liberar Cursor 
 DEALLOCATE CURSOR_CRMB_RegistrosSincronizacion_CRM_Encuestas 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_CRM_MotivosNoVisita]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_CRM_MotivosNoVisita] 
    @idMotivoNoVisita as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_MotivosNoVisita_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion    
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_CRM_MotivosNoVisita_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_MotivosNoVisita_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idMotivoNoVisita,null,null,null,null,null,null,null,'CRM_MotivosNoVisita', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idMotivoNoVisita,null,null,null,null,null,null,null,'CRM_MotivosNoVisita', @idTerminal,0  
       END   
   -- .............................................................................   
   FETCH NEXT FROM CURSOR_CRM_MotivosNoVisita_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_MotivosNoVisita_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Municipios]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Municipios] 
    @idMunicipio as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Municipios_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor insertar/actualizar
       SELECT distinct idTerminal 
       FROM CRMB_RegistrosSincronizacion    
       WHERE idTerminal in  
                   ( 
 	                    SELECT distinct idTerminal 
                       FROM CRM_Terminales_Provincias 
                       INNER JOIN GEN_Municipios on CRM_Terminales_Provincias.idProvincia=GEN_Municipios.idProvincia 
                       WHERE GEN_Municipios.id=@idMunicipio 
                   ) 
       and  @borrado=0
  UNION ALL 
       --Consulta para el Cursor borrar
       SELECT distinct idTerminal 
       FROM CRMB_RegistrosSincronizacion 
       WHERE   @borrado=1 
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Municipios_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Municipios_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idMunicipio,null,null,null,null,null,null,null,'GEN_Municipios', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idMunicipio,null,null,null,null,null,null,null,'GEN_Municipios', @idTerminal,0  
       END   
       -- .............................................................................   
   FETCH NEXT FROM CURSOR_GEN_Municipios_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Municipios_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Paises]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Paises] 
    @idPaises as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Paises_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion    
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Paises_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Paises_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idPaises,null,null,null,null,null,null,null,'GEN_Paises', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idPaises,null,null,null,null,null,null,null,'GEN_Paises', @idTerminal,0  
       END   
   -- .............................................................................   
   FETCH NEXT FROM CURSOR_GEN_Paises_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Paises_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Poblaciones]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Poblaciones] 
    @idPoblacion as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Poblaciones_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor insertar/actualizar
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion    
   WHERE idTerminal in  
   ( 
 	    SELECT distinct idTerminal 
       FROM CRM_Terminales_Provincias 
       INNER JOIN GEN_Municipios on CRM_Terminales_Provincias.idProvincia=GEN_Municipios.idProvincia 
       INNER JOIN GEN_Poblaciones on GEN_Poblaciones.idMunicipio=GEN_Municipios.id 
       WHERE GEN_Poblaciones.id=@idPoblacion 
   ) 
       and  @borrado=0
  UNION ALL 
       --Consulta para el Cursor borrar
       SELECT distinct idTerminal 
       FROM CRMB_RegistrosSincronizacion 
       WHERE @borrado=1 
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Poblaciones_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Poblaciones_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idPoblacion,null,null,null,null,null,null,null,'GEN_Poblaciones', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idPoblacion,null,null,null,null,null,null,null,'GEN_Poblaciones', @idTerminal,0  
       END   
       -- .............................................................................   
   FETCH NEXT FROM CURSOR_GEN_Poblaciones_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Poblaciones_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Provincias]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_GEN_Provincias] 
    @idProvincia as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Provincias_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion    
   WHERE idTerminal in  
   ( 
 	    SELECT distinct idTerminal 
       FROM CRM_Terminales_Provincias 
       WHERE idProvincia=@idProvincia 
   ) 
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Provincias_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Provincias_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idProvincia,null,null,null,null,null,null,null,'GEN_Provincias', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idProvincia,null,null,null,null,null,null,null,'GEN_Provincias', @idTerminal,0  
       END   
       -- .............................................................................   
   FETCH NEXT FROM CURSOR_GEN_Provincias_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Provincias_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_Contactos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_Contactos] 
   @idContacto as bigint , 
   @idClientePotencial as bigint, 
   @borrado as bit=0  
 AS 
 BEGIN   
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_Contactos_TodosLosTerminales CURSOR FOR   
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRM_ClientesPotenciales_Terminales 
   WHERE idClientePotencial=@idClientePotencial  
    
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint   
   --Se abre el Cursor 
   OPEN CURSOR_MAE_Contactos_TodosLosTerminales   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_Contactos_TodosLosTerminales INTO @idTerminal   
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
       BEGIN   
  
       --Si la variables borrado esta a 1, se desasigna 
           IF @borrado = 1 
               BEGIN 
                   EXEC P_CRM_Sincronizar_UnRegistro_1_MAE_Contactos @idContacto, @idTerminal,1 
               END 
           ELSE 
               BEGIN 
                   EXEC P_CRM_Sincronizar_UnRegistro_1_MAE_Contactos @idContacto, @idTerminal,0  
               END  
 -- .............................................................................  
  
   FETCH NEXT FROM CURSOR_MAE_Contactos_TodosLosTerminales INTO @idTerminal 
  
 END 
 --Liberar Cursor 
 DEALLOCATE CURSOR_MAE_Contactos_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_Empleados]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_Empleados] 
    @idEmpleado as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_Empleados_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion    
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_MAE_Empleados_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_Empleados_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idEmpleado,null,null,null,null,null,null,null,'MAE_Empleados', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idEmpleado,null,null,null,null,null,null,null,'MAE_Empleados', @idTerminal,0  
       END   
   -- .............................................................................   
   FETCH NEXT FROM CURSOR_MAE_Empleados_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_Empleados_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_TelefonosTipos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_TelefonosTipos] 
    @idTelefonoTipo as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_TelefonosTipos_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion    
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_MAE_TelefonosTipos_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_TelefonosTipos_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idTelefonoTipo,null,null,null,null,null,null,null,'MAE_TelefonosTipos', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idTelefonoTipo,null,null,null,null,null,null,null,'MAE_TelefonosTipos', @idTerminal,0  
       END   
   -- .............................................................................   
   FETCH NEXT FROM CURSOR_MAE_TelefonosTipos_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_TelefonosTipos_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_Vehiculos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_UnRegistro_1_TodosLosTerminales_MAE_Vehiculos] 
   @idVehiculo as bigint ,  
    @borrado as bit=0   
 AS 
 BEGIN    
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_Vehiculos_TodosLosTerminales CURSOR FOR    
 
   --Consulta para el Cursor 
   SELECT distinct idTerminal 
   FROM CRMB_RegistrosSincronizacion    
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal bigint    
 
   --Se abre el Cursor 
   OPEN CURSOR_MAE_Vehiculos_TodosLosTerminales    
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_Vehiculos_TodosLosTerminales INTO @idTerminal  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0    
   BEGIN    
       --Si la variables borrado esta a 1, se desasigna 
       IF @borrado = 1  
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idVehiculo,null,null,null,null,null,null,null,'MAE_Vehiculos', @idTerminal,1  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idVehiculo,null,null,null,null,null,null,null,'MAE_Vehiculos', @idTerminal,0  
       END   
   -- .............................................................................   
   FETCH NEXT FROM CURSOR_MAE_Vehiculos_TodosLosTerminales INTO @idTerminal 
   END  
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_Vehiculos_TodosLosTerminales 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_ClientesPotenciales_Terminales]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_ClientesPotenciales_Terminales] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_ClientesPotenciales_Terminales CURSOR FOR   
 
   --Consulta para el Cursor 
   SELECT distinct idClientePotencial 
   FROM CRM_ClientesPotenciales_Terminales 
   WHERE idTerminal=@idTerminal  
 
   -- Variables que rellena el Cursor 
   DECLARE @idClientePotencial bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_CRM_ClientesPotenciales_Terminales  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_ClientesPotenciales_Terminales INTO @idClientePotencial 
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN  
       --Si no existe en la tabla de sincronizacion CRM_ClientesPotenciales_Terminales se inserta 
       IF NOT EXISTS(  SELECT id 
                       FROM CRMB_RegistrosSincronizacion 
                       WHERE tabla = 'CRM_ClientesPotenciales_Terminales' and idRegistro = @idClientePotencial and idRegistro_Aux_Long1 = @idTerminal) 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idClientePotencial, @idTerminal,null,null,null,null,null,null,'CRM_ClientesPotenciales_Terminales', @idTerminal,0  
           END  
 
       -- Actualizar ClienstesPotenciales................................................ 
       --Si no existe en la tabla de sincronizacion se inserta 
       IF NOT EXISTS (	SELECT id 
                       FROM CRMB_RegistrosSincronizacion 
                       WHERE tabla = 'CRM_ClientesPotenciales' and idRegistro = @idClientePotencial and idTerminal = @idTerminal) 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_ClientesPotenciales @idClientePotencial, @idTerminal,0 
           END  
       -- .............................................................................  
   FETCH NEXT FROM CURSOR_CRM_ClientesPotenciales_Terminales INTO @idClientePotencial 
   END   
 
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_ClientesPotenciales_Terminales  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_CRM_ClientesPotenciales_Terminales_BORRAR CURSOR FOR  
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro, CRMB_RegistrosSincronizacion.idRegistro_Aux_Long1 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN CRM_ClientesPotenciales_Terminales on CRMB_RegistrosSincronizacion.idRegistro= CRM_ClientesPotenciales_Terminales.idClientePotencial AND 
               CRMB_RegistrosSincronizacion.idRegistro_Aux_Long1= CRM_ClientesPotenciales_Terminales.idTerminal 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'CRM_ClientesPotenciales_Terminales' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (CRM_ClientesPotenciales_Terminales.idTerminal is null) 
 
   -- Variables que rellena el Cursor 
   DECLARE @idClientePotencial_Borrar bigint 
   DECLARE @idTerminal_Borrar bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_CRM_ClientesPotenciales_Terminales_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_ClientesPotenciales_Terminales_BORRAR INTO @idClientePotencial_Borrar, @idTerminal_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @idClientePotencial_Borrar, @idTerminal_Borrar,null,null,null,null,null,null,'CRM_ClientesPotenciales_Terminales', @idTerminal,1 
       --ClienstesPotenciales 
       EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_ClientesPotenciales @idClientePotencial_Borrar, @idTerminal,1 
   FETCH NEXT FROM CURSOR_CRM_ClientesPotenciales_Terminales_BORRAR INTO @idClientePotencial_Borrar, @idTerminal_Borrar 
   END   
 
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_ClientesPotenciales_Terminales_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasPreguntas]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasPreguntas] 
   @idTerminal as bigint,  
   @idEncuesta as bigint,  
   @desasignar as bit = 0  
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_EncuestasPreguntas CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM CRM_EncuestasPreguntas 
   WHERE idEncuesta=@idEncuesta  
 
   -- Variables que rellena el Cursor 
   DECLARE @id bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRM_EncuestasPreguntas  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_EncuestasPreguntas INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN  
       --Actualizar 
       IF @desasignar = 0   
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'CRM_EncuestasPreguntas', @idTerminal,0 
 
               --Encuestas Respuestas 
               EXEC P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasRespuestas @idTerminal,@id,0  
           END	  
       --Borrar 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'CRM_EncuestasPreguntas', @idTerminal,1 
 
               --Encuestas Respuestas 
               EXEC P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasRespuestas @idTerminal,@id,1  
           END 
   FETCH NEXT FROM CURSOR_CRM_EncuestasPreguntas INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_EncuestasPreguntas  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_CRM_EncuestasPreguntas_BORRAR CURSOR FOR  
   --Consulta para el Cursor 
 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN CRM_EncuestasPreguntas on CRMB_RegistrosSincronizacion.idRegistro= CRM_EncuestasPreguntas.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'CRM_EncuestasPreguntas' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (CRM_EncuestasPreguntas.id is null OR not CRM_EncuestasPreguntas.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRM_EncuestasPreguntas_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_EncuestasPreguntas_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'CRM_EncuestasPreguntas', @idTerminal,1  
 
       --Encuestas Respuestas 
       EXEC P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasRespuestas @idTerminal,@id,1 
   FETCH NEXT FROM CURSOR_CRM_EncuestasPreguntas_BORRAR INTO @id_Borrar 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_EncuestasPreguntas_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasRespuestas]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_EncuestasRespuestas] 
   @idTerminal as bigint,  
   @idEncuestaPregunta as bigint,  
   @desasignar as bit = 0  
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_EncuestasRespuestas CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM CRM_EncuestasRespuestas 
   WHERE idEncuestaPregunta=@idEncuestaPregunta AND fechaBorrado IS NULL  
 
   -- Variables que rellena el Cursor 
   DECLARE @id bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRM_EncuestasRespuestas  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_EncuestasRespuestas INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       IF @desasignar = 0   
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'CRM_EncuestasRespuestas', @idTerminal,0  
           END 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'CRM_EncuestasRespuestas', @idTerminal,1  
       END 
   FETCH NEXT FROM CURSOR_CRM_EncuestasRespuestas INTO @id 
   END   
 
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_EncuestasRespuestas  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_CRM_EncuestasRespuestas_BORRAR CURSOR FOR   
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN CRM_EncuestasRespuestas on CRMB_RegistrosSincronizacion.idRegistro= CRM_EncuestasRespuestas.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'CRM_EncuestasRespuestas' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (CRM_EncuestasRespuestas.id is null OR not CRM_EncuestasRespuestas.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRM_EncuestasRespuestas_BORRAR 
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_EncuestasRespuestas_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'CRM_EncuestasRespuestas', @idTerminal,1  
   FETCH NEXT FROM CURSOR_CRM_EncuestasRespuestas_BORRAR INTO @id_Borrar 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_EncuestasRespuestas_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_MotivosNoVisita]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_MotivosNoVisita] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_MotivosNoVisita CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM CRM_MotivosNoVisita 
   WHERE fechaBorrado is null  
 
   -- Variables que rellena el Cursor 
     DECLARE @id bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_CRM_MotivosNoVisita  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_MotivosNoVisita INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'CRM_MotivosNoVisita', @idTerminal,0  
   FETCH NEXT FROM CURSOR_CRM_MotivosNoVisita INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_MotivosNoVisita  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_CRM_MotivosNoVisita_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN CRM_MotivosNoVisita on CRMB_RegistrosSincronizacion.idRegistro= CRM_MotivosNoVisita.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'CRM_MotivosNoVisita' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (CRM_MotivosNoVisita.id is null OR not CRM_MotivosNoVisita.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint   
   --Se abre el Cursor 
   OPEN CURSOR_CRM_MotivosNoVisita_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_MotivosNoVisita_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'CRM_MotivosNoVisita', @idTerminal,1   
   FETCH NEXT FROM CURSOR_CRM_MotivosNoVisita_BORRAR INTO @id_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_MotivosNoVisita_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_Terminales_Encuestas]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_Terminales_Encuestas] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_Terminales_Encuestas CURSOR FOR 
 
   --Consulta para el Cursor 
   SELECT distinct idEncuesta 
   FROM CRM_Terminales_Encuestas 
   WHERE idTerminal=@idTerminal  
 
   -- Variables que rellena el Cursor 
   DECLARE @idEncuesta bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRM_Terminales_Encuestas  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_Terminales_Encuestas INTO @idEncuesta  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN  
       --Si no existe en la tabla de sincronizacion CRM_ClientesPotenciales_Terminales se inserta 
       IF NOT EXISTS(  SELECT id 
                       FROM CRMB_RegistrosSincronizacion 
                       WHERE tabla = 'CRM_Terminales_Encuestas' and idRegistro = @idTerminal and idRegistro_Aux_Long1 = @idEncuesta) 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @idTerminal, @idEncuesta,null,null,null,null,null,null,'CRM_Terminales_Encuestas', @idTerminal,0 
           END  
 
       -- Actualizar Encuestas................................................ 
       --Si no existe en la tabla de sincronizacion se inserta 
       IF NOT EXISTS ( SELECT id 
                       FROM CRMB_RegistrosSincronizacion 
                       WHERE tabla = 'CRM_Encuestas' and idRegistro = @idEncuesta and idTerminal = @idTerminal) 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_Encuestas @idEncuesta, @idTerminal,0  
           END  
       -- .............................................................................   
   FETCH NEXT FROM CURSOR_CRM_Terminales_Encuestas INTO @idEncuesta 
   END   
 
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_Terminales_Encuestas  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_CRM_Terminales_Encuestas_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro, CRMB_RegistrosSincronizacion.idRegistro_Aux_Long1 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN CRM_Terminales_Encuestas on CRMB_RegistrosSincronizacion.idRegistro= CRM_Terminales_Encuestas.idTerminal AND 
   CRMB_RegistrosSincronizacion.idRegistro_Aux_Long1= CRM_Terminales_Encuestas.idEncuesta 
   WHERE CRMB_RegistrosSincronizacion.tabla= 'CRM_Terminales_Encuestas' AND 
       CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
       (CRM_Terminales_Encuestas.idTerminal is null) 
 
   -- Variables que rellena el Cursor 
   DECLARE @idTerminal_Borrar bigint 
   DECLARE @idEncuesta_Borrar bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRM_Terminales_Encuestas_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_Terminales_Encuestas_BORRAR INTO @idTerminal_Borrar, @idEncuesta_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @idTerminal_Borrar, @idEncuesta_Borrar,null,null,null,null,null,null,'CRM_Terminales_Encuestas', @idTerminal,1 
 
       --Encuestas Respuestas 
       EXEC P_CRM_Sincronizar_UnRegistro_1_CRM_Encuestas @idEncuesta_Borrar, @idTerminal ,1 
   FETCH NEXT FROM CURSOR_CRM_Terminales_Encuestas_BORRAR INTO @idTerminal_Borrar, @idEncuesta_Borrar 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_Terminales_Encuestas_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_Terminales_Provincias]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_CRM_Terminales_Provincias] 
   @idTerminal as bigint 
 AS 
 BEGIN   
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_CRM_Terminales_Provincias CURSOR FOR  
   --Consulta para el Cursor 
   SELECT distinct idProvincia 
   FROM CRM_Terminales_Provincias 
   WHERE idTerminal=@idTerminal   
   -- Variables que rellena el Cursor 
   DECLARE @idProvincia bigint   
   --Se abre el Cursor 
   OPEN CURSOR_CRM_Terminales_Provincias   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_Terminales_Provincias INTO @idProvincia   
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN   
       -- Actualizar Provincias................................................ 
       --Si no existe en la tabla de sincronizacion se inserta 
       IF NOT EXISTS ( SELECT id 
                       FROM CRMB_RegistrosSincronizacion 
                       WHERE tabla = 'GEN_Provincias' and idRegistro = @idProvincia and idTerminal = @idTerminal) 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_1_GEN_Provincias @idProvincia, @idTerminal,0   
           END   
       -- .............................................................................   
   FETCH NEXT FROM CURSOR_CRM_Terminales_Provincias INTO @idProvincia 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_Terminales_Provincias   
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS PROVINCIAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_CRM_Terminales_Provincias_BORRAR CURSOR FOR   
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN  
   (  
       SELECT GEN_Provincias.id, GEN_Provincias.fechaBorrado 
       FROM GEN_Provincias 
       LEFT JOIN CRM_Terminales_Provincias on GEN_Provincias.id= CRM_Terminales_Provincias.idProvincia 
       WHERE CRM_Terminales_Provincias.idTerminal= @idTerminal 
   ) as GEN_Provincias_FILTRADOS 
       on CRMB_RegistrosSincronizacion.idRegistro= GEN_Provincias_FILTRADOS.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'GEN_Provincias' AND 
           CRMB_RegistrosSincronizacion.idTerminal=@idTerminal AND  
           (GEN_Provincias_FILTRADOS.id is null OR not GEN_Provincias_FILTRADOS.fechaBorrado IS NULL) 
   -- Variables que rellena el Cursor 
   DECLARE @idProvincia_Borrar bigint  
   --Se abre el Cursor 
   OPEN CURSOR_CRM_Terminales_Provincias_BORRAR   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_CRM_Terminales_Provincias_BORRAR INTO @idProvincia_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN  
       --provincias 
       EXEC P_CRM_Sincronizar_UnRegistro_1_GEN_Provincias @idProvincia_Borrar, @idTerminal,1  
   FETCH NEXT FROM CURSOR_CRM_Terminales_Provincias_BORRAR INTO @idProvincia_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_CRM_Terminales_Provincias_BORRAR 
 END  

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Municipios]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Municipios] 
   @idTerminal as bigint , 
   @idProvincia as bigint,   
   @desasignar as bit = 0  
 AS 
 BEGIN   
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Municipios CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct GEN_Municipios.id 
   FROM GEN_Municipios 
   WHERE GEN_Municipios.fechaBorrado is null and idProvincia = @idProvincia 
 
   -- Variables que rellena el Cursor 
   DECLARE @id bigint   
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Municipios   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Municipios INTO @id   
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
       BEGIN  
           --Municipios 
           EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'GEN_Municipios', @idTerminal, @desasignar 
 
           --Poblaciones 
           EXEC P_CRM_Sincronizar_VariosRegistros_GEN_Poblaciones @idTerminal, @id, @desasignar 
 
   FETCH NEXT FROM CURSOR_GEN_Municipios INTO @id 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Municipios   
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LOS MUNICIPIOS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_GEN_Municipios_BORRAR CURSOR FOR   
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN  
   (  
       SELECT GEN_Municipios.id, GEN_Municipios.fechaBorrado 
       FROM GEN_Municipios 
       INNER JOIN CRM_Terminales_Provincias ON GEN_Municipios.idProvincia= CRM_Terminales_Provincias.idProvincia and CRM_Terminales_Provincias.idTerminal= @idTerminal 
   ) as GEN_Municipios_FILTRADOS 
       on CRMB_RegistrosSincronizacion.idRegistro= GEN_Municipios_FILTRADOS.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'GEN_Municipios' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND  
           (GEN_Municipios_FILTRADOS.id is null OR not GEN_Municipios_FILTRADOS.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint    
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Municipios_BORRAR   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Municipios_BORRAR INTO @id_Borrar   
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN  
       --Municipios 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'GEN_Municipios', @idTerminal,1  
 
       --Poblaciones 
       EXEC P_CRM_Sincronizar_VariosRegistros_GEN_Poblaciones @idTerminal, @id_Borrar,1 
 
   FETCH NEXT FROM CURSOR_GEN_Municipios_BORRAR INTO @id_Borrar 
   END     
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Municipios_BORRAR 
 END  

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Paises]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Paises] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Paises CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM GEN_Paises 
   WHERE fechaBorrado is null  
 
   -- Variables que rellena el Cursor 
     DECLARE @id bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Paises  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Paises INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'GEN_Paises', @idTerminal,0  
   FETCH NEXT FROM CURSOR_GEN_Paises INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Paises  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_GEN_Paises_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN GEN_Paises on CRMB_RegistrosSincronizacion.idRegistro= GEN_Paises.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'GEN_Paises' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (GEN_Paises.id is null OR not GEN_Paises.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint   
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Paises_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Paises_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'GEN_Paises', @idTerminal,1   
   FETCH NEXT FROM CURSOR_GEN_Paises_BORRAR INTO @id_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Paises_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Poblaciones]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Poblaciones] 
   @idTerminal as bigint, 
   @idMunicipio as bigint,  
   @desasignar as bit = 0  
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Poblaciones CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct GEN_Poblaciones.id 
   FROM GEN_Poblaciones 
   WHERE GEN_Poblaciones.fechaBorrado is null and GEN_Poblaciones.idMunicipio=@idMunicipio 
 
   -- Variables que rellena el Cursor 
     DECLARE @id bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Poblaciones  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Poblaciones INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'GEN_Poblaciones', @idTerminal,@desasignar  
   FETCH NEXT FROM CURSOR_GEN_Poblaciones INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Poblaciones  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_GEN_Poblaciones_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN 
   ( 
       SELECT GEN_Poblaciones.id, GEN_Poblaciones.fechaBorrado 
       FROM GEN_Poblaciones 
       INNER JOIN GEN_Municipios ON GEN_Municipios.id= GEN_Poblaciones.idMunicipio 
       INNER JOIN CRM_Terminales_Provincias ON GEN_Municipios.idProvincia= CRM_Terminales_Provincias.idProvincia and CRM_Terminales_Provincias.idTerminal= @idTerminal 
   ) as GEN_Poblaciones_FILTRADOS 
   on CRMB_RegistrosSincronizacion.idRegistro= GEN_Poblaciones_FILTRADOS.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'GEN_Poblaciones' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (GEN_Poblaciones_FILTRADOS.id is null OR not GEN_Poblaciones_FILTRADOS.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint   
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Poblaciones_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Poblaciones_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'GEN_Poblaciones', @idTerminal,1   
   FETCH NEXT FROM CURSOR_GEN_Poblaciones_BORRAR INTO @id_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Poblaciones_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Provincias]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_GEN_Provincias] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_GEN_Provincias CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct GEN_Provincias.id 
   FROM GEN_Provincias 
   INNER JOIN CRM_Terminales_Provincias ON GEN_Provincias.id=CRM_Terminales_Provincias.idProvincia and CRM_Terminales_Provincias.idTerminal= @idTerminal 
   WHERE GEN_Provincias.fechaBorrado is null  
 
   -- Variables que rellena el Cursor 
     DECLARE @id bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Provincias  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Provincias INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'GEN_Provincias', @idTerminal,0  
   FETCH NEXT FROM CURSOR_GEN_Provincias INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Provincias  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_GEN_Provincias_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN 
   ( 
       SELECT GEN_Provincias.id, GEN_Provincias.fechaBorrado 
       FROM GEN_Provincias 
       INNER JOIN CRM_Terminales_Provincias ON GEN_Provincias.id= CRM_Terminales_Provincias.idProvincia and CRM_Terminales_Provincias.idTerminal= @idTerminal 
   ) as GEN_Provincias_FILTRADAS 
   on CRMB_RegistrosSincronizacion.idRegistro= GEN_Provincias_FILTRADAS.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'GEN_Provincias' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (GEN_Provincias_FILTRADAS.id is null OR not GEN_Provincias_FILTRADAS.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint   
   --Se abre el Cursor 
   OPEN CURSOR_GEN_Provincias_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_GEN_Provincias_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'GEN_Provincias', @idTerminal,1   
   FETCH NEXT FROM CURSOR_GEN_Provincias_BORRAR INTO @id_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_GEN_Provincias_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_Contactos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_Contactos] 
   @idTerminal as bigint,  
   @idClientePotencial as bigint,  
   @desasignar as bit = 0  
 AS 
 BEGIN  
  
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_VariosRegistros_MAE_Contactos CURSOR FOR   
  
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_Contactos 
   WHERE idClientePotencial=@idClientePotencial  
  
   -- Variables que rellena el Cursor 
   DECLARE @id bigint  
   --Se abre el Cursor 
   OPEN CURSOR_VariosRegistros_MAE_Contactos  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_VariosRegistros_MAE_Contactos INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN  
       --Actualizar 
       IF @desasignar = 0   
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_1_MAE_Contactos @id, @idTerminal,0 
           END	  
       --Borrar 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_1_MAE_Contactos @id, @idTerminal,1  
           END 
   FETCH NEXT FROM CURSOR_VariosRegistros_MAE_Contactos INTO @id 
   END   
  
   --Liberar Cursor 
   DEALLOCATE CURSOR_VariosRegistros_MAE_Contactos  
  
  
 -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_VariosRegistros_MAE_Contactos_BORRAR CURSOR FOR   
   --Consulta para el Cursor 
  
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_Contactos on CRMB_RegistrosSincronizacion.idRegistro= MAE_Contactos.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'MAE_Contactos' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (MAE_Contactos.id is null OR not MAE_Contactos.fechaBorrado IS NULL) 
  
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint  
   --Se abre el Cursor 
   OPEN CURSOR_VariosRegistros_MAE_Contactos_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_VariosRegistros_MAE_Contactos_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_1_MAE_Contactos @id_Borrar, @idTerminal,1 
   FETCH NEXT FROM CURSOR_VariosRegistros_MAE_Contactos_BORRAR INTO @id_Borrar 
   END   
  
   --Liberar Cursor 
   DEALLOCATE CURSOR_VariosRegistros_MAE_Contactos_BORRAR 
 END  

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_ContactosEmails]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_ContactosEmails] 
   @idTerminal as bigint,  
   @idContacto as bigint,  
   @desasignar as bit = 0  
 AS 
 BEGIN  
  
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_ContactosEmails CURSOR FOR  
  
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_ContactosEmails 
   WHERE idContacto=@idContacto  
  
   -- Variables que rellena el Cursor 
   DECLARE @id bigint  
   --Se abre el Cursor 
   OPEN CURSOR_MAE_ContactosEmails  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_ContactosEmails INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN  
       --Actualizar 
       IF @desasignar = 0   
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_ContactosEmails', @idTerminal,0 
           END	  
       --Borrar 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_ContactosEmails', @idTerminal,1  
           END 
   FETCH NEXT FROM CURSOR_MAE_ContactosEmails INTO @id 
   END  
  
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_ContactosEmails  
  
  
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_MAE_ContactosEmails_BORRAR CURSOR FOR  
  
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_ContactosEmails on CRMB_RegistrosSincronizacion.idRegistro= MAE_ContactosEmails.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'MAE_ContactosEmails' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (MAE_ContactosEmails.id is null) 
  
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint  
   --Se abre el Cursor 
   OPEN CURSOR_MAE_ContactosEmails_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_ContactosEmails_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'MAE_ContactosEmails', @idTerminal,1 
   FETCH NEXT FROM CURSOR_MAE_ContactosEmails_BORRAR INTO @id_Borrar 
   END   
  
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_ContactosEmails_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_ContactosTelefonos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_ContactosTelefonos] 
   @idTerminal as bigint,  
   @idContacto as bigint,  
   @desasignar as bit = 0  
 AS 
 BEGIN  
  
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_ContactosTelefonos CURSOR FOR  
  
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_ContactosTelefonos 
   WHERE idContacto=@idContacto  
  
   -- Variables que rellena el Cursor 
   DECLARE @id bigint  
   --Se abre el Cursor 
   OPEN CURSOR_MAE_ContactosTelefonos  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_ContactosTelefonos INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN  
       --Actualizar 
       IF @desasignar = 0   
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_ContactosTelefonos', @idTerminal,0 
           END	  
       --Borrar 
       ELSE 
           BEGIN 
               EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_ContactosTelefonos', @idTerminal,1  
           END 
   FETCH NEXT FROM CURSOR_MAE_ContactosTelefonos INTO @id 
   END  
  
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_ContactosTelefonos  
  
  
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_MAE_ContactosTelefonos_BORRAR CURSOR FOR  
  
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_ContactosTelefonos on CRMB_RegistrosSincronizacion.idRegistro= MAE_ContactosTelefonos.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'MAE_ContactosTelefonos' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (MAE_ContactosTelefonos.id is null) 
  
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint  
   --Se abre el Cursor 
   OPEN CURSOR_MAE_ContactosTelefonos_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_ContactosTelefonos_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'MAE_ContactosTelefonos', @idTerminal,1 
   FETCH NEXT FROM CURSOR_MAE_ContactosTelefonos_BORRAR INTO @id_Borrar 
   END   
  
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_ContactosTelefonos_BORRAR 
 END 
SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_Empleados]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_Empleados] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_Empleados CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_Empleados 
   WHERE fechaBorrado is null  
 
   -- Variables que rellena el Cursor 
     DECLARE @id bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_MAE_Empleados  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_Empleados INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_Empleados', @idTerminal,0  
   FETCH NEXT FROM CURSOR_MAE_Empleados INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_Empleados  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_MAE_Empleados_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_Empleados on CRMB_RegistrosSincronizacion.idRegistro= MAE_Empleados.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'MAE_Empleados' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (MAE_Empleados.id is null OR not MAE_Empleados.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint   
   --Se abre el Cursor 
   OPEN CURSOR_MAE_Empleados_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_Empleados_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'MAE_Empleados', @idTerminal,1   
   FETCH NEXT FROM CURSOR_MAE_Empleados_BORRAR INTO @id_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_Empleados_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_TelefonosTipos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_TelefonosTipos] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_TelefonosTipos CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_TelefonosTipos 
   WHERE fechaBorrado is null  
 
   -- Variables que rellena el Cursor 
     DECLARE @id bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_MAE_TelefonosTipos  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_TelefonosTipos INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_TelefonosTipos', @idTerminal,0  
   FETCH NEXT FROM CURSOR_MAE_TelefonosTipos INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_TelefonosTipos  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_MAE_TelefonosTipos_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_TelefonosTipos on CRMB_RegistrosSincronizacion.idRegistro= MAE_TelefonosTipos.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'MAE_TelefonosTipos' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (MAE_TelefonosTipos.id is null OR not MAE_TelefonosTipos.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint   
   --Se abre el Cursor 
   OPEN CURSOR_MAE_TelefonosTipos_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_TelefonosTipos_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'MAE_TelefonosTipos', @idTerminal,1   
   FETCH NEXT FROM CURSOR_MAE_TelefonosTipos_BORRAR INTO @id_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_TelefonosTipos_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_TiposGastos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION
 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_TiposGastos] 
   @idTerminal as bigint 
 AS 
 BEGIN   
     
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_MAE_TiposGastos CURSOR FOR   
     
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_TiposGastos 
   WHERE fechaBorrado is null   
       
   -- Variables que rellena el Cursor 
   DECLARE @id bigint   
   
   --Se abre el Cursor 
   OPEN CURSOR_MAE_MAE_TiposGastos   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_MAE_TiposGastos INTO @id   
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_TiposGastos', @idTerminal,0  
       FETCH NEXT FROM CURSOR_MAE_MAE_TiposGastos INTO @id 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_MAE_TiposGastos   
   
  
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_MAE_MAE_TiposGastos_BORRAR CURSOR FOR   
   
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_TiposGastos on CRMB_RegistrosSincronizacion.idRegistro= MAE_TiposGastos.id 
   WHERE CRMB_RegistrosSincronizacion.tabla= 'MAE_TiposGastos' AND 
         CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
         (MAE_TiposGastos.id is null OR not MAE_TiposGastos.fechaBorrado IS NULL) 
   
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint    
   --Se abre el Cursor 
   OPEN CURSOR_MAE_MAE_TiposGastos_BORRAR   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_MAE_TiposGastos_BORRAR INTO @id_Borrar 
       --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
       WHILE @@fetch_status = 0    
       BEGIN 
           EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'MAE_TiposGastos', @idTerminal,1  
           FETCH NEXT FROM CURSOR_MAE_MAE_TiposGastos_BORRAR INTO @id_Borrar 
       END     
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_MAE_TiposGastos_BORRAR 
 END  

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_TiposPagos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION
 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_TiposPagos] 
   @idTerminal as bigint 
 AS 
 BEGIN   
     
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_MAE_TiposPagos CURSOR FOR   
     
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_TiposPagos 
   WHERE fechaBorrado is null   
       
   -- Variables que rellena el Cursor 
   DECLARE @id bigint   
   
   --Se abre el Cursor 
   OPEN CURSOR_MAE_MAE_TiposPagos   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_MAE_TiposPagos INTO @id   
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_TiposPagos', @idTerminal,0  
       FETCH NEXT FROM CURSOR_MAE_MAE_TiposPagos INTO @id 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_MAE_TiposPagos   
   
  
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_MAE_MAE_TiposPagos_BORRAR CURSOR FOR   
   
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_TiposPagos on CRMB_RegistrosSincronizacion.idRegistro= MAE_TiposPagos.id 
   WHERE CRMB_RegistrosSincronizacion.tabla= 'MAE_TiposPagos' AND 
         CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
         (MAE_TiposPagos.id is null OR not MAE_TiposPagos.fechaBorrado IS NULL) 
   
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint    
   --Se abre el Cursor 
   OPEN CURSOR_MAE_MAE_TiposPagos_BORRAR   
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_MAE_TiposPagos_BORRAR INTO @id_Borrar 
       --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
       WHILE @@fetch_status = 0    
       BEGIN 
           EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'MAE_TiposPagos', @idTerminal,1  
           FETCH NEXT FROM CURSOR_MAE_MAE_TiposPagos_BORRAR INTO @id_Borrar 
       END     
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_MAE_TiposPagos_BORRAR 
 END  

SIGUIENTELINEAPARAEJECUCION
/****** Object:  StoredProcedure [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_Vehiculos]    Script Date: 10/05/2019 11:06:12 ******/
SET ANSI_NULLS ON
SIGUIENTELINEAPARAEJECUCION
SET QUOTED_IDENTIFIER ON
SIGUIENTELINEAPARAEJECUCION

 CREATE PROCEDURE [dbo].[P_CRM_Sincronizar_VariosRegistros_MAE_Vehiculos] 
   @idTerminal as bigint 
 AS 
 BEGIN  
 
   -- SE CREA UN CURSOR PARA ACTUALIZAR A TANTOS DISPOSITIVOS COMO SEA NECESARIO 
   DECLARE CURSOR_MAE_Vehiculos CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT distinct id 
   FROM MAE_Vehiculos 
   WHERE fechaBorrado is null  
 
   -- Variables que rellena el Cursor 
     DECLARE @id bigint  
 
   --Se abre el Cursor 
   OPEN CURSOR_MAE_Vehiculos  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_Vehiculos INTO @id  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0  
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id,null,null,null,null,null,null,null,'MAE_Vehiculos', @idTerminal,0  
   FETCH NEXT FROM CURSOR_MAE_Vehiculos INTO @id 
   END   
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_Vehiculos  
 
 
   -- SE CREA UN CURSOR PARA PONER A BORRAR LAS QUE YA NO ESTEN RELACIONADAS 
   DECLARE CURSOR_MAE_Vehiculos_BORRAR CURSOR FOR  
 
   --Consulta para el Cursor 
   SELECT CRMB_RegistrosSincronizacion.idRegistro 
   FROM CRMB_RegistrosSincronizacion 
   LEFT JOIN MAE_Vehiculos on CRMB_RegistrosSincronizacion.idRegistro= MAE_Vehiculos.id 
   WHERE   CRMB_RegistrosSincronizacion.tabla= 'MAE_Vehiculos' AND 
           CRMB_RegistrosSincronizacion.idTerminal= @idTerminal AND 
           (MAE_Vehiculos.id is null OR not MAE_Vehiculos.fechaBorrado IS NULL) 
 
   -- Variables que rellena el Cursor 
   DECLARE @id_Borrar bigint   
   --Se abre el Cursor 
   OPEN CURSOR_MAE_Vehiculos_BORRAR  
   -- Recorrer Registros del Cursor 
   FETCH NEXT FROM CURSOR_MAE_Vehiculos_BORRAR INTO @id_Borrar  
   --Retorna el estatus del último registro recorrido en el cursor, cuando es igual a 0 encontró registro pendientes de recorrer 
   WHILE @@fetch_status = 0   
   BEGIN 
       EXEC P_CRM_Sincronizar_UnRegistro_0 @id_Borrar,null,null,null,null,null,null,null,'MAE_Vehiculos', @idTerminal,1   
   FETCH NEXT FROM CURSOR_MAE_Vehiculos_BORRAR INTO @id_Borrar 
   END    
   --Liberar Cursor 
   DEALLOCATE CURSOR_MAE_Vehiculos_BORRAR 
 END 

SIGUIENTELINEAPARAEJECUCION
