CREATE TABLE humansma_ventas.sistemas (
  id_sistema INT NOT NULL AUTO_INCREMENT,
  nombre_sistema VARCHAR(100) NOT NULL,
  nombre_anterior VARCHAR(100) NOT NULL,
  comercial INT(1) NOT NULL COMMENT '= 1 si se comercializa',
  PRIMARY KEY (id_sistema)
) ENGINE = InnoDB;

-- Cambiar nombre a descripcionser y tipos
ALTER TABLE humansma_ventas.cotizaciones
  CHANGE descripcionser descripcionser_d TEXT NOT NULL,
  CHANGE tipos tipos_d TEXT NOT NULL;

-- Llenar tabla sistemas
INSERT INTO
humansma_ventas.sistemas (nombre_sistema, nombre_anterior, comercial)
VALUES
  ('Cursos', '-', 0),
  ('PsicoSmart', 'PsicoSmart - Psicometría', 1),
  (
    'Vorecol – Learning management',
    'Human-Learning (empresas)',
    1
  ),
  (
    'Vorecol – Compensation management',
    'Salariz - Gestión de sueldos y salarios',
    1
  ),
  ('Generales', '-', 0),
  (
    'Vorecol – 360 Feedback',
    'Smart 360-Evaluación 360 grados',
    1
  ),
  ('Vorecol – Recruiting', 'Vorecol Recruiting', 1),
  (
    'Vorecol – Work environment',
    'Evaltric - Medición de Clima laboral',
    1
  ),
  (
    'Vorecol – Performance Management',
    'Plusoria - Medición y seguimiento de objetivos',
    1
  ),
  (
    'Vorecol – Nom035',
    'Smart 035 - Aplicación de encuestas de la NOM-035',
    1
  ),
  ('Vorecol – Payroll', 'Nóminas', 0),
  (
    'Surveria',
    'Surveria - Software encuestas en línea',
    1
  ),
  ('Administracion', '-', 0),
  ('Admin-ERP', '-', 0),
  ('Eniversy', '-', 1),
  ('Honestivalues', '-', 1),
  ('Smart-email', '-', 0);

-- Agregar sistemas - cotizaciones
CREATE TABLE humansma_ventas.cotizacion_sistemas (
  id INT NOT NULL AUTO_INCREMENT,
  id_seguimiento INT NOT NULL,
  id_sistema INT NOT NULL,
  vendido INT(1) NOT NULL,
  monto_venta DOUBLE NOT NULL,
  PRIMARY KEY (id)
) ENGINE = InnoDB;

-- Llenado de cotizacion_sistemas
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM
  cotizaciones
  INNER JOIN sistemas ON cotizaciones.descripcionser_d = sistemas.nombre_anterior
  OR cotizaciones.descripcionser_d = sistemas.nombre_sistema;

-- Insertar cursos
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT
  id AS id_seguimiento,
  1 as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM
  cotizaciones
WHERE
  tipos_d != 'Software';


INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT 
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM 
  cotizaciones
  INNER JOIN sistemas ON sistemas.nombre_sistema = 'Cursos'
  WHERE descripcionser_d IN ('Mandos Medios', 'Tecnologías de la información e ingenierias', 'En procesos de Recursos Humanos', 'ejecutivo', 'Calidad en el Servicio Online', 'Administración Estratégica de Recursos Humanos por Competencias Online')
  AND tipos_d = 'Software'; 

-- SEGÚN SEA DESCRIPCIONSER_d, SE ASIGNA EL ID_SISTEMA EN COTIZACION_SISTEMAS psicosmart
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT 
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM 
  cotizaciones
  INNER JOIN sistemas ON sistemas.nombre_sistema = 'PsicoSmart'
  WHERE descripcionser_d IN ('PsicoSmart - Psicometría (Candidatos)', 'PsicoSmart - Psicometría (Estudiantes)'); 

-- SEGÚN SEA DESCRIPCIONSER_d, SE ASIGNA EL ID_SISTEMA EN COTIZACION_SISTEMAS vorecol - learning management
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM
  cotizaciones
  INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Learning management'
  WHERE descripcionser_d = 'Human-Learning';

-- SEGÚN SEA DESCRIPCIONSER_d, SE ASIGNA EL ID_SISTEMA EN COTIZACION_SISTEMAS vorecol - compensation management
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM
  cotizaciones
  INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Compensation management'
  WHERE descripcionser_d IN ('Valuación de puestos y generación de tabulador de sueldos', 'Smart Salary - Valuación de puestos y generación de tabulador de sueldos');

-- SEGÚN SEA DESCRIPCIONSER_d, SE ASIGNA EL ID_SISTEMA EN COTIZACION_SISTEMAS vorecol - 360 feedback
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM
  cotizaciones
  INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – 360 Feedback'
  WHERE descripcionser_d = 'Sistema de Evaluacion 360 grados';

-- SEGÚN SEA DESCRIPCIONSER_d, SE ASIGNA EL ID_SISTEMA EN COTIZACION_SISTEMAS vorecol - work environment
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM
  cotizaciones
  INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Work environment'
  WHERE descripcionser_d = 'Medición de Clima Organizacional';

-- SEGÚN SEA DESCRIPCIONSER_d, SE ASIGNA EL ID_SISTEMA EN COTIZACION_SISTEMAS vorecol - performance management
INSERT INTO
humansma_ventas.cotizacion_sistemas (
    id_seguimiento,
    id_sistema,
    vendido,
    monto_venta
  )
SELECT
  id AS id_seguimiento,
  sistemas.id_sistema as id_sistema,
  0 as vendido,
  0 as monto_venta
FROM
  cotizaciones
  INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Performance Management'
  WHERE descripcionser_d = 'Medición de objetivos SMART';

-- SEGÚN SEA DESCRIPCIONSER_d, SE ASIGNA EL ID_SISTEMA EN COTIZACION_SISTEMAS sistemas que se encuentran en varios (historial_cotizaciones y combinacion_sistemas)

-- INSERCIÓN DE TODOS LOS SISTEMAS QUE SON VARIOS
-- Sistema: Vorecol – 360 Feedback
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – 360 Feedback'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (1, 3, 6, 11, 14, 17);

-- Sistema: Vorecol – Performance Management
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Performance Management'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (1, 10, 13, 17);

-- Sistema: PsicoSmart
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'PsicoSmart'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (2, 4, 9, 13, 15, 16);

-- Sistema: Vorecol – Learning Management
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Learning Management'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (2, 5, 8);

-- Sistema: Vorecol – Nom035
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Nom035'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (3, 8, 12);

-- Sistema: Vorecol – Work Environment
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Work Environment'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (4, 6, 10, 12, 15);

-- Sistema: Vorecol – Compensation Management
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Vorecol – Compensation Management'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (7, 14);

-- Sistema: Honestivalues
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Honestivalues'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (2);

-- Sistema: Surveria
INSERT INTO humansma_ventas.cotizacion_sistemas (id_seguimiento, id_sistema, vendido, monto_venta)
SELECT id AS id_seguimiento, sistemas.id_sistema AS id_sistema, 0 AS vendido, 0 AS monto_venta
FROM cotizaciones
INNER JOIN sistemas ON sistemas.nombre_sistema = 'Surveria'
WHERE descripcionser_d = 'Varios'
  AND id_combinacion IN (16);


-- Actualizar los vendidos multiples:
UPDATE humansma_ventas.cotizacion_sistemas cs
INNER JOIN historial_cotizaciones hc ON cs.id_seguimiento = hc.id_seguimiento
INNER JOIN sistemas s ON cs.id_sistema = s.id_sistema
SET cs.vendido = 1, cs.monto_venta = hc.monto_venta
WHERE hc.band_vendido = 1 AND s.nombre_anterior = hc.producto;

-- Actualizar los vendidos simples:
UPDATE humansma_ventas.cotizacion_sistemas cs
INNER JOIN cotizaciones c ON cs.id_seguimiento = c.id
SET cs.vendido = 1, cs.monto_venta = c.montov
WHERE c.bandera = 1 AND c.montov > 0;

-- Normalización de la tabla objetivos ejecutivos: 

ALTER TABLE humansma_ventas.objetivos_ejecutivos 
CHANGE producto producto_d TEXT NOT NULL;

ALTER TABLE humansma_ventas.objetivos_ejecutivos
ADD
  id_sistema INT NOT NULL
AFTER
  id_ejecutivo;

-- Llenar id_sistema en objetivos_ejecutivos según el nombre de producto
UPDATE humansma_ventas.objetivos_ejecutivos oe
INNER JOIN sistemas s ON oe.producto_d = s.nombre_anterior
SET oe.id_sistema = s.id_sistema;

-- Llenar id_sistema en objetivos_ejecutivos según el nombre de producto
UPDATE humansma_ventas.objetivos_ejecutivos oe
INNER JOIN sistemas s ON oe.producto_d = s.nombre_sistema
SET oe.id_sistema = s.id_sistema;

-- Llenar los sistemas específicos que no se encuentran en la tabla sistemas
UPDATE humansma_ventas.objetivos_ejecutivos oe
INNER JOIN sistemas s ON oe.producto_d = 'Vorecol – Learning management'
SET oe.id_sistema = s.id_sistema
WHERE producto_d = 'Human-Learning';

UPDATE humansma_ventas.objetivos_ejecutivos oe
INNER JOIN sistemas s ON oe.producto_d = 'Vorecol – Recruiting'
SET oe.id_sistema = s.id_sistema
WHERE producto_d = 'Vorecol Recruiting' or producto_d = 'Empleo especializado';

UPDATE humansma_ventas.objetivos_ejecutivos oe
INNER JOIN sistemas s ON oe.producto_d = 'Surveria'
SET oe.id_sistema = s.id_sistema
WHERE producto_d = 'Smart Feedback - Software encuestas de satisfacción';

-- Llenar los que no se llenaron
UPDATE humansma_ventas.objetivos_ejecutivos oe
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET oe.id_sistema = s.id_sistema
WHERE oe.id_sistema = 0;

-- Normalización de la tabla distribución clientes: 
ALTER TABLE humansma_ventas.distribucion_clientes 
  CHANGE tipo_servicio tipo_servicio_d VARCHAR(100)NOT NULL, 
  CHANGE servicio_especifico servicio_especifico_d TEXT NOT NULL,
  DROP id_combinacion;
  
ALTER TABLE humansma_ventas.distribucion_clientes
  ADD id_sistema INT NOT NULL
  AFTER servicio_especifico_d;

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
INNER JOIN sistemas s ON dc.servicio_especifico_d = s.nombre_anterior
SET dc.id_sistema = s.id_sistema;

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
INNER JOIN sistemas s ON dc.servicio_especifico_d = s.nombre_sistema
SET dc.id_sistema = s.id_sistema;

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
INNER JOIN sistemas s ON s.nombre_sistema = "Cursos"
SET dc.id_sistema = s.id_sistema
WHERE dc.tipo_servicio_d != "Software";

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
INNER JOIN sistemas s ON s.nombre_sistema = "Vorecol – Learning management"
SET dc.id_sistema = s.id_sistema
WHERE dc.servicio_especifico_d LIKE "%Human-Learning%";

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
INNER JOIN sistemas s ON s.nombre_sistema = "PsicoSmart"
SET dc.id_sistema = s.id_sistema
WHERE dc.servicio_especifico_d LIKE "%PsicoSmart%" OR dc.servicio_especifico_d = 'Varios';

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
INNER JOIN sistemas s ON s.nombre_sistema = "Vorecol – Work environment"
SET dc.id_sistema = s.id_sistema
WHERE dc.servicio_especifico_d = 'AdminERP';

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
SET dc.id_sistema = -1
WHERE dc.servicio_especifico_d = 'Catalogo de software';

-- Llenar id_sistema en distribucion_clientes según el nombre de producto
UPDATE humansma_ventas.distribucion_clientes dc
SET dc.id_sistema = 1
WHERE dc.id_sistema = 0;


--- Normalización de la tabla lead_por_mes_producto: 
ALTER TABLE humansma_ventas.lead_por_mes_producto
  CHANGE producto producto_d TEXT NOT NULL;

ALTER TABLE humansma_ventas.lead_por_mes_producto
  ADD id_sistema INT NOT NULL
  AFTER year;

-- Llenar id_sistema en lead_por_mes_producto según el nombre de producto
UPDATE humansma_ventas.lead_por_mes_producto lpm
INNER JOIN sistemas s ON lpm.producto_d = s.nombre_anterior
SET lpm.id_sistema = s.id_sistema;

-- Llenar id_sistema en lead_por_mes_producto según el nombre de producto
UPDATE humansma_ventas.lead_por_mes_producto lpm
INNER JOIN sistemas s ON lpm.producto_d = s.nombre_sistema
SET lpm.id_sistema = s.id_sistema;

-- Llenar id_sistema en lead_por_mes_producto nombre de producto curso in company
UPDATE humansma_ventas.lead_por_mes_producto lpm
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET lpm.id_sistema = s.id_sistema
WHERE lpm.producto_d = 'Curso In Company';


-- Normalización de la tabla inversion_marketing: 
ALTER TABLE humansma_ventas.inversion_marketing
  CHANGE servicio servicio_d TEXT NOT NULL;

ALTER TABLE humansma_ventas.inversion_marketing
  ADD id_sistema INT NOT NULL
  AFTER id;

-- Llenar id_sistema en inversion_marketing según el nombre de producto
UPDATE humansma_ventas.inversion_marketing im
INNER JOIN sistemas s ON im.servicio_d = s.nombre_anterior
SET im.id_sistema = s.id_sistema;

-- Llenar id_sistema en inversion_marketing según el nombre de producto
UPDATE humansma_ventas.inversion_marketing im
INNER JOIN sistemas s ON im.servicio_d = s.nombre_sistema
SET im.id_sistema = s.id_sistema;


-- Normalización de la tabla datos_servidores: 
ALTER TABLE humansma_ventas.datos_servidores
  CHANGE descripcionser descripcionser_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id_cliente;

-- Llenar id_sistema en datos_servidores según el nombre de producto
UPDATE humansma_ventas.datos_servidores ds
INNER JOIN sistemas s ON ds.descripcionser_d = s.nombre_anterior
SET ds.id_sistema = s.id_sistema;

-- Noramlización de la tabla prmedio venta productos: 
ALTER TABLE humansma_ventas.promedio_venta_productos
  CHANGE descripcionser descripcionser_d TEXT NOT NULL,
  CHANGE tipo tipo_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id;

-- Llenar id_sistema en promedio_venta_productos según el nombre de producto
UPDATE humansma_ventas.promedio_venta_productos pvp
INNER JOIN sistemas s ON pvp.descripcionser_d = s.nombre_anterior
SET pvp.id_sistema = s.id_sistema;

-- Llenar id_sistema en promedio_venta_productos según el nombre de producto
UPDATE humansma_ventas.promedio_venta_productos pvp
INNER JOIN sistemas s ON pvp.descripcionser_d = s.nombre_sistema
SET pvp.id_sistema = s.id_sistema;

-- Llenar id_sistema cursos en promedio_venta_productos
UPDATE humansma_ventas.promedio_venta_productos pvp
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET pvp.id_sistema = s.id_sistema
WHERE pvp.descripcionser_d = 'Curso In Company';

-- Llenar id_sistema en promedio_venta_productos empleo especializado
UPDATE humansma_ventas.promedio_venta_productos pvp
INNER JOIN sistemas s ON s.nombre_sistema = 'Vorecol – Recruiting'
SET pvp.id_sistema = s.id_sistema
WHERE pvp.descripcionser_d = 'Empleo especializado';

-- Normalización de la tabla productos_por_ejecutivo: 
ALTER TABLE humansma_ventas.productos_por_ejecutivo
  CHANGE descripcionser descripcionser_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id;

-- Llenar id_sistema en productos_por_ejecutivo según el nombre de producto
UPDATE humansma_ventas.productos_por_ejecutivo ppe
INNER JOIN sistemas s ON ppe.descripcionser_d = s.nombre_anterior
SET ppe.id_sistema = s.id_sistema;

-- Llenar id_sistema en productos_por_ejecutivo según el nombre de producto
UPDATE humansma_ventas.productos_por_ejecutivo ppe
INNER JOIN sistemas s ON ppe.descripcionser_d = s.nombre_sistema
SET ppe.id_sistema = s.id_sistema;

-- Llenar id_sistema en productos_por_ejecutivo cursos
UPDATE humansma_ventas.productos_por_ejecutivo ppe
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET ppe.id_sistema = s.id_sistema
WHERE ppe.descripcionser_d LIKE 'Cursos Incompany';


-- Normalización de la tabla historial_cotizaciones: 
ALTER TABLE humansma_ventas.historial_cotizaciones
  CHANGE producto producto_d TEXT NOT NULL,
  CHANGE band_vendido band_vendido_d INT(1) NOT NULL,
  CHANGE monto_venta monto_venta_d DOUBLE NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id;

-- Llenar id_sistema en historial_cotizaciones según el nombre de producto
UPDATE humansma_ventas.historial_cotizaciones hc
INNER JOIN sistemas s ON hc.producto_d = s.nombre_anterior
SET hc.id_sistema = s.id_sistema;


-- Llenar id_sistema en historial_cotizaciones según el nombre de producto

UPDATE humansma_ventas.historial_cotizaciones hc
INNER JOIN sistemas s ON hc.producto_d = s.nombre_sistema
SET hc.id_sistema = s.id_sistema;

-- Llenar id_sistema en historial_cotizaciones cursos
UPDATE humansma_ventas.historial_cotizaciones hc
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET hc.id_sistema = s.id_sistema
WHERE hc.producto_d = 'Cursos Incompany';

-- Llenar id_sistema en historial_cotizaciones plusoria
UPDATE humansma_ventas.historial_cotizaciones hc
INNER JOIN sistemas s ON s.nombre_sistema = 'Vorecol – Performance Management'
SET hc.id_sistema = s.id_sistema
WHERE hc.producto_d = 'Plusoria';

-- Normalización de la tabla texto_correos: 
ALTER TABLE humansma_ventas.texto_correos
  CHANGE producto producto_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id;

-- Llenar id_sistema en texto_correos según el nombre de producto
UPDATE humansma_ventas.texto_correos tc
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET tc.id_sistema = s.id_sistema
WHERE tc.producto_d = 'Curso In Company';

-- Llenar id_sistema en texto_correos según el nombre de producto
UPDATE humansma_ventas.texto_correos tc
INNER JOIN sistemas s ON s.nombre_sistema = 'PsicoSmart'
SET tc.id_sistema = s.id_sistema
WHERE tc.producto_d = 'PsicoSmart - Psicometría';

-- Llenar id_sistema en texto_correos cuando aplica para todos los sistemas
UPDATE humansma_ventas.texto_correos tc
SET tc.id_sistema = -1
WHERE tc.producto_d = 'todos';

-- Normalización de la tabla texto_correos_ejecutivos: 
ALTER TABLE humansma_ventas.texto_correos_ejecutivos
  CHANGE producto producto_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id;
-- Llenar id_sistema en texto_correos cuando aplica para todos los sistemas
UPDATE humansma_ventas.texto_correos_ejecutivos tc
SET tc.id_sistema = -1
WHERE tc.producto_d = 'todos';

-- Normalización de la tabla list_demostraciones: 
ALTER TABLE humansma_ventas.list_demostraciones
  CHANGE descripcionser descripcionser_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id_cotizacion;

-- Llenar id_sistema en list_demostraciones según el nombre de producto
UPDATE humansma_ventas.list_demostraciones ld
INNER JOIN sistemas s ON ld.descripcionser_d = s.nombre_anterior
SET ld.id_sistema = s.id_sistema;

UPDATE humansma_ventas.list_demostraciones ld
INNER JOIN sistemas s ON ld.descripcionser_d = s.nombre_sistema
SET ld.id_sistema = s.id_sistema;

-- Llenar id_sistema en list_demostraciones cursos
UPDATE humansma_ventas.list_demostraciones ld
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET ld.id_sistema = s.id_sistema
WHERE  ld.descripcionser_d IN ('Formación de Instructores de Capacitación In Company', 'Calidad en el Servicio In Company');

-- Actualizar id_sistemas en registro_mejoras_desarrollo: 
UPDATE humansma_ventas.registro_mejoras_desarrollo rmd
INNER JOIN servicios_soporte ss ON rmd.id_sistema = ss.id_sistema
INNER JOIN sistemas s ON ss.descripcion = s.nombre_sistema
SET rmd.id_sistema = s.id_sistema;

-- Normalización de la tabla servicios_soporte: 
ALTER TABLE humansma_ventas.servicios_soporte
  CHANGE descripcion descripcion_d TEXT NOT NULL;

UPDATE humansma_ventas.servicios_soporte ss
INNER JOIN sistemas s ON ss.descripcion_d = s.nombre_sistema
SET ss.id_sistema = s.id_sistema;

-- Normalización de la tabla soporte_tecnico_registro: 
ALTER TABLE humansma_ventas.soporte_tecnico_registro
  ADD id_sistema INT NOT NULL AFTER sistema;

-- Llenar id_sistema en soporte_tecnico_registro según el nombre de producto
UPDATE humansma_ventas.soporte_tecnico_registro str
INNER JOIN sistemas s ON str.sistema = s.nombre_sistema
SET str.id_sistema = s.id_sistema;

-- Llenar id_sistema en soporte_tecnico_registro según el nombre de producto
UPDATE humansma_ventas.soporte_tecnico_registro str
INNER JOIN sistemas s ON str.sistema = s.nombre_anterior
SET str.id_sistema = s.id_sistema;

-- Llenar id_sistema en soporte_tecnico_registro según el nombre de producto
UPDATE humansma_ventas.soporte_tecnico_registro str
INNER JOIN sistemas s ON s.nombre_sistema = 'Admin-ERP'
SET str.id_sistema = s.id_sistema
WHERE str.sistema = 'VentAdmin';

-- Llenar id_sistema en soporte_tecnico_registro según el nombre de producto
UPDATE humansma_ventas.soporte_tecnico_registro str
INNER JOIN sistemas s ON s.nombre_sistema = 'Surveria'
SET str.id_sistema = s.id_sistema
WHERE str.sistema = 'Smart Feedback - Software encuestas de satisfacción';


-- Normalización de la tabla productos_por_consultor: 
ALTER TABLE humansma_ventas.productos_por_consultor
  CHANGE descripcionser descripcionser_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id;

-- Llenar id_sistema en productos_por_consultor según el nombre de producto
UPDATE humansma_ventas.productos_por_consultor ppc
INNER JOIN sistemas s ON ppc.descripcionser_d = s.nombre_anterior
SET ppc.id_sistema = s.id_sistema;

-- Llenar id_sistema en productos_por_consultor según el nombre de producto
UPDATE humansma_ventas.productos_por_consultor ppc
INNER JOIN sistemas s ON ppc.descripcionser_d = s.nombre_sistema
SET ppc.id_sistema = s.id_sistema;

-- Llenar id_sistema en productos_por_consultor cursos
UPDATE humansma_ventas.productos_por_consultor ppc
INNER JOIN sistemas s ON s.nombre_sistema = 'Cursos'
SET ppc.id_sistema = s.id_sistema
WHERE ppc.descripcionser_d = 'Curso In Company';


-- Normalización de la tabla unidades_negocio: 
ALTER TABLE humansma_ventas.humansma_administracion.unidades_negocio
  CHANGE descripcionser descripcionser_d TEXT NOT NULL,
  ADD id_sistema INT NOT NULL AFTER id;

-- Llenar id_sistema en unidades_negocio según el nombre de producto
UPDATE humansma_administracion.unidades_negocio un
INNER JOIN humansma_ventas.sistemas s ON un.descripcionser_d = s.nombre_sistema
SET un.id_sistema = s.id_sistema;

UPDATE humansma_administracion.unidades_negocio un
INNER JOIN humansma_ventas.sistemas s ON un.descripcionser_d = s.nombre_anterior
SET un.id_sistema = s.id_sistema;

UPDATE humansma_administracion.unidades_negocio un
INNER JOIN humansma_ventas.sistemas s ON s.nombre_sistema = 'Vorecol – Recruiting'
SET un.id_sistema = s.id_sistema
WHERE un.descripcionser_d IN ('Empleo especializado', 'Empleati');

UPDATE humansma_administracion.unidades_negocio un
SET un.id_sistema = 1
WHERE un.id_sistema = 0;

-- Eliminar los repetidos pero antes transferir los datos de la tabla registro_gastos
UPDATE humansma_administracion.registro_gastos rg
INNER JOIN unidades_negocio un ON rg.id_centro_costo = un.id
AND un.id_sistema = 1
SET rg.id_centro_costo = 7;

UPDATE humansma_administracion.registro_gastos rg
INNER JOIN unidades_negocio un ON rg.id_centro_costo = un.id
AND un.id_sistema = 7
SET rg.id_centro_costo = 16;

DELETE FROM humansma_administracion.unidades_negocio
WHERE id_sistema = 1 AND id != 7;

DELETE FROM humansma_administracion.unidades_negocio
WHERE id_sistema = 7 AND id != 16;



