DELIMITER $$

USE `translamexremoto`$$

DROP PROCEDURE IF EXISTS `spERPActualizarCupones`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `spERPActualizarCupones`()
proc_label: BEGIN

 DECLARE _idx INTEGER(11);
 DECLARE _lastIDX INTEGER(11);
 DECLARE _LOGTablaID INTEGER(11);
 DECLARE _tipoLogID INTEGER(11);
 DECLARE _condicionSQL VARCHAR(1024);
 DECLARE _cuponesSQL TEXT;
 DECLARE _SQL TEXT;
 
 SET @__idx := 0;
 DROP TABLE IF EXISTS __cuponesLOG__;
 CREATE TEMPORARY TABLE __cuponesLOG__ ENGINE=MEMORY
 SELECT (@__idx := @__idx+1) AS ID, LOGTablaID, tipoLogID, condicionSQL FROM 
  DatosCupones_LogTabla WHERE (procesado=0) AND tabla='Cupones' LIMIT 10;
 
 SET _lastIDX := @__idx;
 SET @__idx := NULL;
 ALTER TABLE __cuponesLOG__ ADD KEY idxID (ID); 
 
 ##select _lastIDX,__cuponesLOG__.* from __cuponesLOG__;
 ##drop table if exists __cuponesLOG__;
 SET _idx := 0;
 
 SET _cuponesSQL := 
  'INSERT INTO traslamex.cupones (Serie, Folio, Locacion, Vendedor, Fecha, Tour, Adultos, Ninos, PrecioAdulto, PrecioNino, VentaAdulto, VentaNino, NumeroCosto, Status, Nombre, Hotel, Habitacion, Hora, NumTarjeta, Cliente, RegaloUSD, RegaloPesos, TCDolar, TasaComVend, TasaComLoc, ComisVend, ComisSup, ComisLoc, Reembolso, TipoTour, Proveedor, TipoPago, TasaComision, Confirmacion, TarjetaPesos2, TarjetaPesos3, TarjetaDolares2, TarjetaDolares3, NumTarjeta2, NumTarjeta3, FolioRegalo, TarjetaPesos, TarjetaDolares, Facturado, Factura, FechaFact, CostoAdulto, CostoNino, ComisBanco, TCFactura, TarjetaPesos4, TarjetaPesos5, TarjetaPesos6, TarjetaPesos7, TarjetaPesos8, TarjetaPesos9, TarjetaPesos10, TarjetaDolares4, TarjetaDolares5, TarjetaDolares6, TarjetaDolares7, TarjetaDolares8, TarjetaDolares9, TarjetaDolares10, NumTarjeta4, NumTarjeta5, NumTarjeta6, NumTarjeta7, NumTarjeta8, NumTarjeta9, NumTarjeta10, AdultosR, NinosR, Destino, ID, RefID, Comentarios, Descuento, MesesCredito, Salida, ComisSup2, ComisSup3, ComisTranslamex, Manual, FechaCaptura, Dolares, Pesos, Boletinado, BoletinadoPor, SerieReemp, FolioReemp, FechaReemp, ObservReemp, Convertidor, ComisSup4, EMail, Telefono, ComisSup5, ComisSup6, IDReemp, Cliente2, RegaloPesos2, RegaloUSD2, FolioRegalo2, Ingreso, GrupoTour, Cerrado, TipoPago2, TipoPago3, TipoPago4, TipoPago5, TipoPago6, TipoPago7, TipoPago8, TipoPago9, TipoPago10, CostoAdulto2, CostoNino2, Infantes, TipoCliente, Observaciones, ToursPQT, Tours, TarjetaEstVida, CostoDif, TourPqt1, TourPqt2, TourPqt3, TourPqt4, TourPqt5, CostoTourPqt1, CostoTourPqt2, CostoTourPqt3, CostoTourPqt4, CostoTourPqt5, CostearPQT, PickUp, LocacionOriginal, CostoServicio, VentaServicio, Consecutivo, Costeado, TP, ImportePagado, TarjetaHabiente1, TarjetaHabiente2, TarjetaHabiente3, TarjetaHabiente4, TarjetaHabiente5, TarjetaHabiente6, TarjetaHabiente7, TarjetaHabiente8, TarjetaHabiente9, TarjetaHabiente10, FormaDePago, BancoPago, TourRegalo, FacturaRA, FechaFactRA, TCFactRA, Domicilio, Ciudad, Estado, Pais, ComisRepPagada, FacturaSerie, FacturaFolio, Validado, facturaID)
   SELECT Serie, Folio, Locacion, Vendedor, Fecha, Tour, Adultos, Ninos, PrecioAdulto, PrecioNino, VentaAdulto, VentaNino, NumeroCosto, Status, Nombre, Hotel, Habitacion, Hora, NumTarjeta, Cliente, RegaloUSD, RegaloPesos, TCDolar, TasaComVend, TasaComLoc, ComisVend, ComisSup, ComisLoc, Reembolso, TipoTour, Proveedor, TipoPago, TasaComision, Confirmacion, TarjetaPesos2, TarjetaPesos3, TarjetaDolares2, TarjetaDolares3, NumTarjeta2, NumTarjeta3, FolioRegalo, TarjetaPesos, TarjetaDolares, Facturado, Factura, FechaFact, CostoAdulto, CostoNino, ComisBanco, TCFactura, TarjetaPesos4, TarjetaPesos5, TarjetaPesos6, TarjetaPesos7, TarjetaPesos8, TarjetaPesos9, TarjetaPesos10, TarjetaDolares4, TarjetaDolares5, TarjetaDolares6, TarjetaDolares7, TarjetaDolares8, TarjetaDolares9, TarjetaDolares10, NumTarjeta4, NumTarjeta5, NumTarjeta6, NumTarjeta7, NumTarjeta8, NumTarjeta9, NumTarjeta10, AdultosR, NinosR, Destino, ID, RefID, Comentarios, Descuento, MesesCredito, Salida, ComisSup2, ComisSup3, ComisTranslamex, Manual, FechaCaptura, Dolares, Pesos, Boletinado, BoletinadoPor, SerieReemp, FolioReemp, FechaReemp, ObservReemp, Convertidor, ComisSup4, EMail, Telefono, ComisSup5, ComisSup6, IDReemp, Cliente2, RegaloPesos2, RegaloUSD2, FolioRegalo2, Ingreso, GrupoTour, Cerrado, TipoPago2, TipoPago3, TipoPago4, TipoPago5, TipoPago6, TipoPago7, TipoPago8, TipoPago9, TipoPago10, CostoAdulto2, CostoNino2, Infantes, TipoCliente, Observaciones, ToursPQT, Tours, TarjetaEstVida, CostoDif, TourPqt1, TourPqt2, TourPqt3, TourPqt4, TourPqt5, CostoTourPqt1, CostoTourPqt2, CostoTourPqt3, CostoTourPqt4, CostoTourPqt5, CostearPQT, PickUp, LocacionOriginal, CostoServicio, VentaServicio, Consecutivo, Costeado, TP, ImportePagado, TarjetaHabiente1, TarjetaHabiente2, TarjetaHabiente3, TarjetaHabiente4, TarjetaHabiente5, TarjetaHabiente6, TarjetaHabiente7, TarjetaHabiente8, TarjetaHabiente9, TarjetaHabiente10, FormaDePago, BancoPago, TourRegalo, FacturaRA, FechaFactRA, TCFactRA, Domicilio, Ciudad, Estado, Pais, ComisRepPagada, FacturaSerie, FacturaFolio, Validado, facturaID 
   FROM datoscupones_cupones _CUPONES_ WHERE {%%WHERE_CONDITION%%} 
 ON DUPLICATE KEY UPDATE 
Locacion = _CUPONES_.Locacion,
  Vendedor = _CUPONES_.Vendedor,
  Fecha = _CUPONES_.Fecha,
  Tour = _CUPONES_.Tour,
  Adultos = _CUPONES_.Adultos,
  Ninos = _CUPONES_.Ninos,
  PrecioAdulto = _CUPONES_.PrecioAdulto,
  PrecioNino = _CUPONES_.PrecioNino,
  VentaAdulto = _CUPONES_.VentaAdulto,
  VentaNino = _CUPONES_.VentaNino,
  NumeroCosto = _CUPONES_.NumeroCosto,
  Status = _CUPONES_.Status,
  Nombre = _CUPONES_.Nombre,
  Hotel = _CUPONES_.Hotel,
  Habitacion = _CUPONES_.Habitacion,
  Hora = _CUPONES_.Hora,
  NumTarjeta = _CUPONES_.NumTarjeta,
  Cliente = _CUPONES_.Cliente,
  RegaloUSD = _CUPONES_.RegaloUSD,
  RegaloPesos = _CUPONES_.RegaloPesos,
  TCDolar = _CUPONES_.TCDolar,
  TasaComVend = _CUPONES_.TasaComVend,
  TasaComLoc = _CUPONES_.TasaComLoc,
  ComisVend = _CUPONES_.ComisVend,
  ComisSup = _CUPONES_.ComisSup,
  ComisLoc = _CUPONES_.ComisLoc,
  Reembolso = _CUPONES_.Reembolso,
  TipoTour = _CUPONES_.TipoTour,
  Proveedor = _CUPONES_.Proveedor,
  TipoPago = _CUPONES_.TipoPago,
  TasaComision = _CUPONES_.TasaComision,
  Confirmacion = _CUPONES_.Confirmacion,
  TarjetaPesos2 = _CUPONES_.TarjetaPesos2,
  TarjetaPesos3 = _CUPONES_.TarjetaPesos3,
  TarjetaDolares2 = _CUPONES_.TarjetaDolares2,
  TarjetaDolares3 = _CUPONES_.TarjetaDolares3,
  NumTarjeta2 = _CUPONES_.NumTarjeta2,
  NumTarjeta3 = _CUPONES_.NumTarjeta3,
  FolioRegalo = _CUPONES_.FolioRegalo,
  TarjetaPesos = _CUPONES_.TarjetaPesos,
  TarjetaDolares = _CUPONES_.TarjetaDolares,
  Facturado = _CUPONES_.Facturado,
  Factura = _CUPONES_.Factura,
  FechaFact = _CUPONES_.FechaFact,
  CostoAdulto = _CUPONES_.CostoAdulto,
  CostoNino = _CUPONES_.CostoNino,
  ComisBanco = _CUPONES_.ComisBanco,
  TCFactura = _CUPONES_.TCFactura,
  TarjetaPesos4 = _CUPONES_.TarjetaPesos4,
  TarjetaPesos5 = _CUPONES_.TarjetaPesos5,
  TarjetaPesos6 = _CUPONES_.TarjetaPesos6,
  TarjetaPesos7 = _CUPONES_.TarjetaPesos7,
  TarjetaPesos8 = _CUPONES_.TarjetaPesos8,
  TarjetaPesos9 = _CUPONES_.TarjetaPesos9,
  TarjetaPesos10 = _CUPONES_.TarjetaPesos10,
  TarjetaDolares4 = _CUPONES_.TarjetaDolares4,
  TarjetaDolares5 = _CUPONES_.TarjetaDolares5,
  TarjetaDolares6 = _CUPONES_.TarjetaDolares6,
  TarjetaDolares7 = _CUPONES_.TarjetaDolares7,
  TarjetaDolares8 = _CUPONES_.TarjetaDolares8,
  TarjetaDolares9 = _CUPONES_.TarjetaDolares9,
  TarjetaDolares10 = _CUPONES_.TarjetaDolares10,
  NumTarjeta4 = _CUPONES_.NumTarjeta4,
  NumTarjeta5 = _CUPONES_.NumTarjeta5,
  NumTarjeta6 = _CUPONES_.NumTarjeta6,
  NumTarjeta7 = _CUPONES_.NumTarjeta7,
  NumTarjeta8 = _CUPONES_.NumTarjeta8,
  NumTarjeta9 = _CUPONES_.NumTarjeta9,
  NumTarjeta10 = _CUPONES_.NumTarjeta10,
  AdultosR = _CUPONES_.AdultosR,
  NinosR = _CUPONES_.NinosR,
  Destino = _CUPONES_.Destino,
  RefID = _CUPONES_.RefID,
  Comentarios = _CUPONES_.Comentarios,
  Descuento = _CUPONES_.Descuento,
  MesesCredito = _CUPONES_.MesesCredito,
  Salida = _CUPONES_.Salida,
  ComisSup2 = _CUPONES_.ComisSup2,
  ComisSup3 = _CUPONES_.ComisSup3,
  ComisTranslamex = _CUPONES_.ComisTranslamex,
  Manual = _CUPONES_.Manual,
  FechaCaptura = _CUPONES_.FechaCaptura,
  Dolares = _CUPONES_.Dolares,
  Pesos = _CUPONES_.Pesos,
  Boletinado = _CUPONES_.Boletinado,
  BoletinadoPor = _CUPONES_.BoletinadoPor,
  SerieReemp = _CUPONES_.SerieReemp,
  FolioReemp = _CUPONES_.FolioReemp,
  FechaReemp = _CUPONES_.FechaReemp,
  ObservReemp = _CUPONES_.ObservReemp,
  Convertidor = _CUPONES_.Convertidor,
  ComisSup4 = _CUPONES_.ComisSup4,
  EMail = _CUPONES_.EMail,
  Telefono = _CUPONES_.Telefono,
  ComisSup5 = _CUPONES_.ComisSup5,
  ComisSup6 = _CUPONES_.ComisSup6,
  IDReemp = _CUPONES_.IDReemp,
  Cliente2 = _CUPONES_.Cliente2,
  RegaloPesos2 = _CUPONES_.RegaloPesos2,
  RegaloUSD2 = _CUPONES_.RegaloUSD2,
  FolioRegalo2 = _CUPONES_.FolioRegalo2,
  Ingreso = _CUPONES_.Ingreso,
  GrupoTour = _CUPONES_.GrupoTour,
  Cerrado = _CUPONES_.Cerrado,
  TipoPago2 = _CUPONES_.TipoPago2,
  TipoPago3 = _CUPONES_.TipoPago3,
  TipoPago4 = _CUPONES_.TipoPago4,
  TipoPago5 = _CUPONES_.TipoPago5,
  TipoPago6 = _CUPONES_.TipoPago6,
  TipoPago7 = _CUPONES_.TipoPago7,
  TipoPago8 = _CUPONES_.TipoPago8,
  TipoPago9 = _CUPONES_.TipoPago9,
  TipoPago10 = _CUPONES_.TipoPago10,
  CostoAdulto2 = _CUPONES_.CostoAdulto2,
  CostoNino2 = _CUPONES_.CostoNino2,
  Infantes = _CUPONES_.Infantes,
  TipoCliente = _CUPONES_.TipoCliente,
  Observaciones = _CUPONES_.Observaciones,
  ToursPQT = _CUPONES_.ToursPQT,
  Tours = _CUPONES_.Tours,
  TarjetaEstVida = _CUPONES_.TarjetaEstVida,
  CostoDif = _CUPONES_.CostoDif,
  TourPqt1 = _CUPONES_.TourPqt1,
  TourPqt2 = _CUPONES_.TourPqt2,
  TourPqt3 = _CUPONES_.TourPqt3,
  TourPqt4 = _CUPONES_.TourPqt4,
  TourPqt5 = _CUPONES_.TourPqt5,
  CostoTourPqt1 = _CUPONES_.CostoTourPqt1,
  CostoTourPqt2 = _CUPONES_.CostoTourPqt2,
  CostoTourPqt3 = _CUPONES_.CostoTourPqt3,
  CostoTourPqt4 = _CUPONES_.CostoTourPqt4,
  CostoTourPqt5 = _CUPONES_.CostoTourPqt5,
  CostearPQT = _CUPONES_.CostearPQT,
  PickUp = _CUPONES_.PickUp,
  LocacionOriginal = _CUPONES_.LocacionOriginal,
  CostoServicio = _CUPONES_.CostoServicio,
  VentaServicio = _CUPONES_.VentaServicio,
  Consecutivo = _CUPONES_.Consecutivo,
  Costeado = _CUPONES_.Costeado,
  ImportePagado = _CUPONES_.ImportePagado,
  TarjetaHabiente1 = _CUPONES_.TarjetaHabiente1,
  TarjetaHabiente2 = _CUPONES_.TarjetaHabiente2,
  TarjetaHabiente3 = _CUPONES_.TarjetaHabiente3,
  TarjetaHabiente4 = _CUPONES_.TarjetaHabiente4,
  TarjetaHabiente5 = _CUPONES_.TarjetaHabiente5,
  TarjetaHabiente6 = _CUPONES_.TarjetaHabiente6,
  TarjetaHabiente7 = _CUPONES_.TarjetaHabiente7,
  TarjetaHabiente8 = _CUPONES_.TarjetaHabiente8,
  TarjetaHabiente9 = _CUPONES_.TarjetaHabiente9,
  TarjetaHabiente10 = _CUPONES_.TarjetaHabiente10,
  FormaDePago = _CUPONES_.FormaDePago,
  BancoPago = _CUPONES_.BancoPago,
  TourRegalo = _CUPONES_.TourRegalo,
  FacturaRA = _CUPONES_.FacturaRA,
  FechaFactRA = _CUPONES_.FechaFactRA,
  TCFactRA = _CUPONES_.TCFactRA,
  Domicilio = _CUPONES_.Domicilio,
  Ciudad = _CUPONES_.Ciudad,
  Estado = _CUPONES_.Estado,
  Pais = _CUPONES_.Pais,
  ComisRepPagada = _CUPONES_.ComisRepPagada,
  FacturaSerie = _CUPONES_.FacturaSerie,
  FacturaFolio = _CUPONES_.FacturaFolio,
  Validado = _CUPONES_.Validado,
  facturaID = _CUPONES_.facturaID';  
  
 record_loop: LOOP
  SET _idx := _idx +1;
  IF _idx > _lastIDX THEN
     LEAVE record_loop;
  END IF;  
  SELECT LOGTablaID, tipoLogID, condicionSQL INTO _LOGTablaID, _tipoLogID, _condicionSQL
   FROM __cuponesLOG__ 
   WHERE ID = _idx LIMIT 1;
   
  SET _sql := REPLACE(_cuponesSQL, '{%%WHERE_CONDITION%%}', _condicionSQL);  
  CALL spSysExecuteSQL(_sql);
  
  SET  _SQL := CONCAT('UPDATE DatosCupones_LogTabla SET procesado = 1 WHERE LOGTablaID = ', _LOGTablaID);
  CALL spSysExecuteSQL(_sql);
 END LOOP record_loop; 
 DROP TABLE IF EXISTS __cuponesLOG__;
END$$

DELIMITER ;