-- MySQL dump 10.13 Distrib 5.7.17, for Win64 (x86_64)
--
-- Host: 127.0.0.1 Database: vncontrol
-- ------------------------------------------------------
-- Server version 5.6.37
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Current Database: `vncontrol`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `vncontrol` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `vncontrol`;
--
-- Table structure for table `accion`
--
DROP TABLE IF EXISTS `accion`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `accion` (
`accion_id` int(11) NOT NULL AUTO_INCREMENT,
`accion` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`accion_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `clientes_match`
--
DROP TABLE IF EXISTS `clientes_match`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `clientes_match` (
`Id_cliente` int(11) NOT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `daily_task_log`
--
DROP TABLE IF EXISTS `daily_task_log`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `daily_task_log` (
`state` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='No he encontrado el lugar en el que vicente almacena la hora en que se ejecutan las daily tasks, asi que he hecho esta tabla, a eliminar cuando se considere oportuno';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `fallo`
--
DROP TABLE IF EXISTS `fallo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `fallo` (
`queja_id` int(10) unsigned NOT NULL,
`accion_id` int(11) NOT NULL,
PRIMARY KEY (`queja_id`,`accion_id`),
KEY `accion` (`accion_id`,`queja_id`),
KEY `fallo` (`queja_id`),
CONSTRAINT `accion` FOREIGN KEY (`accion_id`) REFERENCES `accion` (`accion_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `inter`
--
DROP TABLE IF EXISTS `inter`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `inter` (
`inter_id` int(11) NOT NULL AUTO_INCREMENT,
`state_id` tinyint(3) unsigned NOT NULL,
`fallo_id` int(10) unsigned NOT NULL DEFAULT '21',
`nota` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) DEFAULT NULL,
`Id_Trabajador` int(11) DEFAULT NULL,
`Id_Supervisor` int(11) DEFAULT NULL,
PRIMARY KEY (`inter_id`),
KEY `currante` (`Id_Trabajador`),
KEY `responsable` (`Id_Supervisor`),
KEY `ticket` (`Id_Ticket`),
KEY `inter_state` (`state_id`),
CONSTRAINT `currante` FOREIGN KEY (`Id_Trabajador`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `inter_ibfk_1` FOREIGN KEY (`Id_Ticket`) REFERENCES `vn2008`.`Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `inter_state` FOREIGN KEY (`state_id`) REFERENCES `vn2008`.`state` (`id`) ON UPDATE CASCADE,
CONSTRAINT `responsable` FOREIGN KEY (`Id_Supervisor`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `interBeforeInsert`
BEFORE INSERT ON `inter` FOR EACH ROW
BEGIN
DECLARE contados INT;
DECLARE vSupervisor INT;
SELECT Id_Trabajador INTO vSupervisor FROM vn2008.Trabajadores WHERE user_id = account.userGetId();
SET NEW.Id_Supervisor = IFNULL(vSupervisor,5);
IF NEW.state_id = 5
THEN
SELECT count(Id_Ticket) INTO contados
FROM vncontrol.inter
WHERE state_id = 5
AND Id_Ticket = NEW.Id_Ticket
AND IFNULL(Id_Supervisor,-1) <> vSupervisor
AND TIMESTAMPADD(SECOND, 60, odbc_date) >= NOW();
IF contados <> 0 THEN
CALL util.throw ('FALLO_AL_INSERTAR');
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vncontrol`.`interAfterInsert`
AFTER INSERT ON `inter` FOR EACH ROW
BEGIN
REPLACE vn2008.Tickets_state(Id_Ticket, inter_id,state_name)
SELECT NEW.Id_Ticket, NEW.inter_id, s.`name` FROM vn2008.state s WHERE s.id = NEW.state_id;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vncontrol`.`interAfterUpdate`
AFTER UPDATE ON `inter` FOR EACH ROW
BEGIN
DECLARE intIdTicket INT;
DECLARE intInterId INT;
DECLARE strName VARCHAR(15);
IF (NEW.state_id <> OLD.state_id) THEN
REPLACE INTO vn2008.Tickets_state(Id_Ticket, inter_id,state_name)
SELECT NEW.Id_Ticket, NEW.inter_id, s.`name`
FROM vn2008.state s WHERE s.id = NEW.state_id;
END IF;
IF (NEW.Id_Ticket <> OLD.Id_Ticket) THEN
SELECT i.Id_Ticket, i.inter_id, s.`name`
INTO intIdTicket, intInterId, strName
FROM vncontrol.inter i
JOIN vn2008.state s ON i.state_id = s.id
WHERE Id_Ticket = NEW.Id_Ticket
ORDER BY odbc_date DESC
LIMIT 1;
IF intIdTicket > 0 THEN
REPLACE INTO vn2008.Tickets_state(Id_Ticket, inter_id,state_name)
VALUES(intIdTicket, intInterId, strName);
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vncontrol`.`interAfterDelete`
AFTER DELETE ON `inter` FOR EACH ROW
BEGIN
DECLARE intIdTicket INT;
DECLARE intInterId INT;
DECLARE strName VARCHAR(15);
DECLARE CONTINUE HANDLER FOR SQLSTATE '23000'
BEGIN
DELETE FROM vn2008.Tickets_state
WHERE Id_Ticket = OLD.Id_Ticket;
END;
IF OLD.odbc_date > TIMESTAMPADD(WEEK, -1, CURDATE()) THEN
SELECT i.Id_Ticket, i.inter_id, s.`name`
INTO intIdTicket, intInterId, strName
FROM vncontrol.inter i
JOIN vn2008.state s ON i.state_id = s.id
WHERE Id_Ticket = OLD.Id_Ticket
ORDER BY odbc_date DESC
LIMIT 1;
IF intIdTicket > 0 THEN
REPLACE INTO vn2008.Tickets_state(Id_Ticket, inter_id,state_name)
VALUES (intIdTicket, intInterId, strName);
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Dumping events for database 'vncontrol'
--
--
-- Dumping routines for database 'vncontrol'
--
/*!50003 DROP PROCEDURE IF EXISTS `clean` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean`()
BEGIN
DECLARE v_date2 DATETIME DEFAULT TIMESTAMPADD(MONTH, -2,CURDATE());
INSERT INTO vncontrol.daily_task_log(state) VALUES('clean START');
DELETE FROM vncontrol.inter WHERE odbc_date <= v_date2;
INSERT INTO vncontrol.daily_task_log(state) VALUES('clean END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Resumen` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Resumen`()
BEGIN
select accion, CodigoTrabajador, semana, Pedidos, Lineas
from accion
join
(
SELECT * FROM
(
select count(*) as Pedidos, semana, Id_Trabajador, accion_id
from
(select distinct *
from
(
select vn2008.semana(odbc_date) as semana
,Id_Trabajador
,accion_id
,Id_Ticket
from vncontrol.inter
) sub
) sub2
group by semana, Id_Trabajador, accion_id
) subpedidos
inner join
(
select semana, Id_Trabajador, accion_id, count(*) as Lineas
from vn2008.Movimientos
inner join
(
select distinct vn2008.semana(odbc_date) as semana, Id_Ticket, Id_Trabajador, accion_id from vncontrol.inter
) vnc using(Id_Ticket)
group by semana, Id_Trabajador, accion_id
) sublineas using(semana, Id_Trabajador, accion_id)
) sub3 using(accion_id)
join vn2008.Trabajadores using(Id_Trabajador)
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Current Database: `edi`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `edi` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `edi`;
--
-- Table structure for table `batch`
--
DROP TABLE IF EXISTS `batch`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `batch` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`message_id` int(10) unsigned NOT NULL,
`type_id` smallint(5) unsigned NOT NULL,
`buy_edi_id` int(10) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `type_id` (`type_id`,`buy_edi_id`),
KEY `message_id` (`message_id`),
KEY `buy_edi_id` (`buy_edi_id`),
CONSTRAINT `batch_ibfk_1` FOREIGN KEY (`message_id`) REFERENCES `message` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `batch_ibfk_2` FOREIGN KEY (`buy_edi_id`) REFERENCES `vn2008`.`buy_edi` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `batch_type`
--
DROP TABLE IF EXISTS `batch_type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `batch_type` (
`id` mediumint(8) unsigned NOT NULL,
`description` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `bucket`
--
DROP TABLE IF EXISTS `bucket`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `bucket` (
`bucket_id` int(11) unsigned NOT NULL,
`bucket_type_id` mediumint(8) unsigned NOT NULL,
`description` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`x_size` mediumint(8) unsigned NOT NULL,
`y_size` mediumint(8) unsigned NOT NULL,
`z_size` mediumint(8) unsigned NOT NULL,
`entry_date` date DEFAULT NULL,
`expiry_date` date DEFAULT NULL,
`change_date_time` datetime DEFAULT NULL,
PRIMARY KEY (`bucket_id`),
KEY `group_id` (`y_size`),
KEY `plant_id` (`x_size`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/VBN020101/CK090916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `bucket_type`
--
DROP TABLE IF EXISTS `bucket_type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `bucket_type` (
`bucket_type_id` mediumint(8) unsigned NOT NULL,
`description` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date DEFAULT NULL,
`expiry_date` date DEFAULT NULL,
`change_date_time` datetime DEFAULT NULL,
PRIMARY KEY (`bucket_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/VBN020101/FB090916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `config`
--
DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`log_mail` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Mail where the log information is sent',
`presale_id` mediumint(8) unsigned DEFAULT NULL,
`default_kop` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `presale_id` (`presale_id`),
CONSTRAINT `config_ibfk_1` FOREIGN KEY (`presale_id`) REFERENCES `batch_type` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Configuration parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `feature`
--
DROP TABLE IF EXISTS `feature`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `feature` (
`item_id` int(11) unsigned NOT NULL,
`feature_type_id` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`feature_value` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date NOT NULL,
`expiry_date` date NOT NULL,
`change_date_time` datetime NOT NULL,
PRIMARY KEY (`item_id`,`feature_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FF130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `file_config`
--
DROP TABLE IF EXISTS `file_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `file_config` (
`file_name` varchar(2) COLLATE utf8_unicode_ci NOT NULL,
`to_table` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`file` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`updated` date DEFAULT NULL,
PRIMARY KEY (`file_name`),
UNIQUE KEY `to_table` (`to_table`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ftp_config`
--
DROP TABLE IF EXISTS `ftp_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ftp_config` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`host` varchar(255) CHARACTER SET utf8 NOT NULL,
`user` varchar(50) CHARACTER SET utf8 NOT NULL,
`password` varchar(50) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Configuration parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `genus`
--
DROP TABLE IF EXISTS `genus`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `genus` (
`genus_id` mediumint(8) unsigned NOT NULL,
`latin_genus_name` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date DEFAULT NULL,
`expiry_date` date DEFAULT NULL,
`change_date_time` datetime DEFAULT NULL,
PRIMARY KEY (`genus_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FG130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `goodCharacteristic`
--
DROP TABLE IF EXISTS `goodCharacteristic`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `goodCharacteristic` (
`supplyResponse` varchar(26) COLLATE utf8_unicode_ci NOT NULL,
`type` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'edi.type',
`value` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'edi.value',
PRIMARY KEY (`supplyResponse`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `imap_config`
--
DROP TABLE IF EXISTS `imap_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `imap_config` (
`id` tinyint(3) unsigned NOT NULL,
`host` varchar(150) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'localhost',
`user` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`pass` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`clean_period` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'How long the old mails are preserved',
`success_folder` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,
`error_folder` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='IMAP configuration parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `item`
--
DROP TABLE IF EXISTS `item`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `item` (
`id` int(11) unsigned NOT NULL,
`product_name` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`name` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`plant_id` mediumint(8) unsigned DEFAULT NULL,
`group_id` int(11) DEFAULT NULL,
`entry_date` date DEFAULT NULL,
`expiry_date` date DEFAULT NULL,
`change_date_time` datetime DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `group_id` (`group_id`),
KEY `plant_id` (`plant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FP130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `item_feature`
--
DROP TABLE IF EXISTS `item_feature`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `item_feature` (
`item_id` int(11) NOT NULL,
`presentation_order` tinyint(11) unsigned NOT NULL,
`feature` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`regulation_type` tinyint(3) unsigned NOT NULL,
`entry_date` date NOT NULL,
`expiry_date` date DEFAULT NULL,
`change_date_time` datetime NOT NULL,
PRIMARY KEY (`item_id`,`presentation_order`,`entry_date`,`change_date_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FY130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `item_feature_bi` BEFORE INSERT ON `item_feature` FOR EACH ROW
BEGIN
IF NEW.expiry_date = '0000-00-00' THEN
SET NEW.expiry_date = NULL;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `item_group`
--
DROP TABLE IF EXISTS `item_group`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `item_group` (
`group_code` int(11) unsigned NOT NULL,
`dutch_group_description` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date NOT NULL,
`expiry_date` date NOT NULL,
`change_date_time` datetime NOT NULL,
PRIMARY KEY (`group_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FO130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `item_track`
--
DROP TABLE IF EXISTS `item_track`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `item_track` (
`item_id` int(10) unsigned NOT NULL,
`s1` tinyint(3) NOT NULL DEFAULT '0',
`s2` tinyint(3) NOT NULL DEFAULT '0',
`s3` tinyint(3) NOT NULL DEFAULT '0',
`s4` tinyint(3) NOT NULL DEFAULT '0',
`pac` tinyint(3) NOT NULL DEFAULT '0',
`cat` tinyint(3) NOT NULL DEFAULT '0',
`ori` tinyint(3) NOT NULL DEFAULT '0',
`pro` tinyint(3) NOT NULL DEFAULT '0',
`package` tinyint(3) NOT NULL DEFAULT '0',
`s5` tinyint(3) NOT NULL DEFAULT '0',
`s6` tinyint(3) NOT NULL DEFAULT '0',
`kop` tinyint(3) NOT NULL DEFAULT '0',
`sub` tinyint(3) NOT NULL DEFAULT '0',
PRIMARY KEY (`item_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mail`
--
DROP TABLE IF EXISTS `mail`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mail` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`mail` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
`kop` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `mail` (`mail`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='List of allowed mailers';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `message`
--
DROP TABLE IF EXISTS `message`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `message` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`sender_id` int(10) unsigned DEFAULT NULL,
`mail_id` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `mail_id` (`mail_id`),
KEY `sender_id` (`sender_id`),
CONSTRAINT `message_ibfk_2` FOREIGN KEY (`sender_id`) REFERENCES `mail` (`id`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `param`
--
DROP TABLE IF EXISTS `param`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `param` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`code` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`name` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
`subname` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`position` tinyint(3) unsigned NOT NULL DEFAULT '1',
`type` enum('INTEGER','DOUBLE','STRING','DATE','TIME') COLLATE utf8_unicode_ci NOT NULL,
`required` tinyint(3) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`,`subname`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Parameters to capture of every exchange';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `plant`
--
DROP TABLE IF EXISTS `plant`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `plant` (
`plant_id` mediumint(8) unsigned NOT NULL,
`genus_id` mediumint(8) unsigned NOT NULL,
`specie_id` mediumint(8) unsigned DEFAULT NULL,
`entry_date` date DEFAULT NULL,
`expiry_date` date DEFAULT NULL,
`change_date_time` datetime DEFAULT NULL,
PRIMARY KEY (`plant_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FT130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `specie`
--
DROP TABLE IF EXISTS `specie`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `specie` (
`specie_id` mediumint(8) unsigned NOT NULL,
`genus_id` mediumint(8) unsigned NOT NULL,
`latin_species_name` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date DEFAULT NULL,
`expiry_date` date DEFAULT NULL,
`change_date_time` datetime DEFAULT NULL,
PRIMARY KEY (`specie_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FS130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `supplier`
--
DROP TABLE IF EXISTS `supplier`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `supplier` (
`supplier_id` int(10) unsigned NOT NULL COMMENT 'FHRegistrationNr',
`glnAddressCode` varchar(13) CHARACTER SET utf8 DEFAULT NULL,
`company_name` varchar(70) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date NOT NULL,
`expiry_date` date NOT NULL,
`change_date_time` datetime NOT NULL,
PRIMARY KEY (`supplier_id`),
KEY `glnaddressCodeidx` (`glnAddressCode`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/FEC010104/CC090916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `supplyResponse`
--
DROP TABLE IF EXISTS `supplyResponse`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `supplyResponse` (
`id` varchar(26) COLLATE utf8_unicode_ci NOT NULL,
`marketPlace` varchar(13) COLLATE utf8_unicode_ci NOT NULL,
`imageReference` varchar(2048) COLLATE utf8_unicode_ci DEFAULT NULL,
`supplierParty` varchar(13) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'company GLN code',
`productVnhCode` varchar(7) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Industry Assigned Id',
`productDescription` varchar(70) COLLATE utf8_unicode_ci DEFAULT NULL,
`quantity` int(8) DEFAULT NULL,
`incrementalOrderableQuantity` int(8) DEFAULT NULL,
`chargeAmount` decimal(10,2) DEFAULT NULL,
`unitCode` tinyint(2) unsigned DEFAULT NULL,
`packageQuantity` int(8) DEFAULT NULL,
`earliestDespatch` datetime DEFAULT NULL,
`latestDelivery` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `type`
--
DROP TABLE IF EXISTS `type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `type` (
`type_id` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`type_group_id` tinyint(3) unsigned NOT NULL,
`description` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date NOT NULL,
`expiry_date` date NOT NULL,
`change_date_time` datetime NOT NULL,
PRIMARY KEY (`type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FE130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `value`
--
DROP TABLE IF EXISTS `value`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `value` (
`type_id` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`type_value` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`type_description` varchar(70) COLLATE utf8_unicode_ci NOT NULL,
`entry_date` date NOT NULL,
`expiry_date` date NOT NULL,
`change_date_time` datetime NOT NULL,
PRIMARY KEY (`type_id`,`type_value`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='/tmp/floricode/florecompc2/FV130916.txt';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'edi'
--
--
-- Dumping routines for database 'edi'
--
/*!50003 DROP PROCEDURE IF EXISTS `batchNew` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `batchNew`(
vMessage INT
,vItem VARCHAR(255)
,vType MEDIUMINT
,vDeliveryNumber BIGINT
,vDate DATE
,vHour TIME
,vRef INT
,vAgj INT
,vCat VARCHAR(2)
,vPac INT
,vSub MEDIUMINT
,vKop INT
,vPtd VARCHAR(6)
,vPro MEDIUMINT
,vOrigin VARCHAR(3)
,vPtj MEDIUMINT
,vQuantiy INT
,vPrice DOUBLE
,vClock SMALLINT
,vS1 VARCHAR(3)
,vS2 VARCHAR(3)
,vS3 VARCHAR(3)
,vS4 VARCHAR(4)
,vS5 VARCHAR(3)
,vS6 VARCHAR(3)
,vK1 SMALLINT
,vK2 SMALLINT
,vP1 TINYINT
,vP2 TINYINT
,vAuction SMALLINT
,vPackage INT
)
BEGIN
DECLARE vEdi INT;
DECLARE vRewriteKop INT DEFAULT NULL;
DECLARE vBarcode CHAR(15) DEFAULT NULL;
DECLARE vIsDuplicated BOOLEAN DEFAULT FALSE;
DECLARE vUpdateExistent BOOLEAN DEFAULT FALSE;
DECLARE CONTINUE HANDLER FOR 1062
SET vIsDuplicated = TRUE;
IF vAgj != 0 AND vAgj IS NOT NULL
THEN
SET vBarcode = CONCAT(
LPAD(vAuction, 2, 0),
LPAD(IFNULL(vClock, 99), 2, 0),
LPAD(DAYOFYEAR(vDate), 3, 0),
IF(vClock IS NULL OR vClock = 99,
LPAD(vAgj, 7, 0),
CONCAT(LPAD(vAgj, 5, 0), '01')
),
'0'
);
END IF;
IF vKop IS NULL
THEN
SELECT default_kop INTO vKop FROM config;
END IF;
SELECT e.kop INTO vRewriteKop
FROM mail e
JOIN message m ON m.sender_id = e.id
WHERE m.id = vMessage;
SET vKop = IFNULL(vRewriteKop, vKop);
INSERT INTO vn2008.buy_edi SET
barcode = IFNULL(vBarcode, barcode)
,delivery_number = vDeliveryNumber
,entry_year = YEAR(vDate)
,fec = vDate
,hor = vHour
,ref = vRef
,item = vItem
,agj = vAgj
,cat = vCat
,pac = vPac
,sub = vSub
,kop = vKop
,ptd = vPtd
,pro = vPro
,ori = vOrigin
,ptj = vPtj
,qty = vQuantiy
,pri = vPrice
,klo = vClock
,s1 = vS1
,s2 = vS2
,s3 = vS3
,s4 = vS4
,s5 = vS5
,s6 = vS6
,k01 = vK1
,k02 = vK2
,k03 = vP1
,k04 = vP2
,auction = vAuction
,package = vPackage;
IF NOT vIsDuplicated
THEN
SET vEdi = LAST_INSERT_ID();
CALL ediLoad (vEdi);
ELSEIF vDeliveryNumber != 0
AND vDeliveryNumber IS NOT NULL
THEN
SELECT id INTO vEdi
FROM vn2008.buy_edi
WHERE delivery_number = vDeliveryNumber;
SELECT COUNT(*) = 0 INTO vUpdateExistent
FROM vn2008.buy_edi e
JOIN batch b ON b.buy_edi_id = e.id
JOIN config c
WHERE e.delivery_number = vDeliveryNumber
AND b.type_id != c.presale_id;
END IF;
IF vUpdateExistent
THEN
UPDATE vn2008.buy_edi SET
barcode = IFNULL(vBarcode, barcode)
,fec = vDate
,hor = vHour
,ref = vRef
,item = vItem
,agj = vAgj
,cat = vCat
,pac = vPac
,sub = vSub
,kop = vKop
,ptd = vPtd
,pro = vPro
,ori = vOrigin
,ptj = vPtj
,qty = vQuantiy
,pri = vPrice
,klo = vClock
,s1 = vS1
,s2 = vS2
,s3 = vS3
,s4 = vS4
,s5 = vS5
,s6 = vS6
,k01 = vK1
,k02 = vK2
,k03 = vP1
,k04 = vP2
,auction = vAuction
,package = vPackage
WHERE id = vEdi;
END IF;
INSERT INTO batch SET
message_id = vMessage
,type_id = vType
,buy_edi_id = vEdi;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ediLoad` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ediLoad`(vEdi INT)
BEGIN
DECLARE vRef INT;
DECLARE vBuy INT;
DECLARE vItem INT;
DECLARE vQty INT;
DECLARE vPackage INT;
DECLARE vIsLot BOOLEAN;
SELECT ref, qty, package INTO vRef, vQty, vPackage
FROM vn2008.buy_edi e
LEFT JOIN item i ON e.ref = i.id
WHERE e.id = vEdi;
IF vPackage = 800
THEN
SET vPackage = 800 + vQty;
INSERT IGNORE INTO vn2008.Cubos SET
Id_Cubo = vPackage,
x = 7200 / vQty,
y = 1;
ELSE
INSERT IGNORE INTO vn2008.Cubos (Id_Cubo, X, Y, Z)
SELECT bucket_id, ROUND(x_size/10), ROUND(y_size/10), ROUND(z_size/10)
FROM bucket WHERE bucket_id = vPackage;
IF ROW_COUNT() > 0
THEN
INSERT INTO vn2008.mail SET
`subject` = 'Cubo añadido',
`text` = CONCAT('Se ha añadido el cubo: ', vPackage),
`to` = 'ekt@verdnatura.es';
END IF;
END IF;
INSERT IGNORE INTO item_track SET
item_id = vRef;
SELECT c.Id_Compra, c.Id_Article INTO vBuy, vItem
FROM vn2008.buy_edi e
JOIN item_track t ON t.item_id = e.ref
LEFT JOIN vn2008.buy_edi l ON l.ref = e.ref
LEFT JOIN vn2008.Compres c ON c.buy_edi_id = l.id
JOIN vn2008.config cfg
WHERE e.id = vEdi
AND l.id != vEdi
AND c.Id_Article != cfg.generic_item
AND IF(t.s1, l.s1 = e.s1, TRUE)
AND IF(t.s2, l.s2 = e.s2, TRUE)
AND IF(t.s3, l.s3 = e.s3, TRUE)
AND IF(t.s4, l.s4 = e.s4, TRUE)
AND IF(t.s5, l.s5 = e.s5, TRUE)
AND IF(t.s6, l.s6 = e.s6, TRUE)
AND IF(t.kop, l.kop = e.kop, TRUE)
AND IF(t.pac, l.pac = e.pac, TRUE)
AND IF(t.cat, l.cat = e.cat, TRUE)
AND IF(t.ori, l.ori = e.ori, TRUE)
AND IF(t.pro, l.pro = e.pro, TRUE)
AND IF(t.sub, l.sub = e.sub, TRUE)
AND IF(t.package, l.package = e.package, TRUE)
AND c.Id_Article < 170000
ORDER BY l.now DESC, c.Id_Compra ASC LIMIT 1;
IF vItem
THEN
SELECT COUNT(*) > 0 INTO vIsLot
FROM vn2008.Articles a
LEFT JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
WHERE a.Id_Article = vItem
AND t.`transaction`;
IF vIsLot
THEN
INSERT INTO vn2008.Articles (
Article
,Medida
,Categoria
,Id_Origen
,iva_group_id
,Foto
,Color
,Codintrastat
,tipo_id
,Tallos
)
SELECT
i.`name`
,IFNULL(e.s1, e.pac)
,e.cat
,IFNULL(o.id, 17)
,IFNULL(a.iva_group_id, 1)
,a.Foto
,a.Color
,a.Codintrastat
,IFNULL(a.tipo_id, 10)
,IF(a.tipo_id = 15, 0, 1)
FROM vn2008.buy_edi e
LEFT JOIN item i ON i.id = e.ref
LEFT JOIN vn2008.Origen o ON o.Abreviatura = e.ori
LEFT JOIN vn2008.Articles a ON a.Id_Article = vItem
WHERE e.id = vEdi;
SET vItem = LAST_INSERT_ID();
END IF;
END IF;
INSERT INTO vn2008.Compres
(
Id_Entrada
,buy_edi_id
,Costefijo
,Id_Article
,grouping
,caja
,Packing
,Cantidad
,Productor
,Etiquetas
,Id_Cubo
)
SELECT
cfg.edi_entry
,vEdi
,(@t := IF(a.Tallos, a.Tallos, 1)) * e.pri
,IFNULL(vItem, cfg.generic_item)
,IFNULL(c.grouping, e.pac)
,IFNULL(c.caja, TRUE)
,@pac := e.pac / @t
,@pac * e.qty
,s.company_name
,e.qty
,IFNULL(c.Id_Cubo, e.package)
FROM vn2008.buy_edi e
LEFT JOIN vn2008.Compres c ON c.Id_Compra = vBuy
LEFT JOIN vn2008.Articles a ON a.Id_Article = c.Id_Article
LEFT JOIN supplier s ON e.pro = s.supplier_id
JOIN vn2008.config cfg
WHERE e.id = vEdi
LIMIT 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `messageNew` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `messageNew`(
vMailId VARCHAR(100)
,vSender VARCHAR(150)
,OUT vMessageId INT
)
BEGIN
DECLARE vSenderId INT;
SELECT id INTO vSenderId FROM mail
WHERE mail = vSender;
INSERT IGNORE INTO message SET
sender_id = vSenderId
,mail_id = vMailId;
SET vMessageId = LAST_INSERT_ID();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `__batch_new` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `__batch_new`(
v_message INT
,v_type MEDIUMINT
,v_delivery_number BIGINT
,v_fec DATE
,v_hor TIME
,v_ref INT
,v_agj INT
,v_cat VARCHAR(2)
,v_pac INT
,v_sub MEDIUMINT
,v_kop INT
,v_ptd VARCHAR(6)
,v_pro MEDIUMINT
,v_ori VARCHAR(3)
,v_ptj MEDIUMINT
,v_qty INT
,v_pri DOUBLE
,v_klo SMALLINT
,v_s1 VARCHAR(3)
,v_s2 VARCHAR(3)
,v_s3 VARCHAR(3)
,v_s4 VARCHAR(4)
,v_s5 VARCHAR(3)
,v_s6 VARCHAR(3)
,v_k1 SMALLINT
,v_k2 SMALLINT
,v_p1 TINYINT
,v_p2 TINYINT
,v_auction SMALLINT
,v_package INT
)
BEGIN
DECLARE v_edi INT;
DECLARE v_barcode CHAR(15) DEFAULT NULL;
DECLARE v_is_duplicated BOOLEAN DEFAULT FALSE;
DECLARE v_update_existent BOOLEAN DEFAULT FALSE;
DECLARE CONTINUE HANDLER FOR 1062
SET v_is_duplicated = TRUE;
IF v_agj != 0 AND v_agj IS NOT NULL
THEN
SET v_barcode = CONCAT(
LPAD(v_auction, 2, 0),
LPAD(IFNULL(v_klo, 99), 2, 0),
LPAD(DAYOFYEAR(v_fec), 3, 0),
IF(v_klo IS NULL OR v_klo = 99,
LPAD(v_agj, 7, 0),
CONCAT(LPAD(v_agj, 5, 0), '01')
),
'0'
);
END IF;
IF v_kop IS NULL
THEN
SELECT default_kop INTO v_kop FROM config;
END IF;
INSERT INTO vn2008.buy_edi SET
barcode = IFNULL(v_barcode, barcode)
,delivery_number = v_delivery_number
,entry_year = YEAR(v_fec)
,fec = v_fec
,hor = v_hor
,ref = v_ref
,agj = v_agj
,cat = v_cat
,pac = v_pac
,sub = v_sub
,kop = v_kop
,ptd = v_ptd
,pro = v_pro
,ori = v_ori
,ptj = v_ptj
,qty = v_qty
,pri = v_pri
,klo = v_klo
,s1 = v_s1
,s2 = v_s2
,s3 = v_s3
,s4 = v_s4
,s5 = v_s5
,s6 = v_s6
,k01 = v_k1
,k02 = v_k2
,k03 = v_p1
,k04 = v_p2
,auction = v_auction
,package = v_package;
IF NOT v_is_duplicated
THEN
SET v_edi = LAST_INSERT_ID();
CALL edi_load (v_edi);
ELSEIF v_delivery_number != 0
AND v_delivery_number IS NOT NULL
THEN
SELECT id INTO v_edi
FROM vn2008.buy_edi
WHERE delivery_number = v_delivery_number;
SELECT COUNT(*) = 0 INTO v_update_existent
FROM vn2008.buy_edi e
JOIN batch b ON b.buy_edi_id = e.id
JOIN config c
WHERE e.delivery_number = v_delivery_number
AND b.type_id != c.presale_id;
END IF;
IF v_update_existent
THEN
UPDATE vn2008.buy_edi SET
barcode = IFNULL(v_barcode, barcode)
,fec = v_fec
,hor = v_hor
,ref = v_ref
,agj = v_agj
,cat = v_cat
,pac = v_pac
,sub = v_sub
,kop = v_kop
,ptd = v_ptd
,pro = v_pro
,ori = v_ori
,ptj = v_ptj
,qty = v_qty
,pri = v_pri
,klo = v_klo
,s1 = v_s1
,s2 = v_s2
,s3 = v_s3
,s4 = v_s4
,s5 = v_s5
,s6 = v_s6
,k01 = v_k1
,k02 = v_k2
,k03 = v_p1
,k04 = v_p2
,auction = v_auction
,package = v_package
WHERE id = v_edi;
END IF;
INSERT INTO batch SET
message_id = v_message
,type_id = v_type
,buy_edi_id = v_edi;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `__edi_load` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `__edi_load`(v_edi INT)
BEGIN
DECLARE v_ref INT;
DECLARE v_buy INT;
DECLARE v_item INT;
DECLARE v_qty INT;
DECLARE v_package INT;
DECLARE v_is_lot BOOLEAN;
SELECT ref, qty, package INTO v_ref, v_qty, v_package
FROM vn2008.buy_edi e
LEFT JOIN item i ON e.ref = i.id
WHERE e.id = v_edi;
IF v_package = 800
THEN
SET v_package = 800 + v_qty;
INSERT IGNORE INTO vn2008.Cubos SET
Id_Cubo = v_package,
x = 7200 / v_qty,
y = 1;
ELSE
INSERT IGNORE INTO vn2008.Cubos (Id_Cubo, X, Y, Z)
SELECT bucket_id, ROUND(x_size/10), ROUND(y_size/10), ROUND(z_size/10)
FROM bucket WHERE bucket_id = v_package;
IF ROW_COUNT() > 0
THEN
INSERT INTO vn2008.mail SET
`subject` = 'Cubo añadido',
`text` = CONCAT('Se ha añadido el cubo: ', v_package),
`to` = 'ekt@verdnatura.es';
END IF;
END IF;
INSERT IGNORE INTO item_track SET
item_id = v_ref;
SELECT c.Id_Compra, c.Id_Article INTO v_buy, v_item
FROM vn2008.buy_edi e
JOIN item_track t ON t.item_id = e.ref
LEFT JOIN vn2008.buy_edi l ON l.ref = e.ref
LEFT JOIN vn2008.Compres c ON c.buy_edi_id = l.id
JOIN vn2008.config cfg
WHERE e.id = v_edi
AND l.id != v_edi
AND c.Id_Article != cfg.generic_item
AND IF(t.s1, l.s1 = e.s1, TRUE)
AND IF(t.s2, l.s2 = e.s2, TRUE)
AND IF(t.s3, l.s3 = e.s3, TRUE)
AND IF(t.s4, l.s4 = e.s4, TRUE)
AND IF(t.s5, l.s5 = e.s5, TRUE)
AND IF(t.s6, l.s6 = e.s6, TRUE)
AND IF(t.kop, l.kop = e.kop, TRUE)
AND IF(t.pac, l.pac = e.pac, TRUE)
AND IF(t.cat, l.cat = e.cat, TRUE)
AND IF(t.ori, l.ori = e.ori, TRUE)
AND IF(t.pro, l.pro = e.pro, TRUE)
AND IF(t.sub, l.sub = e.sub, TRUE)
AND IF(t.package, l.package = e.package, TRUE)
AND c.Id_Article < 170000
ORDER BY l.now DESC, c.Id_Compra ASC LIMIT 1;
IF v_item
THEN
SELECT COUNT(*) > 0 INTO v_is_lot
FROM vn2008.Articles a
LEFT JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
WHERE a.Id_Article = v_item
AND t.`transaction`;
IF v_is_lot
THEN
INSERT INTO vn2008.Articles (
Article
,Medida
,Categoria
,Id_Origen
,iva_group_id
,Foto
,Color
,Codintrastat
,tipo_id
,Tallos
)
SELECT
i.`name`
,IFNULL(e.s1, e.pac)
,e.cat
,IFNULL(o.id, 17)
,IFNULL(a.iva_group_id, 1)
,a.Foto
,a.Color
,a.Codintrastat
,IFNULL(a.tipo_id, 10)
,IF(a.tipo_id = 15, 0, 1)
FROM vn2008.buy_edi e
LEFT JOIN item i ON i.id = e.ref
LEFT JOIN vn2008.Origen o ON o.Abreviatura = e.ori
LEFT JOIN vn2008.Articles a ON a.Id_Article = v_item
WHERE e.id = v_edi;
SET v_item = LAST_INSERT_ID();
END IF;
END IF;
INSERT INTO vn2008.Compres
(
Id_Entrada
,buy_edi_id
,Costefijo
,Id_Article
,grouping
,caja
,Packing
,Cantidad
,Productor
,Etiquetas
,Id_Cubo
)
SELECT
cfg.edi_entry
,v_edi
,(@t := IF(a.Tallos, a.Tallos, 1)) * e.pri
,IFNULL(v_item, cfg.generic_item)
,IFNULL(c.grouping, e.pac)
,IFNULL(c.caja, TRUE)
,@pac := e.pac / @t
,@pac * e.qty
,s.company_name
,e.qty
,IFNULL(c.Id_Cubo, e.package)
FROM vn2008.buy_edi e
LEFT JOIN vn2008.Compres c ON c.Id_Compra = v_buy
LEFT JOIN vn2008.Articles a ON a.Id_Article = c.Id_Article
LEFT JOIN supplier s ON e.pro = s.supplier_id
JOIN vn2008.config cfg
WHERE e.id = v_edi
LIMIT 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `__message_new` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `__message_new`(
v_mail_id VARCHAR(100)
,v_sender VARCHAR(150)
,OUT v_message_id INT
)
BEGIN
DECLARE v_sender_id INT;
SELECT id INTO v_sender_id FROM mail
WHERE mail = v_sender;
INSERT IGNORE INTO message SET
sender_id = v_sender_id
,mail_id = v_mail_id;
SET v_message_id = LAST_INSERT_ID();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Current Database: `vn2008`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `vn2008` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `vn2008`;
--
-- Table structure for table `Agencias`
--
DROP TABLE IF EXISTS `Agencias`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Agencias` (
`Id_Agencia` int(11) NOT NULL AUTO_INCREMENT,
`Agencia` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`description` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Vista` int(11) DEFAULT '0',
`m3` double DEFAULT '0',
`cod71` tinyint(3) unsigned DEFAULT '0',
`web` smallint(1) unsigned zerofill NOT NULL DEFAULT '0',
`agency_id` smallint(6) NOT NULL,
`agency_service_id` tinyint(4) NOT NULL DEFAULT '1',
`inflacion` decimal(5,2) NOT NULL DEFAULT '0.00' COMMENT 'Este valor se utiliza para aumentar el valor del componente porte.',
`is_volumetric` tinyint(1) NOT NULL DEFAULT '0',
`send_mail` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`show_AgencyName` tinyint(1) DEFAULT '1',
`tpv` tinyint(1) NOT NULL DEFAULT '1',
`externalAgency` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Agencia`),
KEY `Agencias` (`Agencia`),
KEY `Vista` (`Vista`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Agencias_dits`
--
DROP TABLE IF EXISTS `Agencias_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Agencias_dits` (
`idAgencia_dits` int(11) NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idAgencia_dits`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Agencias_province`
--
DROP TABLE IF EXISTS `Agencias_province`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Agencias_province` (
`province_id` smallint(6) unsigned NOT NULL,
`agency_id` smallint(5) unsigned NOT NULL,
`zona` tinyint(4) NOT NULL,
`warehouse_id` smallint(6) unsigned NOT NULL,
`route` tinyint(4) NOT NULL COMMENT 'Etiqueta zeleris',
PRIMARY KEY (`province_id`,`agency_id`,`warehouse_id`),
KEY `warehouse_id` (`warehouse_id`),
KEY `agency_id` (`agency_id`),
CONSTRAINT `Agencias_province_ibfk_1` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Agencias_province_ibfk_2` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Agencias_province_ibfk_3` FOREIGN KEY (`agency_id`) REFERENCES `agency` (`agency_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Agencias_zonas`
--
DROP TABLE IF EXISTS `Agencias_zonas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Agencias_zonas` (
`Id_Agencia` int(11) NOT NULL,
`zona` tinyint(4) NOT NULL,
`price` double NOT NULL,
`Id_Article` int(10) NOT NULL DEFAULT '71',
`warehouse_id` smallint(6) NOT NULL DEFAULT '1',
`porte_minimo` tinyint(1) NOT NULL DEFAULT '0',
`inflacion` decimal(5,2) NOT NULL DEFAULT '1.00',
PRIMARY KEY (`Id_Agencia`,`zona`,`Id_Article`,`warehouse_id`),
KEY `Id_Article` (`Id_Article`),
CONSTRAINT `Agencias_zonas_ibfk_1` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Agencias_zonas_ibfk_2` FOREIGN KEY (`Id_Agencia`) REFERENCES `Agencias` (`Id_Agencia`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Articles`
--
DROP TABLE IF EXISTS `Articles`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Articles` (
`Id_Article` int(11) NOT NULL AUTO_INCREMENT,
`Equivalente` int(11) unsigned DEFAULT NULL,
`Article` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Medida` int(10) unsigned DEFAULT NULL,
`Tallos` int(11) DEFAULT '1',
`PVP` double DEFAULT '0',
`Imprimir` tinyint(1) NOT NULL DEFAULT '0',
`Albaranero` tinyint(1) NOT NULL DEFAULT '0',
`iva_group_id` tinyint(4) unsigned NOT NULL DEFAULT '1',
`Familia` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'VT',
`caja` tinyint(1) NOT NULL DEFAULT '0',
`Categoria` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`id_origen` tinyint(2) unsigned NOT NULL,
`do_photo` tinyint(4) NOT NULL DEFAULT '0',
`Foto` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Color` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`Nicho` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Codintrastat` int(8) unsigned zerofill DEFAULT NULL,
`Min` tinyint(1) NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`offer` tinyint(4) NOT NULL DEFAULT '0',
`bargain` tinyint(4) NOT NULL DEFAULT '0',
`comments` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'renombrar: reference',
`tipo_id` smallint(5) unsigned NOT NULL,
`generic` tinyint(1) unsigned zerofill NOT NULL DEFAULT '0',
`producer_id` mediumint(3) unsigned DEFAULT NULL,
`description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`density` double NOT NULL DEFAULT '167' COMMENT 'Almacena la densidad en kg/m3 para el calculo de los portes ',
`relevancy` tinyint(1) NOT NULL DEFAULT '0',
`expenceFk` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '7001000000',
PRIMARY KEY (`Id_Article`),
KEY `Article` (`Article`),
KEY `Color` (`Color`),
KEY `id_origen` (`id_origen`),
KEY `Codintrastat` (`Codintrastat`),
KEY `iva_group_id` (`iva_group_id`),
KEY `tipo_id` (`tipo_id`),
KEY `producer_id` (`producer_id`),
KEY `expenceFk_idx` (`expenceFk`),
CONSTRAINT `Articles_ibfk_1` FOREIGN KEY (`id_origen`) REFERENCES `Origen` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Articles_ibfk_2` FOREIGN KEY (`Codintrastat`) REFERENCES `Intrastat` (`Codintrastat`) ON UPDATE CASCADE,
CONSTRAINT `Articles_ibfk_4` FOREIGN KEY (`iva_group_id`) REFERENCES `iva_group` (`iva_group_id`) ON UPDATE CASCADE,
CONSTRAINT `Articles_ibfk_5` FOREIGN KEY (`tipo_id`) REFERENCES `Tipos` (`tipo_id`) ON UPDATE CASCADE,
CONSTRAINT `expenceFk` FOREIGN KEY (`expenceFk`) REFERENCES `Gastos` (`Id_Gasto`) ON UPDATE CASCADE,
CONSTRAINT `producer_id` FOREIGN KEY (`producer_id`) REFERENCES `producer` (`producer_id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ArticlesBeforeInsert`
BEFORE INSERT ON `Articles` FOR EACH ROW
BEGIN
DECLARE vDensity DOUBLE;
DECLARE vInsertId INT;
IF NEW.density IS NULL
THEN
SELECT density INTO vDensity
FROM Tipos WHERE tipo_id = NEW.tipo_id;
SET NEW.density = vDensity;
END IF;
IF NEW.Foto IS NULL
THEN
SELECT `auto_increment` INTO vInsertId
FROM `information_schema`.TABLES
WHERE `table_name` = 'Articles'
AND `table_schema` = DATABASE();
SET NEW.Foto = vInsertId;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Articles_AFTER_INSERT` AFTER INSERT ON `Articles` FOR EACH ROW
BEGIN
CALL itemTagArrangedUpdate(NEW.Id_Article);
INSERT INTO vn.itemTaxCountry(itemFk, countryFk, taxClassFk)
SELECT NEW.Id_Article, 1, NEW.iva_group_id;
INSERT INTO vn.itemTaxCountry(itemFk, countryFk, taxClassFk)
SELECT NEW.Id_Article, 5, NEW.iva_group_id;
INSERT INTO vn.itemTaxCountry(itemFk, countryFk, taxClassFk)
SELECT NEW.Id_Article, 30, NEW.iva_group_id;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Articles_AFTER_UPDATE` AFTER UPDATE ON `Articles` FOR EACH ROW
BEGIN
CALL itemTagArrangedUpdate(NEW.Id_Article);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Articles_PVP`
--
DROP TABLE IF EXISTS `Articles_PVP`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Articles_PVP` (
`Id_Article` int(11) NOT NULL,
`PVP` double DEFAULT NULL,
`Id_Cliente` int(11) NOT NULL,
`Fecha` date NOT NULL,
KEY `id_article_pvp_idx` (`Id_Article`),
KEY `id_cliente_pvp_idx` (`Id_Cliente`),
CONSTRAINT `id_article_pvp` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `id_cliente_pvp` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacena los precios para etiquetar los articulos a los clientes';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Articles_botanical`
--
DROP TABLE IF EXISTS `Articles_botanical`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Articles_botanical` (
`Id_Article` int(11) NOT NULL,
`botanical` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`genus_id` mediumint(8) unsigned DEFAULT NULL,
`specie_id` mediumint(8) unsigned DEFAULT NULL,
PRIMARY KEY (`Id_Article`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Sustituye a antiguo NomBotanic de Articles';
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `Articles_botanical_bi` BEFORE INSERT ON `Articles_botanical` FOR EACH ROW
BEGIN
IF NEW.botanical = '' THEN
SET NEW.botanical = NULL;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `Articles_botanical_bu` BEFORE UPDATE ON `Articles_botanical` FOR EACH ROW
BEGIN
IF NEW.botanical = '' THEN
SET NEW.botanical = NULL;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Articles_dits`
--
DROP TABLE IF EXISTS `Articles_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Articles_dits` (
`idArticles_dits` int(11) NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idArticles_dits`),
KEY `fgkey1_idx` (`idaccion_dits`),
KEY `fgkey2_idx` (`Id_Ticket`),
KEY `fgkey3_idx` (`Id_Trabajador`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Articles_nicho`
--
DROP TABLE IF EXISTS `Articles_nicho`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Articles_nicho` (
`Id_Article` int(11) NOT NULL AUTO_INCREMENT,
`warehouse_id` smallint(6) unsigned NOT NULL DEFAULT '1',
`nicho` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`modificationDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`Id_Article`,`warehouse_id`),
KEY `Articles_nicho_wh_fk` (`warehouse_id`),
CONSTRAINT `Articles_nicho_wh_fk` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Articles_nichos_fk` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Articles_nichoBeforeInsert`
BEFORE INSERT ON `Articles_nicho` FOR EACH ROW
BEGIN
IF NEW.nicho IS NOT NULL AND NEW.nicho LIKE '%BIO%'
THEN
CALL util.debugAdd ('nicho', NEW.nicho);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Articles_nicho_AFTER_INSERT` AFTER INSERT ON `Articles_nicho` FOR EACH ROW
BEGIN
DECLARE mailText VARCHAR(90);
IF NEW.nicho LIKE 'BIONIC%' THEN
SELECT IFNULL(CONCAT(Id_Trabajador, ' ', CodigoTrabajador, ' ' ,Nombre, ' ' , Apellidos),'TRABAJADOR NO ENCONTRADO')
INTO mailText
FROM Trabajadores
WHERE Id_Trabajador = vn2008.get_Trabajador();
SELECT CONCAT(mailText, ' ', Article, ' ', Medida)
INTO mailText
FROM Articles
WHERE Id_Article = NEW.Id_Article;
INSERT INTO mail(`to`,reply_to,subject,text)
VALUES('pako@verdnatura.es,nelo@verdnatura.es','informatica@verdnatura.es','BIONIC INSERT',mailText);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Articles_nichoBeforeUpdate`
BEFORE UPDATE ON `Articles_nicho` FOR EACH ROW
BEGIN
IF NOT (NEW.nicho <=> OLD.nicho) AND NEW.nicho LIKE '%BIO%'
THEN
CALL util.debugAdd ('nicho', NEW.nicho);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Articles_nicho_AFTER_UPDATE` AFTER UPDATE ON `Articles_nicho` FOR EACH ROW
BEGIN
DECLARE mailText VARCHAR(90);
IF NEW.nicho LIKE 'BIONIC%' THEN
SELECT IFNULL(CONCAT(Id_Trabajador, ' ', CodigoTrabajador, ' ' ,Nombre, ' ' , Apellidos),'TRABAJADOR NO ENCONTRADO')
INTO mailText
FROM Trabajadores
WHERE Id_Trabajador = vn2008.get_Trabajador();
SELECT CONCAT(mailText, ' ', Article, ' ', Medida)
INTO mailText
FROM Articles
WHERE Id_Article = NEW.Id_Article;
INSERT INTO mail(`to`,reply_to,subject,text)
VALUES('pako@verdnatura.es,nelo@verdnatura.es','informatica@verdnatura.es','BIONIC UPDATE',mailText);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Articles_old`
--
DROP TABLE IF EXISTS `Articles_old`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Articles_old` (
`Id_Article` int(11) NOT NULL DEFAULT '0',
`Equivalente` int(11) unsigned DEFAULT NULL,
`Article` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Medida` int(10) unsigned DEFAULT NULL,
`Tallos` int(11) DEFAULT '1',
`PVP` double DEFAULT '0',
`Imprimir` tinyint(1) NOT NULL DEFAULT '0',
`Albaranero` tinyint(1) NOT NULL DEFAULT '0',
`iva_group_id` tinyint(4) unsigned NOT NULL DEFAULT '1',
`Familia` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'VT',
`caja` tinyint(1) NOT NULL DEFAULT '0',
`Categoria` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`id_origen` tinyint(2) unsigned NOT NULL,
`do_photo` tinyint(4) NOT NULL DEFAULT '0',
`Foto` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Color` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`Nicho` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Codintrastat` int(8) unsigned zerofill DEFAULT NULL,
`Min` tinyint(1) NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`offer` tinyint(4) NOT NULL DEFAULT '0',
`bargain` tinyint(4) NOT NULL DEFAULT '0',
`comments` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'renombrar: reference',
`tipo_id` smallint(5) unsigned NOT NULL,
`generic` tinyint(1) unsigned zerofill NOT NULL DEFAULT '0',
`producer_id` mediumint(3) unsigned DEFAULT NULL,
`description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Baldas`
--
DROP TABLE IF EXISTS `Baldas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Baldas` (
`Id_Estanterias` int(11) NOT NULL,
`Id_Baldas` int(11) NOT NULL,
`h` int(11) NOT NULL,
PRIMARY KEY (`Id_Estanterias`,`Id_Baldas`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Bancos`
--
DROP TABLE IF EXISTS `Bancos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Bancos` (
`Id_Banco` int(11) NOT NULL DEFAULT '0',
`Banco` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cuenta` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`cash` smallint(6) NOT NULL DEFAULT '0',
`warehouse_id` smallint(5) unsigned NOT NULL DEFAULT '1',
`entity_id` int(10) unsigned NOT NULL,
`activo` tinyint(4) NOT NULL DEFAULT '1',
PRIMARY KEY (`Id_Banco`),
KEY `BancosBanco` (`Banco`),
KEY `fk_Bancos_entity1_idx` (`entity_id`),
KEY `foreignkey1_idx` (`cash`),
CONSTRAINT `foreignkey1` FOREIGN KEY (`cash`) REFERENCES `vn`.`accountingType` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Apunta a la vista vn.Accounting\nLa columna cash es la FK de vn.AccountingType';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Bancos_poliza`
--
DROP TABLE IF EXISTS `Bancos_poliza`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Bancos_poliza` (
`poliza_id` int(11) NOT NULL AUTO_INCREMENT,
`referencia` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`importe` double NOT NULL,
`com_dispuesto` double DEFAULT NULL,
`com_no_dispuesto` double DEFAULT NULL,
`com_anual` double DEFAULT NULL,
`apertura` date NOT NULL,
`cierre` date DEFAULT NULL,
`Id_Banco` int(11) NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
PRIMARY KEY (`poliza_id`),
KEY `Id_Banco_Poliza_idx` (`Id_Banco`),
KEY `Id_Poliza_Empresa_idx` (`empresa_id`),
CONSTRAINT `Id_Banco_Poliza` FOREIGN KEY (`Id_Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE,
CONSTRAINT `Id_Poliza_Empresa` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Lineas de credito asociadas a cuentas corrientes';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Brasa`
--
DROP TABLE IF EXISTS `Brasa`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Brasa` (
`Id_Cliente` int(10) unsigned NOT NULL DEFAULT '0',
`Cliente` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Vista` int(10) unsigned NOT NULL DEFAULT '0',
`Reg` bigint(21) unsigned NOT NULL DEFAULT '0',
`Consumo` double NOT NULL,
`Grupo` int(10) unsigned NOT NULL,
PRIMARY KEY (`Id_Cliente`),
KEY `Index_1` (`Id_Cliente`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Cajas`
--
DROP TABLE IF EXISTS `Cajas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Cajas` (
`Id_Caja` int(11) NOT NULL AUTO_INCREMENT,
`Cajafecha` date NOT NULL,
`Partida` tinyint(1) NOT NULL DEFAULT '0',
`Serie` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL,
`Numero` int(11) DEFAULT NULL,
`Concepto` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Entrada` decimal(10,2) DEFAULT NULL,
`Salida` decimal(10,2) DEFAULT NULL,
`Id_Banco` int(11) DEFAULT '1',
`Id_Trabajador` int(11) DEFAULT NULL,
`empresa_id` smallint(5) unsigned DEFAULT NULL COMMENT 'kakear',
`linked` tinyint(4) DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`ok` tinyint(4) NOT NULL DEFAULT '0',
`warehouse_id` smallint(5) unsigned NOT NULL DEFAULT '1' COMMENT 'to kak\n',
`conciliado` int(2) NOT NULL DEFAULT '0',
`Proveedores_account_Id` mediumint(8) unsigned NOT NULL,
`id_calculated` varchar(90) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Caja`),
UNIQUE KEY `id_calculated_UNIQUE` (`id_calculated`),
KEY `CajasCajafecha` (`Cajafecha`),
KEY `Id_Banco` (`Id_Banco`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `empresa_id` (`empresa_id`),
KEY `warehouse_id` (`warehouse_id`),
KEY `fk_Cajas_Proveedores_account1_idx` (`Proveedores_account_Id`),
CONSTRAINT `Cajas_ibfk_2` FOREIGN KEY (`Id_Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`CajasBeforeInsert` BEFORE INSERT ON `Cajas` FOR EACH ROW
BEGIN
IF IFNULL(NEW.Concepto,"") = "" THEN
CALL util.throw ('Error. El concepto esta vacío');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Cajas eliminadas`
--
DROP TABLE IF EXISTS `Cajas eliminadas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Cajas eliminadas` (
`Id_Caja` int(11) NOT NULL DEFAULT '0',
`Cajafecha` datetime DEFAULT NULL,
`Partida` tinyint(1) NOT NULL DEFAULT '0',
`Serie` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL,
`Numero` int(11) DEFAULT NULL,
`Concepto` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Entrada` double DEFAULT NULL,
`Salida` double DEFAULT NULL,
PRIMARY KEY (`Id_Caja`),
KEY `CajasCajafecha` (`Cajafecha`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Clases`
--
DROP TABLE IF EXISTS `Clases`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Clases` (
`Id_Clase` int(11) NOT NULL DEFAULT '0',
`Clase` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Clase`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Clientes`
--
DROP TABLE IF EXISTS `Clientes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Clientes` (
`id_cliente` int(11) NOT NULL AUTO_INCREMENT,
`cliente` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`descuento` tinyint(3) unsigned NOT NULL DEFAULT '0',
`default_address` int(11) DEFAULT NULL,
`domicilio` longtext COLLATE utf8_unicode_ci,
`if` varchar(14) COLLATE utf8_unicode_ci DEFAULT NULL,
`telefono` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`fax` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL,
`e-mail` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,
`cc` varchar(23) COLLATE utf8_unicode_ci DEFAULT NULL,
`vencimiento` smallint(6) NOT NULL DEFAULT '5',
`recibo` int(11) DEFAULT '1' COMMENT 'Deprecated',
`oficial` tinyint(1) NOT NULL DEFAULT '1' COMMENT 'Deprecated',
`contabilizado` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Deprecated',
`movil` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cuenta` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`RE` tinyint(1) NOT NULL DEFAULT '0',
`poblacion` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL,
`province_id` smallint(5) unsigned DEFAULT NULL,
`codPostal` varchar(8) COLLATE utf8_unicode_ci DEFAULT NULL,
`razonSocial` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
`contacto` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`mayorista` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Deprecated',
`reexpedicion` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Deprecated',
`invoice` tinyint(1) NOT NULL DEFAULT '1',
`notas` text COLLATE utf8_unicode_ci COMMENT 'Deprecated',
`notas_administracion` text COLLATE utf8_unicode_ci NOT NULL COMMENT 'Deprecated',
`copiaFactura` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Deprecated',
`retener` tinyint(1) NOT NULL DEFAULT '0',
`congelado` tinyint(1) NOT NULL DEFAULT '0',
`Id_Trabajador` int(11) DEFAULT NULL,
`credito` double NOT NULL DEFAULT '0',
`cyc` double DEFAULT NULL,
`Id_Pais` mediumint(8) unsigned NOT NULL DEFAULT '1',
`activo` tinyint(1) NOT NULL DEFAULT '1',
`gestdoc_id` int(11) DEFAULT NULL,
`calidad` int(2) DEFAULT '11',
`pay_met_id` tinyint(3) unsigned NOT NULL DEFAULT '5',
`created` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`mail` tinyint(1) NOT NULL DEFAULT '1',
`chanel_id` smallint(6) DEFAULT NULL,
`vies` tinyint(4) NOT NULL DEFAULT '0',
`split_holland` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'eliminar',
`sepaFth` tinyint(1) DEFAULT '0' COMMENT 'campo para recibir los escritos de los clientes para el sepa',
`sepaVnl` tinyint(1) DEFAULT '0',
`coreFth` tinyint(1) DEFAULT '0',
`coreVnl` tinyint(1) DEFAULT '0',
`risk_calculated` date NOT NULL,
`coreVnh` tinyint(1) DEFAULT '0',
`real` tinyint(1) NOT NULL DEFAULT '1' COMMENT 'Define los clientes cuyas ventas hay que tener en cuenta en los calculos estadisticos.',
`clientes_tipo_id` int(11) NOT NULL DEFAULT '1',
`postcode_id` int(11) unsigned DEFAULT NULL,
`mail_address` int(11) DEFAULT NULL,
`codpos` char(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`creditInsurance` int(11) DEFAULT NULL,
`EYPBC` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Email\nYesterday\nPurchases\nBy\nConsigna',
`invoiceByAddress` tinyint(1) DEFAULT '0',
`cplusTerIdNifFk` int(11) NOT NULL DEFAULT '1',
`isCreatedAsServed` tinyint(1) DEFAULT '0',
`hasInvoiceSimplified` tinyint(1) DEFAULT '0',
`iban` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id_cliente`),
UNIQUE KEY `IF` (`if`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `Id_Pais` (`Id_Pais`),
KEY `pay_met_id` (`pay_met_id`),
KEY `canal_nuevo_cliente` (`chanel_id`),
KEY `Cuenta` (`Cuenta`),
KEY `province_id` (`province_id`),
KEY `default_address` (`default_address`),
KEY `Telefono` (`telefono`),
KEY `movil` (`movil`),
KEY `tipos_de_cliente_idx` (`clientes_tipo_id`),
KEY `cpostcode_fk_idx` (`postcode_id`),
KEY `codpos` (`codpos`,`codPostal`),
KEY `clientes_fk_6_idx` (`cplusTerIdNifFk`),
CONSTRAINT `Clientes_ibfk_1` FOREIGN KEY (`Id_Pais`) REFERENCES `Paises` (`Id`) ON UPDATE CASCADE,
CONSTRAINT `Clientes_ibfk_2` FOREIGN KEY (`pay_met_id`) REFERENCES `pay_met` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Clientes_ibfk_3` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `Clientes_ibfk_4` FOREIGN KEY (`default_address`) REFERENCES `Consignatarios` (`id_consigna`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `Clientes_ibfk_5` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON UPDATE CASCADE,
CONSTRAINT `Clientes_postcode` FOREIGN KEY (`postcode_id`) REFERENCES `postcodeKK` (`postcode_id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `canal_nuevo_cliente` FOREIGN KEY (`chanel_id`) REFERENCES `chanel` (`chanel_id`) ON UPDATE CASCADE,
CONSTRAINT `clientes_fk_6` FOREIGN KEY (`cplusTerIdNifFk`) REFERENCES `vn`.`cplusTerIdNif` (`id`) ON UPDATE CASCADE,
CONSTRAINT `tipos_de_cliente` FOREIGN KEY (`clientes_tipo_id`) REFERENCES `clientes_tipo` (`clientes_tipo_id`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `ClientesBeforeInsert`
BEFORE INSERT ON `Clientes`
FOR EACH ROW
BEGIN
CALL pbx.phoneIsValid (NEW.telefono);
CALL pbx.phoneIsValid (NEW.movil);
CALL pbx.phoneIsValid (NEW.fax);
SET NEW.cuenta = 4300000000 + NEW.Id_Cliente;
IF NEW.pay_met_id = 4 AND NEW.Vencimiento = 0 THEN
SET NEW.Vencimiento = 5;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ClientesAfterInsert`
AFTER INSERT ON `vn2008`.`Clientes`
FOR EACH ROW
BEGIN
INSERT INTO Consignatarios SET
Id_Cliente = NEW.Id_Cliente,
Domicilio = NEW.domicilio,
Poblacion = NEW.POBLACION,
province_id = NEW.province_id,
Codpostal = NEW.CODPOSTAL,
Consignatario = NEW.Cliente,
Predeterminada = TRUE,
Id_Agencia = 2,
isEqualizated = NEW.RE;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `ClientesBeforeUpdate`
BEFORE UPDATE ON `Clientes`
FOR EACH ROW
BEGIN
DECLARE vEmployee INT;
DECLARE vText VARCHAR(255) DEFAULT NULL;
IF !(NEW.telefono <=> OLD.telefono) THEN
CALL pbx.phoneIsValid (NEW.telefono);
END IF;
IF !(NEW.movil <=> OLD.movil) THEN
CALL pbx.phoneIsValid (NEW.movil);
END IF;
IF !(NEW.fax <=> OLD.fax) THEN
CALL pbx.phoneIsValid (NEW.fax);
END IF;
SELECT Id_Trabajador INTO vEmployee
FROM Trabajadores WHERE user_id = account.userGetId();
IF vEmployee IS NULL THEN
SET vEmployee = 20;
END IF;
IF !(NEW.Credito <=> OLD.Credito) AND IFNULL(NEW.Credito, 0) >= 0
THEN
INSERT INTO credit SET
Id_Cliente = NEW.Id_Cliente,
amount = NEW.Credito,
Id_Trabajador = vEmployee;
END IF;
IF NEW.sepavnl AND !OLD.sepavnl THEN
SET vText = 'Sepa de VNL';
END IF;
IF NEW.corevnl AND !OLD.corevnl THEN
SET vText = 'Core de VNL';
END IF;
IF vText IS NOT NULL
THEN
INSERT INTO mail(`to`, reply_to, subject, text)
SELECT
CONCAT(IF(ac.id,name, 'jgallego'), '@verdnatura.es'),
'administracion@verdnatura.es',
CONCAT('Cliente ', NEW.Id_Cliente),
CONCAT('Recibida la documentación: ', vText)
FROM Trabajadores t
LEFT JOIN account.user u ON t.user_id = u.id AND active
LEFT JOIN account.account ac ON ac.id = u.id
WHERE t.Id_Trabajador = NEW.Id_Trabajador;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Clientes_cedidos`
--
DROP TABLE IF EXISTS `Clientes_cedidos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Clientes_cedidos` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL,
`Id_Trabajador_old` int(11) NOT NULL,
`Id_Trabajador_new` int(11) NOT NULL,
`datSTART` date NOT NULL,
`datEND` date NOT NULL,
`comision_old` double NOT NULL DEFAULT '0.5',
`comision_new` double NOT NULL DEFAULT '0.5',
PRIMARY KEY (`id`),
KEY `trabajador_fk_idx` (`Id_Trabajador_old`),
KEY `new_trabajador_fk_idx` (`Id_Trabajador_new`),
KEY `cliente_cedido_fk_idx` (`Id_Cliente`),
CONSTRAINT `cliente_cedido_fk` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `new_trabajador_fk` FOREIGN KEY (`Id_Trabajador_new`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `trabajador_fk` FOREIGN KEY (`Id_Trabajador_old`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Clientes que se han cambiado de comercial, pero durante un tiempo comisionan a los dos, al anterior y al actual';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Clientes_dits`
--
DROP TABLE IF EXISTS `Clientes_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Clientes_dits` (
`idClientes_dits` int(11) NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idClientes_dits`),
KEY `idaccion_dits` (`idaccion_dits`),
CONSTRAINT `Clientes_dits_ibfk_1` FOREIGN KEY (`idaccion_dits`) REFERENCES `accion_dits` (`idaccion_dits`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Clientes_empresa`
--
DROP TABLE IF EXISTS `Clientes_empresa`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Clientes_empresa` (
`Id_Clientes_empresa` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL,
`fecha_ini` date NOT NULL,
`fecha_fin` date NOT NULL,
PRIMARY KEY (`Id_Clientes_empresa`),
KEY `empresa_id_idx` (`empresa_id`),
CONSTRAINT `empresa_id` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON DELETE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Empresa por defecto para crear los tickets';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Clientes_event`
--
DROP TABLE IF EXISTS `Clientes_event`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Clientes_event` (
`Id_Cliente` int(11) NOT NULL,
`quantity` tinyint(3) unsigned NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`Id_Cliente`),
CONSTRAINT `Clientes_event_ibfk_1` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Clientes_potenciales`
--
DROP TABLE IF EXISTS `Clientes_potenciales`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Clientes_potenciales` (
`id` int(11) NOT NULL,
`PAIS` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL,
`ACTIVIDAD` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`NOMBRE` varchar(45) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`PROVINCIA` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL,
`POBLACION` varchar(45) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`CP` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`DIR_POSTAL` varchar(45) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`TELEFONO` varchar(12) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`TELEFONO2` varchar(12) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`FAX` varchar(12) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`E-MAIL` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`pagweb` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`SERVICIOS` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`state_id` smallint(6) DEFAULT '0' COMMENT '0 no se ha hecho nada\n1 ya existe el cliente\n2 cliente conseguido\n3 desestimado',
`Id_Trabajador` smallint(6) DEFAULT NULL,
`Notas` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`NOMBRE`,`POBLACION`,`DIR_POSTAL`,`TELEFONO`,`TELEFONO2`,`FAX`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Colas`
--
DROP TABLE IF EXISTS `Colas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Colas` (
`Id_Cola` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Impresora` tinyint(3) unsigned DEFAULT '0',
`Id_Prioridad` tinyint(3) unsigned DEFAULT '2',
`Id_Informe` tinyint(3) unsigned DEFAULT '0',
`Id_Estado` tinyint(3) unsigned DEFAULT '1',
`Hora_Inicio` datetime DEFAULT NULL,
`Hora_Fin` datetime DEFAULT NULL,
`Cola` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Id_Trabajador` int(11) DEFAULT '20',
`Cola2` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cola3` text COLLATE utf8_unicode_ci,
`error` text COLLATE utf8_unicode_ci,
PRIMARY KEY (`Id_Cola`),
UNIQUE KEY `Id_Impresora_2` (`Id_Impresora`,`Id_Prioridad`,`Id_Informe`,`Id_Estado`,`Cola`,`Id_Trabajador`,`Cola2`),
KEY `Id_estado` (`Id_Estado`),
KEY `Id_Impresora` (`Id_Impresora`),
KEY `Id_Informe` (`Id_Informe`),
KEY `Id_Prioridad` (`Id_Prioridad`),
KEY `Id_Trabajador` (`Id_Trabajador`),
CONSTRAINT `Colas_ibfk_1` FOREIGN KEY (`Id_Informe`) REFERENCES `Informes` (`Id_Informe`) ON UPDATE CASCADE,
CONSTRAINT `Colas_ibfk_2` FOREIGN KEY (`Id_Estado`) REFERENCES `Estados` (`Id_Estado`) ON UPDATE CASCADE,
CONSTRAINT `Colas_ibfk_3` FOREIGN KEY (`Id_Prioridad`) REFERENCES `Prioridades` (`Id_Prioridad`) ON UPDATE CASCADE,
CONSTRAINT `Colas_ibfk_4` FOREIGN KEY (`Id_Impresora`) REFERENCES `Impresoras` (`Id_Impresora`) ON UPDATE CASCADE,
CONSTRAINT `Colas_ibfk_5` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Colores`
--
DROP TABLE IF EXISTS `Colores`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Colores` (
`Id_Color` int(11) NOT NULL DEFAULT '0',
`Color` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Color`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Comparativa`
--
DROP TABLE IF EXISTS `Comparativa`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Comparativa` (
`Periodo` int(11) NOT NULL,
`Id_Article` bigint(20) NOT NULL,
`warehouse_id` int(11) NOT NULL,
`Cantidad` mediumint(9) NOT NULL DEFAULT '0',
`price` mediumint(8) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`Periodo`,`Id_Article`,`warehouse_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Compres`
--
DROP TABLE IF EXISTS `Compres`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Compres` (
`Id_Compra` int(11) NOT NULL AUTO_INCREMENT,
`Id_Entrada` int(11) NOT NULL DEFAULT '0',
`Id_Article` int(11) NOT NULL DEFAULT '90',
`Cantidad` int(11) DEFAULT '0',
`dispatched` int(11) NOT NULL DEFAULT '0',
`Costefijo` decimal(10,3) DEFAULT '0.000',
`Portefijo` decimal(10,3) DEFAULT '0.000',
`Novincular` tinyint(1) NOT NULL DEFAULT '0',
`Etiquetas` int(11) DEFAULT '0',
`Packing` int(11) DEFAULT '0',
`grouping` smallint(5) unsigned NOT NULL DEFAULT '1',
`caja` tinyint(4) NOT NULL COMMENT '0=sin obligar 1=groping 2=packing',
`container_id` smallint(5) unsigned NOT NULL DEFAULT '36',
`Comisionfija` decimal(10,3) DEFAULT '0.000',
`Embalajefijo` decimal(10,3) DEFAULT '0.000',
`Nicho` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`Id_Cubo` varchar(10) COLLATE utf8_unicode_ci DEFAULT '--',
`Tarifa1` decimal(10,2) DEFAULT '0.00',
`Tarifa2` decimal(10,2) DEFAULT '0.00',
`Tarifa3` decimal(10,2) DEFAULT '0.00',
`PVP` decimal(10,2) DEFAULT '0.00',
`Productor` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Vida` int(11) DEFAULT '0',
`Id_Trabajador` int(11) DEFAULT '0',
`punteo` tinyint(1) NOT NULL DEFAULT '0',
`Volumenkk` int(11) DEFAULT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`cm2kk` int(10) unsigned NOT NULL DEFAULT '0',
`buy_edi_id` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Compra`),
KEY `CompresId_Trabajador` (`Id_Trabajador`),
KEY `Id_Cubo` (`Id_Cubo`),
KEY `Id_Entrada` (`Id_Entrada`),
KEY `container_id` (`container_id`),
KEY `buy_edi_id` (`buy_edi_id`),
KEY `itemFk_entryFk` (`Id_Article`,`Id_Entrada`),
CONSTRAINT `Compres_ibfk_1` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON UPDATE CASCADE,
CONSTRAINT `Compres_ibfk_2` FOREIGN KEY (`Id_Cubo`) REFERENCES `Cubos` (`Id_Cubo`) ON UPDATE CASCADE,
CONSTRAINT `Compres_ibfk_3` FOREIGN KEY (`container_id`) REFERENCES `container` (`container_id`) ON UPDATE CASCADE,
CONSTRAINT `buy_id` FOREIGN KEY (`Id_Entrada`) REFERENCES `Entradas` (`Id_Entrada`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`compresBeforeInsert`
BEFORE INSERT ON `vn2008`.`Compres` FOR EACH ROW
BEGIN
DECLARE vWarehouse INT;
DECLARE vLanding DATE;
DECLARE vGroup INT;
DECLARE vIsBox BOOL;
IF NEW.grouping = 0 THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT ='ERROR_GROUPING_ZERO';
END IF;
SELECT warehouse_id, landing INTO vWarehouse, vLanding
FROM Entradas E
JOIN travel T ON T.id = E.travel_id
WHERE E.Id_Entrada = NEW.Id_Entrada;
SELECT grouping, caja INTO vGroup, vIsBox
FROM Compres C
JOIN Entradas E USING(Id_Entrada)
JOIN travel T ON T.id = E.travel_id
WHERE T.landing <= vLanding
AND C.Id_Article = NEW.Id_Article
AND NOT C.Novincular
ORDER BY warehouse_id = vWarehouse DESC,landing DESC, Id_Compra DESC
LIMIT 1;
SET NEW.grouping = IFNULL(vGroup,IFNULL( NEW.grouping,1));
SET NEW.caja = IFNULL(vIsBox, IFNULL( NEW.caja,0));
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `CompresAfterInsert` AFTER INSERT ON `Compres` FOR EACH ROW BEGIN
DECLARE vWarehouse INT;
DECLARE vWarehouseOut INT;
CALL stock.queueAdd ('buy', NEW.Id_Compra, NULL);
SELECT warehouse_id, warehouse_id_out INTO vWarehouse, vWarehouseOut
FROM Entradas E
JOIN travel T ON T.id = E.travel_id
WHERE E.Id_Entrada = NEW.Id_Entrada;
REPLACE bi.rotacion(Id_Article, warehouse_id, cm3)
VALUES (NEW.Id_ARticle, vWarehouse, vn2008.cm3_unidad(NEW.Id_Compra));
IF (SELECT fuente FROM warehouse where id = vWarehouseOut AND id <> 13) AND
(SELECT has_notify_passport(NEW.Id_Article,NEW.Id_Compra))
THEN
CALL notify_passport(NEW.Id_Article, NEW.Etiquetas, NEW.Packing,NEW.Id_Compra);
CALL insert_producer_plantpassport(NEW.Id_Compra);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `CompresBeforeUpdate`
BEFORE UPDATE ON `Compres` FOR EACH ROW
BEGIN
IF NEW.grouping = 0 AND OLD.grouping <> 0 THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT ='ERROR_GROUPING_ZERO';
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `CompresAfterUpdate`
AFTER UPDATE ON `Compres` FOR EACH ROW
BEGIN
DECLARE vWarehouse INT;
DECLARE vWarehouseOut INT;
CALL stock.queueAdd ('buy', NEW.Id_Compra, OLD.Id_Compra);
SELECT warehouse_id, warehouse_id_out INTO vWarehouse, vWarehouseOut
FROM Entradas E
JOIN travel T ON T.id = E.travel_id
WHERE E.Id_Entrada = NEW.Id_Entrada;
IF NOT(NEW.Id_Cubo <=> OLD.Id_Cubo AND NEW.Id_Entrada <=> OLD.Id_Entrada)
THEN
REPLACE bi.rotacion(Id_Article, warehouse_id, cm3)
VALUES (NEW.Id_ARticle, vWarehouse, vn2008.cm3_unidad(NEW.Id_Compra));
END IF;
IF (SELECT fuente FROM warehouse where id = vWarehouseOut AND id <> 13) AND
(SELECT has_notify_passport(NEW.Id_Article,NEW.Id_Compra)) > 0
THEN
CALL notify_passport(NEW.Id_Article, NEW.Etiquetas, NEW.Packing,NEW.Id_Compra);
CALL insert_producer_plantpassport(NEW.Id_Compra);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`CompresAfterDelete`
AFTER DELETE ON `Compres` FOR EACH ROW
BEGIN
DECLARE vProvider INT;
CALL stock.queueAdd ('buy', NULL, OLD.Id_Compra);
SELECT Id_Proveedor INTO vProvider
FROM Entradas WHERE Id_Entrada = OLD.Id_Entrada;
IF OLD.Vida > 0 AND vProvider <> 4 THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT ='ERROR_DELETING_LIFE';
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Compres_2014`
--
DROP TABLE IF EXISTS `Compres_2014`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Compres_2014` (
`Id_Compra` int(11) NOT NULL AUTO_INCREMENT,
`Id_Entrada` int(11) NOT NULL DEFAULT '0',
`Id_Article` int(11) NOT NULL DEFAULT '90',
`Cantidad` int(11) DEFAULT '0',
`Costefijo` decimal(10,3) DEFAULT '0.000',
`Portefijo` decimal(10,3) DEFAULT '0.000',
`Novincular` tinyint(1) NOT NULL DEFAULT '0',
`Etiquetas` int(11) DEFAULT '0',
`Packing` int(11) DEFAULT '0',
`grouping` smallint(5) unsigned NOT NULL DEFAULT '1',
`caja` tinyint(4) NOT NULL COMMENT '0=sin obligar 1=groping 2=packing',
`container_id` smallint(5) unsigned NOT NULL DEFAULT '36',
`Comisionfija` decimal(10,3) DEFAULT '0.000',
`Embalajefijo` decimal(10,3) DEFAULT '0.000',
`Nicho` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`Id_Cubo` varchar(10) COLLATE utf8_unicode_ci DEFAULT '--',
`Tarifa1` decimal(10,2) DEFAULT '0.00',
`Tarifa2` decimal(10,2) DEFAULT '0.00',
`Tarifa3` decimal(10,2) DEFAULT '0.00',
`PVP` decimal(10,2) DEFAULT '0.00',
`Productor` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Vida` int(11) DEFAULT '0',
`Id_Trabajador` int(11) DEFAULT '0',
`punteo` tinyint(1) NOT NULL DEFAULT '0',
`Volumenkk` int(11) DEFAULT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`cm2kk` int(10) unsigned NOT NULL DEFAULT '0',
`buy_edi_id` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Compra`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Compres_mark`
--
DROP TABLE IF EXISTS `Compres_mark`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Compres_mark` (
`Id_Compra` int(11) NOT NULL,
`comment` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`mark` tinyint(1) DEFAULT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`Id_Compra`),
CONSTRAINT `Compres_mark_ibfk_1` FOREIGN KEY (`Id_Compra`) REFERENCES `Compres` (`Id_Compra`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Compres_ok`
--
DROP TABLE IF EXISTS `Compres_ok`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Compres_ok` (
`Id_Compra` int(11) NOT NULL,
`valor` tinyint(3) unsigned NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`original_quantity` double DEFAULT NULL,
`Id_Trabajador` int(11) NOT NULL,
`Id_Accion` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`Id_Compra_ok` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`Id_Compra_ok`),
KEY `Id_Movimiento` (`Id_Compra`),
KEY `Id_Accion` (`Id_Accion`),
CONSTRAINT `Compres_ok_ibfk_1` FOREIGN KEY (`Id_Compra`) REFERENCES `Compres` (`Id_Compra`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Consignatarios`
--
DROP TABLE IF EXISTS `Consignatarios`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Consignatarios` (
`id_consigna` int(11) NOT NULL AUTO_INCREMENT,
`Id_cliente` int(11) NOT NULL DEFAULT '0',
`warehouse_id` smallint(6) unsigned DEFAULT '1',
`domicilio` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`poblacion` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL,
`province_id` smallint(5) unsigned DEFAULT NULL,
`codPostal` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`telefono` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`movil` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`consignatario` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
`predeterminada` tinyint(1) NOT NULL DEFAULT '1',
`Id_Agencia` int(11) NOT NULL DEFAULT '2',
`especificaciones` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`seguro` tinyint(1) NOT NULL DEFAULT '0',
`porte` double DEFAULT NULL,
`active` tinyint(4) NOT NULL DEFAULT '1',
`postcode_id` int(11) unsigned DEFAULT NULL,
`longitude` decimal(11,7) DEFAULT NULL,
`latitude` decimal(11,7) DEFAULT NULL,
`codPos` char(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`isEqualizated` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id_consigna`),
KEY `Id_Agencia` (`Id_Agencia`),
KEY `Id_cliente` (`Id_cliente`),
KEY `warehouse_id` (`warehouse_id`),
KEY `province_id` (`province_id`),
KEY `telefono` (`telefono`),
KEY `movil` (`movil`),
KEY `Consignatarios_postcode_idx` (`postcode_id`),
KEY `CODPOSTAL` (`codPostal`),
CONSTRAINT `Consignatarios_ibfk_1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `Consignatarios_ibfk_3` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON UPDATE CASCADE,
CONSTRAINT `Consignatarios_ibfk_4` FOREIGN KEY (`Id_Agencia`) REFERENCES `Agencias` (`Id_Agencia`) ON UPDATE CASCADE,
CONSTRAINT `Consignatarios_postcode` FOREIGN KEY (`postcode_id`) REFERENCES `postcodeKK` (`postcode_id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `address_customer_id` FOREIGN KEY (`Id_cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ConsignatariosBeforeInsert`
BEFORE INSERT ON `vn2008`.`Consignatarios`
FOR EACH ROW
BEGIN
DECLARE v_has_default BOOLEAN;
DECLARE vIsEqualizated BOOLEAN;
CALL pbx.phoneIsValid (NEW.telefono);
CALL pbx.phoneIsValid (NEW.movil);
SELECT COUNT(*) > 0 INTO v_has_default
FROM Consignatarios
WHERE Id_Cliente = NEW.Id_Cliente
AND Predeterminada <> FALSE;
IF NEW.Predeterminada AND v_has_default THEN
SET NEW.Predeterminada = FALSE;
END IF;
IF NEW.isEqualizated IS NULL THEN
SELECT RE
INTO vIsEqualizated
FROM Clientes
WHERE Id_Cliente = NEW.Id_Cliente;
SET NEW.isEqualizated = vIsEqualizated;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ConsignatariosBeforeUpdate`
BEFORE UPDATE ON `vn2008`.`Consignatarios`
FOR EACH ROW
BEGIN
DECLARE vHasDefault BOOLEAN;
CALL pbx.phoneIsValid (NEW.telefono);
CALL pbx.phoneIsValid (NEW.movil);
SELECT COUNT(*) > 0 INTO vHasDefault
FROM Consignatarios
WHERE Id_Cliente = NEW.Id_Cliente
AND Predeterminada <> FALSE;
IF NOT OLD.Predeterminada AND NEW.Predeterminada AND vHasDefault THEN
SET NEW.Predeterminada = FALSE;
END IF;
IF NOT NEW.active AND (NEW.active != OLD.active) AND NEW.Predeterminada THEN
CALL util.throw ('NO SE PUEDE DESACTIVAR EL CONSIGNATARIO PREDETERMINADO');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ConsignatariosAfterUpdate` AFTER UPDATE ON `Consignatarios` FOR EACH ROW
BEGIN
DECLARE vCurDefault INT;
DECLARE vNewDefault INT;
IF NEW.Predeterminada AND (NEW.Predeterminada != OLD.Predeterminada)
THEN
UPDATE Clientes SET default_address = NEW.Id_Consigna
WHERE Id_cliente = NEW.Id_cliente;
END IF;
IF NOT NEW.active AND (NEW.active != OLD.active)
THEN
SELECT default_address INTO vCurDefault
FROM Clientes
WHERE Id_Cliente = NEW.Id_Cliente;
IF vCurDefault = NEW.Id_Consigna
THEN
SELECT Id_Consigna INTO vNewDefault
FROM Consignatarios
WHERE Id_Cliente = NEW.Id_Cliente AND active
LIMIT 1;
UPDATE Clientes SET default_address = vNewDefault
WHERE Id_Cliente = NEW.Id_Cliente;
END IF;
END IF;
IF NEW.isEqualizated != OLD.isEqualizated THEN
IF
(SELECT COUNT(*) FROM
(
SELECT DISTINCT (isEqualizated = FALSE) as Equ
FROM Consignatarios
WHERE Id_Cliente = NEW.Id_Cliente
) t1
) > 1
THEN
UPDATE Clientes
SET invoiceByAddress = TRUE
WHERE Id_Cliente = NEW.Id_Cliente;
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Consignatarios_devices`
--
DROP TABLE IF EXISTS `Consignatarios_devices`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Consignatarios_devices` (
`Id_Consigna` int(11) NOT NULL,
`serialNumber` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`notas` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Consigna`,`serialNumber`),
CONSTRAINT `Condigna_devices` FOREIGN KEY (`Id_Consigna`) REFERENCES `Consignatarios` (`id_consigna`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Contactos`
--
DROP TABLE IF EXISTS `Contactos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Contactos` (
`Id_Contacto` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Nombre` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`Apellidos` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Empresa` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cargo` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Telefono` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`Movil` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`email` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL,
`Fax` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`Notas` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Contacto`),
KEY `Telefono` (`Telefono`),
KEY `Movil` (`Movil`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ContactosBeforeInsert`
BEFORE INSERT ON `Contactos` FOR EACH ROW
BEGIN
CALL pbx.phoneIsValid (NEW.telefono);
CALL pbx.phoneIsValid (NEW.movil);
CALL pbx.phoneIsValid (NEW.fax);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ContactosBeforeUpdate`
BEFORE UPDATE ON `Contactos` FOR EACH ROW
BEGIN
CALL pbx.phoneIsValid (NEW.telefono);
CALL pbx.phoneIsValid (NEW.movil);
CALL pbx.phoneIsValid (NEW.fax);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Conteo`
--
DROP TABLE IF EXISTS `Conteo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Conteo` (
`Id_Conteo` int(11) NOT NULL AUTO_INCREMENT,
`Id_Article` int(11) NOT NULL,
`Fecha` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`dispositivo` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`warehouse_id` int(10) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`Id_Conteo`)
) ENGINE=MyISAM AUTO_INCREMENT=1079623 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `Conteo_ai` AFTER INSERT ON `Conteo` FOR EACH ROW
BEGIN
DECLARE intTravel INTEGER;
SELECT t.id INTO intTravel FROM Compres c JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
WHERE landing = CURDATE() AND c.Id_Article = NEW.Id_Article AND warehouse_id = NEW.warehouse_id AND received <> TRUE LIMIT 1;
IF (intTravel) then
UPDATE travel SET received = TRUE WHERE id = intTravel;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Cubos`
--
DROP TABLE IF EXISTS `Cubos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Cubos` (
`Id_Cubo` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`Volumen` double DEFAULT '0',
`X` double DEFAULT '0',
`Y` double DEFAULT '0',
`Z` double DEFAULT '0',
`Valor` double DEFAULT '0',
`Retornable` tinyint(1) NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`idCubos_Retorno` int(11) DEFAULT NULL,
`Bajan` int(11) DEFAULT NULL,
`Suben` int(11) DEFAULT NULL,
`Base` double DEFAULT NULL,
`item_id` int(11) DEFAULT NULL,
`pvp` double NOT NULL,
`box` tinyint(1) NOT NULL DEFAULT '0',
`bultoCubico` double DEFAULT NULL,
PRIMARY KEY (`Id_Cubo`),
KEY `Article` (`item_id`),
CONSTRAINT `Article` FOREIGN KEY (`item_id`) REFERENCES `Articles` (`Id_Article`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Cubos_Retorno`
--
DROP TABLE IF EXISTS `Cubos_Retorno`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Cubos_Retorno` (
`idCubos_Retorno` int(11) NOT NULL AUTO_INCREMENT,
`Soporte` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`Vacio` double NOT NULL DEFAULT '0',
`Lleno` double NOT NULL DEFAULT '0',
PRIMARY KEY (`idCubos_Retorno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Enlaces Facturas`
--
DROP TABLE IF EXISTS `Enlaces Facturas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Enlaces Facturas` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Asiento` int(11) DEFAULT '0',
`Apunte` int(11) DEFAULT '0',
`Data` datetime DEFAULT NULL,
`Concepto` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cuenta` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Debe` double DEFAULT NULL,
`Haber` double DEFAULT NULL,
`Contrapartida` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Contabilizado` tinyint(1) NOT NULL DEFAULT '0',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
PRIMARY KEY (`id`),
KEY `empresa_id` (`empresa_id`),
CONSTRAINT `Enlaces@0020Facturas_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Entradas`
--
DROP TABLE IF EXISTS `Entradas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Entradas` (
`Id_Entrada` int(11) NOT NULL AUTO_INCREMENT,
`Id_Proveedor` int(11) NOT NULL DEFAULT '644',
`Fecha` datetime NOT NULL,
`Referencia` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Anotadoencaja` tinyint(1) NOT NULL DEFAULT '0',
`Inventario` tinyint(1) NOT NULL DEFAULT '0',
`Notas` longtext COLLATE utf8_unicode_ci,
`Confirmada` tinyint(1) NOT NULL DEFAULT '0',
`Pedida` tinyint(1) NOT NULL DEFAULT '0',
`Redada` tinyint(1) NOT NULL DEFAULT '0',
`comision` float NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Notas_Eva` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`travel_id` int(11) unsigned DEFAULT NULL,
`Id_Moneda` tinyint(3) unsigned DEFAULT '1',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`gestdoc_id` int(11) DEFAULT NULL,
`recibida_id` mediumint(8) unsigned DEFAULT NULL,
`blocked` tinyint(4) NOT NULL DEFAULT '0',
`loadPriority` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Entrada`),
KEY `Id_Proveedor` (`Id_Proveedor`),
KEY `Fecha` (`Fecha`),
KEY `travel_id` (`travel_id`),
KEY `empresa_id` (`empresa_id`),
KEY `gestdoc_id` (`gestdoc_id`),
KEY `recibida_id` (`recibida_id`),
CONSTRAINT `Entradas_ibfk_1` FOREIGN KEY (`Id_Proveedor`) REFERENCES `Proveedores` (`Id_Proveedor`) ON UPDATE CASCADE,
CONSTRAINT `Entradas_ibfk_6` FOREIGN KEY (`travel_id`) REFERENCES `travel` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Entradas_ibfk_7` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='InnoDB free: 88064 kB; (`Id_Proveedor`) REFER `vn2008/Provee';
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`EntradasBeforeInsert`
BEFORE INSERT ON `Entradas` FOR EACH ROW
BEGIN
IF (SELECT cuenta LIKE '___4______' FROM Proveedores WHERE Id_Proveedor = NEW.Id_Proveedor) THEN
SET NEW.Id_Moneda = 2;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`EntradasBeforeUpdate`
BEFORE UPDATE ON `vn2008`.`Entradas` FOR EACH ROW
BEGIN
IF (SELECT Id_Entrada FROM Entradas_Auto WHERE Id_Entrada = NEW.Id_Entrada) AND (NEW.travel_id <> OLD.travel_id) THEN
IF
(SELECT warehouse_id FROM travel WHERE id = NEW.travel_id) <> (SELECT warehouse_id FROM travel WHERE id = OLD.travel_id) OR
(SELECT warehouse_id_out FROM travel WHERE id = NEW.travel_id) <> (SELECT warehouse_id_out FROM travel WHERE id = OLD.travel_id)
THEN
SET NEW.travel_id = OLD.travel_id;
END IF;
END IF;
IF (NEW.gestdoc_id IS NOT NULL) AND (NEW.gestdoc_id <> OLD.gestdoc_id) THEN
UPDATE
recibida_entrada re
INNER JOIN recibida r ON re.recibida_id = r.id
INNER JOIN Entradas e ON e.Id_Entrada = re.Id_Entrada
SET r.gestdoc_id = e.gestdoc_id
WHERE
e.Id_Entrada = NEW.Id_Entrada
AND r.gestdoc_id IS NULL;
END IF;
IF NEW.anotadoencaja <> OLD.anotadoencaja THEN
INSERT INTO Entradas_dits (idaccion_dits,Id_Trabajador,Id_Ticket,value_old,value_new)
VALUES (105,get_Trabajador(),NEW.Id_Entrada,OLD.anotadoencaja,NEW.anotadoencaja);
END IF;
IF NEW.Id_Proveedor <> OLD.Id_Proveedor THEN
IF (SELECT cuenta LIKE '___4______' FROM Proveedores WHERE Id_Proveedor = NEW.Id_Proveedor) THEN
SET NEW.Id_Moneda = 2;
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`EntradasAfterUpdate`
AFTER UPDATE ON `Entradas` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('entry', NEW.Id_Entrada, OLD.Id_Entrada);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`EntradasAfterDelete`
AFTER DELETE ON `Entradas` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('entry', NULL, OLD.Id_Entrada);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Entradas_Auto`
--
DROP TABLE IF EXISTS `Entradas_Auto`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Entradas_Auto` (
`Id_Entrada` int(11) NOT NULL,
PRIMARY KEY (`Id_Entrada`),
CONSTRAINT `Entradas_Auto_ibfk_1` FOREIGN KEY (`Id_Entrada`) REFERENCES `Entradas` (`Id_Entrada`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Entradas_dits`
--
DROP TABLE IF EXISTS `Entradas_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Entradas_dits` (
`idEntrada_dits` int(11) NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idEntrada_dits`),
KEY `fgkey_entradas_1_idx` (`idaccion_dits`),
KEY `fgkey_entradas_2_idx` (`Id_Ticket`),
KEY `fgkey_entradas_3_idx` (`Id_Trabajador`),
CONSTRAINT `Entradas_dits_ibfk_1` FOREIGN KEY (`Id_Ticket`) REFERENCES `Entradas` (`Id_Entrada`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `fgkey_entradas_1` FOREIGN KEY (`idaccion_dits`) REFERENCES `accion_dits` (`idaccion_dits`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `fgkey_entradas_3` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Entradas_kop`
--
DROP TABLE IF EXISTS `Entradas_kop`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Entradas_kop` (
`Id_Entradas_kop` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_Entrada` int(11) NOT NULL,
`kop` int(11) DEFAULT NULL,
`sub` mediumint(8) unsigned DEFAULT NULL,
PRIMARY KEY (`Id_Entradas_kop`),
KEY `entradas_entradas_kop_idx` (`Id_Entrada`),
CONSTRAINT `entradas_entradas_kop` FOREIGN KEY (`Id_Entrada`) REFERENCES `Entradas` (`Id_Entrada`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Relaciona las entradas con los origenes de compra';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Entradas_orden`
--
DROP TABLE IF EXISTS `Entradas_orden`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Entradas_orden` (
`Id_Entrada` int(11) NOT NULL,
`orden` int(11) NOT NULL DEFAULT '1' COMMENT '1.- Ordenar por articulo\n2.- Ordenar por compra\n',
PRIMARY KEY (`Id_Entrada`),
CONSTRAINT `entradas_entradas_orden` FOREIGN KEY (`Id_Entrada`) REFERENCES `Entradas` (`Id_Entrada`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Entradas_stack`
--
DROP TABLE IF EXISTS `Entradas_stack`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Entradas_stack` (
`Id_Entrada` int(11) NOT NULL,
`label_number` smallint(6) DEFAULT '0',
PRIMARY KEY (`Id_Entrada`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Entradas_turno`
--
DROP TABLE IF EXISTS `Entradas_turno`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Entradas_turno` (
`Id_Entrada` int(11) NOT NULL,
`weekDay` tinyint(2) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Entrada`),
CONSTRAINT `entrada_entrada_turno` FOREIGN KEY (`Id_Entrada`) REFERENCES `Entradas` (`Id_Entrada`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Estas entradas se clonan al mismo tiempo que los turnos';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `EnvioMasivo`
--
DROP TABLE IF EXISTS `EnvioMasivo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `EnvioMasivo` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`Cliente` varchar(40) COLLATE utf8_unicode_ci NOT NULL,
`Direccion` varchar(80) COLLATE utf8_unicode_ci NOT NULL,
`CP` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
`Poblacion` varchar(40) COLLATE utf8_unicode_ci NOT NULL,
`Telefono` varchar(9) COLLATE utf8_unicode_ci NOT NULL,
`Bultos` int(11) NOT NULL,
`Observaciones` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
`IdTicket` int(11) NOT NULL,
PRIMARY KEY (`Id`)
) ENGINE=MyISAM AUTO_INCREMENT=3373 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Generación de etiquetas a través de Zeleris con los clientes de esta tabla';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Equipos`
--
DROP TABLE IF EXISTS `Equipos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Equipos` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`alias` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`trabajador_id` int(11) DEFAULT NULL,
`descripcion` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`predet` int(1) unsigned zerofill DEFAULT '0',
`Left` int(5) DEFAULT '3000',
`Top` int(5) DEFAULT '3000',
`Width` int(5) DEFAULT '6360',
`Height` int(5) DEFAULT '5595',
PRIMARY KEY (`id`),
KEY `trabajador_id` (`trabajador_id`),
CONSTRAINT `Equipos_ibfk_1` FOREIGN KEY (`trabajador_id`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Espionajes`
--
DROP TABLE IF EXISTS `Espionajes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Espionajes` (
`idEspionaje` int(11) NOT NULL AUTO_INCREMENT,
`Id_Trabajador` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Fecha` date DEFAULT NULL,
`HoraEntrada` time DEFAULT NULL,
`HoraSalida` time DEFAULT NULL,
`Id_Equipo` int(11) DEFAULT NULL,
PRIMARY KEY (`idEspionaje`),
KEY `index` (`Id_Trabajador`,`Fecha`)
) ENGINE=MyISAM AUTO_INCREMENT=75646 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Estados`
--
DROP TABLE IF EXISTS `Estados`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Estados` (
`Id_Estado` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`Estado` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Estado`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Estanterias`
--
DROP TABLE IF EXISTS `Estanterias`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Estanterias` (
`Id_Estanterias` int(11) NOT NULL AUTO_INCREMENT,
`w` int(11) DEFAULT NULL,
`d` int(11) DEFAULT NULL,
`modelo` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Estanterias`)
) ENGINE=MyISAM AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Estanterias_distri`
--
DROP TABLE IF EXISTS `Estanterias_distri`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Estanterias_distri` (
`idEstanterias_distri` int(11) NOT NULL,
`posinicial` int(11) NOT NULL,
`posfinal` int(11) NOT NULL,
`Id_Estanterias` int(11) NOT NULL,
PRIMARY KEY (`Id_Estanterias`,`idEstanterias_distri`),
KEY `Estanterias_fgkey1_idx` (`Id_Estanterias`),
KEY `est_distrib_fgkey1_idx` (`idEstanterias_distri`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Estanterias_distri_name`
--
DROP TABLE IF EXISTS `Estanterias_distri_name`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Estanterias_distri_name` (
`idEstanterias_distri` int(11) NOT NULL AUTO_INCREMENT,
`Descripcion` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`idEstanterias_distri`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Extractos`
--
DROP TABLE IF EXISTS `Extractos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Extractos` (
`Id_Extracto` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Fecha` datetime NOT NULL,
`Concepto` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Debe` double unsigned zerofill NOT NULL DEFAULT '0000000000000000000000',
`Haber` double unsigned zerofill NOT NULL DEFAULT '0000000000000000000000',
`Concepto2` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Concepto3` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`Id_Extracto`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Facturas`
--
DROP TABLE IF EXISTS `Facturas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Facturas` (
`factura_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Factura` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`Serie` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`Fecha` date DEFAULT NULL,
`Importe` decimal(12,2) DEFAULT '0.00',
`Vencimiento` datetime DEFAULT NULL,
`Id_Banco` int(11) DEFAULT '0',
`Id_Cliente` int(11) DEFAULT '0',
`Id_Remesa` int(11) DEFAULT NULL,
`Remesar` tinyint(1) NOT NULL DEFAULT '0',
`BI7` decimal(12,2) DEFAULT '0.00',
`BI16` decimal(12,2) DEFAULT '0.00',
`RE1` decimal(12,2) DEFAULT '0.00',
`RE4` decimal(12,2) DEFAULT '0.00',
`IVA7` decimal(12,2) DEFAULT '0.00',
`IVA16` decimal(12,2) DEFAULT '0.00',
`Id_Trabajador` int(11) DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`liquidacion` smallint(6) DEFAULT '0',
`pdf` tinyint(3) unsigned NOT NULL DEFAULT '0',
`booked` date DEFAULT NULL,
`cplusInvoiceType477Fk` int(10) unsigned NOT NULL DEFAULT '1',
`cplusTaxBreakFk` int(10) unsigned NOT NULL DEFAULT '1',
`cplusSubjectOpFk` int(10) unsigned NOT NULL DEFAULT '1',
`cplusTrascendency477Fk` int(10) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`factura_id`,`Id_Factura`),
UNIQUE KEY `Id_Factura` (`Id_Factura`),
KEY `Id_Banco` (`Id_Banco`),
KEY `Id_Cliente` (`Id_Cliente`),
KEY `Id_Remesa` (`Id_Remesa`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `empresa_id` (`empresa_id`),
KEY `Fecha` (`Fecha`),
KEY `Facturas_ibfk_2_idx` (`cplusInvoiceType477Fk`),
KEY `Facturas_ibfk_3_idx` (`cplusSubjectOpFk`),
KEY `Facturas_ibfk_4_idx` (`cplusTaxBreakFk`),
KEY `Facturas_ibfk_5_idx` (`cplusTrascendency477Fk`),
CONSTRAINT `Facturas_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Facturas_ibfk_2` FOREIGN KEY (`cplusInvoiceType477Fk`) REFERENCES `vn`.`cplusInvoiceType477` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Facturas_ibfk_3` FOREIGN KEY (`cplusSubjectOpFk`) REFERENCES `vn`.`cplusSubjectOp` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Facturas_ibfk_4` FOREIGN KEY (`cplusTaxBreakFk`) REFERENCES `vn`.`cplusTaxBreak` (`id`) ON UPDATE CASCADE,
CONSTRAINT `invoice_bank_id` FOREIGN KEY (`Id_Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE,
CONSTRAINT `invoice_customer_id` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `FacturasBeforeInsert`
BEFORE INSERT ON `Facturas` FOR EACH ROW
BEGIN
DECLARE v_Id_Factura_serie CHAR(9) DEFAULT '0000001';
DECLARE v_Id_Factura INT;
DECLARE max_id, intLast, intProv INT;
IF NEW.empresa_id = 792 AND NEW.Fecha > '2012-12-20' THEN
SET NEW.empresa_id = 791;
END IF;
SELECT IFNULL(MAX(factura_id),0) into max_id
from Facturas
WHERE Serie LIKE NEW.Serie
AND ((Year(NEW.Fecha) = Year(Fecha)
AND empresa_id = NEW.empresa_id));
IF max_id THEN
SELECT right(max(Id_Factura), LENGTH(Id_Factura)-1) + 1
into v_Id_Factura_serie
from Facturas
WHERE Serie LIKE NEW.Serie
AND ((Year(NEW.Fecha) = Year(Fecha)
AND length(Id_Factura) > 6
AND empresa_id = NEW.empresa_id) );
ELSE
SELECT CONCAT(digito_factura,RIGHT(YEAR(CURDATE()),1),'00001') INTO v_Id_Factura_serie
FROM empresa WHERE id = NEW.empresa_id;
END IF;
SELECT CONCAT(NEW.serie, lpad(v_Id_Factura_serie,7,'0')) into v_Id_Factura_serie;
SET NEW.Id_Factura = v_Id_Factura_serie;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`FacturasAfterInsert`
AFTER INSERT ON `Facturas`
FOR EACH ROW
CALL bi.customer_risk_update (NEW.Id_Cliente, NEW.empresa_id, NEW.Importe) */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`FacturasBeforeUpdate`
BEFORE UPDATE ON `Facturas`
FOR EACH ROW
BEGIN
CALL bi.customer_risk_update (OLD.Id_Cliente, OLD.empresa_id, -OLD.Importe);
CALL bi.customer_risk_update (NEW.Id_Cliente, NEW.empresa_id, NEW.Importe);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`FacturasBeforeDelete`
BEFORE DELETE ON `Facturas`
FOR EACH ROW
CALL bi.customer_risk_update (OLD.Id_Cliente, OLD.empresa_id, -OLD.Importe) */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Familias`
--
DROP TABLE IF EXISTS `Familias`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Familias` (
`Familia` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`Subcuenta` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Descripcion` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Familia`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Forms`
--
DROP TABLE IF EXISTS `Forms`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Forms` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`titulo` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Gastos`
--
DROP TABLE IF EXISTS `Gastos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Gastos` (
`Id_Gasto` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`iva_tipo_id` tinyint(4) NOT NULL,
`Gasto` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`conbase` tinyint(4) NOT NULL DEFAULT '1',
`isWithheld` tinyint(4) NOT NULL DEFAULT '0',
`isForSale` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Gasto`,`iva_tipo_id`),
KEY `iva_tipo_id` (`iva_tipo_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Greuges`
--
DROP TABLE IF EXISTS `Greuges`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Greuges` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(10) unsigned NOT NULL,
`Comentario` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`Importe` decimal(10,2) NOT NULL,
`Fecha` datetime NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`Greuges_type_id` int(11) DEFAULT NULL,
`Id_Ticket` int(11) DEFAULT NULL,
PRIMARY KEY (`Id`),
KEY `greuges_type_fk_idx` (`Greuges_type_id`),
KEY `Id_Ticket_Greuge_Ticket_idx` (`Id_Ticket`),
CONSTRAINT `Id_Ticket_Greuge_Ticket` FOREIGN KEY (`Id_Ticket`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `greuges_type_fk` FOREIGN KEY (`Greuges_type_id`) REFERENCES `Greuges_type` (`Greuges_type_id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=FIXED;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Greuges_BEFORE_UPDATE` BEFORE UPDATE ON `Greuges` FOR EACH ROW
BEGIN
DECLARE vMaxDate DATETIME DEFAULT TIMESTAMPADD(YEAR,1,CURDATE());
IF NEW.Fecha > vMaxDate THEN
SET NEW.Fecha = vMaxDate;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Greuges_type`
--
DROP TABLE IF EXISTS `Greuges_type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Greuges_type` (
`Greuges_type_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`Greuges_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Grupos`
--
DROP TABLE IF EXISTS `Grupos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Grupos` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Grupo` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`observation_type_id` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Impresoras`
--
DROP TABLE IF EXISTS `Impresoras`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Impresoras` (
`Id_Impresora` tinyint(3) unsigned NOT NULL,
`Ruta` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Impresora` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`referencia` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`2C` tinyint(4) DEFAULT '0',
PRIMARY KEY (`Id_Impresora`),
UNIQUE KEY `referencia` (`referencia`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Informes`
--
DROP TABLE IF EXISTS `Informes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Informes` (
`Id_Informe` tinyint(3) unsigned NOT NULL,
`Informe` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Informe`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Intrastat`
--
DROP TABLE IF EXISTS `Intrastat`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Intrastat` (
`Codintrastat` int(8) unsigned zerofill NOT NULL,
`Definicion` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`import` tinyint(4) NOT NULL DEFAULT '0',
`iva_group_id` tinyint(3) unsigned NOT NULL DEFAULT '2',
`iva_codigo_id` tinyint(2) unsigned NOT NULL DEFAULT '64',
PRIMARY KEY (`Codintrastat`),
KEY `iva_group_id` (`iva_group_id`),
CONSTRAINT `Intrastat_ibfk_1` FOREIGN KEY (`iva_group_id`) REFERENCES `iva_group` (`iva_group_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Jefes`
--
DROP TABLE IF EXISTS `Jefes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Jefes` (
`Id_Trabajador` int(11) NOT NULL,
`Id_Jefe` int(11) NOT NULL,
`Departamento` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`Id_Trabajador`,`Id_Jefe`),
KEY `trabajador_jefe_idx` (`Id_Jefe`),
CONSTRAINT `trabajador_jefe` FOREIGN KEY (`Id_Jefe`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `trabajador_trabajador` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Es una tabla que se rellena desde la comparativa, tomando los datos de postgress.';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Monedas`
--
DROP TABLE IF EXISTS `Monedas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Monedas` (
`Id_Moneda` tinyint(3) unsigned NOT NULL,
`Moneda` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`Descripcion` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cambio` double NOT NULL DEFAULT '1',
PRIMARY KEY (`Id_Moneda`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Monitoring`
--
DROP TABLE IF EXISTS `Monitoring`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Monitoring` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`equipo_id` int(11) NOT NULL,
`user_id` int(11) NOT NULL,
`form_id` int(11) NOT NULL,
`cliente_id` int(11) NOT NULL,
`ticket_id` int(11) NOT NULL,
`ODBC_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `equipo_id` (`equipo_id`,`user_id`,`form_id`,`cliente_id`,`ticket_id`),
KEY `user_id` (`user_id`),
KEY `form_id` (`form_id`),
KEY `cliente_id` (`cliente_id`),
KEY `ticket_id` (`ticket_id`),
CONSTRAINT `Monitoring_ibfk_1` FOREIGN KEY (`equipo_id`) REFERENCES `Equipos` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Monitoring_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `Monitoring_ibfk_3` FOREIGN KEY (`form_id`) REFERENCES `Forms` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Movimientos`
--
DROP TABLE IF EXISTS `Movimientos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Movimientos` (
`Id_Movimiento` int(11) NOT NULL AUTO_INCREMENT,
`Id_Article` int(11) NOT NULL,
`Id_Ticket` int(11) NOT NULL,
`Concepte` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cantidad` decimal(10,2) NOT NULL DEFAULT '0.00',
`quantity` double(9,1) DEFAULT NULL,
`Preu` decimal(10,2) DEFAULT '0.00',
`Descuento` tinyint(2) unsigned NOT NULL DEFAULT '0',
`CostFixat` decimal(10,2) NOT NULL DEFAULT '0.00',
`Reservado` tinyint(1) NOT NULL DEFAULT '0',
`OK` tinyint(1) NOT NULL DEFAULT '0',
`PrecioFijado` tinyint(1) NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`Id_Movimiento`),
KEY `Id_Ticket` (`Id_Ticket`),
KEY `itemFk_ticketFk` (`Id_Article`,`Id_Ticket`),
CONSTRAINT `Movimientos_ibfk_1` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON UPDATE CASCADE,
CONSTRAINT `movement_ticket_id` FOREIGN KEY (`Id_Ticket`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`MovimientosAfterInsert`
AFTER INSERT ON `Movimientos` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('sale', NEW.Id_Movimiento, NULL);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `MovimientosBeforeUpdate`
BEFORE UPDATE ON `Movimientos` FOR EACH ROW
BEGIN
IF NEW.Descuento > 100 THEN
SET NEW.Descuento = 0;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`MovimientosAfterUpdate`
AFTER UPDATE ON `Movimientos` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('sale', NEW.Id_Movimiento, OLD.Id_Movimiento);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`MovimientosAfterDelete`
AFTER DELETE ON `Movimientos` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('sale', NULL, OLD.Id_Movimiento);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Movimientos_avisar`
--
DROP TABLE IF EXISTS `Movimientos_avisar`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Movimientos_avisar` (
`Id_Movimiento` int(11) NOT NULL,
`Id_Remitente` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Movimiento`),
KEY `Movimiento` (`Id_Movimiento`),
KEY `Remitente` (`Id_Remitente`),
CONSTRAINT `Id_Movimientos_avisar_fk` FOREIGN KEY (`Id_Movimiento`) REFERENCES `Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Movimientos_checked`
--
DROP TABLE IF EXISTS `Movimientos_checked`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Movimientos_checked` (
`Id_Movimiento` int(11) NOT NULL,
`checked` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Movimiento`),
CONSTRAINT `fk_Movimientos_checked_1` FOREIGN KEY (`Id_Movimiento`) REFERENCES `Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Movimientos_componentes`
--
DROP TABLE IF EXISTS `Movimientos_componentes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Movimientos_componentes` (
`Id_Movimiento` int(11) NOT NULL,
`Id_Componente` int(11) NOT NULL,
`Valor` double NOT NULL,
`greuge` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Movimiento`,`Id_Componente`),
KEY `fk_comp_mov_idx` (`Id_Movimiento`),
KEY `fk_mov_comp_idx` (`Id_Componente`),
CONSTRAINT `mc_fk1` FOREIGN KEY (`Id_Movimiento`) REFERENCES `Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `mc_fk2` FOREIGN KEY (`Id_Componente`) REFERENCES `bi`.`tarifa_componentes` (`Id_Componente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Movimientos_mark`
--
DROP TABLE IF EXISTS `Movimientos_mark`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Movimientos_mark` (
`Id_Movimiento` int(11) NOT NULL,
`valor` tinyint(3) unsigned NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`original_quantity` double DEFAULT NULL,
`Id_Trabajador` int(11) NOT NULL,
`Id_Accion` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`Id_Movimiento_mark` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`Id_Movimiento_mark`),
KEY `Id_Movimiento` (`Id_Movimiento`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Movimientos_revisar`
--
DROP TABLE IF EXISTS `Movimientos_revisar`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Movimientos_revisar` (
`Id_Movimiento` int(11) NOT NULL,
`Comentario` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`Revisado` tinyint(1) NOT NULL DEFAULT '0',
`Id_Remitente` int(11) DEFAULT NULL,
`Id_Destinatario` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Movimiento`),
KEY `Remitente` (`Id_Remitente`),
KEY `Destinatario` (`Id_Destinatario`),
CONSTRAINT `Movimientos_revisar_ibfk_1` FOREIGN KEY (`Id_Movimiento`) REFERENCES `Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Objetivos`
--
DROP TABLE IF EXISTS `Objetivos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Objetivos` (
`Periodo` int(11) NOT NULL,
`Objetivo` double NOT NULL,
PRIMARY KEY (`Periodo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Ordenes`
--
DROP TABLE IF EXISTS `Ordenes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Ordenes` (
`Id_ORDEN` int(11) NOT NULL AUTO_INCREMENT,
`ORDEN` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`datORDEN` datetime DEFAULT NULL,
`datTICKET` datetime DEFAULT NULL,
`CodVENDEDOR` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`CodCOMPRADOR` varchar(3) CHARACTER SET utf8 NOT NULL DEFAULT 'NOE',
`CANTIDAD` int(11) DEFAULT NULL,
`PRECIOMAX` double DEFAULT NULL,
`PREU` double DEFAULT NULL,
`Id_ARTICLE` double DEFAULT NULL,
`Id_CLIENTE` int(11) DEFAULT NULL,
`COMENTARIO` longtext COLLATE utf8_unicode_ci,
`OK` tinyint(1) NOT NULL DEFAULT '0',
`TOTAL` int(11) DEFAULT NULL,
`datCOMPRA` datetime DEFAULT NULL,
`KO` tinyint(1) NOT NULL DEFAULT '0',
`Id_Movimiento` int(11) DEFAULT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`Id_ORDEN`),
UNIQUE KEY `Id_Movimiento_UNIQUE` (`Id_Movimiento`),
KEY `Id_ARTICLE` (`Id_ARTICLE`),
KEY `Id_CLIENTE` (`Id_CLIENTE`),
KEY `Id_Comprador` (`CodCOMPRADOR`),
KEY `Id_Movimiento` (`Id_Movimiento`),
KEY `Id_Vendedor` (`CodVENDEDOR`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Origen`
--
DROP TABLE IF EXISTS `Origen`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Origen` (
`id` tinyint(2) unsigned NOT NULL AUTO_INCREMENT,
`Abreviatura` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`Origen` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`warehouse_id` smallint(5) unsigned DEFAULT '4',
`bandera` blob,
`nl` tinyint(4) NOT NULL DEFAULT '0',
`Id_Paises` mediumint(8) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `Abreviatura` (`Abreviatura`),
KEY `warehouse_id` (`warehouse_id`),
KEY `Id_Paises` (`Id_Paises`),
CONSTRAINT `Origen_ibfk_1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Pagares`
--
DROP TABLE IF EXISTS `Pagares`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Pagares` (
`kk_Vencimiento` datetime DEFAULT NULL,
`kk_Importe` double DEFAULT '0',
`Fechaemision` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Pagare` int(11) NOT NULL AUTO_INCREMENT,
`Concepto` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`kk_id_proveedor` int(11) DEFAULT NULL,
`kk_empresa_id` smallint(5) unsigned DEFAULT NULL,
`pago_id` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`Id_Pagare`),
KEY `empresa_id` (`kk_empresa_id`),
KEY `pago_id` (`pago_id`),
CONSTRAINT `Pagares_ibfk_2` FOREIGN KEY (`pago_id`) REFERENCES `pago` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Paises`
--
DROP TABLE IF EXISTS `Paises`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Paises` (
`Id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Pais` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`CEE` tinyint(1) NOT NULL DEFAULT '1',
`Codigo` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL,
`Id_Moneda` tinyint(3) unsigned NOT NULL DEFAULT '1',
`Id_Paisreal` mediumint(8) unsigned NOT NULL COMMENT 'Pais Real(apaño por culpa del España Exento)',
`nst_geo_id` int(11) DEFAULT NULL,
`nst_name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`geoFk` int(11) DEFAULT NULL,
PRIMARY KEY (`Id`),
KEY `Id_Paisreal` (`Id_Paisreal`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Permisos`
--
DROP TABLE IF EXISTS `Permisos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Permisos` (
`Id_Grupo` int(10) unsigned NOT NULL,
`Id_Trabajador` int(10) unsigned NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
PRIMARY KEY (`Id_Grupo`,`Id_Trabajador`),
KEY `empresa_id` (`empresa_id`),
CONSTRAINT `Permisos_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Permisos_ibfk_2` FOREIGN KEY (`Id_Grupo`) REFERENCES `Grupos` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `PreciosEspeciales`
--
DROP TABLE IF EXISTS `PreciosEspeciales`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `PreciosEspeciales` (
`Id_PrecioEspecial` int(11) NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL DEFAULT '0',
`Id_Article` int(11) NOT NULL DEFAULT '0',
`PrecioEspecial` double NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_PrecioEspecial`),
UNIQUE KEY `Id_Cliente_2` (`Id_Cliente`,`Id_Article`),
KEY `Id_Article` (`Id_Article`),
KEY `Id_Cliente` (`Id_Cliente`),
CONSTRAINT `sp_article_id` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON UPDATE CASCADE,
CONSTRAINT `sp_customer_id` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE,
CONSTRAINT `{01A99AF1-3D3F-4B15-AC0C-C7A834F319A3}` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `{EE4ADEF6-0AC6-401F-B7C4-D797972FC065}` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Prioridades`
--
DROP TABLE IF EXISTS `Prioridades`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Prioridades` (
`Id_Prioridad` tinyint(3) unsigned NOT NULL DEFAULT '0',
`Prioridad` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Prioridad`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Proveedores`
--
DROP TABLE IF EXISTS `Proveedores`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Proveedores` (
`Id_Proveedor` int(11) NOT NULL AUTO_INCREMENT,
`Proveedor` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`cuenta` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Domicilio` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`CP` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Localidad` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`provinciakk` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`province_id` smallint(5) unsigned DEFAULT NULL,
`pais_id` mediumint(8) unsigned DEFAULT NULL,
`NIF` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`oficial` tinyint(1) NOT NULL DEFAULT '1',
`Agricola` tinyint(1) NOT NULL DEFAULT '0',
`cuentaret` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`Telefono` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL,
`Fax` varchar(16) COLLATE utf8_unicode_ci DEFAULT NULL,
`ComisionProveedor` float NOT NULL DEFAULT '0',
`Alias` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`pay_met_id` tinyint(3) unsigned NOT NULL,
`pay_day` tinyint(4) unsigned DEFAULT NULL,
`pay_dem_id` tinyint(3) unsigned NOT NULL DEFAULT '7',
`odbc_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`serious` tinyint(1) unsigned zerofill DEFAULT '1',
`notas` text COLLATE utf8_unicode_ci,
`postcode_id` int(11) unsigned DEFAULT NULL,
`codpos` char(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`active` tinyint(4) DEFAULT '1',
PRIMARY KEY (`Id_Proveedor`),
UNIQUE KEY `cuenta` (`cuenta`),
UNIQUE KEY `NIF` (`NIF`),
KEY `pais_id` (`pais_id`),
KEY `pay_met_id` (`pay_met_id`),
KEY `province_id` (`province_id`),
KEY `pay_dem_id` (`pay_dem_id`),
KEY `postcode_fk_idx` (`postcode_id`),
KEY `codpos` (`codpos`,`CP`),
CONSTRAINT `Id_Pais` FOREIGN KEY (`pais_id`) REFERENCES `Paises` (`Id`) ON UPDATE CASCADE,
CONSTRAINT `pay_dem_id` FOREIGN KEY (`pay_dem_id`) REFERENCES `pay_dem` (`id`) ON UPDATE CASCADE,
CONSTRAINT `pay_met_id` FOREIGN KEY (`pay_met_id`) REFERENCES `pay_met` (`id`) ON UPDATE CASCADE,
CONSTRAINT `postcode_fk` FOREIGN KEY (`postcode_id`) REFERENCES `postcodeKK` (`postcode_id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `province_id` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Proveedores_account`
--
DROP TABLE IF EXISTS `Proveedores_account`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Proveedores_account` (
`Id_Proveedores_account` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_Proveedor` int(11) NOT NULL,
`IBAN` varchar(30) CHARACTER SET utf8 DEFAULT NULL,
`office` varchar(4) CHARACTER SET utf8 DEFAULT NULL,
`DC` varchar(2) CHARACTER SET utf8 DEFAULT NULL,
`number` varchar(10) CHARACTER SET utf8 DEFAULT NULL,
`description` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`bic_sufix` varchar(3) CHARACTER SET utf8 NOT NULL DEFAULT '',
`entity_id` int(10) NOT NULL,
`Id_Banco` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Proveedores_account`),
KEY `fk_proveedores_proveedores_account_idx` (`Id_Proveedor`),
KEY `fk_Proveedores_account_entity1_idx` (`entity_id`),
KEY `fk_banco_prov_account_idx` (`Id_Banco`),
CONSTRAINT `fk_banco_prov_account` FOREIGN KEY (`Id_Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Proveedores_comunicados`
--
DROP TABLE IF EXISTS `Proveedores_comunicados`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Proveedores_comunicados` (
`Id_Proveedor` int(11) NOT NULL,
`escrito_id` int(11) NOT NULL,
`fecha` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
KEY `Proveedor` (`Id_Proveedor`),
KEY `Escrito` (`escrito_id`),
CONSTRAINT `Proveedores_comunicados_ibfk_3` FOREIGN KEY (`Id_Proveedor`) REFERENCES `Proveedores` (`Id_Proveedor`) ON UPDATE CASCADE,
CONSTRAINT `Proveedores_comunicados_ibfk_4` FOREIGN KEY (`escrito_id`) REFERENCES `Proveedores_escritos` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Proveedores_escritos`
--
DROP TABLE IF EXISTS `Proveedores_escritos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Proveedores_escritos` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`escrito` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`informe` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Proveedores_gestdoc`
--
DROP TABLE IF EXISTS `Proveedores_gestdoc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Proveedores_gestdoc` (
`Id_Proveedor` int(11) NOT NULL,
`gestdoc_id` int(11) NOT NULL,
PRIMARY KEY (`Id_Proveedor`,`gestdoc_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Recibos`
--
DROP TABLE IF EXISTS `Recibos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Recibos` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Factura` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Entregado` decimal(10,2) NOT NULL DEFAULT '0.00',
`Pendiente` decimal(10,2) NOT NULL DEFAULT '0.00',
`Fechacobro` datetime DEFAULT NULL,
`Id_Trabajador` int(11) DEFAULT '0',
`Id_Banco` int(11) DEFAULT '0',
`Id_Cliente` int(11) DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`conciliado` tinyint(1) unsigned zerofill NOT NULL DEFAULT '0',
PRIMARY KEY (`Id`),
KEY `Id_Banco` (`Id_Banco`),
KEY `Id_Cliente` (`Id_Cliente`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `empresa_id` (`empresa_id`),
CONSTRAINT `Recibos_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Recibos_ibfk_2` FOREIGN KEY (`Id_Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE,
CONSTRAINT `recibo_customer_id` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`RecibosAfterInsert`
AFTER INSERT ON `Recibos`
FOR EACH ROW
CALL bi.customer_risk_update (NEW.Id_Cliente, NEW.empresa_id, -NEW.Entregado) */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`RecibosBeforeUpdate`
BEFORE UPDATE ON `Recibos`
FOR EACH ROW
BEGIN
CALL bi.customer_risk_update (OLD.Id_Cliente, OLD.empresa_id, OLD.Entregado);
CALL bi.customer_risk_update (NEW.Id_Cliente, NEW.empresa_id, -NEW.Entregado);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`RecibosBeforeDelete`
BEFORE DELETE ON `Recibos`
FOR EACH ROW
CALL bi.customer_risk_update (OLD.Id_Cliente, OLD.empresa_id, OLD.Entregado) */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Recibos_recorded`
--
DROP TABLE IF EXISTS `Recibos_recorded`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Recibos_recorded` (
`Id_Recibos` int(11) NOT NULL,
`recorded` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'Marcado si se ha contabilizado',
PRIMARY KEY (`Id_Recibos`),
CONSTRAINT `Recibos_recorded_ibfk_1` FOREIGN KEY (`Id_Recibos`) REFERENCES `Recibos` (`Id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Recibos (Contrareembolso) contabilizados';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Relaciones`
--
DROP TABLE IF EXISTS `Relaciones`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Relaciones` (
`Id_Relacion` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Contacto` int(10) unsigned NOT NULL,
`Id_Proveedor` int(10) unsigned DEFAULT NULL,
`Id_Cliente` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`Id_Relacion`),
KEY `Id_Contacto` (`Id_Contacto`),
KEY `Id_Proveedor` (`Id_Proveedor`),
KEY `Id_Cliente` (`Id_Cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Remesas`
--
DROP TABLE IF EXISTS `Remesas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Remesas` (
`Id_Remesa` int(11) NOT NULL AUTO_INCREMENT,
`Fecha Remesa` datetime DEFAULT NULL,
`Banco` int(11) DEFAULT '0',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
PRIMARY KEY (`Id_Remesa`),
KEY `Id_Banco` (`Banco`),
KEY `empresa_id` (`empresa_id`),
CONSTRAINT `Remesas_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Remesas_ibfk_2` FOREIGN KEY (`Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Reservas`
--
DROP TABLE IF EXISTS `Reservas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Reservas` (
`Id_Reserva` int(11) NOT NULL AUTO_INCREMENT,
`Id_Ticket` int(11) DEFAULT '0',
`Fecha` datetime DEFAULT NULL,
`Alias` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`article` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`medida` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`categoria` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`color` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`origen` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`cantidad` int(11) DEFAULT '0',
`Id_Article` double DEFAULT '0',
PRIMARY KEY (`Id_Reserva`),
KEY `Id_1` (`Id_Ticket`),
KEY `Id_Article` (`Id_Article`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Rutas`
--
DROP TABLE IF EXISTS `Rutas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Rutas` (
`Id_Ruta` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Trabajador` int(10) unsigned DEFAULT NULL,
`Fecha` date NOT NULL,
`Id_Vehiculo` int(10) unsigned DEFAULT NULL,
`Id_Agencia` int(11) DEFAULT NULL,
`Hora` datetime DEFAULT NULL,
`ok` tinyint(1) unsigned NOT NULL DEFAULT '0',
`km_start` mediumint(9) NOT NULL,
`km_end` mediumint(9) NOT NULL,
`date_start` datetime NOT NULL,
`date_end` datetime NOT NULL,
`gestdoc_id` int(11) DEFAULT NULL,
`cost` double unsigned DEFAULT NULL,
`m3` decimal(10,1) unsigned DEFAULT NULL,
PRIMARY KEY (`Id_Ruta`),
KEY `Id_Agencia` (`Id_Agencia`),
KEY `Fecha` (`Fecha`),
KEY `gestdoc_id` (`gestdoc_id`),
CONSTRAINT `Rutas_ibfk_1` FOREIGN KEY (`gestdoc_id`) REFERENCES `gestdoc` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `Rutas_au` AFTER UPDATE ON `Rutas` FOR EACH ROW
BEGIN
IF IFNULL(NEW.gestdoc_id,0) <> IFNULL(OLD.gestdoc_id,0) AND NEW.gestdoc_id > 0 THEN
INSERT INTO tickets_gestdoc(Id_Ticket,gestdoc_id)
SELECT Id_Ticket, NEW.gestdoc_id FROM Tickets WHERE Id_Ruta = NEW.Id_Ruta
ON DUPLICATE KEY UPDATE gestdoc_id = NEW.gestdoc_id;
UPDATE Tickets t JOIN tickets_gestdoc tg ON t.Id_Ticket = tg.Id_Ticket
SET Firmado = 1 WHERE t.Id_Ruta = NEW.Id_Ruta;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Rutas_Master`
--
DROP TABLE IF EXISTS `Rutas_Master`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Rutas_Master` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`warehouse_id` smallint(6) unsigned DEFAULT NULL,
`km` int(11) DEFAULT NULL,
`bultos` int(11) NOT NULL,
`vehiculos_coste` decimal(10,2) DEFAULT NULL,
`personal_coste` decimal(10,2) DEFAULT NULL,
`vehiculos_numero` decimal(10,2) DEFAULT NULL,
`personal_numero` decimal(10,2) DEFAULT NULL,
`gasoil` int(11) DEFAULT NULL,
`autonomos` decimal(10,2) DEFAULT NULL,
`año` int(11) DEFAULT NULL,
`mes` int(11) DEFAULT NULL,
`gastos` decimal(10,2) DEFAULT NULL,
`bultos_autonomos` int(11) DEFAULT NULL,
`coste_km` decimal(10,2) DEFAULT NULL,
`coste_bulto` decimal(10,2) DEFAULT NULL,
`coste_bulto_autonomo` decimal(10,2) DEFAULT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `fk_rutas_warehouse_id_idx` (`warehouse_id`),
CONSTRAINT `fk_rutas_warehouse_id` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Rutas_dits`
--
DROP TABLE IF EXISTS `Rutas_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Rutas_dits` (
`idRutas_dits` int(11) unsigned NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) unsigned NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idRutas_dits`),
KEY `index2` (`idaccion_dits`),
KEY `index3` (`Id_Ticket`),
KEY `index4` (`Id_Trabajador`),
CONSTRAINT `fk_Id_Trabajador` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `fk_Id_ruta` FOREIGN KEY (`Id_Ticket`) REFERENCES `Rutas` (`Id_Ruta`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `fk_action_dits` FOREIGN KEY (`idaccion_dits`) REFERENCES `accion_dits` (`idaccion_dits`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Salarios`
--
DROP TABLE IF EXISTS `Salarios`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Salarios` (
`Id_Trabajador` int(11) NOT NULL,
`Salario_Bruto` double DEFAULT '0',
`Incentivo` double DEFAULT '0',
`SS` double DEFAULT '0',
`warehouse_id` smallint(6) NOT NULL DEFAULT '1',
PRIMARY KEY (`Id_Trabajador`),
CONSTRAINT `trabajadaor_id` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Saldos_Prevision`
--
DROP TABLE IF EXISTS `Saldos_Prevision`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Saldos_Prevision` (
`Saldos_Prevision_id` int(11) NOT NULL AUTO_INCREMENT,
`Descripcion` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Importe` double NOT NULL DEFAULT '0',
`Fecha` date NOT NULL,
`Id_Banco` int(11) DEFAULT NULL,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
PRIMARY KEY (`Saldos_Prevision_id`),
KEY `Fecha_indice` (`Fecha`),
KEY `banco_prevision_idx` (`Id_Banco`),
KEY `empresa_prevision_idx` (`empresa_id`),
CONSTRAINT `banco_prevision` FOREIGN KEY (`Id_Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE,
CONSTRAINT `empresa_prevision` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Aqui ponemos los gastos e ingresos pendientes de introducir ';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Series`
--
DROP TABLE IF EXISTS `Series`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Series` (
`Id_Serie` varchar(2) COLLATE utf8_unicode_ci NOT NULL,
`Serie` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
`Cuenta` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Serie`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Split_lines`
--
DROP TABLE IF EXISTS `Split_lines`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Split_lines` (
`Id_Split_lines` int(11) NOT NULL AUTO_INCREMENT,
`Id_Split` int(11) NOT NULL,
`Id_Article` int(11) DEFAULT NULL,
`Id_Compra` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Split_lines`),
KEY `Id_Split` (`Id_Split`),
KEY `Id_Compra` (`Id_Compra`),
CONSTRAINT `Id_Compra` FOREIGN KEY (`Id_Compra`) REFERENCES `Compres` (`Id_Compra`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Split_lines_ibfk_1` FOREIGN KEY (`Id_Split`) REFERENCES `Splits` (`Id_Split`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Splits`
--
DROP TABLE IF EXISTS `Splits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Splits` (
`Id_Split` int(11) NOT NULL AUTO_INCREMENT,
`Id_Ticket` int(11) DEFAULT NULL,
`Id_Entrada` int(11) DEFAULT NULL,
`Fecha` datetime DEFAULT NULL,
`Notas` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Split`),
KEY `Id_Entrada` (`Id_Entrada`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Stockcontrol`
--
DROP TABLE IF EXISTS `Stockcontrol`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Stockcontrol` (
`Id_Control` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Article` int(11) NOT NULL,
`Id_Remitente` int(11) NOT NULL,
`Id_Solver` int(11) NOT NULL,
`Problema` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`Solucion` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`Listo` tinyint(1) NOT NULL,
`Air` tinyint(1) NOT NULL,
`Datestart` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`Dateend` datetime DEFAULT NULL,
PRIMARY KEY (`Id_Control`),
KEY `Id_Article` (`Id_Article`),
KEY `Id_Remitente` (`Id_Remitente`),
KEY `Id_Solver` (`Id_Solver`),
CONSTRAINT `Stockcontrol_ibfk_1` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Stockcontrol_ibfk_2` FOREIGN KEY (`Id_Remitente`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `Stockcontrol_ibfk_3` FOREIGN KEY (`Id_Solver`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Tickets`
--
DROP TABLE IF EXISTS `Tickets`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tickets` (
`Id_Ticket` int(11) NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL DEFAULT '0',
`warehouse_id` smallint(6) unsigned NOT NULL DEFAULT '1',
`Fecha` datetime NOT NULL,
`Alias` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Notas` longtext COLLATE utf8_unicode_ci,
`Factura` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`factura_id` int(10) unsigned DEFAULT NULL COMMENT 'eliminar',
`Anotadoencaja` tinyint(1) NOT NULL DEFAULT '0',
`Id_Consigna` int(11) NOT NULL DEFAULT '0',
`Id_Trabajador` int(11) DEFAULT NULL,
`Observaciones` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'eliminar',
`Firmado` tinyint(1) NOT NULL DEFAULT '0',
`Etiquetasemitidas` tinyint(1) NOT NULL DEFAULT '0',
`PedidoImpreso` tinyint(1) NOT NULL DEFAULT '0',
`Bultos` smallint(10) unsigned DEFAULT '0',
`Localizacion` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`Hora` int(11) DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`blocked` tinyint(1) NOT NULL DEFAULT '1',
`Solucion` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`Id_Ruta` int(10) unsigned DEFAULT NULL,
`Prioridad` tinyint(3) unsigned DEFAULT NULL,
`priority` tinyint(1) unsigned NOT NULL DEFAULT '1',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`Id_Agencia` int(11) NOT NULL,
`landing` date DEFAULT NULL,
`boxed` tinyint(2) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Ticket`),
KEY `Id_Cliente` (`Id_Cliente`),
KEY `Id_Consigna` (`Id_Consigna`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `warehouse_id` (`warehouse_id`),
KEY `empresa_id` (`empresa_id`),
KEY `Id_Agencia` (`Id_Agencia`),
KEY `Factura` (`Factura`),
KEY `Fecha` (`Fecha`),
KEY `Id_Ruta` (`Id_Ruta`),
KEY `warehouse_date` (`warehouse_id`,`Fecha`),
CONSTRAINT `Tickets_ibfk_1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Tickets_ibfk_10` FOREIGN KEY (`Factura`) REFERENCES `Facturas` (`Id_Factura`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `Tickets_ibfk_5` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Tickets_ibfk_6` FOREIGN KEY (`Id_Consigna`) REFERENCES `Consignatarios` (`id_consigna`) ON UPDATE CASCADE,
CONSTRAINT `Tickets_ibfk_8` FOREIGN KEY (`Id_Agencia`) REFERENCES `Agencias` (`Id_Agencia`),
CONSTRAINT `Tickets_ibfk_9` FOREIGN KEY (`Id_Ruta`) REFERENCES `Rutas` (`Id_Ruta`) ON UPDATE CASCADE,
CONSTRAINT `ticket_customer_id` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `TicketsBeforeInsert`
BEFORE INSERT ON `Tickets` FOR EACH ROW
BEGIN
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`TicketsAfterInsert`
AFTER INSERT ON `vn2008`.`Tickets` FOR EACH ROW
BEGIN
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `TicketsBeforeUpdate`
BEFORE UPDATE ON `Tickets` FOR EACH ROW
BEGIN
DECLARE vAgency INT;
DECLARE vEmployee INT;
DECLARE vIsCee TINYINT;
DECLARE vHasVies TINYINT;
SELECT Id_Trabajador INTO vEmployee
FROM Trabajadores WHERE user_id = account.userGetId();
IF vEmployee IS NULL THEN
SET vEmployee = 20;
END IF;
IF NEW.empresa_id <> OLD.empresa_id THEN
SELECT CEE INTO vIsCee
FROM Proveedores AS pr
INNER JOIN Paises p ON p.Id = pr.pais_id
WHERE Id_Proveedor = NEW.empresa_id;
SELECT VIES INTO vHasVies
FROM vn.`client`
WHERE id = OLD.Id_Cliente;
IF vIsCee = 1 AND NOT vHasVies Then
CALL util.throw("NO_VALID_VIES");
END IF;
END IF;
IF NEW.Fecha < '2001-01-01'
THEN
SET NEW.Id_Ruta = NULL;
IF NEW.Fecha < '2000-01-01' then
SET NEW.Fecha = OLD.Fecha;
END IF;
INSERT INTO vncontrol.inter(state_id, Id_Ticket, Id_Trabajador)
VALUES(17, NEW.Id_Ticket, vEmployee);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`TicketsAfterUpdate`
AFTER UPDATE ON `Tickets` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('ticket', NEW.Id_Ticket, OLD.Id_Ticket);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Tickets_dits`
--
DROP TABLE IF EXISTS `Tickets_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tickets_dits` (
`idTickets_dits` int(11) NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idTickets_dits`),
KEY `fgkey1_idx` (`idaccion_dits`),
KEY `fgkey2_idx` (`Id_Ticket`),
KEY `fgkey3_idx` (`Id_Trabajador`),
CONSTRAINT `Tickets_dits_ibfk_1` FOREIGN KEY (`Id_Ticket`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `fgkey1` FOREIGN KEY (`idaccion_dits`) REFERENCES `accion_dits` (`idaccion_dits`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `fgkey3` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Tickets_stack`
--
DROP TABLE IF EXISTS `Tickets_stack`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tickets_stack` (
`Id_Ticket` int(11) NOT NULL,
`orden` smallint(5) unsigned NOT NULL,
`label_number` smallint(6) DEFAULT '0',
`preparado` tinyint(4) DEFAULT '0',
PRIMARY KEY (`Id_Ticket`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Orden para imprimir los F5.Se borra autom. lo de 2 meses';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Tickets_state`
--
DROP TABLE IF EXISTS `Tickets_state`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tickets_state` (
`Id_Ticket` int(11) NOT NULL DEFAULT '0',
`inter_id` int(11) NOT NULL,
`state_name` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`Id_Ticket`),
KEY `double_foreign` (`Id_Ticket`,`inter_id`),
CONSTRAINT `Id_Ticket` FOREIGN KEY (`Id_Ticket`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `double_foreign` FOREIGN KEY (`Id_Ticket`, `inter_id`) REFERENCES `vncontrol`.`inter` (`Id_Ticket`, `inter_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Tickets_turno`
--
DROP TABLE IF EXISTS `Tickets_turno`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tickets_turno` (
`Id_Ticket` int(11) NOT NULL AUTO_INCREMENT,
`weekDay` tinyint(1) DEFAULT NULL COMMENT 'funcion de mysql Lunes = 0, Domingo = 6',
PRIMARY KEY (`Id_Ticket`),
CONSTRAINT `Id_Ticket_fk` FOREIGN KEY (`Id_Ticket`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Tintas`
--
DROP TABLE IF EXISTS `Tintas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tintas` (
`Id_Tinta` char(3) COLLATE utf8_unicode_ci NOT NULL,
`name` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Tinta` blob NOT NULL,
`Orden` int(11) NOT NULL,
`ball` blob,
`cargex` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Tinta`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Tipos`
--
DROP TABLE IF EXISTS `Tipos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tipos` (
`tipo_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`Id_Tipo` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`Tipo` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`Orden` int(11) DEFAULT '0',
`Temperatura` tinyint(1) unsigned NOT NULL DEFAULT '0',
`reino_id` int(10) unsigned NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`inventory` tinyint(4) NOT NULL DEFAULT '1',
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`f11` tinyint(4) NOT NULL DEFAULT '0',
`father_id` smallint(5) DEFAULT NULL,
`transaction` tinyint(4) NOT NULL DEFAULT '0',
`confeccion` int(10) unsigned DEFAULT NULL,
`location` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`life` smallint(5) unsigned DEFAULT NULL,
`maneuver` double NOT NULL DEFAULT '0.21',
`target` double NOT NULL DEFAULT '0.15',
`top_margin` double NOT NULL DEFAULT '0.3',
`profit` double NOT NULL DEFAULT '0.02',
`FV` tinyint(3) DEFAULT '1',
`density` double NOT NULL DEFAULT '167' COMMENT 'Almacena la densidad en kg/m3 para el calculo de los portes aereos',
`promo` double NOT NULL DEFAULT '0',
`box` tinyint(4) NOT NULL DEFAULT '0',
`CYM` int(11) NOT NULL DEFAULT '0',
`isPackaging` tinyint(1) NOT NULL DEFAULT '0',
`hasComponents` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`Id_Tipo`),
UNIQUE KEY `tipo_id_UNIQUE` (`tipo_id`),
KEY `Trabajador` (`Id_Trabajador`),
KEY `reino_id` (`reino_id`),
KEY `Tipos_fk3_idx` (`confeccion`),
CONSTRAINT `Tipos_fk3` FOREIGN KEY (`confeccion`) REFERENCES `vn`.`confectionType` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `Tipos_ibfk_1` FOREIGN KEY (`reino_id`) REFERENCES `reinos` (`id`) ON UPDATE CASCADE,
CONSTRAINT `Trabajador` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Protege la tabla tipos de updates para los 4 parámetros de los compradores, en funcion del valor del campo CodigoRojo de tblContadores.';
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `Tipos_bu` BEFORE UPDATE ON `Tipos` FOR EACH ROW
BEGIN
DECLARE strCOD VARCHAR(40);
SELECT CodigoRojo INTO strCOD FROM tblContadores LIMIT 1;
IF strCOD <> 'tipos'
THEN
SET NEW.maneuver = OLD.maneuver ;
SET NEW.target = OLD.target ;
SET NEW.top_margin = OLD.top_margin ;
SET NEW.profit = OLD.profit ;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Tipos_f11`
--
DROP TABLE IF EXISTS `Tipos_f11`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tipos_f11` (
`f11_id` tinyint(4) NOT NULL AUTO_INCREMENT,
`description` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`f11_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Trabajadores`
--
DROP TABLE IF EXISTS `Trabajadores`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Trabajadores` (
`CodigoTrabajador` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`Nombre` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Apellidos` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Password` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`email` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Id_Trabajador` int(11) NOT NULL AUTO_INCREMENT,
`extension` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`sub` int(11) unsigned DEFAULT NULL,
`user` varchar(20) CHARACTER SET utf8 DEFAULT NULL,
`Contrato_Tipo` varchar(30) CHARACTER SET utf8 DEFAULT 'no dejar vacio' COMMENT 'campo obsoleto, actualmente se rellena en laboral',
`Categoria_Laboral` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Fecha_Inicio` datetime DEFAULT NULL,
`Fecha_Fin` datetime DEFAULT NULL,
`Notas` varchar(254) COLLATE utf8_unicode_ci DEFAULT NULL,
`Foto` blob,
`dni` varchar(9) COLLATE utf8_unicode_ci DEFAULT NULL,
`address` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`date_birth` date NOT NULL,
`marital_status` enum('soltero/a','casado/a') COLLATE utf8_unicode_ci NOT NULL,
`phone` varchar(9) COLLATE utf8_unicode_ci NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL,
`Id_Cliente_Interno` int(11) DEFAULT NULL,
`user_id` int(10) unsigned DEFAULT NULL,
`boss` int(11) NOT NULL DEFAULT '2',
`DniExpiration` datetime DEFAULT NULL,
PRIMARY KEY (`Id_Trabajador`),
UNIQUE KEY `CodigoTrabajador_UNIQUE` (`CodigoTrabajador`),
UNIQUE KEY `user` (`user`),
UNIQUE KEY `user_id_UNIQUE` (`user_id`),
UNIQUE KEY `Id_Cliente_Interno` (`Id_Cliente_Interno`),
KEY `sub` (`sub`),
CONSTRAINT `Clientes` FOREIGN KEY (`Id_Cliente_Interno`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE,
CONSTRAINT `Trabajadores_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `account`.`user` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Trabajadores_BEFORE_INSERT` BEFORE INSERT ON `Trabajadores` FOR EACH ROW
begin
IF NEW.password = '' THEN
SET NEW.password = 'FALLO';
END IF;
end */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`Trabajadores_BEFORE_UPDATE` BEFORE UPDATE ON `Trabajadores` FOR EACH ROW
begin
IF NEW.password = '' THEN
SET NEW.password = 'FALLO';
END IF;
end */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `Tramos`
--
DROP TABLE IF EXISTS `Tramos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Tramos` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Tramo` time NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `Tramo` (`Tramo`)
) ENGINE=MyISAM AUTO_INCREMENT=50 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Ubicator`
--
DROP TABLE IF EXISTS `Ubicator`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Ubicator` (
`Id_Estanterias` int(11) NOT NULL,
`Date` date NOT NULL,
`w` int(11) DEFAULT '0',
`d` int(11) DEFAULT '0',
`h` int(11) DEFAULT '0',
`Id_Cubo` int(11) NOT NULL,
`Id_Article` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `V_edi_item_track`
--
DROP TABLE IF EXISTS `V_edi_item_track`;
/*!50001 DROP VIEW IF EXISTS `V_edi_item_track`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `V_edi_item_track` AS SELECT
1 AS `item_id`,
1 AS `s1`,
1 AS `s2`,
1 AS `s3`,
1 AS `s4`,
1 AS `s5`,
1 AS `s6`,
1 AS `kop`,
1 AS `pac`,
1 AS `cat`,
1 AS `ori`,
1 AS `pro`,
1 AS `sub`,
1 AS `package`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `Vehiculos`
--
DROP TABLE IF EXISTS `Vehiculos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Vehiculos` (
`Id_Vehiculo` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Matricula` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`Modelo` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`Marca` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`m3` double DEFAULT NULL,
`active` tinyint(4) NOT NULL DEFAULT '1',
`warehouseFk` smallint(6) unsigned DEFAULT NULL,
`description` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`Id_Vehiculo`),
KEY `empresa_id` (`empresa_id`),
KEY `provinceFk_idx` (`warehouseFk`),
CONSTRAINT `Vehiculos_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `provinceFk` FOREIGN KEY (`warehouseFk`) REFERENCES `province` (`province_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Vehiculos_consumo`
--
DROP TABLE IF EXISTS `Vehiculos_consumo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Vehiculos_consumo` (
`Vehiculos_consumo_id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Vehiculo` int(10) unsigned NOT NULL,
`fecha` date NOT NULL,
`km` int(20) unsigned NOT NULL,
`litros` double unsigned NOT NULL,
`precio` double unsigned NOT NULL,
`adblue` decimal(10,2) NOT NULL DEFAULT '0.00',
`peajes` double DEFAULT NULL,
`descuento` double DEFAULT NULL,
`silla` int(11) NOT NULL DEFAULT '0' COMMENT 'indica si han repostado en la gasolinera de la rotonda',
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`otros` double DEFAULT NULL,
PRIMARY KEY (`Vehiculos_consumo_id`,`Id_Vehiculo`),
KEY `fk_Vehiculos_consumo_Vehiculos_idx` (`Id_Vehiculo`),
CONSTRAINT `fk_Vehiculos_consumo_Vehiculos` FOREIGN KEY (`Id_Vehiculo`) REFERENCES `Vehiculos` (`Id_Vehiculo`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='En esta tabla apuntan el importe de los tickets de la gasolinera solred, con quien tenemos un contrato y nos facturan mensualmente';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `VerEspionaje`
--
DROP TABLE IF EXISTS `VerEspionaje`;
/*!50001 DROP VIEW IF EXISTS `VerEspionaje`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `VerEspionaje` AS SELECT
1 AS `CodigoTrabajador`,
1 AS `Fecha`,
1 AS `HoraEntrada`,
1 AS `HoraSalida`,
1 AS `Id_Equipo`,
1 AS `Id_Trabajador`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `Vistas`
--
DROP TABLE IF EXISTS `Vistas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Vistas` (
`vista_id` int(11) NOT NULL AUTO_INCREMENT,
`vista` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`code` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`vista_id`),
UNIQUE KEY `code` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `XDiario`
--
DROP TABLE IF EXISTS `XDiario`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `XDiario` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ASIEN` double DEFAULT NULL,
`FECHA` datetime DEFAULT NULL,
`SUBCTA` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL,
`CONTRA` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL,
`CONCEPTO` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
`EURODEBE` decimal(10,2) DEFAULT NULL,
`EUROHABER` decimal(10,2) DEFAULT NULL,
`BASEEURO` decimal(10,2) DEFAULT NULL,
`SERIE` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`FACTURA` varchar(8) COLLATE utf8_unicode_ci DEFAULT '0',
`BASEIMPO` decimal(10,2) DEFAULT NULL,
`IVA` decimal(10,2) DEFAULT NULL,
`RECEQUIV` decimal(10,2) DEFAULT '0.00',
`DOCUMENTO` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`DEPARTA` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`CLAVE` int(11) DEFAULT NULL,
`ESTADO` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`NCASADO` decimal(10,2) DEFAULT NULL,
`TCASADO` decimal(10,2) DEFAULT NULL,
`TRANS` decimal(10,2) DEFAULT NULL,
`CAMBIO` decimal(10,2) DEFAULT NULL,
`DEBEME` decimal(10,2) DEFAULT NULL,
`HABERME` decimal(10,2) DEFAULT NULL,
`PTAHABER` decimal(10,2) DEFAULT NULL,
`AUXILIAR` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`SUCURSAL` varchar(4) COLLATE utf8_unicode_ci DEFAULT NULL,
`PTADEBE` decimal(10,2) DEFAULT NULL,
`CODDIVISA` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`IMPAUXME` decimal(10,2) DEFAULT NULL,
`MONEDAUSO` varchar(1) COLLATE utf8_unicode_ci DEFAULT '2',
`NOCONV` tinyint(1) NOT NULL DEFAULT '0',
`NUMEROINV` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`TIPOOPE` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`NFACTICK` tinyint(1) NOT NULL DEFAULT '1',
`TERIDNIF` tinyint(1) NOT NULL DEFAULT '2',
`TERNIF` varchar(20) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'I.F.',
`TERNOM` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Nombre Importador',
`OPBIENES` tinyint(1) NOT NULL DEFAULT '1',
`TIPOFAC` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`TIPOIVA` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`L340` tinyint(2) NOT NULL DEFAULT '0',
`enlazado` tinyint(1) NOT NULL DEFAULT '0',
`FECHA_EX` date DEFAULT NULL COMMENT 'FEcha de expedicion de la factura',
`LRECT349` tinyint(1) NOT NULL DEFAULT '0',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`LDIFADUAN` tinyint(4) NOT NULL DEFAULT '0',
`METAL` tinyint(1) NOT NULL DEFAULT '0',
`METALIMP` decimal(10,2) NOT NULL DEFAULT '0.00',
`FECHA_OP` date DEFAULT NULL COMMENT 'FEcha de operacion',
`FACTURAEX` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Numero de factura del proveedor',
`TIPOCLAVE` int(3) DEFAULT NULL,
`TIPOEXENCI` int(3) DEFAULT NULL,
`TIPONOSUJE` int(3) DEFAULT NULL,
`TIPOFACT` int(3) DEFAULT NULL,
`TIPORECTIF` int(3) DEFAULT NULL,
`SERIE_RT` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL,
`FACTU_RT` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`BASEIMP_RT` decimal(10,2) DEFAULT NULL,
`BASEIMP_RF` decimal(10,2) DEFAULT NULL,
`RECTIFICA` int(1) NOT NULL DEFAULT '0',
`FECHA_RT` date DEFAULT NULL,
`created` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`updated` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`FECREGCON` date DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `empresa_id` (`empresa_id`),
CONSTRAINT `XDiario_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `XDiario_KK`
--
DROP TABLE IF EXISTS `XDiario_KK`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `XDiario_KK` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ASIEN` double DEFAULT NULL,
`FECHA` date DEFAULT NULL,
`SUBCTA` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL,
`CONTRA` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL,
`CONCEPTO` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL,
`EURODEBE` decimal(10,2) DEFAULT NULL,
`EUROHABER` decimal(10,2) DEFAULT NULL,
`BASEEURO` decimal(10,2) DEFAULT NULL,
`SERIE` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`FACTURA` varchar(8) COLLATE utf8_unicode_ci DEFAULT '0',
`BASEIMPO` decimal(10,2) DEFAULT NULL,
`IVA` decimal(10,2) DEFAULT NULL,
`RECEQUIV` decimal(10,2) DEFAULT '0.00',
`DOCUMENTO` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`DEPARTA` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`CLAVE` int(11) DEFAULT NULL,
`ESTADO` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`NCASADO` decimal(10,2) DEFAULT NULL,
`TCASADO` decimal(10,2) DEFAULT NULL,
`TRANS` decimal(10,2) DEFAULT NULL,
`CAMBIO` decimal(10,2) DEFAULT NULL,
`DEBEME` decimal(10,2) DEFAULT NULL,
`HABERME` decimal(10,2) DEFAULT NULL,
`PTAHABER` decimal(10,2) DEFAULT NULL,
`AUXILIAR` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`SUCURSAL` varchar(4) COLLATE utf8_unicode_ci DEFAULT NULL,
`PTADEBE` decimal(10,2) DEFAULT NULL,
`CODDIVISA` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`IMPAUXME` decimal(10,2) DEFAULT NULL,
`MONEDAUSO` varchar(1) COLLATE utf8_unicode_ci DEFAULT '2',
`NOCONV` tinyint(1) NOT NULL DEFAULT '0',
`NUMEROINV` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`TIPOOPE` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`NFACTICK` tinyint(1) NOT NULL DEFAULT '1',
`TERIDNIF` tinyint(1) NOT NULL DEFAULT '2',
`TERNIF` varchar(20) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'I.F.',
`TERNOM` varchar(30) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'Nombre Importador',
`OPBIENES` tinyint(1) NOT NULL DEFAULT '1',
`TIPOFAC` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`TIPOIVA` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`L340` tinyint(2) NOT NULL DEFAULT '0',
`enlazado` tinyint(1) NOT NULL DEFAULT '0',
`FECHA_EX` date DEFAULT NULL COMMENT 'FEcha de expedicion de la factura',
`LRECT349` tinyint(1) NOT NULL DEFAULT '0',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`LDIFADUAN` tinyint(4) NOT NULL DEFAULT '0',
`METAL` tinyint(1) NOT NULL DEFAULT '0',
`METALIMP` decimal(10,2) NOT NULL DEFAULT '0.00',
`FECHA_OP` date DEFAULT NULL COMMENT 'FEcha de operacion',
`FACTURAEX` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Numero de factura del proveedor',
`TIPOCLAVE` int(3) DEFAULT NULL,
`TIPOEXENCI` int(3) DEFAULT NULL,
`TIPONOSUJE` int(3) DEFAULT NULL,
`TIPOFACT` int(3) DEFAULT NULL,
`TIPORECTIF` int(3) DEFAULT NULL,
`SERIE_RT` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL,
`FACTU_RT` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`BASEIMP_RT` decimal(10,2) DEFAULT NULL,
`BASEIMP_RF` decimal(10,2) DEFAULT NULL,
`RECTIFICA` int(1) NOT NULL DEFAULT '0',
`FECHA_RT` date DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `empresa_id` (`empresa_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `__Cartera_Ventas`
--
DROP TABLE IF EXISTS `__Cartera_Ventas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `__Cartera_Ventas` (
`CodigoTrabajador` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`Mes` int(2) DEFAULT NULL,
`Año` int(4) DEFAULT NULL,
`Motivo` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL,
`Importe` double DEFAULT NULL,
`Id_Ticket` bigint(20) DEFAULT NULL,
`Semana` int(2) DEFAULT NULL,
`Cliente` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
KEY `INDEX1` (`Id_Ticket`),
KEY `INDEX2` (`Mes`,`Año`,`Id_Ticket`),
KEY `INDEX3` (`CodigoTrabajador`,`Mes`,`Año`,`Id_Ticket`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `accion_dits`
--
DROP TABLE IF EXISTS `accion_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `accion_dits` (
`idaccion_dits` int(11) NOT NULL AUTO_INCREMENT,
`accion` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idaccion_dits`),
UNIQUE KEY `accion_UNIQUE` (`accion`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `account_conciliacion`
--
DROP TABLE IF EXISTS `account_conciliacion`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `account_conciliacion` (
`idaccount_conciliacion` int(11) NOT NULL AUTO_INCREMENT,
`Id_Proveedores_account` mediumint(8) unsigned NOT NULL,
`Fechaoperacion` datetime NOT NULL,
`FechaValor` datetime NOT NULL,
`importe` double NOT NULL,
`Concepto` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`DebeHaber` smallint(6) NOT NULL,
`id_calculated` varchar(90) COLLATE utf8_unicode_ci DEFAULT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`idaccount_conciliacion`),
UNIQUE KEY `idaccount_conciliacion_UNIQUE` (`idaccount_conciliacion`),
KEY `fg_accconciliacion_key1_idx` (`Id_Proveedores_account`),
KEY `index_id_calculated` (`id_calculated`),
CONSTRAINT `fg_key1_accountconc` FOREIGN KEY (`Id_Proveedores_account`) REFERENCES `Proveedores_account` (`Id_Proveedores_account`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`account_conciliacion_BEFORE_INSERT`
BEFORE INSERT ON `account_conciliacion` FOR EACH ROW
set new.id_calculated = replace(
replace(
replace(
replace(
concat(new.Id_Proveedores_account,new.Fechaoperacion,new.importe,new.Concepto,new.DebeHaber)
,' ','')
,":",'')
,'-','')
,'.','') */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Temporary view structure for view `account_customer`
--
DROP TABLE IF EXISTS `account_customer`;
/*!50001 DROP VIEW IF EXISTS `account_customer`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `account_customer` AS SELECT
1 AS `description`,
1 AS `iban`,
1 AS `entity_id`,
1 AS `office`,
1 AS `dc`,
1 AS `number`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `account_detail`
--
DROP TABLE IF EXISTS `account_detail`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `account_detail` (
`account_detail_id` int(11) NOT NULL AUTO_INCREMENT,
`value` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`account_detail_type_id` int(11) NOT NULL,
`Id_Proveedores_account` mediumint(8) unsigned NOT NULL,
PRIMARY KEY (`account_detail_id`),
KEY `fk_account_detail_account_detail_type1_idx` (`account_detail_type_id`),
KEY `fk_account_detail_Proveedores_account1_idx` (`Id_Proveedores_account`),
CONSTRAINT `fk_account_detail_account_detail_type1` FOREIGN KEY (`account_detail_type_id`) REFERENCES `account_detail_type` (`account_detail_type_id`) ON UPDATE CASCADE,
CONSTRAINT `fk_account_detail_account_id_proveedores_account` FOREIGN KEY (`Id_Proveedores_account`) REFERENCES `Proveedores_account` (`Id_Proveedores_account`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `account_detail_type`
--
DROP TABLE IF EXISTS `account_detail_type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `account_detail_type` (
`account_detail_type_id` int(11) NOT NULL AUTO_INCREMENT,
`description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`account_detail_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `accumulatorsReadingDate`
--
DROP TABLE IF EXISTS `accumulatorsReadingDate`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `accumulatorsReadingDate` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`pagoSdcfk` int(11) NOT NULL,
`readingDate` date NOT NULL COMMENT 'dia en que se revisa la cotizacion del dolar',
`amount` double DEFAULT NULL COMMENT 'cantidad aumentada tras la lectura del tipo de cambio',
PRIMARY KEY (`id`),
KEY `pagoSdcFk_idx` (`pagoSdcfk`),
CONSTRAINT `pagoSdcFk` FOREIGN KEY (`pagoSdcfk`) REFERENCES `pago_sdc` (`pago_sdc_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `agencia_descuadre`
--
DROP TABLE IF EXISTS `agencia_descuadre`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `agencia_descuadre` (
`agencia_descuadre_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Ticket` int(11) NOT NULL,
`date` date NOT NULL,
`price` double(7,2) NOT NULL,
`Consignatario` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Tipo` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`agencia_descuadre_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `agency`
--
DROP TABLE IF EXISTS `agency`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `agency` (
`agency_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`warehouse_id` smallint(5) unsigned DEFAULT NULL COMMENT 'A nulo si se puede enrutar desde todos los almacenes',
`por_volumen` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'Si el calculo del porte se hacer por volumen',
`Id_Banco` int(11) NOT NULL DEFAULT '8' COMMENT 'para realizar los reembolsos',
`warehouse_alias_id` smallint(5) unsigned DEFAULT NULL,
`propios` tinyint(1) NOT NULL DEFAULT '0',
`zone_label` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`agency_id`),
KEY `warehouse_id` (`warehouse_id`),
KEY `Id_Banco` (`Id_Banco`),
KEY `agencias_alias_idx` (`warehouse_alias_id`),
CONSTRAINT `agency_ibfk_1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE,
CONSTRAINT `agency_ibfk_2` FOREIGN KEY (`Id_Banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`agency_ai`
AFTER INSERT ON `vn2008`.`agency`
FOR EACH ROW
BEGIN
INSERT INTO Agencias(Agencia,agency_id) VALUES(NEW.name,NEW.agency_id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `agency_hour`
--
DROP TABLE IF EXISTS `agency_hour`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `agency_hour` (
`agency_hour_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`week_day` tinyint(3) unsigned DEFAULT NULL COMMENT 'funcion de mysql Lunes = 0, Domingo = 6',
`agency_id` smallint(5) unsigned DEFAULT NULL,
`warehouse_id` smallint(5) unsigned DEFAULT NULL,
`province_id` smallint(5) unsigned DEFAULT NULL,
`subtract_day` tinyint(10) unsigned NOT NULL COMMENT 'dias a restar de la Fecha de entrega',
`max_hour` tinyint(3) unsigned NOT NULL COMMENT 'maxima hora hasta la cual se pueden hacer pedidos',
PRIMARY KEY (`agency_hour_id`),
UNIQUE KEY `week_day` (`week_day`,`agency_id`,`warehouse_id`,`province_id`,`max_hour`),
KEY `agency_id` (`agency_id`),
KEY `warehouse_id` (`warehouse_id`),
KEY `province_id` (`province_id`),
CONSTRAINT `agency_hour_ibfk_1` FOREIGN KEY (`agency_id`) REFERENCES `agency` (`agency_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `agency_hour_ibfk_2` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `agency_hour_ibfk_3` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`agency_hourBeforeInsert` BEFORE INSERT ON `agency_hour` FOR EACH ROW
BEGIN
DECLARE vAlreadyExists BOOLEAN DEFAULT FALSE;
IF NEW.week_day IS NULL AND NEW.province_id IS NULL AND NEW.subtract_day = 0 AND NEW.max_hour = 0 THEN
CALL util.throw ('FILL_MORE_FIELDS');
END IF;
SELECT COUNT(*) INTO vAlreadyExists
FROM vn2008.agency_hour
WHERE NEW.week_day <=> week_day AND NEW.province_id <=> province_id
AND NEW.warehouse_id <=> warehouse_id AND NEW.max_hour <=> max_hour
AND NEW.agency_id <=> agency_id;
IF vAlreadyExists > 1 THEN
CALL util.throw('ALREADY_EXISTS');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`agency_hour_AFTER_UPDATE` AFTER UPDATE ON `agency_hour` FOR EACH ROW
BEGIN
DECLARE vAlreadyExists BOOLEAN DEFAULT FALSE;
SELECT COUNT(*) INTO vAlreadyExists
FROM vn2008.agency_hour
WHERE NEW.week_day <=> week_day AND NEW.province_id <=> province_id
AND NEW.warehouse_id <=> warehouse_id AND NEW.max_hour <=> max_hour
AND NEW.agency_id <=> agency_id;
IF vAlreadyExists > 1 THEN
CALL util.throw('ALREADY_EXISTS');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `agency_warehouse`
--
DROP TABLE IF EXISTS `agency_warehouse`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `agency_warehouse` (
`agency_id` smallint(5) unsigned NOT NULL,
`warehouse_id` smallint(5) unsigned NOT NULL DEFAULT '1',
`Vista` tinyint(3) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`agency_id`,`warehouse_id`),
KEY `warehouse_id` (`warehouse_id`),
CONSTRAINT `agency_warehouse_ibfk_1` FOREIGN KEY (`agency_id`) REFERENCES `agency` (`agency_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `agency_warehouse_ibfk_2` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Indica la vista para cada agencia';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `agency_weekday_bonus`
--
DROP TABLE IF EXISTS `agency_weekday_bonus`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `agency_weekday_bonus` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`warehouse_id` smallint(6) unsigned DEFAULT NULL,
`agency_id` smallint(5) unsigned DEFAULT NULL,
`weekDay` tinyint(3) unsigned NOT NULL,
`zona` tinyint(4) DEFAULT NULL,
`bonus` decimal(10,2) NOT NULL DEFAULT '0.00',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `airline`
--
DROP TABLE IF EXISTS `airline`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `airline` (
`airline_id` smallint(2) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`airline_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `airport`
--
DROP TABLE IF EXISTS `airport`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `airport` (
`airport_id` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`name` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`airport_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `albaran`
--
DROP TABLE IF EXISTS `albaran`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `albaran` (
`albaran_id` int(11) NOT NULL AUTO_INCREMENT,
`ref` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`note` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,
`fecha` date NOT NULL,
`fecha_entrega` date DEFAULT NULL,
`valor` double DEFAULT NULL,
`Id_Proveedor` int(11) NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL,
`warehouse_id` smallint(6) unsigned NOT NULL,
`albaran_state_id` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL COMMENT 'Id_Trabajador hace referencia a la persona que ha introducido el albarán',
`Id_Responsable` int(11) NOT NULL,
`department_id` int(11) NOT NULL,
`recibida_id` mediumint(8) unsigned DEFAULT NULL,
PRIMARY KEY (`albaran_id`),
KEY `fk_albaran_Proveedores_idx` (`Id_Proveedor`),
KEY `fk_albaran_empresa1_idx` (`empresa_id`),
KEY `fk_albaran_warehouse1_idx` (`warehouse_id`),
KEY `fk_albaran_albaran_state1_idx` (`albaran_state_id`),
KEY `fk_albaran_Trabajadores1_idx` (`Id_Trabajador`),
KEY `fk_albaran_Trabajadores2_idx` (`Id_Responsable`),
KEY `fk_albaran_department1_idx` (`department_id`),
KEY `fk_albaran_recibida_idx` (`recibida_id`),
CONSTRAINT `fk_albaran_Proveedores` FOREIGN KEY (`Id_Proveedor`) REFERENCES `Proveedores` (`Id_Proveedor`) ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_Trabajadores1` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_Trabajadores2` FOREIGN KEY (`Id_Responsable`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_albaran_state1` FOREIGN KEY (`albaran_state_id`) REFERENCES `albaran_state` (`albaran_state_id`) ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_department1` FOREIGN KEY (`department_id`) REFERENCES `department` (`department_id`) ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_empresa1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_recibida` FOREIGN KEY (`recibida_id`) REFERENCES `recibida` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_warehouse1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `albaran_gestdoc`
--
DROP TABLE IF EXISTS `albaran_gestdoc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `albaran_gestdoc` (
`gestdoc_id` int(11) NOT NULL,
`albaran_id` int(11) NOT NULL,
PRIMARY KEY (`gestdoc_id`,`albaran_id`),
KEY `fk_albaran_gestdoc_gestdoc1_idx` (`gestdoc_id`),
KEY `fk_albaran_gestdoc_albaran1_idx` (`albaran_id`),
CONSTRAINT `fk_albaran_gestdoc_albaran1` FOREIGN KEY (`albaran_id`) REFERENCES `albaran` (`albaran_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `fk_albaran_gestdoc_gestdoc1` FOREIGN KEY (`gestdoc_id`) REFERENCES `gestdoc` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `albaran_state`
--
DROP TABLE IF EXISTS `albaran_state`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `albaran_state` (
`albaran_state_id` int(11) NOT NULL AUTO_INCREMENT,
`state` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`albaran_state_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `awb`
--
DROP TABLE IF EXISTS `awb`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb` (
`id` smallint(11) unsigned NOT NULL AUTO_INCREMENT,
`codigo` varchar(18) COLLATE utf8_unicode_ci NOT NULL,
`bultos` float unsigned NOT NULL,
`peso` float unsigned DEFAULT NULL,
`MYSQL_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`transitario_id` int(11) NOT NULL DEFAULT '582',
`iva_id` tinyint(3) unsigned DEFAULT '62',
`duakk` varchar(18) COLLATE utf8_unicode_ci DEFAULT NULL,
`gestdoc_id` int(11) DEFAULT NULL,
`importe` double NOT NULL DEFAULT '0',
`carguera_id` int(11) DEFAULT NULL,
`m3` double unsigned DEFAULT NULL,
`stems` int(10) unsigned DEFAULT NULL,
`flight_id` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`volume_weight` float unsigned DEFAULT NULL,
`hb` decimal(10,1) unsigned DEFAULT NULL,
`rate` decimal(10,2) unsigned DEFAULT NULL,
`booked` datetime DEFAULT NULL,
`issued` datetime DEFAULT NULL,
`operated` datetime DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `codigo_UNIQUE` (`codigo`),
KEY `proveedor_id` (`transitario_id`),
KEY `iva_id` (`iva_id`),
KEY `carguera_id` (`carguera_id`),
KEY `flight_id` (`flight_id`),
CONSTRAINT `awb_ibfk_1` FOREIGN KEY (`iva_id`) REFERENCES `iva_codigo` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `awb_ai` AFTER INSERT ON `awb` FOR EACH ROW
BEGIN
DECLARE lastrecibida_id INT;
INSERT INTO recibida(proveedor_id,fecha,empresa_id)
VALUES(NEW.transitario_id,CURDATE(),442);
SELECT last_insert_id() into lastrecibida_id;
INSERT INTO awb_recibida(awb_id,recibida_id)
VALUES(NEW.id,lastrecibida_id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`awb_au` AFTER UPDATE ON `awb` FOR EACH ROW
begin
IF NEW.importe <> OLD.importe THEN
CALL buy_tarifas_awb(NEW.codigo);
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `awb_component`
--
DROP TABLE IF EXISTS `awb_component`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb_component` (
`awb_id` smallint(11) unsigned DEFAULT NULL,
`Id_Proveedor` int(11) NOT NULL,
`Fecha` date NOT NULL,
`awb_component_type_id` mediumint(3) unsigned DEFAULT NULL,
`awb_role_id` tinyint(1) unsigned NOT NULL DEFAULT '1',
`awb_unit_id` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`value` decimal(10,2) DEFAULT NULL,
`Id_Moneda` tinyint(3) unsigned NOT NULL DEFAULT '2',
`recibida_id` mediumint(8) unsigned DEFAULT NULL,
UNIQUE KEY `unique_idx` (`awb_id`,`Id_Proveedor`,`awb_component_type_id`,`Fecha`),
KEY `Id_Moneda` (`Id_Moneda`),
KEY `awb_component_fk` (`awb_component_type_id`),
KEY `awb_role_fk` (`awb_role_id`),
KEY `awb_unit_fk` (`awb_unit_id`),
CONSTRAINT `Id_Monedafk` FOREIGN KEY (`Id_Moneda`) REFERENCES `Monedas` (`Id_Moneda`) ON DELETE CASCADE,
CONSTRAINT `awb_component_` FOREIGN KEY (`awb_component_type_id`) REFERENCES `awb_component_type` (`awb_component_type_id`) ON UPDATE CASCADE,
CONSTRAINT `awb_role_fk` FOREIGN KEY (`awb_role_id`) REFERENCES `awb_role` (`awb_role_id`) ON UPDATE CASCADE,
CONSTRAINT `awb_unit_fk` FOREIGN KEY (`awb_unit_id`) REFERENCES `awb_unit` (`awb_unit_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `awb_component_template`
--
DROP TABLE IF EXISTS `awb_component_template`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb_component_template` (
`awb_component_template_id` int(11) NOT NULL AUTO_INCREMENT,
`carguera_id` int(11) DEFAULT NULL,
`airport_in` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`airport_out` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`airline_id` smallint(2) unsigned DEFAULT NULL,
`awb_component_type_id` mediumint(3) unsigned NOT NULL,
`Fecha` date NOT NULL,
`awb_role_id` tinyint(1) unsigned NOT NULL,
`awb_unit_id` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`value` decimal(10,3) DEFAULT NULL,
`max_value` decimal(10,2) unsigned DEFAULT NULL,
`min_value` decimal(10,2) unsigned DEFAULT NULL,
`Id_Moneda` tinyint(3) unsigned NOT NULL DEFAULT '2',
PRIMARY KEY (`awb_component_template_id`),
UNIQUE KEY `carguera_id_UNIQUE` (`carguera_id`,`airport_in`,`airport_out`,`airline_id`,`awb_component_type_id`,`Fecha`),
KEY `Id_Moneda` (`Id_Moneda`),
KEY `airline_idx` (`airline_id`),
KEY `role_idx` (`awb_role_id`),
KEY `awb_unit_fk1` (`awb_unit_id`),
CONSTRAINT `Id_Moneda` FOREIGN KEY (`Id_Moneda`) REFERENCES `Monedas` (`Id_Moneda`) ON UPDATE CASCADE,
CONSTRAINT `awb_unit_fk1` FOREIGN KEY (`awb_unit_id`) REFERENCES `awb_unit` (`awb_unit_id`) ON UPDATE CASCADE,
CONSTRAINT `role_fk` FOREIGN KEY (`awb_role_id`) REFERENCES `awb_role` (`awb_role_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `awb_component_type`
--
DROP TABLE IF EXISTS `awb_component_type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb_component_type` (
`awb_component_type_id` mediumint(3) unsigned NOT NULL AUTO_INCREMENT,
`description` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`awb_component_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT=' ';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `awb_gestdoc`
--
DROP TABLE IF EXISTS `awb_gestdoc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb_gestdoc` (
`awb_gestdoc_id` int(11) NOT NULL AUTO_INCREMENT,
`awb_id` smallint(11) unsigned NOT NULL,
`gestdoc_id` int(11) NOT NULL,
PRIMARY KEY (`awb_gestdoc_id`),
KEY `awb_gestdoc_awb_fk` (`awb_id`),
KEY `awb_gestdoc_gestdoc_fk` (`gestdoc_id`),
CONSTRAINT `awb_gestdoc_awb_fk` FOREIGN KEY (`awb_id`) REFERENCES `awb` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `awb_gestdoc_gestdoc_fk` FOREIGN KEY (`gestdoc_id`) REFERENCES `gestdoc` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `awb_recibida`
--
DROP TABLE IF EXISTS `awb_recibida`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb_recibida` (
`awb_id` smallint(5) unsigned NOT NULL,
`recibida_id` mediumint(8) unsigned NOT NULL,
`dua` varchar(18) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`recibida_id`),
KEY `awb_id` (`awb_id`),
CONSTRAINT `awb_recibida_ibfk_1` FOREIGN KEY (`awb_id`) REFERENCES `awb` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `awb_recibida_ibfk_2` FOREIGN KEY (`recibida_id`) REFERENCES `recibida` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `awb_recibida_ad` AFTER DELETE ON `awb_recibida` FOR EACH ROW
IF (SELECT COUNT(*) FROM recibida_iva where recibida_id = OLD.recibida_id) = 0
AND
(SELECT COUNT(*) FROM recibida_vencimiento where recibida_id = OLD.recibida_id) = 0
AND
(SELECT contabilizada FROM recibida WHERE id = OLD.recibida_id) = 0
THEN
DELETE FROM recibida WHERE id = OLD.recibida_id;
END IF */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `awb_role`
--
DROP TABLE IF EXISTS `awb_role`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb_role` (
`awb_role_id` tinyint(1) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`awb_role_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT=' ';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `awb_unit`
--
DROP TABLE IF EXISTS `awb_unit`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `awb_unit` (
`awb_unit_id` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`operation` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`awb_unit_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='tipos de unidades';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `awb_volume`
--
DROP TABLE IF EXISTS `awb_volume`;
/*!50001 DROP VIEW IF EXISTS `awb_volume`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `awb_volume` AS SELECT
1 AS `awb_id`,
1 AS `volume`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `balance_nest_tree`
--
DROP TABLE IF EXISTS `balance_nest_tree`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `balance_nest_tree` (
`lft` int(11) DEFAULT NULL,
`rgt` int(11) DEFAULT NULL,
`name` text COLLATE utf8_unicode_ci,
`id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Gasto` text COLLATE utf8_unicode_ci,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `barcodes`
--
DROP TABLE IF EXISTS `barcodes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `barcodes` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Article` int(11) NOT NULL,
`code` varchar(22) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`),
UNIQUE KEY `Id_Article_2` (`Id_Article`,`code`),
KEY `Id_Article` (`Id_Article`),
CONSTRAINT `barcodes_ibfk_1` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `bionic_updating_options`
--
DROP TABLE IF EXISTS `bionic_updating_options`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `bionic_updating_options` (
`buo_id` int(11) NOT NULL AUTO_INCREMENT,
`description` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`buo_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='En esta tabla pondremos las distintas opciones que se ofrecen al comecial o al cliente al cambiar alguno de los parametros básicos de un ticket';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `botanic_export`
--
DROP TABLE IF EXISTS `botanic_export`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `botanic_export` (
`botanic_export_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`edi_genus_id` mediumint(8) unsigned NOT NULL,
`edi_specie_id` mediumint(8) unsigned DEFAULT NULL,
`Id_Paises` mediumint(8) unsigned DEFAULT NULL,
`restriction` enum('Sin restriccion','Importacion Prohibida','Se Requiere Certificado','pasaporte individual','declaracion origen') CHARACTER SET utf8 NOT NULL,
`description` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`botanic_export_id`),
KEY `Id_Paises` (`Id_Paises`),
CONSTRAINT `botanic_export_ibfk_1` FOREIGN KEY (`Id_Paises`) REFERENCES `Paises` (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Especifica los generos y especies prohibidos en paises';
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`botanic_exportBeforeInsert` BEFORE INSERT ON `botanic_export` FOR EACH ROW
BEGIN
IF (SELECT botanic_export_is_updatable (NEW.edi_genus_id, NEW.edi_specie_id, NEW.id_Paises, NEW.restriction) ) > 0 THEN
CALL util.throw ('Datos duplicados');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `businessReasonEnd`
--
DROP TABLE IF EXISTS `businessReasonEnd`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `businessReasonEnd` (
`id` tinyint(3) NOT NULL AUTO_INCREMENT,
`reason` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `business_labour_payrroll`
--
DROP TABLE IF EXISTS `business_labour_payrroll`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `business_labour_payrroll` (
`business_id` int(11) NOT NULL,
`cod_tarifa` int(11) NOT NULL,
`cod_categoria` int(11) NOT NULL,
`cod_contrato` int(11) NOT NULL,
`importepactado` double NOT NULL DEFAULT '0',
PRIMARY KEY (`business_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `buy_edi`
--
DROP TABLE IF EXISTS `buy_edi`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `buy_edi` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`barcode` char(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`entry_year` smallint(5) unsigned NOT NULL,
`delivery_number` bigint(20) unsigned DEFAULT NULL,
`fec` date DEFAULT NULL,
`hor` time DEFAULT NULL,
`now` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`ptj` mediumint(8) unsigned DEFAULT NULL,
`ref` int(11) NOT NULL,
`item` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`pac` int(11) DEFAULT '0',
`qty` int(10) unsigned NOT NULL,
`ori` varchar(3) COLLATE utf8_unicode_ci DEFAULT 'NL',
`cat` varchar(2) COLLATE utf8_unicode_ci DEFAULT NULL,
`agj` int(11) DEFAULT NULL,
`kop` int(11) DEFAULT NULL,
`ptd` varchar(6) COLLATE utf8_unicode_ci DEFAULT NULL,
`sub` mediumint(8) unsigned DEFAULT NULL,
`pro` mediumint(8) unsigned NOT NULL,
`pri` double NOT NULL,
`package` int(10) unsigned DEFAULT NULL,
`auction` smallint(5) unsigned DEFAULT NULL,
`klo` smallint(5) unsigned DEFAULT NULL,
`k01` smallint(5) unsigned DEFAULT NULL,
`k02` smallint(5) unsigned DEFAULT NULL,
`k03` tinyint(3) unsigned DEFAULT NULL,
`k04` tinyint(3) unsigned DEFAULT NULL,
`s1` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`s2` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`s3` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`s4` varchar(4) COLLATE utf8_unicode_ci DEFAULT NULL,
`s5` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`s6` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`ok` tinyint(4) NOT NULL DEFAULT '0',
`trolley_id` int(11) DEFAULT NULL,
`scanned` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE KEY `barcode_year` (`barcode`,`entry_year`),
UNIQUE KEY `delivery_number` (`delivery_number`),
KEY `ref` (`ref`),
KEY `ptj` (`ptj`),
KEY `pro` (`pro`),
KEY `kop` (`kop`),
KEY `barcode` (`barcode`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `buy_edi_k012`
--
DROP TABLE IF EXISTS `buy_edi_k012`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `buy_edi_k012` (
`buy_edi_k012_id` smallint(6) unsigned NOT NULL,
`description` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`buy_edi_k012_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Características negativas de los articulos de subasta';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `buy_edi_k03`
--
DROP TABLE IF EXISTS `buy_edi_k03`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `buy_edi_k03` (
`buy_edi_k03_id` tinyint(3) unsigned NOT NULL,
`description` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`buy_edi_k03_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Características fitosanitarias de los articulos de subasta';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `buy_edi_k04`
--
DROP TABLE IF EXISTS `buy_edi_k04`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `buy_edi_k04` (
`buy_edi_k04_id` tinyint(3) unsigned NOT NULL,
`description` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`buy_edi_k04_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Características calidad de los articulos de subasta';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `call_information`
--
DROP TABLE IF EXISTS `call_information`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `call_information` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Descripcio` text COLLATE utf8_unicode_ci NOT NULL,
`Conclusio` tinyint(3) unsigned NOT NULL,
`Id_Cliente` int(11) NOT NULL,
`fecha` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `call_option`
--
DROP TABLE IF EXISTS `call_option`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `call_option` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`descripcion` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `callings`
--
DROP TABLE IF EXISTS `callings`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `callings` (
`id` int(11) NOT NULL,
`motivo` varchar(105) COLLATE utf8_unicode_ci DEFAULT NULL,
`tel1` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`tel2` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`situacion` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `callingtasksKK`
--
DROP TABLE IF EXISTS `callingtasksKK`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `callingtasksKK` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`instruccion` varchar(99) COLLATE utf8_unicode_ci DEFAULT NULL,
`tel1` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`tel2` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`situacion` varchar(99) COLLATE utf8_unicode_ci DEFAULT NULL,
`closed` tinyint(1) DEFAULT '0',
`Id_Trabajador` tinyint(4) DEFAULT NULL,
`Id_Prioridad` tinyint(4) DEFAULT '2',
`selected` tinyint(4) DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `cdr`
--
DROP TABLE IF EXISTS `cdr`;
/*!50001 DROP VIEW IF EXISTS `cdr`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `cdr` AS SELECT
1 AS `calldate`,
1 AS `clid`,
1 AS `src`,
1 AS `dst`,
1 AS `dcontext`,
1 AS `channel`,
1 AS `dstchannel`,
1 AS `lastapp`,
1 AS `lastdata`,
1 AS `duration`,
1 AS `billsec`,
1 AS `disposition`,
1 AS `amaflags`,
1 AS `accountcode`,
1 AS `uniqueid`,
1 AS `userfield`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `chanel`
--
DROP TABLE IF EXISTS `chanel`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `chanel` (
`chanel_id` smallint(6) NOT NULL AUTO_INCREMENT,
`name` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`chanel_id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Canal por el que nos ha conocido un cliente y se ha dado de';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `chat`
--
DROP TABLE IF EXISTS `chat`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `chat` (
`chat_id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Trabajador` int(11) NOT NULL,
`msg` varchar(254) COLLATE utf8_unicode_ci DEFAULT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`chat_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Para chatear los compradores, en el frmRESERVE de la COMPARATIVA';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `city`
--
DROP TABLE IF EXISTS `city`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `city` (
`city_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`province_id` smallint(6) unsigned DEFAULT NULL,
`nst_geo_id` int(11) DEFAULT NULL,
`nst_name` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`city_id`),
UNIQUE KEY `province_city_pk` (`province_id`,`name`),
KEY `NST_CITY_FK_idx` (`nst_geo_id`),
CONSTRAINT `nst_geo_city` FOREIGN KEY (`nst_geo_id`) REFERENCES `nst`.`geo` (`id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `province_city_fk` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`city_BEFORE_INSERT` BEFORE INSERT ON `city` FOR EACH ROW
BEGIN
SET new.nst_name = new.`name`;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`city_AFTER_DELETE` AFTER DELETE ON `city` FOR EACH ROW
BEGIN
CALL nst.del(OLD.nst_geo_id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `cl_act`
--
DROP TABLE IF EXISTS `cl_act`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_act` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Movimiento` int(11) DEFAULT NULL,
`cl_main_id` int(10) unsigned NOT NULL,
`Id_Trabajador` int(11) NOT NULL DEFAULT '20',
`cl_sol_id` tinyint(4) DEFAULT NULL,
`greuge` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `cl_main_id` (`cl_main_id`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `Id_Movimiento` (`Id_Movimiento`),
KEY `cl_sol_id` (`cl_sol_id`),
CONSTRAINT `cl_act_ibfk_1` FOREIGN KEY (`Id_Movimiento`) REFERENCES `Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `cl_act_ibfk_3` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `cl_act_ibfk_4` FOREIGN KEY (`cl_main_id`) REFERENCES `cl_main` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Acciones en respuesta a las reclamaciones';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_cau`
--
DROP TABLE IF EXISTS `cl_cau`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_cau` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`cl_main_id` int(10) unsigned NOT NULL,
`cl_res_id` int(10) unsigned NOT NULL DEFAULT '1',
`Id_Trabajador` int(11) NOT NULL DEFAULT '20',
`cl_mot_id` int(10) unsigned NOT NULL DEFAULT '1',
`cl_con_id` int(10) unsigned NOT NULL DEFAULT '1',
`cl_dev` tinyint(3) unsigned NOT NULL DEFAULT '1',
`cl_sol` tinyint(3) unsigned NOT NULL DEFAULT '2',
PRIMARY KEY (`id`),
KEY `cl_main_id` (`cl_main_id`),
KEY `cl_res_id` (`cl_res_id`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `cl_mot_id` (`cl_mot_id`),
KEY `cl_con_id` (`cl_con_id`),
KEY `cl_dev` (`cl_dev`),
KEY `cl_sol` (`cl_sol`),
CONSTRAINT `cl_cau_ibfk_10` FOREIGN KEY (`cl_main_id`) REFERENCES `cl_main` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `cl_cau_ibfk_11` FOREIGN KEY (`cl_dev`) REFERENCES `cl_dev` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_cau_ibfk_12` FOREIGN KEY (`cl_sol`) REFERENCES `cl_sol` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_cau_ibfk_6` FOREIGN KEY (`cl_res_id`) REFERENCES `cl_res` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_cau_ibfk_7` FOREIGN KEY (`cl_mot_id`) REFERENCES `cl_mot` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_cau_ibfk_8` FOREIGN KEY (`cl_con_id`) REFERENCES `cl_con` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_cau_ibfk_9` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Causas de las reclamaciones';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_con`
--
DROP TABLE IF EXISTS `cl_con`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_con` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`consecuencia` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Consecuencias de los motivos';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_dep`
--
DROP TABLE IF EXISTS `cl_dep`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_dep` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`departamento` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Departamentos para las quejas';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_det`
--
DROP TABLE IF EXISTS `cl_det`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_det` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`cl_main_id` int(10) unsigned NOT NULL,
`Id_Movimiento` int(11) DEFAULT NULL,
`cl_que_id` int(10) unsigned NOT NULL DEFAULT '1',
`cl_pet_id` int(1) unsigned NOT NULL DEFAULT '1',
`numero` double DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `Id_Movimiento` (`Id_Movimiento`),
KEY `cl_pet_id` (`cl_pet_id`),
KEY `cl_que_id` (`cl_que_id`),
KEY `cl_main_id` (`cl_main_id`),
CONSTRAINT `cl_det_ibfk_5` FOREIGN KEY (`cl_que_id`) REFERENCES `cl_que` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_det_ibfk_6` FOREIGN KEY (`cl_pet_id`) REFERENCES `cl_pet` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_det_ibfk_7` FOREIGN KEY (`Id_Movimiento`) REFERENCES `Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `cl_det_ibfk_8` FOREIGN KEY (`cl_main_id`) REFERENCES `cl_main` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Detalle de las reclamaciones';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_dev`
--
DROP TABLE IF EXISTS `cl_dev`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_dev` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`devolucion` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Método por el cual el cliente nos devuelve la mercancía';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_est`
--
DROP TABLE IF EXISTS `cl_est`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_est` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`estado` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Estados posibles de las reclamaciones';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_main`
--
DROP TABLE IF EXISTS `cl_main`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_main` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Fecha` datetime NOT NULL,
`cl_dep_id` tinyint(3) unsigned DEFAULT NULL,
`cl_est_id` int(10) unsigned NOT NULL DEFAULT '1',
`notas` text COLLATE utf8_unicode_ci,
`Id_Cliente` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`sensib` int(1) unsigned NOT NULL DEFAULT '3',
`mana` tinyint(1) NOT NULL DEFAULT '0',
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `cl_dep_id` (`cl_dep_id`),
KEY `cl_est_id` (`cl_est_id`),
KEY `Id_Cliente` (`Id_Cliente`),
KEY `Id_Trabajador` (`Id_Trabajador`),
CONSTRAINT `cl_main_ibfk_3` FOREIGN KEY (`cl_est_id`) REFERENCES `cl_est` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_main_ibfk_4` FOREIGN KEY (`cl_dep_id`) REFERENCES `cl_dep` (`id`) ON UPDATE CASCADE,
CONSTRAINT `cl_main_ibfk_5` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Reclamaciones, tabla principal';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_mot`
--
DROP TABLE IF EXISTS `cl_mot`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_mot` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`motivo` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Motivos de las fallos';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_pet`
--
DROP TABLE IF EXISTS `cl_pet`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_pet` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`peticion` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Peticiones de los cliente en relacion a las quejas';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_que`
--
DROP TABLE IF EXISTS `cl_que`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_que` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`queja` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Queja por linea de las reclamaciones';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_res`
--
DROP TABLE IF EXISTS `cl_res`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_res` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`responsable` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`sensibility` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'if=1 >sensib >culpa',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Responsables de las causas';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cl_sol`
--
DROP TABLE IF EXISTS `cl_sol`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cl_sol` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`solucion` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Solucion ofrecida a la reclamación';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `clientMana`
--
DROP TABLE IF EXISTS `clientMana`;
/*!50001 DROP VIEW IF EXISTS `clientMana`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `clientMana` AS SELECT
1 AS `Id_Cliente`,
1 AS `ManaUnitario`,
1 AS `ManaTotal`,
1 AS `Id_Ticket`,
1 AS `Id_Article`,
1 AS `Concepte`,
1 AS `Cantidad`,
1 AS `Preu`,
1 AS `Fecha`,
1 AS `Id_Movimiento`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `client_observation`
--
DROP TABLE IF EXISTS `client_observation`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `client_observation` (
`client_observation_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`text` text COLLATE utf8_unicode_ci NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`client_observation_id`),
KEY `Id_Trabajador` (`Id_Trabajador`),
KEY `Id_Cliente` (`Id_Cliente`),
CONSTRAINT `client_observation_ibfk_1` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `client_observation_ibfk_2` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Todas las observaciones referentes a un ticket';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `clientes_gestdoc`
--
DROP TABLE IF EXISTS `clientes_gestdoc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `clientes_gestdoc` (
`Id_Cliente` int(11) NOT NULL,
`gest_doc_id` int(11) NOT NULL,
PRIMARY KEY (`Id_Cliente`,`gest_doc_id`),
KEY `gest_doc_id` (`gest_doc_id`),
CONSTRAINT `clientes_gestdoc_ibfk_2` FOREIGN KEY (`gest_doc_id`) REFERENCES `gestdoc` (`id`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `clientes_gestdoc_ibfk_3` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `clientes_regalos_enc`
--
DROP TABLE IF EXISTS `clientes_regalos_enc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `clientes_regalos_enc` (
`Id_Cliente` int(11) NOT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Regalo` int(11) NOT NULL,
PRIMARY KEY (`Id_Cliente`,`Id_Regalo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `clientes_regalos_lista_enc`
--
DROP TABLE IF EXISTS `clientes_regalos_lista_enc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `clientes_regalos_lista_enc` (
`Id_Regalo` int(11) NOT NULL AUTO_INCREMENT,
`Descripcion` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`Activo` bit(1) NOT NULL DEFAULT b'0',
`foto` blob,
`datstart` date DEFAULT NULL,
`datend` date DEFAULT NULL,
`warehouse_id` smallint(6) unsigned DEFAULT '1',
`province_id` smallint(5) unsigned DEFAULT NULL,
PRIMARY KEY (`Id_Regalo`)
) ENGINE=MyISAM AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `clientes_tipo`
--
DROP TABLE IF EXISTS `clientes_tipo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `clientes_tipo` (
`clientes_tipo_id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(20) CHARACTER SET utf8 NOT NULL,
`tipo` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`clientes_tipo_id`),
UNIQUE KEY `code_UNIQUE` (`code`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Establece categorias para poder agrupar las ventas';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `commission`
--
DROP TABLE IF EXISTS `commission`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `commission` (
`commisision_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`percentage` tinyint(3) unsigned NOT NULL,
`value` float unsigned NOT NULL,
PRIMARY KEY (`commisision_id`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `config`
--
DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (
`id` int(11) NOT NULL,
`generic_item` int(11) NOT NULL COMMENT 'Id del artículo genérico',
`edi_entry` int(11) NOT NULL COMMENT 'Entrada usada para los EKTs',
`lastMana` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `config_host`
--
DROP TABLE IF EXISTS `config_host`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config_host` (
`config_host_id` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`warehouse` smallint(6) unsigned NOT NULL DEFAULT '1',
`empresa_id` smallint(6) unsigned NOT NULL DEFAULT '442',
`caja` int(11) DEFAULT '13',
`Id_Impresora` tinyint(3) unsigned DEFAULT '27',
`Permanente` tinyint(1) unsigned DEFAULT '1',
`route_days_before` smallint(6) DEFAULT '2',
`route_days_after` smallint(6) DEFAULT '1',
PRIMARY KEY (`config_host_id`),
KEY `warehouse` (`warehouse`),
KEY `empresa_id` (`empresa_id`),
KEY `caja` (`caja`),
KEY `Id_Impresora` (`Id_Impresora`),
CONSTRAINT `config_host_ibfk_1` FOREIGN KEY (`caja`) REFERENCES `Bancos` (`Id_Banco`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `config_host_ibfk_2` FOREIGN KEY (`warehouse`) REFERENCES `warehouse` (`id`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `config_host_ibfk_3` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `config_host_ibfk_4` FOREIGN KEY (`Id_Impresora`) REFERENCES `Impresoras` (`Id_Impresora`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Sustituye al antiguo TPV_Settings';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `config_host_forms`
--
DROP TABLE IF EXISTS `config_host_forms`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config_host_forms` (
`config_host_id` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`formname` varchar(56) COLLATE utf8_unicode_ci NOT NULL,
`x` int(8) NOT NULL,
`y` int(8) NOT NULL,
`h` int(8) NOT NULL,
`l` int(8) NOT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`config_host_id`,`formname`),
CONSTRAINT `config_host_form_ibfk_1` FOREIGN KEY (`config_host_id`) REFERENCES `config_host` (`config_host_id`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Registra las posiciones de los formularios';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `consignatarios_observation`
--
DROP TABLE IF EXISTS `consignatarios_observation`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `consignatarios_observation` (
`consignatarios_observation_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_Consigna` int(11) NOT NULL,
`observation_type_id` tinyint(3) unsigned NOT NULL,
`text` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`consignatarios_observation_id`),
UNIQUE KEY `Id_Consigna` (`Id_Consigna`,`observation_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Observaciones de los consignatarios';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `container`
--
DROP TABLE IF EXISTS `container`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `container` (
`container_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`Continente` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`container_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cooler_path`
--
DROP TABLE IF EXISTS `cooler_path`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cooler_path` (
`cooler_path_id` int(11) NOT NULL AUTO_INCREMENT,
`description` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`cooler_path_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Define el orden en que se imprimen los F5';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cooler_path_detail`
--
DROP TABLE IF EXISTS `cooler_path_detail`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cooler_path_detail` (
`cooler_path_detail_id` int(11) NOT NULL AUTO_INCREMENT,
`cooler_path_id` int(11) NOT NULL DEFAULT '1',
`pasillo` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`cooler_path_id`,`pasillo`),
UNIQUE KEY `cooler_path_detail_id_UNIQUE` (`cooler_path_detail_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cp`
--
DROP TABLE IF EXISTS `cp`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cp` (
`cp_id` int(11) NOT NULL AUTO_INCREMENT,
`cpd` int(11) NOT NULL,
`cph` int(11) NOT NULL,
`zone_id` smallint(6) DEFAULT NULL,
`town` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`cp_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Relacio de codis postals i el municipi al qual se asigna';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `credit`
--
DROP TABLE IF EXISTS `credit`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `credit` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL,
`amount` double unsigned NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Trabajador` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `workers_fk_idx` (`Id_Trabajador`),
CONSTRAINT `workers_fk` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `credit_card`
--
DROP TABLE IF EXISTS `credit_card`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `credit_card` (
`credit_card_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(10) NOT NULL,
`number` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`expiration_month` tinyint(2) unsigned zerofill NOT NULL,
`expiration_year` tinyint(2) unsigned zerofill NOT NULL,
`priority` tinyint(3) unsigned NOT NULL DEFAULT '1',
`obs` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`credit_card_id`),
KEY `Id_Cliente` (`Id_Cliente`),
CONSTRAINT `credit_card_ibfk_1` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cyc`
--
DROP TABLE IF EXISTS `cyc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cyc` (
`Id_Cliente` int(11) NOT NULL,
`Riesgo` double DEFAULT NULL,
`Fecha` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`cyc_id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`cyc_id`),
KEY `Cliente` (`Id_Cliente`),
CONSTRAINT `Cliente` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Detalla los clientes que estan clasificados en Credito y Cau';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cyc_declaration`
--
DROP TABLE IF EXISTS `cyc_declaration`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cyc_declaration` (
`factura_id` int(10) unsigned NOT NULL,
`Riesgo` double DEFAULT NULL,
`Fecha` date NOT NULL,
`Vencimiento` int(10) NOT NULL DEFAULT '0',
PRIMARY KEY (`factura_id`),
CONSTRAINT `Factura` FOREIGN KEY (`factura_id`) REFERENCES `Facturas` (`factura_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Registro de las facturas declaradas a cyc';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `daily_task_log`
--
DROP TABLE IF EXISTS `daily_task_log`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `daily_task_log` (
`consulta` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='No he encontrado el lugar en el que vicente almacena la hora en que se ejecutan las daily tasks, asi que he hecho esta tabla, a eliminar cuando se considere oportuno';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `definitivo`
--
DROP TABLE IF EXISTS `definitivo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `definitivo` (
`definitivo_id` int(11) NOT NULL,
`empresa_id` int(11) NOT NULL,
`desde` bigint(20) NOT NULL,
`hasta` bigint(20) NOT NULL,
`fecha` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`definitivo_id`,`empresa_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `department`
--
DROP TABLE IF EXISTS `department`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `department` (
`department_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`lft` int(11) NOT NULL,
`rgt` int(11) NOT NULL,
`Id_Trabajador` int(11) DEFAULT NULL COMMENT 'Id_Trabajador es el jefe del departamento',
PRIMARY KEY (`department_id`),
UNIQUE KEY `lft_UNIQUE` (`lft`),
UNIQUE KEY `rgt_UNIQUE` (`rgt`),
UNIQUE KEY `name_UNIQUE` (`name`),
KEY `fk_department_Trabajadores1_idx` (`Id_Trabajador`),
CONSTRAINT `fk_department_Trabajadores1` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `device`
--
DROP TABLE IF EXISTS `device`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `device` (
`device_id` int(11) NOT NULL AUTO_INCREMENT,
`sn` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`model` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`device_id`),
UNIQUE KEY `device_id_UNIQUE` (`device_id`),
UNIQUE KEY `sn_UNIQUE` (`sn`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `device_user`
--
DROP TABLE IF EXISTS `device_user`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `device_user` (
`device_id` int(11) NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`device_id`,`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `dhl`
--
DROP TABLE IF EXISTS `dhl`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `dhl` (
`codigo_postal` mediumint(8) unsigned NOT NULL,
`frecuencia` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`codigo_postal`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `duaDismissed`
--
DROP TABLE IF EXISTS `duaDismissed`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `duaDismissed` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ticketFk` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`,`ticketFk`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `edi_article`
--
DROP TABLE IF EXISTS `edi_article`;
/*!50001 DROP VIEW IF EXISTS `edi_article`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_article` AS SELECT
1 AS `id`,
1 AS `product_name`,
1 AS `name`,
1 AS `plant_id`,
1 AS `group_id`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_bucket`
--
DROP TABLE IF EXISTS `edi_bucket`;
/*!50001 DROP VIEW IF EXISTS `edi_bucket`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_bucket` AS SELECT
1 AS `bucket_id`,
1 AS `bucket_type_id`,
1 AS `description`,
1 AS `x_size`,
1 AS `y_size`,
1 AS `z_size`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_bucket_type`
--
DROP TABLE IF EXISTS `edi_bucket_type`;
/*!50001 DROP VIEW IF EXISTS `edi_bucket_type`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_bucket_type` AS SELECT
1 AS `bucket_type_id`,
1 AS `description`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_feature`
--
DROP TABLE IF EXISTS `edi_feature`;
/*!50001 DROP VIEW IF EXISTS `edi_feature`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_feature` AS SELECT
1 AS `item_id`,
1 AS `feature_type_id`,
1 AS `feature_value`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_genus`
--
DROP TABLE IF EXISTS `edi_genus`;
/*!50001 DROP VIEW IF EXISTS `edi_genus`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_genus` AS SELECT
1 AS `genus_id`,
1 AS `latin_genus_name`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_item_feature`
--
DROP TABLE IF EXISTS `edi_item_feature`;
/*!50001 DROP VIEW IF EXISTS `edi_item_feature`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_item_feature` AS SELECT
1 AS `item_id`,
1 AS `presentation_order`,
1 AS `feature`,
1 AS `regulation_type`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_plant`
--
DROP TABLE IF EXISTS `edi_plant`;
/*!50001 DROP VIEW IF EXISTS `edi_plant`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_plant` AS SELECT
1 AS `plant_id`,
1 AS `genus_id`,
1 AS `specie_id`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_specie`
--
DROP TABLE IF EXISTS `edi_specie`;
/*!50001 DROP VIEW IF EXISTS `edi_specie`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_specie` AS SELECT
1 AS `specie_id`,
1 AS `genus_id`,
1 AS `latin_species_name`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_supplier`
--
DROP TABLE IF EXISTS `edi_supplier`;
/*!50001 DROP VIEW IF EXISTS `edi_supplier`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_supplier` AS SELECT
1 AS `supplier_id`,
1 AS `company_name`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `edi_testigos`
--
DROP TABLE IF EXISTS `edi_testigos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `edi_testigos` (
`id` smallint(6) NOT NULL AUTO_INCREMENT,
`table` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`field` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
`testigo` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `edi_type`
--
DROP TABLE IF EXISTS `edi_type`;
/*!50001 DROP VIEW IF EXISTS `edi_type`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_type` AS SELECT
1 AS `type_id`,
1 AS `type_group_id`,
1 AS `description`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `edi_value`
--
DROP TABLE IF EXISTS `edi_value`;
/*!50001 DROP VIEW IF EXISTS `edi_value`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `edi_value` AS SELECT
1 AS `type_id`,
1 AS `type_value`,
1 AS `type_description`,
1 AS `entry_date`,
1 AS `expiry_date`,
1 AS `change_date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `emp_day_pay`
--
DROP TABLE IF EXISTS `emp_day_pay`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `emp_day_pay` (
`id` smallint(5) unsigned NOT NULL,
`emp_day_pay` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`id`,`emp_day_pay`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `empresa`
--
DROP TABLE IF EXISTS `empresa`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `empresa` (
`id` smallint(5) unsigned NOT NULL,
`abbreviation` char(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`registro` varchar(120) COLLATE utf8_unicode_ci NOT NULL,
`gerente_id` int(11) NOT NULL,
`alta` date NOT NULL,
`baja` date DEFAULT NULL,
`logo` longblob,
`oficial` tinyint(1) unsigned NOT NULL DEFAULT '1',
`cyc` tinyint(1) unsigned zerofill NOT NULL DEFAULT '0',
`rgb` varchar(6) COLLATE utf8_unicode_ci NOT NULL,
`mail` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`cuno` blob,
`ODBC_DATE` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP,
`Id_Cliente` int(11) DEFAULT NULL,
`digito_factura` int(2) DEFAULT NULL,
`Id_Proveedores_account` mediumint(8) unsigned DEFAULT NULL,
`morosidad` tinyint(4) NOT NULL DEFAULT '0',
`empresa_grupo` int(11) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
KEY `gerente_id` (`gerente_id`),
KEY `empresa_cliente_idx` (`Id_Cliente`),
KEY `Id_Proveedores_account` (`Id_Proveedores_account`),
KEY `empresa_grupo_fk_idx` (`empresa_grupo`),
CONSTRAINT `empresa_cliente` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `empresa_ibfk_1` FOREIGN KEY (`gerente_id`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `fk_empresa_grupo` FOREIGN KEY (`empresa_grupo`) REFERENCES `empresa_grupo` (`empresa_grupo_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `empresa_grupo`
--
DROP TABLE IF EXISTS `empresa_grupo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `empresa_grupo` (
`empresa_grupo_id` int(11) NOT NULL AUTO_INCREMENT,
`grupo` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`empresa_grupo_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `entity`
--
DROP TABLE IF EXISTS `entity`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `entity` (
`pais_id` mediumint(8) unsigned NOT NULL DEFAULT '1',
`entity_id` int(10) unsigned NOT NULL,
`description` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`bic` varchar(11) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`entity_id`),
UNIQUE KEY `entity_id_UNIQUE` (`entity_id`),
UNIQUE KEY `bic_UNIQUE` (`bic`),
KEY `fg_entity1_idx` (`pais_id`),
CONSTRAINT `fg_entity1` FOREIGN KEY (`pais_id`) REFERENCES `Paises` (`Id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Entidades bancarias ';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `escritos`
--
DROP TABLE IF EXISTS `escritos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `escritos` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`abrev` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`descripcion` varchar(105) COLLATE utf8_unicode_ci NOT NULL,
`visible` tinyint(4) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `escritos_det`
--
DROP TABLE IF EXISTS `escritos_det`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `escritos_det` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(10) unsigned NOT NULL,
`escritos_id` int(10) unsigned NOT NULL,
`fecha` datetime NOT NULL,
`Id_Trabajador` int(10) unsigned NOT NULL,
`Saldo` float NOT NULL,
`empresa_id` smallint(5) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `empresa_id` (`empresa_id`),
CONSTRAINT `escritos_det_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `expeditions`
--
DROP TABLE IF EXISTS `expeditions`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `expeditions` (
`expeditions_id` int(11) NOT NULL AUTO_INCREMENT,
`agency_id` int(11) NOT NULL,
`ticket_id` int(10) NOT NULL,
`EsBulto` int(11) DEFAULT '1',
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`reembolso` bit(1) DEFAULT b'0',
`recogida` bit(1) DEFAULT b'0',
`Id_Article` int(11) DEFAULT NULL,
`counter` smallint(5) unsigned NOT NULL,
`checked` tinyint(4) NOT NULL DEFAULT '0',
`workerFk` int(11) DEFAULT NULL,
PRIMARY KEY (`expeditions_id`),
KEY `index1` (`agency_id`),
KEY `index2` (`EsBulto`),
KEY `index3` (`odbc_date`),
KEY `index4` (`ticket_id`),
CONSTRAINT `Id_Agencia` FOREIGN KEY (`agency_id`) REFERENCES `Agencias` (`Id_Agencia`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `expeditionsBeforeInsert`
BEFORE INSERT ON `expeditions` FOR EACH ROW
BEGIN
DECLARE intcounter INT;
IF NEW.EsBulto > 0 THEN
UPDATE Tickets SET Bultos = nz(Bultos) + 1 WHERE Id_Ticket = NEW.ticket_id;
SELECT IFNULL(MAX(counter),0) +1 INTO intcounter FROM expeditions e
INNER JOIN Tickets t1 ON e.ticket_id = t1.Id_Ticket
LEFT JOIN vn.ticketState ts ON ts.ticket = t1.Id_Ticket
INNER JOIN Tickets t2 ON t2.Id_Consigna = t1.Id_Consigna AND DATE(t2.Fecha) = DATE(t1.Fecha) AND t1.warehouse_id = t2.warehouse_id
WHERE t2.Id_Ticket = NEW.ticket_id AND ts.alertLevel < 3 AND t1.empresa_id = t2.empresa_id AND t1.Id_Agencia = t2.Id_Agencia;
SET NEW.`counter` = intcounter;
END IF;
SET NEW.workerFk=get_Trabajador();
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`expeditionsBeforeUpdate`
BEFORE UPDATE ON `vn2008`.`expeditions`
FOR EACH ROW
BEGIN
IF NEW.counter <> OLD.counter THEN
IF (SELECT COUNT(*) FROM expeditions e
INNER JOIN Tickets t1 ON e.ticket_id = t1.Id_Ticket
INNER JOIN Tickets t2 ON t2.Id_Consigna = t1.Id_Consigna AND DATE(t2.Fecha) = DATE(t1.Fecha)
WHERE t1.Id_Ticket = NEW.ticket_id AND counter = NEW.counter) > 0 THEN
SET NEW.expeditions_id = NULL;
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`expeditionsAfterUpdate`
AFTER UPDATE ON `expeditions` FOR EACH ROW
BEGIN
CALL cache.barcodes_expeditions_update(NEW.expeditions_id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`expeditionsBeforeDelete`
BEFORE DELETE ON `expeditions` FOR EACH ROW
BEGIN
DECLARE trabajador integer DEFAULT NULL;
SELECT Id_Trabajador into trabajador from Trabajadores where user_id = account.userGetId();
if trabajador is null then
SET trabajador = 33;
end if;
UPDATE Tickets SET Bultos = (SELECT COUNT(counter)-1 FROM expeditions WHERE ticket_id = OLD.ticket_id and EsBulto) WHERE Id_Ticket = OLD.ticket_id;
INSERT INTO Tickets_dits (idaccion_dits,Id_Trabajador,Id_Ticket,value_old,value_new)
SELECT 133 ,trabajador,OLD.ticket_id,CONCAT(OLD.odbc_date,',Bultos:',OLD.counter,',Embalaje:',OLD.EsBulto),user()
FROM Tickets
WHERE Id_Ticket = OLD.ticket_id ;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `expeditions_deleted`
--
DROP TABLE IF EXISTS `expeditions_deleted`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `expeditions_deleted` (
`expeditions_id` int(11) NOT NULL AUTO_INCREMENT,
`agency_id` int(11) NOT NULL,
`ticket_id` int(10) NOT NULL,
`EsBulto` int(11) DEFAULT '1',
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`reembolso` bit(1) DEFAULT b'0',
`recogida` bit(1) DEFAULT b'0',
`Id_Article` int(11) DEFAULT NULL,
`counter` smallint(5) unsigned NOT NULL,
`checked` tinyint(4) NOT NULL DEFAULT '0',
`completed` tinyint(4) DEFAULT '0',
`expedicion` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Id_Trabajador` int(11) DEFAULT NULL,
PRIMARY KEY (`expeditions_id`),
KEY `index1` (`agency_id`),
KEY `index2` (`EsBulto`),
KEY `index3` (`odbc_date`),
KEY `index4` (`ticket_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `expeditions_pictures`
--
DROP TABLE IF EXISTS `expeditions_pictures`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `expeditions_pictures` (
`Id_Article` int(11) NOT NULL,
`NoImprimirEtiqueta` bit(1) DEFAULT b'0',
PRIMARY KEY (`Id_Article`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `filtros`
--
DROP TABLE IF EXISTS `filtros`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `filtros` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`sql` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`Estanteria` tinyint(1) DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `financialProductType`
--
DROP TABLE IF EXISTS `financialProductType`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `financialProductType` (
`id` varchar(2) COLLATE utf8_unicode_ci NOT NULL,
`description` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `description_UNIQUE` (`description`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Distintos tipos de productos financieros: seguros de cambio, polizas de credito, acumuladores....';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `flight`
--
DROP TABLE IF EXISTS `flight`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `flight` (
`flight_id` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`duration` tinyint(2) unsigned DEFAULT NULL,
`route` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`days` varchar(7) COLLATE utf8_unicode_ci DEFAULT NULL,
`airline_id` smallint(2) unsigned DEFAULT NULL,
`airport_out` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`airport_in` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`flight_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `form_query`
--
DROP TABLE IF EXISTS `form_query`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `form_query` (
`form_query_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`query` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`response1` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`response2` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`type_id` enum('gest_doc') COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`form_query_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `gastos_resumen`
--
DROP TABLE IF EXISTS `gastos_resumen`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `gastos_resumen` (
`Id_Gasto` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`year` int(4) NOT NULL,
`month` int(2) NOT NULL,
`importe` decimal(10,2) DEFAULT NULL,
`empresa_id` int(11) NOT NULL,
PRIMARY KEY (`Id_Gasto`,`year`,`month`,`empresa_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Sirve para resumir los gastos que se ponen a mano en el contaplus';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `gestdoc`
--
DROP TABLE IF EXISTS `gestdoc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `gestdoc` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`gesttip_id` int(11) NOT NULL DEFAULT '1',
`sref` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`brief` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
`emp_id` smallint(5) unsigned NOT NULL DEFAULT '791',
`orden` mediumint(8) unsigned DEFAULT NULL,
`file` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
`original` tinyint(4) NOT NULL DEFAULT '0',
`trabajador_id` int(11) NOT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`gestdoccol` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`warehouse_id` smallint(5) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `emp_id` (`emp_id`,`orden`,`warehouse_id`),
KEY `trabajador_id` (`trabajador_id`),
KEY `warehouse_id` (`warehouse_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`gestdoc_bi`
BEFORE INSERT ON `vn2008`.`gestdoc`
FOR EACH ROW
BEGIN
DECLARE intORD int;
IF NEW.warehouse_id = 44 THEN
SET NEW.warehouse_id = 1;
END IF;
IF NEW.original THEN
SELECT 1 + MAX(orden) INTO intORD FROM gestdoc WHERE emp_id = NEW.emp_id AND warehouse_id = NEW.warehouse_id ;
SET NEW.orden = IFNULL(intORD,1) ;
END IF;
IF NEW.gesttip_id = 14 THEN
UPDATE Tickets SET Firmado = 1 WHERE Id_Ticket = NEW.sref;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`gestdoc_bu`
BEFORE UPDATE ON `vn2008`.`gestdoc`
FOR EACH ROW
BEGIN
DECLARE intORD int;
IF (NEW.original <> 0) AND (OLD.original = 0) AND (NEW.orden IS NULL) THEN
SELECT 1 + MAX(orden) INTO intORD FROM gestdoc WHERE emp_id = NEW.emp_id AND warehouse_id = NEW.warehouse_id;
SET NEW.orden = IFNULL(intORD,1);
END IF;
IF ((NEW.orden = 0) OR NEW.orden IS NULL) AND (OLD.orden <> 0) THEN
SET NEW.original = 0;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `gesttip`
--
DROP TABLE IF EXISTS `gesttip`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `gesttip` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`tipo` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`path` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `guillen`
--
DROP TABLE IF EXISTS `guillen`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `guillen` (
`bulto` tinyint(3) unsigned NOT NULL,
`1` float unsigned NOT NULL,
`2` float unsigned NOT NULL,
`re_exp` float unsigned NOT NULL,
PRIMARY KEY (`bulto`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `guillen_carry`
--
DROP TABLE IF EXISTS `guillen_carry`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `guillen_carry` (
`carry` tinyint(3) unsigned NOT NULL,
`1` float unsigned NOT NULL,
`2` float unsigned NOT NULL,
`re_exp` float unsigned NOT NULL,
PRIMARY KEY (`carry`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `integra2`
--
DROP TABLE IF EXISTS `integra2`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `integra2` (
`postal_code` mediumint(8) unsigned NOT NULL,
`frequency` tinyint(3) unsigned NOT NULL,
`warehouse_id` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`postal_code`,`frequency`,`warehouse_id`),
KEY `postal_code` (`postal_code`),
KEY `warehouse_id` (`warehouse_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `integra2_escala`
--
DROP TABLE IF EXISTS `integra2_escala`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `integra2_escala` (
`province_id` smallint(6) unsigned NOT NULL,
`warehouse_id` smallint(6) unsigned NOT NULL,
PRIMARY KEY (`province_id`,`warehouse_id`),
KEY `warehouse_escala_idx` (`warehouse_id`),
CONSTRAINT `province_escala` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `warehouse_escala` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `integra2_province`
--
DROP TABLE IF EXISTS `integra2_province`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `integra2_province` (
`province_id` smallint(6) unsigned NOT NULL,
`franquicia` varchar(65) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`province_id`),
CONSTRAINT `integra2_province_id` FOREIGN KEY (`province_id`) REFERENCES `province` (`province_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `intervalos`
--
DROP TABLE IF EXISTS `intervalos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `intervalos` (
`id` int(11) NOT NULL,
`hour` time NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `intrastat_data`
--
DROP TABLE IF EXISTS `intrastat_data`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `intrastat_data` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`recibida_id` mediumint(8) unsigned NOT NULL,
`neto` decimal(10,2) DEFAULT NULL,
`intrastat_id` int(8) unsigned zerofill NOT NULL DEFAULT '06049190',
`importe` double NOT NULL,
`unidades` int(11) NOT NULL,
`Paises_Id` mediumint(8) unsigned DEFAULT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`valorestadistico` double NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `intrastat_id` (`intrastat_id`),
KEY `recibida` (`recibida_id`),
CONSTRAINT `intrastat_data_ibfk_1` FOREIGN KEY (`intrastat_id`) REFERENCES `Intrastat` (`Codintrastat`) ON UPDATE CASCADE,
CONSTRAINT `intrastat_data_ibfk_2` FOREIGN KEY (`recibida_id`) REFERENCES `recibida` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `invoiceCorrection`
--
DROP TABLE IF EXISTS `invoiceCorrection`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `invoiceCorrection` (
`correctingFk` int(10) unsigned NOT NULL COMMENT 'Factura rectificativa',
`correctedFk` int(10) unsigned NOT NULL COMMENT 'Factura rectificada',
`cplusRectificationTypeFk` int(10) unsigned NOT NULL,
`cplusInvoiceType477Fk` int(10) unsigned NOT NULL,
`invoiceCorrectionTypeFk` int(11) NOT NULL DEFAULT '3',
PRIMARY KEY (`correctingFk`),
KEY `correctedFk_idx` (`correctedFk`),
KEY `invoiceCorrection_ibfk_1_idx` (`cplusRectificationTypeFk`),
KEY `cplusInvoiceTyoeFk_idx` (`cplusInvoiceType477Fk`),
KEY `invoiceCorrectionTypeFk_idx` (`invoiceCorrectionTypeFk`),
CONSTRAINT `corrected_fk` FOREIGN KEY (`correctedFk`) REFERENCES `Facturas` (`factura_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `correcting_fk` FOREIGN KEY (`correctingFk`) REFERENCES `Facturas` (`factura_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `cplusInvoiceTyoeFk` FOREIGN KEY (`cplusInvoiceType477Fk`) REFERENCES `vn`.`cplusInvoiceType477` (`id`) ON UPDATE CASCADE,
CONSTRAINT `invoiceCorrectionType_Fk33` FOREIGN KEY (`invoiceCorrectionTypeFk`) REFERENCES `vn`.`invoiceCorrectionType` (`id`) ON UPDATE CASCADE,
CONSTRAINT `invoiceCorrection_ibfk_1` FOREIGN KEY (`cplusRectificationTypeFk`) REFERENCES `vn`.`cplusRectificationType` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Relacion entre las facturas rectificativas y las rectificadas.';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `invoice_observation`
--
DROP TABLE IF EXISTS `invoice_observation`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `invoice_observation` (
`invoice_observation_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`desde` date NOT NULL,
`hasta` date NOT NULL,
`serie` varchar(1) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '0',
`text` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`invoice_observation_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `itemTag`
--
DROP TABLE IF EXISTS `itemTag`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `itemTag` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`itemFk` int(11) NOT NULL,
`tagFk` int(11) NOT NULL,
`value` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`priority` int(2) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `tag_fk_idx` (`tagFk`),
KEY `priorityItem` (`itemFk`,`priority`),
CONSTRAINT `itemFK` FOREIGN KEY (`itemFk`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `itemTagArranged`
--
DROP TABLE IF EXISTS `itemTagArranged`;
/*!50001 DROP VIEW IF EXISTS `itemTagArranged`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `itemTagArranged` AS SELECT
1 AS `itemFk`,
1 AS `tag1`,
1 AS `val1`,
1 AS `tag2`,
1 AS `val2`,
1 AS `tag3`,
1 AS `val3`,
1 AS `tag4`,
1 AS `val4`,
1 AS `tag5`,
1 AS `val5`,
1 AS `tag6`,
1 AS `val6`,
1 AS `description`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `item_catalog`
--
DROP TABLE IF EXISTS `item_catalog`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `item_catalog` (
`item_id` int(11) unsigned NOT NULL,
`available` mediumint(9) NOT NULL,
`fixed` tinyint(1) NOT NULL DEFAULT '0',
`price` double DEFAULT NULL,
`s1` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`s2` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`discount` tinyint(3) unsigned DEFAULT NULL,
`grouping` decimal(10,0) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `item_entry_in`
--
DROP TABLE IF EXISTS `item_entry_in`;
/*!50001 DROP VIEW IF EXISTS `item_entry_in`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `item_entry_in` AS SELECT
1 AS `warehouse_id`,
1 AS `dat`,
1 AS `item_id`,
1 AS `amount`,
1 AS `received`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `item_entry_out`
--
DROP TABLE IF EXISTS `item_entry_out`;
/*!50001 DROP VIEW IF EXISTS `item_entry_out`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `item_entry_out` AS SELECT
1 AS `warehouse_id`,
1 AS `dat`,
1 AS `item_id`,
1 AS `amount`,
1 AS `delivered`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `item_out`
--
DROP TABLE IF EXISTS `item_out`;
/*!50001 DROP VIEW IF EXISTS `item_out`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `item_out` AS SELECT
1 AS `warehouse_id`,
1 AS `dat`,
1 AS `item_id`,
1 AS `amount`,
1 AS `ok`,
1 AS `Reservado`,
1 AS `ready`,
1 AS `invoice`,
1 AS `alertLevel`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `iva_codigo`
--
DROP TABLE IF EXISTS `iva_codigo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `iva_codigo` (
`id` tinyint(2) unsigned NOT NULL AUTO_INCREMENT,
`fecha` date NOT NULL,
`codigo` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`iva_tipo_id` tinyint(2) NOT NULL,
`iva` float(3,1) NOT NULL DEFAULT '0.0',
`recargo` float(2,1) NOT NULL DEFAULT '0.0',
`tipo` char(1) COLLATE utf8_unicode_ci NOT NULL,
`link` tinyint(4) unsigned NOT NULL DEFAULT '0' COMMENT 'las que tienen el mismo valor se contabilizan emparejadas',
`isActive` tinyint(2) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
KEY `iva_tipo_id` (`iva_tipo_id`),
KEY `codigo` (`codigo`),
KEY `tipo_index` (`tipo`),
CONSTRAINT `iva_codigo_ibfk_1` FOREIGN KEY (`iva_tipo_id`) REFERENCES `iva_tipo` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `iva_group`
--
DROP TABLE IF EXISTS `iva_group`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `iva_group` (
`iva_group_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`description` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`code` varchar(1) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'R',
PRIMARY KEY (`iva_group_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `iva_group_codigo`
--
DROP TABLE IF EXISTS `iva_group_codigo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `iva_group_codigo` (
`iva_group_id` tinyint(3) unsigned NOT NULL,
`date` date NOT NULL,
`iva_codigo_id` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`iva_group_id`,`date`,`iva_codigo_id`),
KEY `iva_codigo_id` (`iva_codigo_id`),
CONSTRAINT `iva_group_codigo_ibfk_1` FOREIGN KEY (`iva_group_id`) REFERENCES `iva_group` (`iva_group_id`) ON UPDATE CASCADE,
CONSTRAINT `iva_group_codigo_ibfk_2` FOREIGN KEY (`iva_codigo_id`) REFERENCES `iva_codigo` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `iva_tipo`
--
DROP TABLE IF EXISTS `iva_tipo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `iva_tipo` (
`id` tinyint(2) NOT NULL AUTO_INCREMENT,
`alias` varchar(6) COLLATE utf8_unicode_ci NOT NULL,
`serie_id` char(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`TIPOOPE` varchar(1) COLLATE utf8_unicode_ci NOT NULL DEFAULT ' ',
`descripcion` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`Id_Pais` mediumint(8) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `serie_id` (`serie_id`),
KEY `Id_Pais` (`Id_Pais`),
CONSTRAINT `iva_tipo_ibfk_1` FOREIGN KEY (`Id_Pais`) REFERENCES `Paises` (`Id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `jerarquia`
--
DROP TABLE IF EXISTS `jerarquia`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `jerarquia` (
`worker_id` int(11) NOT NULL,
`boss_id` int(11) NOT NULL,
`vinculado` tinyint(3) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`worker_id`,`boss_id`),
KEY `worker_trabajador` (`worker_id`),
KEY `boss_trabajador` (`boss_id`),
CONSTRAINT `boss_trabajador` FOREIGN KEY (`boss_id`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `worker_trabajador` FOREIGN KEY (`worker_id`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `killme`
--
DROP TABLE IF EXISTS `killme`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `killme` (
`Id_Article` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `language`
--
DROP TABLE IF EXISTS `language`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `language` (
`code` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`name` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`active` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`code`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `link`
--
DROP TABLE IF EXISTS `link`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `link` (
`Id_Cliente` int(11) NOT NULL,
`Id_Proveedor` int(11) NOT NULL,
PRIMARY KEY (`Id_Cliente`,`Id_Proveedor`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `log_articles`
--
DROP TABLE IF EXISTS `log_articles`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `log_articles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Article` int(11) NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Fecha_old` datetime DEFAULT NULL,
`cantidad_old` double DEFAULT NULL,
`Id_Ticket_old` int(11) DEFAULT NULL,
`wh_old` smallint(6) unsigned DEFAULT NULL,
`Fecha_new` datetime DEFAULT NULL,
`cantidad_new` double DEFAULT NULL,
`Id_Ticket_new` int(11) DEFAULT NULL,
`wh_new` smallint(6) DEFAULT NULL,
`accion` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `Id_Article_log` (`Id_Article`),
KEY `Id_Ticket_log` (`Id_Ticket_old`),
KEY `Id_Ticket_new_log` (`Id_Ticket_new`),
CONSTRAINT `Id_Article_log_Articles` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacena los movimientos de los articulos para intentar encontrar los procesos que generan negativos';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mail`
--
DROP TABLE IF EXISTS `mail`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mail` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`to` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`reply_to` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`subject` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`text` text COLLATE utf8_unicode_ci NOT NULL,
`sent` tinyint(2) NOT NULL DEFAULT '0',
`DATE_ODBC` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`path` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`error` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'OK',
`senderFk` int(11) DEFAULT NULL,
`recipientFk` int(11) DEFAULT NULL,
`plainTextBody` text COLLATE utf8_unicode_ci,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1136979 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mail_templates`
--
DROP TABLE IF EXISTS `mail_templates`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mail_templates` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`countryCode` char(2) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'ES',
`name` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`subject` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`body` text COLLATE utf8_unicode_ci NOT NULL,
`attachment` text COLLATE utf8_unicode_ci,
PRIMARY KEY (`id`,`countryCode`,`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mandato`
--
DROP TABLE IF EXISTS `mandato`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mandato` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL,
`Id_mandato` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL,
`FAlta` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`Fbaja` timestamp NULL DEFAULT NULL,
`idmandato_tipo` smallint(5) NOT NULL,
PRIMARY KEY (`id`),
KEY `mandato_fgkey1_idx` (`Id_Cliente`),
KEY `mandato_fgkey2_idx` (`empresa_id`),
KEY `mandato_fgkey3_idx` (`idmandato_tipo`),
CONSTRAINT `mandato_fgkey1` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `mandato_fgkey2` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `mandato_fgkey3` FOREIGN KEY (`idmandato_tipo`) REFERENCES `mandato_tipo` (`idmandato_tipo`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 trigger mandato_ins before insert
on mandato
for each row
begin
if (NEW.Id_mandato IS NULL) THEN
SET NEW.Id_mandato=CONCAT(NEW.Id_Cliente,'-',(SELECT AUTO_INCREMENT
from information_schema.TABLES
where TABLE_SCHEMA='vn2008' and TABLE_NAME='mandato'));
end if;
end */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `mandato_tipo`
--
DROP TABLE IF EXISTS `mandato_tipo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mandato_tipo` (
`idmandato_tipo` smallint(5) NOT NULL AUTO_INCREMENT,
`Nombre` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`idmandato_tipo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `movement_label`
--
DROP TABLE IF EXISTS `movement_label`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `movement_label` (
`Id_movimiento` int(11) NOT NULL,
`label` mediumint(8) unsigned NOT NULL,
`stem` mediumint(8) unsigned NOT NULL,
PRIMARY KEY (`Id_movimiento`),
CONSTRAINT `movement_label_ibfk_1` FOREIGN KEY (`Id_movimiento`) REFERENCES `Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `movement_label_au` AFTER UPDATE ON `movement_label` FOR EACH ROW
IF NEW.stem >= (SELECT Cantidad FROM Movimientos WHERE Id_Movimiento = NEW.Id_Movimiento) THEN
UPDATE Movimientos SET OK = 1 WHERE Id_Movimiento = NEW.Id_Movimiento;
END IF */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Temporary view structure for view `new_view`
--
DROP TABLE IF EXISTS `new_view`;
/*!50001 DROP VIEW IF EXISTS `new_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `new_view` AS SELECT
1 AS `id`,
1 AS `worker`,
1 AS `document`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `nichos`
--
DROP TABLE IF EXISTS `nichos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `nichos` (
`id` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `observation_type`
--
DROP TABLE IF EXISTS `observation_type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `observation_type` (
`observation_type_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`description` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`observation_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `order`
--
DROP TABLE IF EXISTS `order`;
/*!50001 DROP VIEW IF EXISTS `order`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `order` AS SELECT
1 AS `id`,
1 AS `date_make`,
1 AS `date_send`,
1 AS `customer_id`,
1 AS `delivery_method_id`,
1 AS `agency_id`,
1 AS `address_id`,
1 AS `note`,
1 AS `confirmed`,
1 AS `is_bionic`,
1 AS `source_app`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `order_Tickets`
--
DROP TABLE IF EXISTS `order_Tickets`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_Tickets` (
`order_id` int(10) unsigned NOT NULL,
`Id_Ticket` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Ticket`,`order_id`),
KEY `order_id` (`order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `order_component`
--
DROP TABLE IF EXISTS `order_component`;
/*!50001 DROP VIEW IF EXISTS `order_component`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `order_component` AS SELECT
1 AS `order_row_id`,
1 AS `component_id`,
1 AS `price`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `order_row`
--
DROP TABLE IF EXISTS `order_row`;
/*!50001 DROP VIEW IF EXISTS `order_row`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `order_row` AS SELECT
1 AS `id`,
1 AS `order_id`,
1 AS `item_id`,
1 AS `warehouse_id`,
1 AS `shipment`,
1 AS `amount`,
1 AS `price`,
1 AS `rate`,
1 AS `created`,
1 AS `Id_Movimiento`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `pago`
--
DROP TABLE IF EXISTS `pago`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `pago` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`fecha` date NOT NULL,
`id_proveedor` int(11) NOT NULL,
`importe` decimal(10,2) NOT NULL DEFAULT '0.00',
`id_moneda` tinyint(3) unsigned NOT NULL DEFAULT '1',
`divisa` decimal(10,2) DEFAULT NULL,
`id_banco` int(11) NOT NULL DEFAULT '0',
`pay_met_id` tinyint(3) unsigned NOT NULL,
`g_bancarios` double(6,2) unsigned NOT NULL DEFAULT '0.00',
`concepte` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`conciliado` tinyint(1) unsigned zerofill NOT NULL DEFAULT '0',
`pago_sdc_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `empresa_id` (`empresa_id`),
KEY `id_banco` (`id_banco`),
KEY `id_moneda` (`id_moneda`),
KEY `pay_met` (`pay_met_id`),
KEY `proveedor_pago` (`id_proveedor`),
KEY `fk_pago_pago_sdc1_idx` (`pago_sdc_id`),
CONSTRAINT `pago_ibfk_1` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `pago_ibfk_2` FOREIGN KEY (`id_banco`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE,
CONSTRAINT `pago_moneda` FOREIGN KEY (`id_moneda`) REFERENCES `Monedas` (`Id_Moneda`) ON UPDATE CASCADE,
CONSTRAINT `pago_pay_met` FOREIGN KEY (`pay_met_id`) REFERENCES `pay_met` (`id`) ON UPDATE CASCADE,
CONSTRAINT `proveedor_pago` FOREIGN KEY (`id_proveedor`) REFERENCES `Proveedores` (`Id_Proveedor`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pago_bi` BEFORE INSERT ON `pago` FOR EACH ROW
BEGIN
DECLARE cuenta_banco,cuenta_proveedor DOUBLE;
DECLARE max_asien INT;
DECLARE bolCASH BOOLEAN;
SELECT (cash = 1) INTO bolCASH FROM Bancos WHERE Bancos.Id_Banco = NEW.id_banco ;
IF bolCASH THEN
SELECT Cuenta INTO cuenta_banco FROM Bancos WHERE Id_Banco = NEW.id_banco;
SELECT Cuenta INTO cuenta_proveedor FROM Proveedores WHERE Id_Proveedor=NEW.id_proveedor;
SELECT MAX(asien)+1 INTO max_asien FROM XDiario;
INSERT INTO XDiario (ASIEN,FECHA,SUBCTA,CONTRA,CONCEPTO,EURODEBE,EUROHABER,empresa_id)
SELECT max_asien,NEW.fecha,SUBCTA,CONTRA,NEW.concepte,EURODEBE,EUROHABER,NEW.empresa_id FROM
( SELECT cuenta_banco SUBCTA,cuenta_proveedor CONTRA,
0 EURODEBE, NEW.importe + NEW.g_bancarios EUROHABER
UNION ALL
SELECT cuenta_proveedor SUBCTA, cuenta_banco CONTRA,
NEW.importe EURODEBE, 0 EUROHABER) gf;
IF NEW.g_bancarios <> 0 THEN
INSERT INTO XDiario (ASIEN,FECHA,SUBCTA,CONTRA,CONCEPTO,EURODEBE,EUROHABER,empresa_id)
SELECT max_asien,NEW.fecha,IF(Id = 1,6260000002,IF(CEE = 1,6260000003,6260000004)),cuenta_banco,NEW.concepte,
NEW.g_bancarios,0,NEW.empresa_id FROM Proveedores pr
JOIN Paises pa ON pr.pais_id = pa.Id WHERE Id_Proveedor = NEW.id_proveedor;
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `pago_sdc`
--
DROP TABLE IF EXISTS `pago_sdc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `pago_sdc` (
`pago_sdc_id` int(11) NOT NULL AUTO_INCREMENT,
`importe` decimal(10,2) NOT NULL,
`fecha` date NOT NULL,
`vencimiento` date NOT NULL,
`entity_id` int(10) unsigned NOT NULL,
`ref` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`rate` decimal(10,4) NOT NULL,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`financialProductTypefk` varchar(2) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'SC',
`pago_sdccol` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`upperBarrier` decimal(10,2) DEFAULT NULL,
`lowerBarrier` decimal(10,2) DEFAULT NULL,
`strike` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`pago_sdc_id`),
KEY `empresa_sdc_idx` (`empresa_id`),
KEY `entity_sdc_idx` (`entity_id`),
KEY `financial_type_fk_idx` (`financialProductTypefk`),
CONSTRAINT `empresa_sdc` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `entity_sdc` FOREIGN KEY (`entity_id`) REFERENCES `entity` (`entity_id`) ON UPDATE CASCADE,
CONSTRAINT `financial_type_fk` FOREIGN KEY (`financialProductTypefk`) REFERENCES `financialProductType` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Seguros de cambio';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `pay_dem`
--
DROP TABLE IF EXISTS `pay_dem`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `pay_dem` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`pay_dem` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `pay_dem_det`
--
DROP TABLE IF EXISTS `pay_dem_det`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `pay_dem_det` (
`id` tinyint(3) unsigned NOT NULL,
`detalle` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`id`,`detalle`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `pay_met`
--
DROP TABLE IF EXISTS `pay_met`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `pay_met` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`solucion` varchar(1) COLLATE utf8_unicode_ci DEFAULT NULL,
`deudaviva` tinyint(3) unsigned zerofill NOT NULL DEFAULT '000',
`graceDays` int(11) unsigned NOT NULL DEFAULT '0',
`ibanRequired` tinyint(3) DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_basess`
--
DROP TABLE IF EXISTS `payroll_basess`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_basess` (
`id_payroll_Basess` int(11) NOT NULL AUTO_INCREMENT,
`empresa_id` int(10) NOT NULL,
`id_tipobasess` int(11) NOT NULL,
`valor` double NOT NULL,
`fechadesde` date NOT NULL,
`fechahasta` date DEFAULT NULL,
`contratotemporal` tinyint(1) DEFAULT '0',
PRIMARY KEY (`id_payroll_Basess`),
KEY `payroll_basess_1_idx` (`id_tipobasess`),
KEY `payroll_basess_2_idx` (`empresa_id`),
CONSTRAINT `payroll_basess_1` FOREIGN KEY (`id_tipobasess`) REFERENCES `payroll_tipobasess` (`id_payroll_tipobasess`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `payroll_basess_2` FOREIGN KEY (`empresa_id`) REFERENCES `payroll_centros` (`empresa_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_bonificaciones`
--
DROP TABLE IF EXISTS `payroll_bonificaciones`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_bonificaciones` (
`codtrabajador` int(11) NOT NULL,
`codempresa` int(11) NOT NULL,
`Fecha` date NOT NULL,
`bonificacionSS` double NOT NULL,
PRIMARY KEY (`codtrabajador`,`codempresa`,`Fecha`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_categorias`
--
DROP TABLE IF EXISTS `payroll_categorias`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_categorias` (
`codcategoria` int(11) NOT NULL,
`descripcion` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`Tarifa` tinyint(4) NOT NULL,
PRIMARY KEY (`codcategoria`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_centros`
--
DROP TABLE IF EXISTS `payroll_centros`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_centros` (
`cod_centro` int(11) NOT NULL,
`Centro` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`nss_cotizacion` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`domicilio` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`poblacion` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`cp` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
`empresa_id` int(10) NOT NULL,
`codempresa` int(11) DEFAULT NULL,
PRIMARY KEY (`cod_centro`,`empresa_id`),
KEY `payroll_centros_ix1` (`empresa_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_conceptos`
--
DROP TABLE IF EXISTS `payroll_conceptos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_conceptos` (
`conceptoid` int(11) NOT NULL,
`concepto` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`conceptoid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_contratos`
--
DROP TABLE IF EXISTS `payroll_contratos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_contratos` (
`CodContrato` int(11) NOT NULL,
`TipoCotizacion` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`DescContrato` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`CodContrato`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_datos`
--
DROP TABLE IF EXISTS `payroll_datos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_datos` (
`codtrabajador` int(11) NOT NULL,
`codempresa` int(10) NOT NULL,
`Fecha` date NOT NULL,
`conceptoid` int(11) NOT NULL,
`orden` tinyint(4) DEFAULT NULL,
`dias` smallint(6) DEFAULT NULL,
`Importe` decimal(8,2) NOT NULL,
`DH` tinyint(4) DEFAULT NULL,
`T_Paga` tinyint(4) NOT NULL,
`TributaIRPF` tinyint(4) NOT NULL,
PRIMARY KEY (`codtrabajador`,`codempresa`,`conceptoid`,`Fecha`),
KEY `fgkey_payrolldatos_1_idx` (`conceptoid`),
CONSTRAINT `fgkey_payrolldatos_1` FOREIGN KEY (`conceptoid`) REFERENCES `payroll_conceptos` (`conceptoid`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_embargos`
--
DROP TABLE IF EXISTS `payroll_embargos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_embargos` (
`codtrabajador` int(11) NOT NULL,
`codempresa` int(10) NOT NULL,
`conceptoid` int(11) NOT NULL,
`Fecha` date NOT NULL,
`pagado` double NOT NULL,
`pendiente` double DEFAULT NULL,
`total` double NOT NULL,
PRIMARY KEY (`codtrabajador`,`codempresa`,`Fecha`,`conceptoid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_employee`
--
DROP TABLE IF EXISTS `payroll_employee`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_employee` (
`CodTrabajador` int(11) NOT NULL,
`Person_id` int(11) NOT NULL,
`nss` varchar(23) COLLATE utf8_unicode_ci NOT NULL,
`codpuesto` int(10) NOT NULL,
`codempresa` int(10) NOT NULL,
`codcontrato` int(10) NOT NULL,
`FAntiguedad` date NOT NULL,
`grupotarifa` int(10) NOT NULL,
`codcategoria` int(10) NOT NULL,
`ContratoTemporal` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`CodTrabajador`,`codempresa`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_pagarini`
--
DROP TABLE IF EXISTS `payroll_pagarini`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_pagarini` (
`fecha` date NOT NULL,
`person_id` int(11) NOT NULL,
`saldotpv` double NOT NULL DEFAULT '0',
`saldolab` double NOT NULL DEFAULT '0',
`saldoprod` double NOT NULL DEFAULT '0',
`saldobruto` double NOT NULL DEFAULT '0',
`business_id` int(11) NOT NULL,
`exportado` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`fecha`,`person_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_pais`
--
DROP TABLE IF EXISTS `payroll_pais`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_pais` (
`codpais` int(11) NOT NULL,
`pais` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`codpais`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payroll_tipobasess`
--
DROP TABLE IF EXISTS `payroll_tipobasess`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payroll_tipobasess` (
`id_payroll_tipobasess` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id_payroll_tipobasess`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `payrroll_apEmpresarial`
--
DROP TABLE IF EXISTS `payrroll_apEmpresarial`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `payrroll_apEmpresarial` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`codTrabajador` int(11) NOT NULL,
`Fecha` date NOT NULL,
`CosteEmpresaAT` decimal(8,2) NOT NULL,
`costeEmpresaCC` decimal(8,2) NOT NULL,
`costeEmpresaDesempleo` decimal(8,2) NOT NULL,
`costeEmpresaFP` decimal(8,2) NOT NULL,
`costeEmpresaFogasa` decimal(8,2) NOT NULL,
`costeEmpresaExtra` decimal(8,2) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `person_user`
--
DROP TABLE IF EXISTS `person_user`;
/*!50001 DROP VIEW IF EXISTS `person_user`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `person_user` AS SELECT
1 AS `id`,
1 AS `mysql_user_id`,
1 AS `name`,
1 AS `password`,
1 AS `active`,
1 AS `last_pass_change`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `person_user_idtrabajador`
--
DROP TABLE IF EXISTS `person_user_idtrabajador`;
/*!50001 DROP VIEW IF EXISTS `person_user_idtrabajador`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `person_user_idtrabajador` AS SELECT
1 AS `Id_Trabajador`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `plantpassport`
--
DROP TABLE IF EXISTS `plantpassport`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `plantpassport` (
`producer_id` mediumint(3) unsigned NOT NULL,
`plantpassport_authority_id` mediumint(3) unsigned NOT NULL,
`number` varchar(25) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`producer_id`,`plantpassport_authority_id`),
KEY `plantpassport_authority_idx` (`plantpassport_authority_id`),
KEY `producer_id_idx` (`producer_id`),
CONSTRAINT `plantpassport_authority` FOREIGN KEY (`plantpassport_authority_id`) REFERENCES `plantpassport_authority` (`plantpassport_authority_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `producer` FOREIGN KEY (`producer_id`) REFERENCES `producer` (`producer_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='tiene la asignacion de cada productor con la autoridad certificadora';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `plantpassport_authority`
--
DROP TABLE IF EXISTS `plantpassport_authority`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `plantpassport_authority` (
`plantpassport_authority_id` mediumint(3) unsigned NOT NULL,
`denomination` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Paises_Id` mediumint(8) unsigned DEFAULT NULL,
PRIMARY KEY (`plantpassport_authority_id`),
UNIQUE KEY `denomination_UNIQUE` (`denomination`),
KEY `Pais_id_idx` (`Paises_Id`),
CONSTRAINT `Pais_id` FOREIGN KEY (`Paises_Id`) REFERENCES `Paises` (`Id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='entidades certificadoras';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `postcodeKK`
--
DROP TABLE IF EXISTS `postcodeKK`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `postcodeKK` (
`postcode_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`code` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`city_id` int(11) NOT NULL,
`nst_geo_id` int(11) DEFAULT NULL,
`nst_name` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`postcode_id`),
UNIQUE KEY `code_city` (`code`,`city_id`),
KEY `postal_code_idx` (`code`),
KEY `city_id_pk_idx` (`city_id`),
KEY `nst_geo_pc_id_idx` (`nst_geo_id`),
CONSTRAINT `city_id_pk` FOREIGN KEY (`city_id`) REFERENCES `city` (`city_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `nst_geo_pc_id` FOREIGN KEY (`nst_geo_id`) REFERENCES `nst`.`geo` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`postcode_BEFORE_INSERT` BEFORE INSERT ON `postcodeKK` FOR EACH ROW
BEGIN
SET new.nst_name = new.code;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `preparation_exception`
--
DROP TABLE IF EXISTS `preparation_exception`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `preparation_exception` (
`exception_day` date NOT NULL COMMENT 'preparation day',
`warehouse_id` smallint(6) unsigned DEFAULT NULL,
`percentage` tinyint(2) NOT NULL DEFAULT '0',
UNIQUE KEY `exception_day_UNIQUE` (`exception_day`),
UNIQUE KEY `warehouse_id_UNIQUE` (`warehouse_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `preparation_percentage`
--
DROP TABLE IF EXISTS `preparation_percentage`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `preparation_percentage` (
`week_day` tinyint(1) unsigned NOT NULL COMMENT 'preparation day. Funcion de mysql Lunes = 0, Domingo = 6',
`warehouse_id` smallint(6) unsigned DEFAULT NULL,
`percentage` tinyint(2) NOT NULL DEFAULT '0',
UNIQUE KEY `week_day_UNIQUE` (`week_day`),
UNIQUE KEY `warehouse_id_UNIQUE` (`warehouse_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `price_fixed`
--
DROP TABLE IF EXISTS `price_fixed`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `price_fixed` (
`item_id` int(10) NOT NULL,
`rate_0` double NOT NULL,
`rate_1` double NOT NULL,
`rate_2` double NOT NULL,
`rate_3` double NOT NULL,
`date_start` date NOT NULL,
`date_end` date NOT NULL,
`bonus` double NOT NULL DEFAULT '0',
`warehouse_id` smallint(5) unsigned NOT NULL DEFAULT '0',
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`price_fixed_id` int(11) NOT NULL AUTO_INCREMENT,
`grouping` smallint(5) DEFAULT NULL,
`Packing` int(11) DEFAULT NULL,
`caja` tinyint(4) DEFAULT NULL,
PRIMARY KEY (`item_id`,`date_start`,`date_end`,`warehouse_id`),
UNIQUE KEY `price_fixed_id_UNIQUE` (`price_fixed_id`),
KEY `item_id` (`item_id`),
KEY `date_start` (`date_start`),
KEY `date_end` (`date_end`),
KEY `warehouse_id` (`warehouse_id`),
CONSTRAINT `price_fixed_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`price_fixed_bi` BEFORE INSERT ON `vn2008`.`price_fixed`
FOR EACH ROW BEGIN
DECLARE v_aux DATE;
IF NEW.date_start > NEW.date_end THEN
SET v_aux = NEW.date_start;
SET NEW.date_start = NEW.date_end;
SET NEW.date_end = v_aux;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`price_fixed_bu` BEFORE UPDATE ON `vn2008`.`price_fixed`
FOR EACH ROW BEGIN
DECLARE v_aux DATE;
IF NEW.date_start > NEW.date_end THEN
SET v_aux = NEW.date_start;
SET NEW.date_start = NEW.date_end;
SET NEW.date_end = v_aux;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `producer`
--
DROP TABLE IF EXISTS `producer`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `producer` (
`producer_id` mediumint(3) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`visible` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`producer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `profile_labour_payroll`
--
DROP TABLE IF EXISTS `profile_labour_payroll`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `profile_labour_payroll` (
`profile_id` int(11) NOT NULL,
`codpais` int(11) NOT NULL,
`nivelformativo` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`NSSProvincia` tinyint(2) unsigned zerofill NOT NULL,
`NssNumero` varchar(8) COLLATE utf8_unicode_ci NOT NULL,
`NssDC` char(2) COLLATE utf8_unicode_ci NOT NULL,
`sexo` enum('H','M') COLLATE utf8_unicode_ci NOT NULL,
`estadocivil` enum('S','C') COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`profile_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `proveedores_clientes`
--
DROP TABLE IF EXISTS `proveedores_clientes`;
/*!50001 DROP VIEW IF EXISTS `proveedores_clientes`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `proveedores_clientes` AS SELECT
1 AS `Id_Proveedor`,
1 AS `Proveedor`,
1 AS `Id_Cliente`,
1 AS `Cliente`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `provider_account_customer`
--
DROP TABLE IF EXISTS `provider_account_customer`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `provider_account_customer` (
`account_id` mediumint(8) unsigned NOT NULL,
PRIMARY KEY (`account_id`),
CONSTRAINT `provider_account_customer_ibfk_1` FOREIGN KEY (`account_id`) REFERENCES `Proveedores_account` (`Id_Proveedores_account`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Bank accounts used for customer transfers';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `province`
--
DROP TABLE IF EXISTS `province`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `province` (
`province_id` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`Paises_Id` mediumint(8) unsigned NOT NULL,
`warehouse_id` smallint(6) unsigned DEFAULT NULL COMMENT 'warehouse responsable de las rutas',
`zone` tinyint(4) DEFAULT NULL,
`nst_geo_id` int(11) DEFAULT NULL,
`nst_name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`geoFk` int(11) DEFAULT NULL,
PRIMARY KEY (`province_id`),
KEY `Paises_Id` (`Paises_Id`),
KEY `warehouse_Id` (`warehouse_id`),
KEY `provicne_zone_fk_idx` (`zone`),
CONSTRAINT `province_ibfk_1` FOREIGN KEY (`Paises_Id`) REFERENCES `Paises` (`Id`) ON UPDATE CASCADE,
CONSTRAINT `province_zone_fk` FOREIGN KEY (`zone`) REFERENCES `zones` (`zone_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `warehouse_Id` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`provinceBeforeInsert`
BEFORE INSERT ON `province` FOR EACH ROW
BEGIN
IF NEW.`name` = '' THEN
CALL util.throw ('EMPTY_NAME');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`provinceBeforeUpdate`
BEFORE UPDATE ON `province` FOR EACH ROW
BEGIN
IF NEW.`name` = '' THEN
CALL util.throw ('EMPTY_NAME');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `rec_translator`
--
DROP TABLE IF EXISTS `rec_translator`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `rec_translator` (
`Id_Article` int(11) NOT NULL,
`denominacion` varchar(85) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`Id_Article`,`denominacion`),
KEY `id_article_rec_idx` (`Id_Article`),
CONSTRAINT `id_article_rec` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Equipara las denominaciones de las fincas de ecuador con nuestro Id_Article';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `recibida`
--
DROP TABLE IF EXISTS `recibida`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recibida` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`num_recibida` mediumint(11) unsigned DEFAULT NULL COMMENT 'insertado por Trigger',
`serie` char(1) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'R',
`proveedor_id` int(11) NOT NULL,
`fecha` date NOT NULL COMMENT 'Fecha de emision de la factura',
`sref` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0',
`contabilizada` tinyint(1) NOT NULL DEFAULT '0',
`moneda_id` tinyint(3) unsigned NOT NULL DEFAULT '1',
`MYSQL_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
`gestdoc_id` int(11) DEFAULT NULL,
`dateBooking` date DEFAULT NULL COMMENT 'Fecha de contabilizacion',
`dateOperation` date DEFAULT NULL COMMENT 'Fecha de entrega de la mercancia o el suministro',
`cplusInvoiceType472Fk` int(10) unsigned DEFAULT '1',
`cplusRectificationTypeFk` int(10) unsigned DEFAULT '1',
`cplusSubjectOpFk` int(10) unsigned DEFAULT '1',
`cplusTaxBreakFk` int(10) unsigned DEFAULT '1',
`cplusTrascendency472Fk` int(10) unsigned DEFAULT '1',
PRIMARY KEY (`id`),
KEY `proveedor_id` (`proveedor_id`),
KEY `empresa_id` (`empresa_id`),
KEY `serie` (`serie`),
KEY `num_recibida_2` (`num_recibida`),
KEY `gestdoc_id` (`gestdoc_id`),
KEY `fecha` (`fecha`),
KEY `recibida_ibfk_3_idx` (`cplusSubjectOpFk`),
KEY `recibida_ibfk_4_idx` (`cplusTaxBreakFk`),
KEY `recibida_ibfk_5_idx` (`cplusInvoiceType472Fk`),
KEY `recibida_ibfk_6` (`cplusRectificationTypeFk`),
KEY `recibida_ibfk_7` (`cplusTrascendency472Fk`),
CONSTRAINT `recibida_ibfk_1` FOREIGN KEY (`proveedor_id`) REFERENCES `Proveedores` (`Id_Proveedor`) ON UPDATE CASCADE,
CONSTRAINT `recibida_ibfk_2` FOREIGN KEY (`empresa_id`) REFERENCES `empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `recibida_ibfk_3` FOREIGN KEY (`cplusSubjectOpFk`) REFERENCES `vn`.`cplusSubjectOp` (`id`) ON UPDATE CASCADE,
CONSTRAINT `recibida_ibfk_4` FOREIGN KEY (`cplusTaxBreakFk`) REFERENCES `vn`.`cplusTaxBreak` (`id`) ON UPDATE CASCADE,
CONSTRAINT `recibida_ibfk_5` FOREIGN KEY (`cplusInvoiceType472Fk`) REFERENCES `vn`.`cplusInvoiceType472` (`id`) ON UPDATE CASCADE,
CONSTRAINT `recibida_ibfk_6` FOREIGN KEY (`cplusRectificationTypeFk`) REFERENCES `vn`.`cplusRectificationType` (`id`) ON UPDATE CASCADE,
CONSTRAINT `recibida_ibfk_7` FOREIGN KEY (`cplusTrascendency472Fk`) REFERENCES `vn`.`cplusTrascendency472` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`recibida_bi`
BEFORE INSERT ON `vn2008`.`recibida`
FOR EACH ROW
BEGIN
DECLARE v_serie CHAR(1) DEFAULT 'R';
DECLARE v_num_recibida INT;
DECLARE pais_emisor, pais_receptor INT;
DECLARE vActive TINYINT;
SELECT pais_id, active into pais_emisor, vActive FROM Proveedores WHERE Id_Proveedor = NEW.proveedor_id;
SELECT pais_id into pais_receptor FROM Proveedores WHERE Id_Proveedor = NEW.empresa_id;
IF vActive = 0 THEN
CALL util.throw('INACTIVE_PROVIDER');
END IF;
SELECT CASE WHEN (SELECT Cuenta FROM Proveedores where Id_Proveedor = NEW.proveedor_id) LIKE '___3______' THEN 'C'
WHEN (SELECT pais_emisor=pais_receptor from Paises p1 join Paises p2 ON p2.Id = pais_receptor AND p1.Id = pais_emisor
where p1.CEE < 2 and p2.CEE < 2) = 1 THEN 'R'
WHEN (SELECT pais_emisor <> pais_receptor from Paises p1 join Paises p2 ON p2.Id = pais_receptor AND p1.Id = pais_emisor
where p1.CEE < 2 and p2.CEE < 2) = 1 THEN 'E'
WHEN (SELECT pais_emisor<>pais_receptor from Paises p1 join Paises p2 ON p2.Id = pais_receptor AND p1.Id = pais_emisor
where NOT p1.CEE < 2 AND not p1.Id = 1) = 1 THEN 'W'
END INTO v_serie;
SET NEW.serie = v_serie;
IF v_serie LIKE 'W' THEN
SELECT IFNULL(MAX(num_recibida) + 1,1) INTO v_num_recibida FROM recibida
WHERE serie LIKE NEW.serie
AND YEAR(fecha) = YEAR(NEW.fecha)
AND empresa_id = NEW.empresa_id;
SET NEW.num_recibida = v_num_recibida;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `recibida_bu` BEFORE UPDATE ON `recibida` FOR EACH ROW
BEGIN
DECLARE cta_proveed VARCHAR(10);
DECLARE cta_proveeda VARCHAR(10);
DECLARE v_num_recibida INT;
DECLARE dblRefRate,dblRefMin,dblRef DOUBLE;
DECLARE vActive TINYINT;
SELECT active INTO vActive FROM Proveedores WHERE Id_Proveedor = NEW.proveedor_id;
IF vActive = 0 THEN
CALL util.throw('INACTIVE_PROVIDER');
END IF;
IF NEW.empresa_id <> OLD.empresa_id THEN
SET NEW.num_recibida = NULL;
SET NEW.contabilizada = FALSE ;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `recibida_agricola`
--
DROP TABLE IF EXISTS `recibida_agricola`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recibida_agricola` (
`recibida_id` mediumint(8) unsigned NOT NULL,
`num` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`recibida_id`),
CONSTRAINT `recibida_agricola_ibfk_1` FOREIGN KEY (`recibida_id`) REFERENCES `recibida` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `recibida_entrada`
--
DROP TABLE IF EXISTS `recibida_entrada`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recibida_entrada` (
`recibida_entrada_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`recibida_id` mediumint(8) unsigned NOT NULL,
`Id_Entrada` int(11) NOT NULL,
`percentage` decimal(10,2) unsigned NOT NULL DEFAULT '0.00',
`awb_recibida` mediumint(8) unsigned NOT NULL,
`Contabilizado` tinyint(3) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`recibida_entrada_id`),
KEY `awb_recibida` (`awb_recibida`),
KEY `Id_Entrada` (`Id_Entrada`),
KEY `recibida_id` (`recibida_id`),
CONSTRAINT `recibida_entrada_ibfk_2` FOREIGN KEY (`Id_Entrada`) REFERENCES `Entradas` (`Id_Entrada`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `recibida_entrada_bi` BEFORE INSERT ON `recibida_entrada` FOR EACH ROW
BEGIN
DECLARE intRecibida INT;
IF NEW.recibida_id = 0 THEN
SELECT recibida_id INTO intRecibida FROM recibida_entrada WHERE Id_Entrada = NEW.Id_Entrada;
SET NEW.recibida_id = intRecibida;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `recibida_entrada_bu` BEFORE UPDATE ON `recibida_entrada` FOR EACH ROW
BEGIN
DECLARE intRecibida INT;
IF NEW.recibida_id = 0 THEN
SELECT recibida_id INTO intRecibida FROM recibida_entrada WHERE Id_Entrada = NEW.Id_Entrada;
SET NEW.recibida_id = intRecibida;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `recibida_intrastat`
--
DROP TABLE IF EXISTS `recibida_intrastat`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recibida_intrastat` (
`recibida_id` mediumint(8) unsigned NOT NULL,
`Codintrastat` int(8) unsigned zerofill NOT NULL,
`importe` decimal(10,2) NOT NULL,
PRIMARY KEY (`recibida_id`,`Codintrastat`),
KEY `Codintrastat` (`Codintrastat`),
KEY `recibida_id` (`recibida_id`),
CONSTRAINT `recibida_intrastat_ibfk_1` FOREIGN KEY (`recibida_id`) REFERENCES `recibida` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `recibida_intrastat_ibfk_2` FOREIGN KEY (`Codintrastat`) REFERENCES `Intrastat` (`Codintrastat`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `recibida_iva`
--
DROP TABLE IF EXISTS `recibida_iva`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recibida_iva` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`recibida_id` mediumint(8) unsigned NOT NULL,
`iva_id` tinyint(2) unsigned NOT NULL,
`bi` decimal(10,2) NOT NULL,
`gastos_id` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`divisa` decimal(10,2) DEFAULT NULL,
`MYSQL_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `gastos_id` (`gastos_id`),
KEY `recibida_id` (`recibida_id`),
KEY `recibida_iva_ibfk_2` (`iva_id`),
CONSTRAINT `recibida_iva_ibfk_2` FOREIGN KEY (`iva_id`) REFERENCES `iva_codigo` (`id`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `recibida_iva_ibfk_5` FOREIGN KEY (`recibida_id`) REFERENCES `recibida` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `recibida_iva_ibfk_6` FOREIGN KEY (`gastos_id`) REFERENCES `Gastos` (`Id_Gasto`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `recibida_vencimiento`
--
DROP TABLE IF EXISTS `recibida_vencimiento`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recibida_vencimiento` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`recibida_id` mediumint(8) unsigned NOT NULL,
`fecha` date NOT NULL,
`banco_id` int(11) NOT NULL DEFAULT '3117',
`cantidad` decimal(10,2) NOT NULL DEFAULT '0.00',
`divisa` decimal(10,2) DEFAULT NULL,
`stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `recibida_id` (`recibida_id`),
KEY `banco_id` (`banco_id`),
CONSTRAINT `recibida_vencimiento_ibfk_6` FOREIGN KEY (`banco_id`) REFERENCES `Bancos` (`Id_Banco`) ON UPDATE CASCADE,
CONSTRAINT `recibida_vencimiento_ibfk_7` FOREIGN KEY (`recibida_id`) REFERENCES `recibida` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`recibida_vencimiento_bi`
BEFORE INSERT ON `vn2008`.`recibida_vencimiento`
FOR EACH ROW
BEGIN
IF NEW.cantidad = 0 THEN
SET NEW.id = 5;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `recovery`
--
DROP TABLE IF EXISTS `recovery`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recovery` (
`recovery_id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Cliente` int(11) NOT NULL DEFAULT '0',
`dstart` date NOT NULL COMMENT 'Fecha a partir de la que comienza el recobro',
`dend` date DEFAULT NULL COMMENT 'Fecha en la que acaba',
`amount` double NOT NULL,
`period` tinyint(3) unsigned NOT NULL DEFAULT '7',
PRIMARY KEY (`recovery_id`),
KEY `cliente_idx` (`Id_Cliente`),
CONSTRAINT `cliente333` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE,
CONSTRAINT `cliente_cliente` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='En esta tabla apuntaremos los acuerdos de recobro semanal a ';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `recovery_asset`
--
DROP TABLE IF EXISTS `recovery_asset`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `recovery_asset` (
`recovery_asset_id` int(11) NOT NULL AUTO_INCREMENT,
`dreceipt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`amount` double NOT NULL,
`Id_Cliente` int(11) NOT NULL,
PRIMARY KEY (`recovery_asset_id`),
KEY `Cliente_Recovery_detalle_idx` (`Id_Cliente`),
CONSTRAINT `Cliente_Recovery_detalle` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='En esta tabla se registra el detalle de los recobros definid';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `reference_min`
--
DROP TABLE IF EXISTS `reference_min`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `reference_min` (
`date` date NOT NULL,
`rate` double NOT NULL,
`moneda_id` tinyint(3) unsigned NOT NULL DEFAULT '2'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `reference_rate`
--
DROP TABLE IF EXISTS `reference_rate`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `reference_rate` (
`moneda_id` tinyint(3) unsigned NOT NULL,
`date` date NOT NULL,
`rate` float unsigned NOT NULL,
PRIMARY KEY (`moneda_id`,`date`),
KEY `date` (`date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `reinos`
--
DROP TABLE IF EXISTS `reinos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `reinos` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`reino` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`orden` int(10) unsigned DEFAULT NULL,
`display` tinyint(4) NOT NULL DEFAULT '1',
`color` char(6) COLLATE utf8_unicode_ci DEFAULT NULL,
`efimero` int(11) NOT NULL DEFAULT '0' COMMENT 'Sirve para filtrar aquellos reinos que tienen precios estables',
`mercancia` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `reparacion`
--
DROP TABLE IF EXISTS `reparacion`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `reparacion` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_user` int(2) DEFAULT NULL,
`config_host` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`problema` text COLLATE utf8_unicode_ci NOT NULL,
`solucion` text COLLATE utf8_unicode_ci NOT NULL,
`estado` enum('No atendida','Vista','En Proceso','Solucionada') COLLATE utf8_unicode_ci NOT NULL DEFAULT 'No atendida',
`fecha` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`id_reparador` int(2) DEFAULT NULL,
`ref` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`articulo` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
`marca` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `config_host` (`config_host`),
KEY `id_user` (`id_user`),
KEY `id_reparador` (`id_reparador`),
CONSTRAINT `reparacion_ibfk_1` FOREIGN KEY (`id_user`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `reparacion_ibfk_2` FOREIGN KEY (`config_host`) REFERENCES `config_host` (`config_host_id`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `reparacion_ibfk_4` FOREIGN KEY (`id_reparador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE NO ACTION ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `rolekk`
--
DROP TABLE IF EXISTS `rolekk`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `rolekk` (
`role_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`description` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`role_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `root`
--
DROP TABLE IF EXISTS `root`;
/*!50001 DROP VIEW IF EXISTS `root`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `root` AS SELECT
1 AS `DiadelaSemana`,
1 AS `Hora`,
1 AS `Fecha`,
1 AS `Dispositivo`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `rounding`
--
DROP TABLE IF EXISTS `rounding`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `rounding` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`amount` double NOT NULL DEFAULT '0',
`price` double DEFAULT '0',
`discount` double NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `route`
--
DROP TABLE IF EXISTS `route`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `route` (
`agency_id` smallint(5) unsigned NOT NULL,
`week_day` tinyint(3) unsigned NOT NULL COMMENT 'weekday de access el domingo = 1, sabado = 7. Intentar cambiar al de Mysql Lunes = 0',
PRIMARY KEY (`agency_id`,`week_day`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ruta_location`
--
DROP TABLE IF EXISTS `ruta_location`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ruta_location` (
`Id_Ruta` int(10) unsigned NOT NULL,
`longitude` decimal(11,7) NOT NULL,
`latitude` decimal(11,7) NOT NULL,
`time_location` datetime NOT NULL,
PRIMARY KEY (`Id_Ruta`),
CONSTRAINT `Id_Ruta_Location` FOREIGN KEY (`Id_Ruta`) REFERENCES `Rutas` (`Id_Ruta`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `salarioDits`
--
DROP TABLE IF EXISTS `salarioDits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `salarioDits` (
`idSalario_dits` int(11) NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idSalario_dits`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `scan`
--
DROP TABLE IF EXISTS `scan`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `scan` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`lft` int(11) NOT NULL,
`rgt` int(11) NOT NULL,
`name` varchar(45) CHARACTER SET utf8 DEFAULT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Se borra automaticamente 8 dias en el pasado desde vn2008.clean';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `scan_line`
--
DROP TABLE IF EXISTS `scan_line`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `scan_line` (
`scan_line_id` int(11) NOT NULL AUTO_INCREMENT,
`scan_id` int(11) NOT NULL,
`code` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`scan_line_id`),
KEY `id_scan_id_idx` (`scan_id`),
CONSTRAINT `id_scan_id` FOREIGN KEY (`scan_id`) REFERENCES `scan` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sharingcart`
--
DROP TABLE IF EXISTS `sharingcart`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sharingcart` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Trabajador` int(11) NOT NULL,
`datSTART` date NOT NULL,
`datEND` date NOT NULL,
`Id_Suplente` int(11) NOT NULL,
`odbc_date` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `Worker` (`Id_Trabajador`),
KEY `Suplent` (`Id_Suplente`),
CONSTRAINT `Suplent_key` FOREIGN KEY (`Id_Suplente`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `Trabajador_key` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `sharingcart_bi` BEFORE INSERT ON `sharingcart` FOR EACH ROW
BEGIN
SET NEW.datSTART = GREATEST(CURDATE(),NEW.datSTART);
SET NEW.datEND = GREATEST(CURDATE(),NEW.datEND);
IF NEW.Id_Trabajador = NEW.Id_Suplente THEN
SET NEW.Id_Trabajador = NULL;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `sharingcart_bu` BEFORE UPDATE ON `sharingcart` FOR EACH ROW
BEGIN
SET NEW.datSTART = GREATEST(CURDATE(),NEW.datSTART);
SET NEW.datEND = GREATEST(CURDATE(),NEW.datEND);
IF NEW.Id_Trabajador = NEW.Id_Suplente THEN
SET NEW.Id_Trabajador = NULL;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `sharingclient`
--
DROP TABLE IF EXISTS `sharingclient`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sharingclient` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Id_Trabajador` int(11) NOT NULL,
`datSTART` date NOT NULL,
`datEND` date NOT NULL,
`Id_Cliente` int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY `Worker` (`Id_Trabajador`),
KEY `Client` (`Id_Cliente`),
CONSTRAINT `Clients_key` FOREIGN KEY (`Id_Cliente`) REFERENCES `Clientes` (`id_cliente`) ON UPDATE CASCADE,
CONSTRAINT `Trabajadores_key` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`sharingclient_BEFORE_INSERT` BEFORE INSERT ON `sharingclient` FOR EACH ROW
BEGIN
SET NEW.datEND = GREATEST(CURDATE(),NEW.datEND);
SET NEW.datSTART = GREATEST(CURDATE(),NEW.datSTART);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`sharingclient_BEFORE_UPDATE` BEFORE UPDATE ON `sharingclient` FOR EACH ROW
BEGIN
SET NEW.datEND = GREATEST(CURDATE(),NEW.datEND);
SET NEW.datSTART = GREATEST(CURDATE(),NEW.datSTART);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `sms`
--
DROP TABLE IF EXISTS `sms`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sms` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_trabajador` int(11) NOT NULL,
`text` varchar(160) COLLATE utf8_unicode_ci NOT NULL,
`to` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`DATE_ODBC` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`sent` tinyint(4) NOT NULL DEFAULT '0',
`Id_Cliente` int(11) DEFAULT NULL,
`response` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`from` varchar(9) COLLATE utf8_unicode_ci NOT NULL DEFAULT '693474205',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `sms_bi` BEFORE INSERT ON `sms`
FOR EACH ROW
BEGIN
DECLARE intLast INT;
DECLARE strTrab VARCHAR(3);
SET NEW.`to` = LTRIM(NEW.`to`);
IF NEW.`to` LIKE '6________' or NEW.`to` LIKE '7________'THEN
SET NEW.`to` = CONCAT('0034',REPLACE(NEW.`to`,' ',''));
ELSE
IF NEW.`to` NOT LIKE '00346________' or NEW.`to` NOT LIKE '00347________'THEN
INSERT INTO Mensajes(Mensaje,Fecha,Remitente,Destinatario)
VALUES(CONCAT("El mensaje que ha enviado no contenía un número de teléfono MÓVIL válido:",NEW.`to`),NOW(),20,NEW.Id_trabajador);
SELECT LAST_INSERT_ID() INTO intlast;
SELECT CodigoTrabajador INTO strTrab FROM Trabajadores WHERE id_Trabajador = NEW.Id_Trabajador;
INSERT INTO Incidencias(Incidencia,Id_Trabajador,Destino,Fecha,Fecha_Mod)
VALUES (CONCAT('@@ ' , intLast), 20,strTrab, NOW(),NOW());
SET NEW.id = 0;
SET intLast = 'fallo provocado';
END IF;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `split`
--
DROP TABLE IF EXISTS `split`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `split` (
`edi_id` int(11) NOT NULL,
`customer_id` int(11) NOT NULL,
`quantity` int(11) NOT NULL,
KEY `edi_id` (`edi_id`,`customer_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `state`
--
DROP TABLE IF EXISTS `state`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `state` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`order` tinyint(3) unsigned DEFAULT NULL,
`alert_level` int(11) NOT NULL DEFAULT '0',
`code` varchar(45) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `code_UNIQUE` (`code`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tag`
--
DROP TABLE IF EXISTS `tag`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tag` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(25) CHARACTER SET utf8 NOT NULL,
`free` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Categorias para etiquetar los productos';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `tarifa_componentes`
--
DROP TABLE IF EXISTS `tarifa_componentes`;
/*!50001 DROP VIEW IF EXISTS `tarifa_componentes`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `tarifa_componentes` AS SELECT
1 AS `Id_Componente`,
1 AS `Componente`,
1 AS `tarifa_componentes_series_id`,
1 AS `tarifa_class`,
1 AS `tax`,
1 AS `is_renewable`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `tarifa_componentes_series`
--
DROP TABLE IF EXISTS `tarifa_componentes_series`;
/*!50001 DROP VIEW IF EXISTS `tarifa_componentes_series`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `tarifa_componentes_series` AS SELECT
1 AS `tarifa_componentes_series_id`,
1 AS `Serie`,
1 AS `base`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `tarifas`
--
DROP TABLE IF EXISTS `tarifas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tarifas` (
`tarifa_id` int(11) NOT NULL AUTO_INCREMENT,
`fecha` date NOT NULL,
`warehouse_id` smallint(6) unsigned NOT NULL,
`t0` double NOT NULL,
`t1` double NOT NULL,
`t2` double NOT NULL,
`t3` double NOT NULL,
PRIMARY KEY (`tarifa_id`),
KEY `tarifa_warehouse` (`warehouse_id`),
CONSTRAINT `tarifa_warehouse` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tblContadores`
--
DROP TABLE IF EXISTS `tblContadores`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tblContadores` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ochoa` int(10) unsigned NOT NULL,
`nfactura` int(11) DEFAULT '0',
`nasiento` int(11) DEFAULT '0',
`serieA` int(11) DEFAULT '0',
`serieE` int(11) DEFAULT '0',
`serieR` int(11) DEFAULT '0',
`serieC` int(11) DEFAULT '0',
`SerieH` int(11) NOT NULL,
`serieP` int(11) DEFAULT '0',
`serieT` int(11) DEFAULT '0',
`FechaInventario` datetime DEFAULT NULL,
`serieM` int(11) DEFAULT '0',
`HistoricoArticulo` int(11) DEFAULT '0',
`week_goal` int(11) DEFAULT NULL,
`Rutafotos` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`numCaja` int(11) DEFAULT '0',
`CodigoRojo` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Tablet_Hora` datetime DEFAULT NULL,
`t0` int(11) NOT NULL DEFAULT '0',
`t1` int(11) NOT NULL DEFAULT '0',
`t2` int(11) NOT NULL DEFAULT '0',
`t3` int(11) NOT NULL DEFAULT '0',
`cc` double NOT NULL DEFAULT '0',
`palet` double NOT NULL DEFAULT '0',
`campaign` datetime NOT NULL,
`campaign_life` tinyint(3) unsigned NOT NULL,
`truck_days` tinyint(3) unsigned NOT NULL,
`tasa_transporte` double NOT NULL,
`escaner_path` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`turnoimpreso` int(4) DEFAULT NULL,
`truck_length` int(11) DEFAULT '24',
`fuel_consumption` int(11) DEFAULT NULL,
`petrol` decimal(10,1) DEFAULT NULL,
`maintenance` decimal(10,1) DEFAULT NULL,
`hour_price` decimal(10,1) DEFAULT NULL,
`meter_price` decimal(10,1) DEFAULT NULL,
`km_price` decimal(10,1) DEFAULT NULL,
`route_option` int(11) DEFAULT '1',
`dbproduccion` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`tblContadores_bi` BEFORE INSERT ON `tblContadores` FOR EACH ROW
BEGIN
DECLARE v_count INT;
SELECT COUNT(*) INTO v_count FROM tblContadores;
IF v_count > 0 THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'ONLY_ONE_ROW_ALLOWED';
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `tblIVA`
--
DROP TABLE IF EXISTS `tblIVA`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tblIVA` (
`tipoiva` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`iva` smallint(6) NOT NULL DEFAULT '0',
`cuenta` double DEFAULT '0',
`cuentaRE` double DEFAULT '0',
`cuentaivaRE` double DEFAULT '0',
`REQ` double DEFAULT '0',
PRIMARY KEY (`tipoiva`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `template_bionic_component`
--
DROP TABLE IF EXISTS `template_bionic_component`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `template_bionic_component` (
`warehouse_id` smallint(5) unsigned NOT NULL,
`item_id` int(11) NOT NULL,
`component_id` int(10) unsigned NOT NULL,
`cost` decimal(10,4) NOT NULL,
KEY `item_warehouse` (`item_id`,`warehouse_id`) USING BTREE,
KEY `item_warehouse_component` (`item_id`,`warehouse_id`,`component_id`) USING HASH
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `template_bionic_lot`
--
DROP TABLE IF EXISTS `template_bionic_lot`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `template_bionic_lot` (
`warehouse_id` smallint(5) unsigned NOT NULL,
`item_id` int(11) NOT NULL,
`available` double DEFAULT NULL,
`buy_id` int(11) DEFAULT NULL,
`fix` tinyint(3) unsigned DEFAULT '0',
KEY `item_id` (`item_id`),
KEY `item_warehouse` (`item_id`,`warehouse_id`) USING HASH
) ENGINE=MEMORY DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `template_bionic_price`
--
DROP TABLE IF EXISTS `template_bionic_price`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `template_bionic_price` (
`warehouse_id` smallint(5) unsigned NOT NULL,
`item_id` int(11) NOT NULL,
`rate` tinyint(3) unsigned NOT NULL,
`items` int(11) DEFAULT NULL,
`grouping` int(11) DEFAULT NULL,
`price` decimal(10,2) DEFAULT NULL,
KEY `item_id` (`item_id`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `thermograph`
--
DROP TABLE IF EXISTS `thermograph`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `thermograph` (
`thermograph_id` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`model` enum('TL30','SENSITECH','TREKVIEW1','TREKVIEW2','DISPOSABLE') COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`thermograph_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `ticketCreationData`
--
DROP TABLE IF EXISTS `ticketCreationData`;
/*!50001 DROP VIEW IF EXISTS `ticketCreationData`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticketCreationData` AS SELECT
1 AS `DiadelaSemana`,
1 AS `Hora`,
1 AS `Fecha`,
1 AS `Dispositivo`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `ticket_location`
--
DROP TABLE IF EXISTS `ticket_location`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ticket_location` (
`Id_Ticket` int(11) NOT NULL,
`longitude` decimal(11,7) DEFAULT NULL,
`latitude` decimal(11,7) DEFAULT NULL,
PRIMARY KEY (`Id_Ticket`),
CONSTRAINT `Id_Ticket_Location` FOREIGN KEY (`Id_Ticket`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ticket_observation`
--
DROP TABLE IF EXISTS `ticket_observation`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ticket_observation` (
`ticket_observation_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`Id_Ticket` int(11) NOT NULL,
`observation_type_id` tinyint(3) unsigned NOT NULL,
`text` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`ticket_observation_id`),
UNIQUE KEY `Id_Ticket` (`Id_Ticket`,`observation_type_id`),
KEY `observation_type_id` (`observation_type_id`),
CONSTRAINT `ticket_observation_ibfk_1` FOREIGN KEY (`Id_Ticket`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `ticket_observation_ibfk_2` FOREIGN KEY (`observation_type_id`) REFERENCES `observation_type` (`observation_type_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Todas las observaciones referentes a un ticket';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ticket_stateKK`
--
DROP TABLE IF EXISTS `ticket_stateKK`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ticket_stateKK` (
`ticket_id` int(11) NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`user_id` int(11) NOT NULL,
`state_id` tinyint(1) unsigned NOT NULL DEFAULT '1',
UNIQUE KEY `ticket_id` (`ticket_id`),
KEY `user_id` (`user_id`),
KEY `state_id` (`state_id`),
CONSTRAINT `ticket_stateKK_ibfk_1` FOREIGN KEY (`ticket_id`) REFERENCES `Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `ticket_stateKK_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE NO ACTION ON UPDATE CASCADE,
CONSTRAINT `ticket_stateKK_ibfk_3` FOREIGN KEY (`state_id`) REFERENCES `state` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ticket_stateAfterInsert`
AFTER INSERT ON `ticket_stateKK` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('ticket', NEW.ticket_id, NULL);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`ticket_stateAfterDelete`
AFTER UPDATE ON `ticket_stateKK` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('ticket', NEW.ticket_id, OLD.ticket_id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `tickets_gestdoc`
--
DROP TABLE IF EXISTS `tickets_gestdoc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tickets_gestdoc` (
`Id_Ticket` int(11) NOT NULL,
`gestdoc_id` int(11) NOT NULL,
PRIMARY KEY (`Id_Ticket`,`gestdoc_id`),
KEY `gestdoc_id` (`gestdoc_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `time`
--
DROP TABLE IF EXISTS `time`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `time` (
`date` date NOT NULL,
`period` int(6) NOT NULL,
`month` int(2) NOT NULL,
`year` int(4) NOT NULL,
`day` int(2) NOT NULL,
`week` int(2) NOT NULL,
PRIMARY KEY (`date`),
KEY `day_index` (`day`) USING HASH,
KEY `week_index` (`week`) USING HASH,
KEY `year_index` (`year`) USING HASH,
KEY `month_index` (`month`) USING HASH,
KEY `periodo` (`period`) USING HASH
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Tabla de referencia para las semanas, años y meses';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tipsa`
--
DROP TABLE IF EXISTS `tipsa`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tipsa` (
`kilos` tinyint(3) unsigned NOT NULL,
`importe` double unsigned NOT NULL,
`zona` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`kilos`,`zona`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tmpNEWTARIFAS`
--
DROP TABLE IF EXISTS `tmpNEWTARIFAS`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tmpNEWTARIFAS` (
`Id_Cliente` int(11) NOT NULL,
`Cliente` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Consumo_medio_mensual` double(17,0) DEFAULT NULL,
`Tarifa_Actual` int(11) DEFAULT '0',
`Nueva_Tarifa` int(11) DEFAULT NULL,
`Id_Trabajador` int(11) DEFAULT '20',
PRIMARY KEY (`Id_Cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `transport`
--
DROP TABLE IF EXISTS `transport`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `transport` (
`wday` tinyint(4) NOT NULL,
PRIMARY KEY (`wday`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `travel`
--
DROP TABLE IF EXISTS `travel`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `travel` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`shipment` date DEFAULT NULL,
`shipment_hour` time DEFAULT NULL,
`landing` date NOT NULL,
`landing_hour` time DEFAULT NULL,
`warehouse_id` smallint(6) unsigned DEFAULT NULL,
`warehouse_id_out` smallint(6) unsigned DEFAULT NULL,
`agency_id` int(11) DEFAULT NULL,
`ref` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`delivered` tinyint(1) NOT NULL DEFAULT '0',
`received` tinyint(1) NOT NULL DEFAULT '0',
`m3` decimal(10,2) unsigned DEFAULT NULL,
`kg` decimal(10,0) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `shipment_2` (`shipment`,`landing`,`warehouse_id`,`warehouse_id_out`,`agency_id`,`ref`),
KEY `agency_id` (`agency_id`),
KEY `shipment` (`shipment`),
KEY `landing` (`landing`),
KEY `warehouse_landing` (`warehouse_id`,`landing`),
KEY `warehouse_out_shipment` (`warehouse_id_out`,`shipment`),
CONSTRAINT `travel_ibfk_1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE,
CONSTRAINT `travel_ibfk_2` FOREIGN KEY (`warehouse_id_out`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE,
CONSTRAINT `travel_ibfk_3` FOREIGN KEY (`agency_id`) REFERENCES `Agencias` (`Id_Agencia`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `travelBeforeInsert`
BEFORE INSERT ON `travel` FOR EACH ROW
BEGIN
IF NEW.landing < TIMESTAMPADD(YEAR, -10, CURDATE())
OR NEW.shipment < TIMESTAMPADD(YEAR, -10, CURDATE())
OR NEW.landing < NEW.shipment
THEN
SET NEW.landing = NULL;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `travelBeforeUpdate`
BEFORE UPDATE ON `travel` FOR EACH ROW
BEGIN
DECLARE trabajador INT;
IF NEW.landing < NEW.shipment THEN
SET NEW.shipment = NEW.landing;
END IF;
IF NEW.landing < TIMESTAMPADD(YEAR,-10, CURDATE())
OR NEW.shipment < TIMESTAMPADD(YEAR,-10,CURDATE())
THEN
SET NEW.landing = NULL;
END IF;
IF ABS(NEW.delivered) > ABS(OLD.delivered)
THEN
SELECT Id_Trabajador into trabajador from Trabajadores where user_id = account.userGetId();
INSERT INTO travel_dits (idaccion_dits,Id_Trabajador,Id_Ticket,value_old,value_new)
VALUES (89 ,IFNULL(trabajador,20),NEW.id,OLD.delivered,CONCAT(NEW.delivered,' desde ' ,user()));
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`travelAfterUpdate`
AFTER UPDATE ON `travel` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('travel', NEW.id, OLD.id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn2008`.`travelAfterDelete`
AFTER DELETE ON `travel` FOR EACH ROW
BEGIN
CALL stock.queueAdd ('travel', NULL, OLD.id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `travel_dits`
--
DROP TABLE IF EXISTS `travel_dits`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `travel_dits` (
`idtravel_dits` int(11) NOT NULL AUTO_INCREMENT,
`idaccion_dits` int(11) NOT NULL,
`ODBC_DATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Ticket` int(11) NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`value_old` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`value_new` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`idtravel_dits`),
KEY `fgkey1_idx` (`idaccion_dits`),
KEY `fgkey2_idx` (`Id_Ticket`),
KEY `fgkey3_idx` (`Id_Trabajador`),
CONSTRAINT `travel_dits_ibfk_1` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `travel_pattern`
--
DROP TABLE IF EXISTS `travel_pattern`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `travel_pattern` (
`travel_pattern_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`week_start` tinyint(3) unsigned NOT NULL,
`week_end` tinyint(3) unsigned NOT NULL,
`warehouse_out` smallint(5) unsigned NOT NULL,
`warehouse_in` smallint(5) unsigned NOT NULL,
`agency_id` int(11) NOT NULL,
`day_out` tinyint(3) unsigned NOT NULL,
`duration` tinyint(3) unsigned NOT NULL,
`ref` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`travel_pattern_id`),
KEY `warehouse_out` (`warehouse_out`),
KEY `warehouse_in` (`warehouse_in`),
KEY `agency_id` (`agency_id`),
CONSTRAINT `travel_pattern_ibfk_3` FOREIGN KEY (`warehouse_out`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE,
CONSTRAINT `travel_pattern_ibfk_4` FOREIGN KEY (`agency_id`) REFERENCES `Agencias` (`Id_Agencia`) ON UPDATE CASCADE,
CONSTRAINT `travel_pattern_ibfk_5` FOREIGN KEY (`warehouse_in`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `travel_reserve`
--
DROP TABLE IF EXISTS `travel_reserve`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `travel_reserve` (
`travel_reserve_id` int(11) NOT NULL AUTO_INCREMENT,
`travel_id` int(11) unsigned NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`reserved` decimal(4,1) DEFAULT NULL,
`buyed` decimal(4,1) DEFAULT NULL,
`askingfor` decimal(4,1) DEFAULT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`labeled` decimal(4,1) unsigned NOT NULL DEFAULT '0.0',
PRIMARY KEY (`Id_Trabajador`,`travel_id`),
UNIQUE KEY `travel_reserve_id_UNIQUE` (`travel_reserve_id`),
KEY `travel_travel_reserve_idx` (`travel_id`),
KEY `traveL_buyer_id_idx` (`Id_Trabajador`),
CONSTRAINT `travel_reserve_ibfk_1` FOREIGN KEY (`travel_id`) REFERENCES `travel` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='En esta tabla almacenamos los m3 que cada comprador tiene asignados, por travel.';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `travel_thermograph`
--
DROP TABLE IF EXISTS `travel_thermograph`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `travel_thermograph` (
`thermograph_id` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`odbc_date` date NOT NULL,
`warehouse_id` smallint(6) unsigned NOT NULL,
`travel_id` int(10) unsigned DEFAULT NULL,
`temperature` enum('COOL','WARM') COLLATE utf8_unicode_ci NOT NULL,
`result` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`gestdoc_id` int(11) DEFAULT NULL,
PRIMARY KEY (`thermograph_id`,`odbc_date`),
KEY `thermograph_fk_idx` (`thermograph_id`),
KEY `gestdoc_fk_idx` (`gestdoc_id`),
KEY `travel_id` (`travel_id`),
KEY `warehouse_id` (`warehouse_id`),
CONSTRAINT `gestdoc_fk` FOREIGN KEY (`gestdoc_id`) REFERENCES `gestdoc` (`id`) ON UPDATE CASCADE,
CONSTRAINT `thermograph_fk` FOREIGN KEY (`thermograph_id`) REFERENCES `thermograph` (`thermograph_id`) ON UPDATE CASCADE,
CONSTRAINT `travel_fk` FOREIGN KEY (`travel_id`) REFERENCES `travel` (`id`),
CONSTRAINT `travel_thermograph_ibfk_1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Registra cada termografo que se ha introducido en cada travel';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `trolley`
--
DROP TABLE IF EXISTS `trolley`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `trolley` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`fecha` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`ref` varchar(4) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `turn`
--
DROP TABLE IF EXISTS `turn`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `turn` (
`number` int(11) NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`number`,`odbc_date`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unary`
--
DROP TABLE IF EXISTS `unary`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `unary` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`parent` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `idunary_UNIQUE` (`id`),
KEY `unary_parent_idx` (`parent`),
CONSTRAINT `unary_parent` FOREIGN KEY (`parent`) REFERENCES `unary` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unaryScanFilter`
--
DROP TABLE IF EXISTS `unaryScanFilter`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `unaryScanFilter` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`filter` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unary_scan`
--
DROP TABLE IF EXISTS `unary_scan`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `unary_scan` (
`unary_id` int(11) NOT NULL,
`name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`type` set('BUYS','EXPEDITIONS') COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`unary_id`),
KEY `scan_unary_idx` (`unary_id`),
CONSTRAINT `unary_scan` FOREIGN KEY (`unary_id`) REFERENCES `unary` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unary_scan_line`
--
DROP TABLE IF EXISTS `unary_scan_line`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `unary_scan_line` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`unary_id` int(11) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `id_UNIQUE` (`id`),
KEY `unary_line_idx` (`unary_id`),
CONSTRAINT `unary_line` FOREIGN KEY (`unary_id`) REFERENCES `unary_scan` (`unary_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unary_scan_line_buy`
--
DROP TABLE IF EXISTS `unary_scan_line_buy`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `unary_scan_line_buy` (
`scan_line_id` int(11) NOT NULL,
`Id_Article` int(11) NOT NULL,
PRIMARY KEY (`scan_line_id`),
UNIQUE KEY `scan_line_id_UNIQUE` (`scan_line_id`),
KEY `Id_Article_buy_idx` (`Id_Article`),
CONSTRAINT `Id_Article_buy` FOREIGN KEY (`Id_Article`) REFERENCES `Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `scan_line_id_patriarcal` FOREIGN KEY (`scan_line_id`) REFERENCES `unary_scan_line` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unary_scan_line_expedition`
--
DROP TABLE IF EXISTS `unary_scan_line_expedition`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `unary_scan_line_expedition` (
`scan_line_id` int(11) NOT NULL,
`expedition_id` int(11) NOT NULL,
PRIMARY KEY (`scan_line_id`),
UNIQUE KEY `scan_line_id_UNIQUE` (`scan_line_id`),
KEY `expedition_id_scan_idx` (`expedition_id`),
CONSTRAINT `expedition_id_scan` FOREIGN KEY (`expedition_id`) REFERENCES `expeditions` (`expeditions_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unary_source`
--
DROP TABLE IF EXISTS `unary_source`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `unary_source` (
`name` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `v_Agenda`
--
DROP TABLE IF EXISTS `v_Agenda`;
/*!50001 DROP VIEW IF EXISTS `v_Agenda`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_Agenda` AS SELECT
1 AS `Tipo`,
1 AS `Id`,
1 AS `Nombre`,
1 AS `Telephone`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_Agenda2`
--
DROP TABLE IF EXISTS `v_Agenda2`;
/*!50001 DROP VIEW IF EXISTS `v_Agenda2`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_Agenda2` AS SELECT
1 AS `Tipo`,
1 AS `Id`,
1 AS `Nombre`,
1 AS `Telefono`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_Articles_botanical`
--
DROP TABLE IF EXISTS `v_Articles_botanical`;
/*!50001 DROP VIEW IF EXISTS `v_Articles_botanical`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_Articles_botanical` AS SELECT
1 AS `Id_Article`,
1 AS `edi_botanic`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_Movimientos_Volumen_shipping_charge`
--
DROP TABLE IF EXISTS `v_Movimientos_Volumen_shipping_charge`;
/*!50001 DROP VIEW IF EXISTS `v_Movimientos_Volumen_shipping_charge`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_Movimientos_Volumen_shipping_charge` AS SELECT
1 AS `Id_Ticket`,
1 AS `Id_Movimiento`,
1 AS `Fecha`,
1 AS `price`,
1 AS `freight`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_Ordenes`
--
DROP TABLE IF EXISTS `v_Ordenes`;
/*!50001 DROP VIEW IF EXISTS `v_Ordenes`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_Ordenes` AS SELECT
1 AS `Id_ORDEN`,
1 AS `ORDEN`,
1 AS `datORDEN`,
1 AS `datTICKET`,
1 AS `CodVENDEDOR`,
1 AS `CodCOMPRADOR`,
1 AS `CANTIDAD`,
1 AS `PRECIOMAX`,
1 AS `PREU`,
1 AS `Id_ARTICLE`,
1 AS `Id_CLIENTE`,
1 AS `COMENTARIO`,
1 AS `OK`,
1 AS `TOTAL`,
1 AS `datCOMPRA`,
1 AS `KO`,
1 AS `Id_Movimiento`,
1 AS `odbc_date`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_XDiario_ALL`
--
DROP TABLE IF EXISTS `v_XDiario_ALL`;
/*!50001 DROP VIEW IF EXISTS `v_XDiario_ALL`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_XDiario_ALL` AS SELECT
1 AS `empresa_id`,
1 AS `SUBCTA`,
1 AS `Eurodebe`,
1 AS `Eurohaber`,
1 AS `Fecha`,
1 AS `FECHA_EX`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_accion`
--
DROP TABLE IF EXISTS `v_accion`;
/*!50001 DROP VIEW IF EXISTS `v_accion`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_accion` AS SELECT
1 AS `accion_id`,
1 AS `accion`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_account`
--
DROP TABLE IF EXISTS `v_account`;
/*!50001 DROP VIEW IF EXISTS `v_account`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_account` AS SELECT
1 AS `user_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_analisis_ventas`
--
DROP TABLE IF EXISTS `v_analisis_ventas`;
/*!50001 DROP VIEW IF EXISTS `v_analisis_ventas`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_analisis_ventas` AS SELECT
1 AS `Familia`,
1 AS `Reino`,
1 AS `Comercial`,
1 AS `Comprador`,
1 AS `Provincia`,
1 AS `almacen`,
1 AS `Año`,
1 AS `Mes`,
1 AS `Semana`,
1 AS `Vista`,
1 AS `Importe`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_awb_volumen`
--
DROP TABLE IF EXISTS `v_awb_volumen`;
/*!50001 DROP VIEW IF EXISTS `v_awb_volumen`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_awb_volumen` AS SELECT
1 AS `awb_id`,
1 AS `codigo`,
1 AS `importe`,
1 AS `Vol_Total`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_barcodes`
--
DROP TABLE IF EXISTS `v_barcodes`;
/*!50001 DROP VIEW IF EXISTS `v_barcodes`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_barcodes` AS SELECT
1 AS `code`,
1 AS `Id_Article`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_barcodes_plus`
--
DROP TABLE IF EXISTS `v_barcodes_plus`;
/*!50001 DROP VIEW IF EXISTS `v_barcodes_plus`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_barcodes_plus` AS SELECT
1 AS `code`,
1 AS `Id_Article`,
1 AS `Article`,
1 AS `Medida`,
1 AS `Color`,
1 AS `Categoria`,
1 AS `Producer`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_botanic_export`
--
DROP TABLE IF EXISTS `v_botanic_export`;
/*!50001 DROP VIEW IF EXISTS `v_botanic_export`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_botanic_export` AS SELECT
1 AS `Nom_botanic`,
1 AS `Id_Paises`,
1 AS `restriction`,
1 AS `description`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_compres`
--
DROP TABLE IF EXISTS `v_compres`;
/*!50001 DROP VIEW IF EXISTS `v_compres`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_compres` AS SELECT
1 AS `Familia`,
1 AS `reino_id`,
1 AS `Id_Compra`,
1 AS `Id_Entrada`,
1 AS `Id_Article`,
1 AS `Cantidad`,
1 AS `Costefijo`,
1 AS `Portefijo`,
1 AS `Novincular`,
1 AS `Etiquetas`,
1 AS `Packing`,
1 AS `grouping`,
1 AS `Comisionfija`,
1 AS `Embalajefijo`,
1 AS `Nicho`,
1 AS `Id_Cubo`,
1 AS `Tarifa1`,
1 AS `Tarifa2`,
1 AS `Tarifa3`,
1 AS `PVP`,
1 AS `Vida`,
1 AS `Id_Trabajador`,
1 AS `punteo`,
1 AS `odbc_date`,
1 AS `Inventario`,
1 AS `Id_Proveedor`,
1 AS `Fecha`,
1 AS `Confirmada`,
1 AS `Redada`,
1 AS `empresa_id`,
1 AS `travel_id`,
1 AS `Pedida`,
1 AS `recibida_id`,
1 AS `id`,
1 AS `shipment`,
1 AS `landing`,
1 AS `warehouse_id`,
1 AS `warehouse_id_out`,
1 AS `agency_id`,
1 AS `ref`,
1 AS `delivered`,
1 AS `received`,
1 AS `Article`,
1 AS `Medida`,
1 AS `Tallos`,
1 AS `caja`,
1 AS `Categoria`,
1 AS `id_origen`,
1 AS `Tipo`,
1 AS `tipo_id`,
1 AS `Color`,
1 AS `Min`,
1 AS `Coste`,
1 AS `fuente`,
1 AS `iva_group_id`,
1 AS `cm3`,
1 AS `producer_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_departure_limit`
--
DROP TABLE IF EXISTS `v_departure_limit`;
/*!50001 DROP VIEW IF EXISTS `v_departure_limit`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_departure_limit` AS SELECT
1 AS `warehouse_id`,
1 AS `fecha`,
1 AS `hora`,
1 AS `minSpeed`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_descuadre_bionic`
--
DROP TABLE IF EXISTS `v_descuadre_bionic`;
/*!50001 DROP VIEW IF EXISTS `v_descuadre_bionic`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_descuadre_bionic` AS SELECT
1 AS `Id_Ticket`,
1 AS `Alias`,
1 AS `Concepte`,
1 AS `suma_componente`,
1 AS `Preu`,
1 AS `Descuento`,
1 AS `diferencia`,
1 AS `Fecha`,
1 AS `benvenut`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_descuadre_porte`
--
DROP TABLE IF EXISTS `v_descuadre_porte`;
/*!50001 DROP VIEW IF EXISTS `v_descuadre_porte`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_descuadre_porte` AS SELECT
1 AS `Id_Ticket`,
1 AS `suma_componente`,
1 AS `teorico_agencia`,
1 AS `diferencia`,
1 AS `Fecha`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_descuadre_porte2`
--
DROP TABLE IF EXISTS `v_descuadre_porte2`;
/*!50001 DROP VIEW IF EXISTS `v_descuadre_porte2`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_descuadre_porte2` AS SELECT
1 AS `Id_Ticket`,
1 AS `suma_componente`,
1 AS `Fecha`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_empresa`
--
DROP TABLE IF EXISTS `v_empresa`;
/*!50001 DROP VIEW IF EXISTS `v_empresa`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_empresa` AS SELECT
1 AS `logo`,
1 AS `id`,
1 AS `registro`,
1 AS `gerente_id`,
1 AS `alta`,
1 AS `Nombre`,
1 AS `Apellidos`,
1 AS `Proveedor`,
1 AS `Domicilio`,
1 AS `CP`,
1 AS `Localidad`,
1 AS `NIF`,
1 AS `Telefono`,
1 AS `Alias`,
1 AS `abbreviation`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_encajado`
--
DROP TABLE IF EXISTS `v_encajado`;
/*!50001 DROP VIEW IF EXISTS `v_encajado`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_encajado` AS SELECT
1 AS `hora`,
1 AS `minuto`,
1 AS `cm3`,
1 AS `warehouse_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_encajado_ultima_hora`
--
DROP TABLE IF EXISTS `v_encajado_ultima_hora`;
/*!50001 DROP VIEW IF EXISTS `v_encajado_ultima_hora`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_encajado_ultima_hora` AS SELECT
1 AS `m3`,
1 AS `warehouse_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_expeditions_shipping_charge`
--
DROP TABLE IF EXISTS `v_expeditions_shipping_charge`;
/*!50001 DROP VIEW IF EXISTS `v_expeditions_shipping_charge`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_expeditions_shipping_charge` AS SELECT
1 AS `Id_Ticket`,
1 AS `shipping_charge`,
1 AS `Fecha`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_expeditions_shipping_charge2`
--
DROP TABLE IF EXISTS `v_expeditions_shipping_charge2`;
/*!50001 DROP VIEW IF EXISTS `v_expeditions_shipping_charge2`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_expeditions_shipping_charge2` AS SELECT
1 AS `Id_Ticket`,
1 AS `shipping_charge`,
1 AS `Fecha`,
1 AS `warehouse_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_fallo`
--
DROP TABLE IF EXISTS `v_fallo`;
/*!50001 DROP VIEW IF EXISTS `v_fallo`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_fallo` AS SELECT
1 AS `queja_id`,
1 AS `accion_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_inter`
--
DROP TABLE IF EXISTS `v_inter`;
/*!50001 DROP VIEW IF EXISTS `v_inter`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_inter` AS SELECT
1 AS `inter_id`,
1 AS `state_id`,
1 AS `nota`,
1 AS `odbc_date`,
1 AS `Id_Ticket`,
1 AS `Id_Trabajador`,
1 AS `Id_supervisor`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_jerarquia`
--
DROP TABLE IF EXISTS `v_jerarquia`;
/*!50001 DROP VIEW IF EXISTS `v_jerarquia`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_jerarquia` AS SELECT
1 AS `Id_Trabajador`,
1 AS `boss_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_location`
--
DROP TABLE IF EXISTS `v_location`;
/*!50001 DROP VIEW IF EXISTS `v_location`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_location` AS SELECT
1 AS `longitude`,
1 AS `latitude`,
1 AS `Id_Consigna`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_mana_spellers`
--
DROP TABLE IF EXISTS `v_mana_spellers`;
/*!50001 DROP VIEW IF EXISTS `v_mana_spellers`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_mana_spellers` AS SELECT
1 AS `Id_Trabajador`,
1 AS `size`,
1 AS `used`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_miriam`
--
DROP TABLE IF EXISTS `v_miriam`;
/*!50001 DROP VIEW IF EXISTS `v_miriam`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_miriam` AS SELECT
1 AS `Id_Article`,
1 AS `Concepte`,
1 AS `Cantidad`,
1 AS `Preu`,
1 AS `Descuento`,
1 AS `Fecha`,
1 AS `Id_Cliente`,
1 AS `Importe`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_movimientos_log`
--
DROP TABLE IF EXISTS `v_movimientos_log`;
/*!50001 DROP VIEW IF EXISTS `v_movimientos_log`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_movimientos_log` AS SELECT
1 AS `idmovimientos_log`,
1 AS `Id_Movimiento`,
1 AS `odbc_date`,
1 AS `Id_Trabajador`,
1 AS `field_name`,
1 AS `new_value`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_movimientos_mark`
--
DROP TABLE IF EXISTS `v_movimientos_mark`;
/*!50001 DROP VIEW IF EXISTS `v_movimientos_mark`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_movimientos_mark` AS SELECT
1 AS `Id_Movimiento`,
1 AS `Accion`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_pedidos_auto_preparados`
--
DROP TABLE IF EXISTS `v_pedidos_auto_preparados`;
/*!50001 DROP VIEW IF EXISTS `v_pedidos_auto_preparados`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_pedidos_auto_preparados` AS SELECT
1 AS `CodigoTrabajador`,
1 AS `Id_Ticket`,
1 AS `Momento`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_pedidos_auto_preparadoskk`
--
DROP TABLE IF EXISTS `v_pedidos_auto_preparadoskk`;
/*!50001 DROP VIEW IF EXISTS `v_pedidos_auto_preparadoskk`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_pedidos_auto_preparadoskk` AS SELECT
1 AS `CodigoTrabajador`,
1 AS `Fecha`,
1 AS `Id_Ticket`,
1 AS `Momento`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_phonebook`
--
DROP TABLE IF EXISTS `v_phonebook`;
/*!50001 DROP VIEW IF EXISTS `v_phonebook`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_phonebook` AS SELECT
1 AS `Id_Cliente`,
1 AS `Telefono`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_price_fixed`
--
DROP TABLE IF EXISTS `v_price_fixed`;
/*!50001 DROP VIEW IF EXISTS `v_price_fixed`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_price_fixed` AS SELECT
1 AS `warehouse_id`,
1 AS `item_id`,
1 AS `rate_0`,
1 AS `rate_1`,
1 AS `rate_2`,
1 AS `rate_3`,
1 AS `date_start`,
1 AS `date_end`,
1 AS `bonus`,
1 AS `grouping`,
1 AS `Packing`,
1 AS `caja`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_price_fixed_group`
--
DROP TABLE IF EXISTS `v_price_fixed_group`;
/*!50001 DROP VIEW IF EXISTS `v_price_fixed_group`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_price_fixed_group` AS SELECT
1 AS `warehouse_id`,
1 AS `item_id`,
1 AS `rate_0`,
1 AS `rate_1`,
1 AS `rate_2`,
1 AS `rate_3`,
1 AS `date_start`,
1 AS `date_end`,
1 AS `bonus`,
1 AS `grouping`,
1 AS `Packing`,
1 AS `caja`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_session`
--
DROP TABLE IF EXISTS `v_session`;
/*!50001 DROP VIEW IF EXISTS `v_session`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_session` AS SELECT
1 AS `id`,
1 AS `CodigoTrabajador`,
1 AS `Id_Trabajador`,
1 AS `Id_Cliente`,
1 AS `Cliente`,
1 AS `Fecha`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_ticket_amount`
--
DROP TABLE IF EXISTS `v_ticket_amount`;
/*!50001 DROP VIEW IF EXISTS `v_ticket_amount`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_ticket_amount` AS SELECT
1 AS `Id_Ticket`,
1 AS `amount`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_trabajadores`
--
DROP TABLE IF EXISTS `v_trabajadores`;
/*!50001 DROP VIEW IF EXISTS `v_trabajadores`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_trabajadores` AS SELECT
1 AS `CodigoTrabajador`,
1 AS `Nombre`,
1 AS `Fecha_Inicio`,
1 AS `Password`,
1 AS `user`,
1 AS `Apellidos`,
1 AS `Id_Trabajador`,
1 AS `Foto`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_user`
--
DROP TABLE IF EXISTS `v_user`;
/*!50001 DROP VIEW IF EXISTS `v_user`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_user` AS SELECT
1 AS `id`,
1 AS `mysql_user_id`,
1 AS `name`,
1 AS `password`,
1 AS `active`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_ventes`
--
DROP TABLE IF EXISTS `v_ventes`;
/*!50001 DROP VIEW IF EXISTS `v_ventes`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_ventes` AS SELECT
1 AS `Agencia`,
1 AS `Categoria`,
1 AS `tipo_id`,
1 AS `Medida`,
1 AS `Article`,
1 AS `Color`,
1 AS `Id_Cliente`,
1 AS `Tipo`,
1 AS `Factura`,
1 AS `warehouse_id`,
1 AS `Id_Movimiento`,
1 AS `Id_Article`,
1 AS `Familia`,
1 AS `Id_Ticket`,
1 AS `Concepte`,
1 AS `Cantidad`,
1 AS `quantity`,
1 AS `Preu`,
1 AS `Descuento`,
1 AS `CostFixat`,
1 AS `Reservado`,
1 AS `OK`,
1 AS `PrecioFijado`,
1 AS `odbc_date`,
1 AS `Fecha`,
1 AS `FechaCompleta`,
1 AS `Alias`,
1 AS `Id_Consigna`,
1 AS `Importe`,
1 AS `Origen`,
1 AS `reino_id`,
1 AS `invoice`,
1 AS `producer_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_venteskk`
--
DROP TABLE IF EXISTS `v_venteskk`;
/*!50001 DROP VIEW IF EXISTS `v_venteskk`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_venteskk` AS SELECT
1 AS `Agencia`,
1 AS `Categoria`,
1 AS `tipo_id`,
1 AS `Medida`,
1 AS `Article`,
1 AS `Color`,
1 AS `Id_Cliente`,
1 AS `Tipo`,
1 AS `Factura`,
1 AS `warehouse_id`,
1 AS `Id_Movimiento`,
1 AS `Id_Article`,
1 AS `Familia`,
1 AS `Id_Ticket`,
1 AS `Concepte`,
1 AS `Cantidad`,
1 AS `quantity`,
1 AS `Preu`,
1 AS `Descuento`,
1 AS `CostFixat`,
1 AS `Reservado`,
1 AS `OK`,
1 AS `PrecioFijado`,
1 AS `odbc_date`,
1 AS `Fecha`,
1 AS `FechaCompleta`,
1 AS `Alias`,
1 AS `Id_Consigna`,
1 AS `Importe`,
1 AS `Origen`,
1 AS `reino_id`,
1 AS `invoice`,
1 AS `producer_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_warehouse`
--
DROP TABLE IF EXISTS `v_warehouse`;
/*!50001 DROP VIEW IF EXISTS `v_warehouse`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_warehouse` AS SELECT
1 AS `id`,
1 AS `almacen`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_xsubclien`
--
DROP TABLE IF EXISTS `v_xsubclien`;
/*!50001 DROP VIEW IF EXISTS `v_xsubclien`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_xsubclien` AS SELECT
1 AS `Id_Cliente`,
1 AS `empresa_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_xsubcuentas`
--
DROP TABLE IF EXISTS `v_xsubcuentas`;
/*!50001 DROP VIEW IF EXISTS `v_xsubcuentas`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_xsubcuentas` AS SELECT
1 AS `COD`,
1 AS `TITULO`,
1 AS `NIF`,
1 AS `DOMICILIO`,
1 AS `POBLACION`,
1 AS `PROVINCIA`,
1 AS `CODPOSTAL`,
1 AS `country_code`,
1 AS `empresa_id`,
1 AS `EMAIL`,
1 AS `IDNIF`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_xsubprov`
--
DROP TABLE IF EXISTS `v_xsubprov`;
/*!50001 DROP VIEW IF EXISTS `v_xsubprov`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_xsubprov` AS SELECT
1 AS `proveedor_id`,
1 AS `empresa_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `versiones`
--
DROP TABLE IF EXISTS `versiones`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `versiones` (
`programa` varchar(11) COLLATE utf8_unicode_ci NOT NULL,
`version` int(11) NOT NULL,
`critical` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`programa`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `viaxpress`
--
DROP TABLE IF EXISTS `viaxpress`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `viaxpress` (
`codigo_postal` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
`zona` tinyint(4) NOT NULL DEFAULT '2',
`m_t` tinyint(4) NOT NULL DEFAULT '0',
`POBLACION` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`PROVINCIA` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`codigo_postal`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `vnCreditClassification`
--
DROP TABLE IF EXISTS `vnCreditClassification`;
/*!50001 DROP VIEW IF EXISTS `vnCreditClassification`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `vnCreditClassification` AS SELECT
1 AS `id`,
1 AS `client`,
1 AS `dateStart`,
1 AS `dateEnd`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `vnCreditInsurance`
--
DROP TABLE IF EXISTS `vnCreditInsurance`;
/*!50001 DROP VIEW IF EXISTS `vnCreditInsurance`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `vnCreditInsurance` AS SELECT
1 AS `id`,
1 AS `creditClassification`,
1 AS `credit`,
1 AS `creationDate`,
1 AS `grade`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `vnSolunionCAP`
--
DROP TABLE IF EXISTS `vnSolunionCAP`;
/*!50001 DROP VIEW IF EXISTS `vnSolunionCAP`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `vnSolunionCAP` AS SELECT
1 AS `creditInsurance`,
1 AS `dateStart`,
1 AS `dateEnd`,
1 AS `dateLeaving`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `warehouse`
--
DROP TABLE IF EXISTS `warehouse`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse` (
`id` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`fuente` tinyint(1) unsigned NOT NULL DEFAULT '0',
`address_name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`delay` double NOT NULL DEFAULT '0.004',
`reserve` tinyint(4) NOT NULL DEFAULT '0',
`tpv` tinyint(2) unsigned zerofill NOT NULL DEFAULT '00',
`Id_Paises` mediumint(8) unsigned NOT NULL DEFAULT '1',
`zone_label` tinyint(4) NOT NULL DEFAULT '0',
`comisionantes` tinyint(4) NOT NULL DEFAULT '0',
`inventario` tinyint(2) NOT NULL DEFAULT '0',
`is_comparative` tinyint(2) NOT NULL DEFAULT '0' COMMENT 'Si esta a true,en la comparativa muestra el stock de este almacen, cuando no se especifica almacen.',
`valuatedInventory` tinyint(2) NOT NULL DEFAULT '0',
`isManaged` tinyint(2) NOT NULL DEFAULT '0',
`hasConfectionTeam` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `name_UNIQUE` (`name`),
KEY `Id_Paises` (`Id_Paises`),
CONSTRAINT `warehouse_ibfk_1` FOREIGN KEY (`Id_Paises`) REFERENCES `Paises` (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `warehouse_ai` AFTER INSERT ON `warehouse` FOR EACH ROW
begin
IF NEW.Fuente THEN
INSERT INTO warehouse_alias (alias) VALUES(NEW.`name`);
INSERT INTO warehouse_joined(warehouse_id,warehouse_alias_id)
VALUES(NEW.id,LAST_INSERT_ID());
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `warehouse_au` AFTER UPDATE ON `warehouse` FOR EACH ROW
begin
IF NEW.fuente IS TRUE and OLD.fuente IS FALSE then
INSERT INTO warehouse_alias (alias) VALUES(NEW.`name`);
INSERT INTO warehouse_joined(warehouse_id,warehouse_alias_id)
VALUES(NEW.id,LAST_INSERT_ID());
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Table structure for table `warehouse_alias`
--
DROP TABLE IF EXISTS `warehouse_alias`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse_alias` (
`warehouse_alias_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`alias` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`warehouse_alias_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `warehouse_filtro`
--
DROP TABLE IF EXISTS `warehouse_filtro`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse_filtro` (
`warehouse_id` smallint(6) unsigned NOT NULL,
`Id_Trabajador` int(11) NOT NULL,
`ok` tinyint(3) unsigned DEFAULT '1',
PRIMARY KEY (`Id_Trabajador`,`warehouse_id`),
KEY `wh_worker_idx` (`Id_Trabajador`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Tabla que permite filtrar los almacenes que muestra la comparativa, recordando la selección personal del usuario';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `warehouse_group`
--
DROP TABLE IF EXISTS `warehouse_group`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse_group` (
`warehouse_alias_id` smallint(5) unsigned NOT NULL DEFAULT '22',
`warehouse_id` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`warehouse_alias_id`,`warehouse_id`),
KEY `warehosue_group_ware_idx` (`warehouse_id`),
CONSTRAINT `warehosue_group_ware` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `warehouse_group_alias` FOREIGN KEY (`warehouse_alias_id`) REFERENCES `warehouse_alias` (`warehouse_alias_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Agrupa warehouses ';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `warehouse_joined`
--
DROP TABLE IF EXISTS `warehouse_joined`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse_joined` (
`warehouse_id` smallint(5) unsigned NOT NULL,
`warehouse_alias_id` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`warehouse_id`,`warehouse_alias_id`),
CONSTRAINT `warehouse_joined_ibfk_3` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `warehouse_lc`
--
DROP TABLE IF EXISTS `warehouse_lc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse_lc` (
`whin` smallint(6) unsigned NOT NULL,
`whout` smallint(6) unsigned NOT NULL,
`m3` double NOT NULL DEFAULT '15',
`days` int(11) NOT NULL DEFAULT '1',
PRIMARY KEY (`whin`,`whout`),
KEY `whout_wh_idx` (`whout`),
CONSTRAINT `whin_wh` FOREIGN KEY (`whin`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE,
CONSTRAINT `whout_wh` FOREIGN KEY (`whout`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Warehouses cost for linking';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `warehouse_pickup`
--
DROP TABLE IF EXISTS `warehouse_pickup`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse_pickup` (
`warehouse_id` smallint(5) unsigned NOT NULL,
`agency_id` int(11) DEFAULT NULL,
PRIMARY KEY (`warehouse_id`),
UNIQUE KEY `agency_id` (`agency_id`,`warehouse_id`),
CONSTRAINT `warehouse_pickup_ibfk_1` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `warehouse_pickup_ibfk_2` FOREIGN KEY (`agency_id`) REFERENCES `Agencias` (`Id_Agencia`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `warehouse_tree_bidi`
--
DROP TABLE IF EXISTS `warehouse_tree_bidi`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `warehouse_tree_bidi` (
`father` tinyint(1) unsigned NOT NULL,
`son` tinyint(1) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `wh_selection`
--
DROP TABLE IF EXISTS `wh_selection`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `wh_selection` (
`Id_Trabajador` int(11) NOT NULL,
`warehouse_id` smallint(6) unsigned NOT NULL,
PRIMARY KEY (`Id_Trabajador`,`warehouse_id`),
KEY `Trabajadores` (`Id_Trabajador`),
KEY `Warehouse` (`warehouse_id`),
CONSTRAINT `Trabajadores` FOREIGN KEY (`Id_Trabajador`) REFERENCES `Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE,
CONSTRAINT `Warehouse` FOREIGN KEY (`warehouse_id`) REFERENCES `warehouse` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Permite que los usuarios seleccionen los almacenes que van a';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `widget`
--
DROP TABLE IF EXISTS `widget`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `widget` (
`widget_id` int(11) NOT NULL,
`chr` int(11) NOT NULL,
PRIMARY KEY (`widget_id`),
UNIQUE KEY `chr_UNIQUE` (`chr`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `wks`
--
DROP TABLE IF EXISTS `wks`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `wks` (
`wk` int(10) unsigned NOT NULL,
`yr` int(10) unsigned NOT NULL,
`vwk` int(10) unsigned NOT NULL,
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`comments` text COLLATE utf8_unicode_ci,
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `workcenter_holiday`
--
DROP TABLE IF EXISTS `workcenter_holiday`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `workcenter_holiday` (
`workcenter_id` int(11) NOT NULL,
`day` double NOT NULL,
`year` smallint(6) NOT NULL,
PRIMARY KEY (`workcenter_id`,`day`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `workerDocument`
--
DROP TABLE IF EXISTS `workerDocument`;
/*!50001 DROP VIEW IF EXISTS `workerDocument`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `workerDocument` AS SELECT
1 AS `id`,
1 AS `worker`,
1 AS `document`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `workerTeam`
--
DROP TABLE IF EXISTS `workerTeam`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `workerTeam` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`team` int(11) NOT NULL,
`user` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `user_team_idx` (`user`),
CONSTRAINT `user_team` FOREIGN KEY (`user`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `workerTeamCollegues`
--
DROP TABLE IF EXISTS `workerTeamCollegues`;
/*!50001 DROP VIEW IF EXISTS `workerTeamCollegues`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `workerTeamCollegues` AS SELECT
1 AS `workerId`,
1 AS `collegueId`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `workerTeam_kk`
--
DROP TABLE IF EXISTS `workerTeam_kk`;
/*!50001 DROP VIEW IF EXISTS `workerTeam_kk`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `workerTeam_kk` AS SELECT
1 AS `team`,
1 AS `user`,
1 AS `id`,
1 AS `Id_Trabajador`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `zeleris`
--
DROP TABLE IF EXISTS `zeleris`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zeleris` (
`codigo_postal` mediumint(8) unsigned NOT NULL,
`franja` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`codigo_postal`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `zones`
--
DROP TABLE IF EXISTS `zones`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zones` (
`zone_id` tinyint(4) NOT NULL,
`name` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`printingOrder` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`zone_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Zonas de reparto';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'vn2008'
--
--
-- Dumping routines for database 'vn2008'
--
/*!50003 DROP FUNCTION IF EXISTS `AltaEmpleado` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `AltaEmpleado`(strCodTrabajador varchar(3),strNombre varchar(50),strApellidos varchar(50),strDni varchar(9),
strDomicilio longtext,strCodPostal varchar(5),strPoblacion varchar(25),provinceId smallint(5), intempresa_id smallint(5),strMovil varchar(11)) RETURNS varchar(50) CHARSET utf8
BEGIN
DECLARE RETORNO varchar(50) DEFAULT 'Empleado creado CORRECTAMENTE';
DECLARE tmpUserId INT(11) DEFAULT 0;
DECLARE intId_Cliente int(11) DEFAULT 0;
DECLARE Cod_Trabajador VARCHAR(8) DEFAULT strCodTrabajador;
DECLARE strPassword VARCHAR(50);
DECLARE strSambaNombre VARCHAR(30);
samba:BEGIN
proc:BEGIN
SELECT COUNT(*) INTO intId_Cliente FROM Clientes WHERE `IF`=strDni;
IF (intId_Cliente=0) THEN
SELECT MAX(Id_Cliente)+1 INTO intId_Cliente FROM Clientes WHERE Id_Cliente<999999;
INSERT INTO Clientes (Id_Cliente,Cliente,Domicilio,`IF`,Telefono,province_id,Poblacion,CodPostal,RazonSocial,Contacto,Oficial,Descuento)
SELECT intId_Cliente,Concat('TR ',strNombre,' ',StrApellidos),strDomicilio,strDni,strMovil,provinceId,strPoblacion,strCodPostal,
CONCAT(strApellidos,' ',strNombre),strNombre,1,3;
ELSE
SELECT id_cliente INTO intId_Cliente FROM Clientes WHERE `IF`=strDni;
END IF;
SELECT CONCAT(IF(INSTR(StrApellidos,' ')=0,StrApellidos,LEFT(strApellidos,INSTR(StrApellidos,' ')-1)),'.',intId_Cliente) INTO strPassword;
IF (SELECT COUNT(*) FROM Trabajadores WHERE Nombre=strNombre AND Apellidos=strApellidos)=0 THEN
IF strCodTrabajador IS NULL THEN
SET Cod_Trabajador = CONCAT(LEFT(strNombre, 1), LEFT(strApellidos, 1), MID(strApellidos, (LOCATE(' ', strApellidos) + 1), 1));
END IF;
IF (SELECT COUNT(*) FROM Trabajadores WHERE CodigoTrabajador=Cod_Trabajador) > 0 THEN
SET Cod_Trabajador = CONCAT(Cod_Trabajador, (FLOOR(RAND() * 100)));
END IF;
SELECT CONCAT(IF(INSTR(StrApellidos,' ')=0,StrApellidos,LEFT(strApellidos,INSTR(StrApellidos,' ')-1)),'.',intId_Cliente) INTO strPassword;
INSERT INTO Trabajadores (CodigoTrabajador,Nombre,Apellidos,`Password`,dni,empresa_id,id_Cliente_Interno)
SELECT Cod_Trabajador,strNombre,strApellidos,LCASE(strPassword),strDni,intempresa_id,intId_Cliente;
ELSE
SET RETORNO="CodigoTrabajador Existente";
END IF;
END;
SET strSambaNombre = REPLACE(strNombre,' ','');
IF (SELECT COUNT(*) FROM account.user WHERE `name`=convert(strNombre USING utf8) COLLATE utf8_general_ci)>0 THEN
SELECT CONCAT(LEFT(strNombre,1),CONCAT(IF(INSTR(StrApellidos,' ')=0,StrApellidos,LEFT(strApellidos,INSTR(StrApellidos,' ')-1)),intId_Cliente))
INTO strSambaNombre;
END IF;
IF (SELECT COUNT(*) FROM account.user where id=intId_Cliente)=0 THEN
INSERT INTO account.user (id,role,`name`,`password`,active) VALUES (intId_Cliente,1,lcase(strSambaNombre),MD5(LCASE(strPassword)),1);
INSERT INTO account.account (id,lastchange,`expire`,user_id) values (intId_Cliente,CURRENT_DATE(),CURRENT_DATE(),intId_Cliente);
UPDATE Trabajadores SET user_id=intId_Cliente WHERE Id_Cliente_Interno=intId_Cliente;
ELSE
INSERT INTO account.user (role,`name`,`password`,active) VALUES (1,lcase(strSambaNombre),MD5(LCASE(strPassword)),1);
SET tmpUserId = LAST_INSERT_ID();
INSERT INTO account.account (id,lastchange,`expire`,user_id) values (tmpUserId,CURRENT_DATE(),CURRENT_DATE(),tmpUserId);
UPDATE Trabajadores SET user_id=tmpUserId WHERE Id_Cliente_Interno=intId_Cliente;
END IF;
REPLACE INTO account.mailAliasAccount(mailAlias, account) VALUES (48,intId_Cliente);
END;
RETURN RETORNO;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `AltaEmpleadokk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `AltaEmpleadokk`(strCodTrabajador varchar(3),strNombre varchar(50),strApellidos varchar(50),strDni varchar(9),
strDomicilio longtext,strCodPostal varchar(5),strPoblacion varchar(25),provinceId smallint(5), intempresa_id smallint(5),strMovil varchar(11)) RETURNS varchar(50) CHARSET utf8
BEGIN
DECLARE RETORNO varchar(50) DEFAULT 'Empleado creado CORRECTAMENTE';
DECLARE tmpUserId INT(11) DEFAULT 0;
DECLARE intId_Cliente int(11) DEFAULT 0;
DECLARE Cod_Trabajador VARCHAR(8) DEFAULT strCodTrabajador;
DECLARE strPassword VARCHAR(50);
DECLARE strSambaNombre VARCHAR(30);
samba:BEGIN
proc:BEGIN
SELECT COUNT(*) INTO intId_Cliente FROM Clientes WHERE `IF`=strDni;
IF (intId_Cliente=0) THEN
SELECT MAX(Id_Cliente)+1 INTO intId_Cliente FROM Clientes WHERE Id_Cliente<999999;
INSERT INTO Clientes (Id_Cliente,Cliente,Domicilio,`IF`,Telefono,province_id,Poblacion,CodPostal,RazonSocial,Contacto,Oficial,Descuento)
SELECT intId_Cliente,Concat('TR ',strNombre,' ',StrApellidos),strDomicilio,strDni,strMovil,provinceId,strPoblacion,strCodPostal,
CONCAT(strApellidos,' ',strNombre),strNombre,1,3;
ELSE
SELECT id_cliente INTO intId_Cliente FROM Clientes WHERE `IF`=strDni;
END IF;
SELECT CONCAT(IF(INSTR(StrApellidos,' ')=0,StrApellidos,LEFT(strApellidos,INSTR(StrApellidos,' ')-1)),'.',intId_Cliente) INTO strPassword;
IF (SELECT COUNT(*) FROM Trabajadores WHERE Nombre=strNombre AND Apellidos=strApellidos)=0 THEN
IF strCodTrabajador IS NULL THEN
SET Cod_Trabajador = CONCAT(LEFT(strNombre, 1), LEFT(strApellidos, 1), MID(strApellidos, (LOCATE(' ', strApellidos) + 1), 1));
END IF;
IF (SELECT COUNT(*) FROM Trabajadores WHERE CodigoTrabajador=Cod_Trabajador) > 0 THEN
SET Cod_Trabajador = CONCAT(Cod_Trabajador, (FLOOR(RAND() * 100)));
END IF;
SELECT CONCAT(IF(INSTR(StrApellidos,' ')=0,StrApellidos,LEFT(strApellidos,INSTR(StrApellidos,' ')-1)),'.',intId_Cliente) INTO strPassword;
INSERT INTO Trabajadores (CodigoTrabajador,Nombre,Apellidos,`Password`,dni,empresa_id,id_Cliente_Interno)
SELECT Cod_Trabajador,strNombre,strApellidos,LCASE(strPassword),strDni,intempresa_id,intId_Cliente;
ELSE
SET RETORNO="CodigoTrabajador Existente";
END IF;
END;
SET strSambaNombre = REPLACE(strNombre,' ','');
IF (SELECT COUNT(*) FROM account.user WHERE `name`=convert(strNombre USING utf8) COLLATE utf8_general_ci)>0 THEN
SELECT CONCAT(LEFT(strNombre,1),CONCAT(IF(INSTR(StrApellidos,' ')=0,StrApellidos,LEFT(strApellidos,INSTR(StrApellidos,' ')-1)),intId_Cliente))
INTO strSambaNombre;
END IF;
IF (SELECT COUNT(*) FROM account.user where id=intId_Cliente)=0 THEN
INSERT INTO account.user (id,role,`name`,`password`,active) VALUES (intId_Cliente,1,lcase(strSambaNombre),MD5(LCASE(strPassword)),1);
INSERT INTO account.account (id,lastchange,`expire`,user_id) values (intId_Cliente,CURRENT_DATE(),CURRENT_DATE(),intId_Cliente);
UPDATE Trabajadores SET user_id=intId_Cliente WHERE Id_Cliente_Interno=intId_Cliente;
ELSE
INSERT INTO account.user (role,`name`,`password`,active) VALUES (1,lcase(strSambaNombre),MD5(LCASE(strPassword)),1);
SET tmpUserId = LAST_INSERT_ID();
INSERT INTO account.account (id,lastchange,`expire`,user_id) values (tmpUserId,CURRENT_DATE(),CURRENT_DATE(),tmpUserId);
UPDATE Trabajadores SET user_id=tmpUserId WHERE Id_Cliente_Interno=intId_Cliente;
END IF;
REPLACE INTO account.mailAliasAccount(mailAlias, account) VALUES (48,intId_Cliente);
END;
RETURN RETORNO;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `articod` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `articod`(intArt INT) RETURNS varchar(70) CHARSET utf8 COLLATE utf8_unicode_ci
BEGIN
DECLARE strArt VARCHAR(70);
SELECT CONCAT(Article,' ', Medida, ' ',Color) INTO strArt FROM Articles WHERE Id_Article = intArt;
RETURN strArt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `asiento` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `asiento`(
v_asiento INT
,v_date DATE
,v_subaccount VARCHAR(12)
,v_account VARCHAR(12)
,v_concept VARCHAR(25)
,v_debit DOUBLE
,v_credit DOUBLE
,v_euro DOUBLE
,v_serial CHAR(1)
,v_invoice VARCHAR(8)
,v_vat DOUBLE
,v_re DOUBLE
,v_aux TINYINT
,v_company INT
) RETURNS int(11)
BEGIN
IF v_asiento IS NULL
THEN
SELECT MAX(ASIEN) + 1 INTO v_asiento FROM XDiario FOR UPDATE;
END IF;
INSERT INTO XDiario
SET
ASIEN = v_asiento
,FECHA = v_date
,SUBCTA = v_subaccount
,CONTRA = v_account
,CONCEPTO = v_concept
,EURODEBE = v_debit
,EUROHABER = v_credit
,BASEEURO = v_euro
,SERIE = v_serial
,FACTURA = v_invoice
,IVA = v_vat
,RECEQUIV = v_re
,AUXILIAR = IF(v_aux = FALSE, NULL, '*')
,MONEDAUSO = 2
,empresa_id = v_company;
RETURN v_asiento;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `Averiguar_ComercialCliente` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `Averiguar_ComercialCliente`(v_customer INT, v_date DATE) RETURNS varchar(3) CHARSET utf8
DETERMINISTIC
BEGIN
DECLARE v_employee CHAR(3);
DECLARE v_salesperson INT;
SET v_salesperson = Averiguar_ComercialCliente_Id(v_customer, v_date);
SELECT CodigoTrabajador
INTO v_employee
FROM Trabajadores
WHERE Id_Trabajador = v_salesperson;
RETURN IFNULL(v_employee, '---');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `Averiguar_ComercialCliente_Id` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `Averiguar_ComercialCliente_Id`(v_customer INT, v_date DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE v_salesperson INT DEFAULT NULL;
DECLARE v_substitute INT DEFAULT NULL;
DECLARE v_loop BOOLEAN;
SELECT c.Id_Trabajador, s.Id_Trabajador
INTO v_salesperson, v_substitute
FROM Clientes c
LEFT JOIN sharingclient s
ON c.Id_Cliente = s.Id_Cliente
AND v_date BETWEEN s.datSTART AND s.datEND
WHERE c.Id_Cliente = v_customer
ORDER BY s.id
LIMIT 1;
IF v_substitute IS NOT NULL
THEN
SET v_salesperson = v_substitute;
ELSEIF v_salesperson IS NOT NULL
THEN
DROP TEMPORARY TABLE IF EXISTS tmp.stack;
CREATE TEMPORARY TABLE tmp.stack
(INDEX (substitute))
ENGINE = MEMORY
SELECT v_salesperson substitute;
l: LOOP
SELECT Id_Suplente INTO v_substitute
FROM sharingcart
WHERE v_date BETWEEN datSTART AND datEND
AND Id_Trabajador = v_salesperson
ORDER BY id
LIMIT 1;
IF v_substitute IS NULL THEN
LEAVE l;
END IF;
SELECT COUNT(*) > 0 INTO v_loop
FROM tmp.stack WHERE substitute = v_substitute;
IF v_loop THEN
LEAVE l;
END IF;
INSERT INTO tmp.stack SET
substitute = v_substitute;
SET v_salesperson = v_substitute;
END LOOP;
DROP TEMPORARY TABLE tmp.stack;
END IF;
RETURN v_salesperson;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `Averiguar_ComercialCliente_IdTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `Averiguar_ComercialCliente_IdTicket`(v_ticket INT) RETURNS varchar(3) CHARSET utf8
DETERMINISTIC
BEGIN
DECLARE v_customer INT;
DECLARE v_date DATE;
SELECT id_cliente, fecha
INTO v_customer, v_date
FROM Tickets WHERE id_ticket = v_ticket;
RETURN Averiguar_ComercialCliente(v_customer, v_date);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `Averiguar_ComercialCliente_IdTicket_Id` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `Averiguar_ComercialCliente_IdTicket_Id`(v_ticket INT) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE v_customer INT;
DECLARE v_date DATE;
SELECT id_cliente, fecha
INTO v_customer, v_date
FROM Tickets WHERE id_ticket = v_ticket;
RETURN Averiguar_ComercialCliente_Id(v_customer, v_date);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `Averiguar_Comprador` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `Averiguar_Comprador`(idARTICLE INT) RETURNS varchar(3) CHARSET utf8
BEGIN
DECLARE buyer VARCHAR(3);
SELECT CodigoTrabajador INTO buyer
FROM Trabajadores t
JOIN Tipos tp on tp.Id_Trabajador = t.Id_Trabajador
JOIN Articles a on a.tipo_id = tp.tipo_id
WHERE Id_Article = idARTICLE;
RETURN buyer;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `base_ticket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `base_ticket`(Id_Ticket INT) RETURNS double
BEGIN
DECLARE base DOUBLE;
SELECT
red(SUM(Cantidad * Preu * (100 - Descuento) / 100)) into base
FROm
Movimientos m
INNER JOIN Tickets t USING (Id_Ticket)
WHERE t.Id_Ticket = Id_Ticket;
RETURN base;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `bionicCalcReverse` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `bionicCalcReverse`(vWarehouse INT,
vMargin DECIMAL(10,3),
vRetailedPrice DECIMAL(10,3),
vM3 DECIMAL(10,3),
vConsigna INT,
vAgencia INT) RETURNS decimal(10,3)
BEGIN
DECLARE COEFICIENTE_DE_INFLACION_GENERAL INT DEFAULT 1.3;
DECLARE DENSIDAD_MINIMA_PESO_VOLUMETRICO INT DEFAULT 167;
DECLARE VOLUMEN_CAJA_VERDNATURA BIGINT DEFAULT 138000;
DECLARE vCost DECIMAL(10,4) DEFAULT 0;
DECLARE vCustomer INT;
DECLARE vRecovery DECIMAL(10,4) DEFAULT 0;
DECLARE vMana DECIMAL(10,4) DEFAULT 0;
DECLARE vPort DECIMAL(10,4) DEFAULT 0;
SELECT Id_Cliente INTO vCustomer FROM Consignatarios WHERE Id_Consigna = vConsigna;
SELECT ROUND(LEAST(recobro,0.25), 3) INTO vRecovery
FROM bi.claims_ratio
WHERE Id_Cliente = vCustomer AND recobro > 0.009;
SELECT ROUND(prices_modifier_rate, 3) INTO vMana
FROM Clientes c
JOIN bs.mana_spellers ms ON c.Id_Trabajador = ms.Id_Trabajador
WHERE ms.prices_modifier_activated AND c.Id_Cliente = vCustomer;
SELECT COEFICIENTE_DE_INFLACION_GENERAL
* ROUND(
vM3
* az.price
* az.inflacion
/ VOLUMEN_CAJA_VERDNATURA, 4
) INTO vPort
FROM vn2008.Agencias a
JOIN vn2008.Consignatarios c ON c.Id_Consigna = vConsigna AND a.Id_Agencia = vAgencia
JOIN vn2008.Agencias_province ap ON ap.agency_id = a.agency_id AND ap.warehouse_id = vWarehouse AND ap.province_id = c.province_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = vAgencia AND az.zona = ap.zona AND az.Id_Article = 71 AND az.warehouse_id = vWarehouse;
SET vCost = ((vRetailedPrice - vPort) / ( 1 + (vRecovery + vMana))) - vMargin;
RETURN vCost;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `botanic_export_is_updatable` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `botanic_export_is_updatable`(v_edi_genus_id MEDIUMINT,v_edi_specie_id MEDIUMINT,v_id_Paises MEDIUMINT,v_restriction MEDIUMINT) RETURNS int(11)
BEGIN
DECLARE is_updatable INTEGER;
SELECT COUNT(*) INTO is_updatable FROM botanic_export
WHERE edi_genus_id = v_edi_genus_id
AND (v_edi_specie_id = edi_specie_id OR IFNULL(v_edi_specie_id,edi_specie_id) IS NULL)
AND (v_id_Paises = Id_Paises OR IFNULL(v_id_Paises,Id_Paises) IS NULL)
AND v_restriction = restriction;
RETURN is_updatable;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `buffer_name` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `buffer_name`(v_date DATE, v_wh INT) RETURNS varchar(11) CHARSET utf8
BEGIN
RETURN CONCAT('b', YEAR(v_date), MONTH(v_date), DAY(v_date), IFNULL(v_wh, 0));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `buyingAbsoluteCost` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `buyingAbsoluteCost`(vCompra BIGINT) RETURNS int(11)
BEGIN
DECLARE vCost DOUBLE;
SELECT IFNULL(Costefijo,0) + IFNULL(Portefijo,0) + IFNULL(Embalajefijo,0) + IFNULL(Comisionfija,0)
INTO vCost
FROM Compres
WHERE Id_Compra = vCompra;
RETURN vCost;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `cc_to_iban` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `cc_to_iban`(cc VARCHAR(20)) RETURNS varchar(4) CHARSET utf8
DETERMINISTIC
BEGIN
DECLARE iban VARCHAR(4);
select
CONCAT('ES',
RIGHT(
concat(0,
98-
mod(
concat(
mod(
concat(
mod(
concat(
mod(
substring(cc,1,8),
97),
substring(cc,9,8)
),
97),
substring(
concat(
cc,
142800
),
17,
8
)
),
97),
substring(
concat(
cc,
142800
),
25,
2
)
),
97)
)
,2)
)into iban;
RETURN iban;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `CM3` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = latin1 */ ;
/*!50003 SET character_set_results = latin1 */ ;
/*!50003 SET collation_connection = latin1_swedish_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `CM3`(v_buy_id INT) RETURNS int(11)
BEGIN
DECLARE id_CUB VARCHAR(10);
DECLARE id_ART INT;
SELECT Id_Cubo, Id_Article INTO id_CUB, id_ART
FROM Compres c
WHERE c.Id_compra = v_buy_id;
RETURN cm3_2(id_CUB, id_ART);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `cm3_2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `cm3_2`(id_CUB VARCHAR(10), id_ART INT) RETURNS int(11)
BEGIN
DECLARE v_cm3 INT;
SELECT SUM(IF(b.Volumen > 0,
b.Volumen,
x * y * IF(z = 0, Medida + 10, z)
)) INTO v_cm3
FROM Cubos b
INNER JOIN Articles a ON Id_Article = id_ART
WHERE Id_Cubo = id_CUB;
RETURN v_cm3;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `cm3_unidad` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `cm3_unidad`(v_buy_id INT) RETURNS int(11)
BEGIN
DECLARE id_CUB VARCHAR(10);
DECLARE id_ART INT;
DECLARE intPACK INT;
SELECT Id_Cubo, Id_Article, Packing INTO id_CUB, id_ART, intPACK
FROM Compres c
WHERE c.Id_compra = v_buy_id;
RETURN ifnull(round(cm3_2(id_CUB, id_ART)/intPACK),0);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `code_to_id` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `code_to_id`(idART VARCHAR(22)) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE idchecked INT;
set idchecked = (SELECT Id_Article FROM barcodes WHERE code = idART);
IF idchecked THEN
RETURN idchecked;
END IF;
IF idART > 6000000 THEN
SELECT Id_Article INTO idchecked
FROM Compres WHERE Id_Compra = idART;
ELSE
SET idchecked = CAST(idART AS SIGNED);
END IF;
RETURN idchecked;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `code_to_id2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `code_to_id2`(idART VARCHAR(22)) RETURNS int(11)
BEGIN
DECLARE idchecked INT;
SELECT IFNULL(Id_Article,COUNT(*)) INTO idchecked
FROM barcodes
WHERE code = idART LIMIT 1;
IF idchecked THEN
RETURN idchecked;
END IF;
IF idART > 6000000 THEN
SET idchecked = CAST(idART AS SIGNED);
ELSE
SET idchecked = CAST(idART AS SIGNED);
END IF;
RETURN idchecked;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `cub` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = latin1 */ ;
/*!50003 SET character_set_results = latin1 */ ;
/*!50003 SET collation_connection = latin1_swedish_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `cub`(v_buy_id INT) RETURNS int(11)
BEGIN
DECLARE v_cm3 INT;
SELECT SUM(Etiquetas * IF(b.Volumen > 0,
b.Volumen,
IF(z = 0,
x * y * (Medida + 10),
x * y * z
)
)) INTO v_cm3
FROM Compres c
INNER JOIN Cubos b USING (Id_Cubo)
INNER JOIN Articles a USING (Id_Article)
WHERE c.Id_compra = v_buy_id;
RETURN v_cm3;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `currate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `currate`() RETURNS double
BEGIN
DECLARE dblRATE DOUBLE;
SELECT rate INTO dblRATE FROM reference_rate ORDER BY date DESC LIMIT 1 ;
RETURN dblRATE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `date_inv` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = latin1 */ ;
/*!50003 SET character_set_results = latin1 */ ;
/*!50003 SET collation_connection = latin1_swedish_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `date_inv`() RETURNS datetime
DETERMINISTIC
BEGIN
RETURN (SELECT FechaInventario FROM tblContadores LIMIT 1);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `DAYEND` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `DAYEND`(v_date DATE) RETURNS datetime
DETERMINISTIC
BEGIN
RETURN TIMESTAMP(v_date,'23:59:59');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `FIRSTDAYOFYEAR` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `FIRSTDAYOFYEAR`(datFEC DATE) RETURNS date
BEGIN
DECLARE datRETURNS DATE;
SELECT TIMESTAMPADD(DAY, -1 * DAYOFYEAR(datFEC) + 1, datFEC) INTO datRETURNS;
RETURN datRETURNS;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `f_periodo` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `f_periodo`(datFEC date) RETURNS int(7)
DETERMINISTIC
BEGIN
DECLARE intPeriod INT;
SELECT Year(datFEC) * 100 + week(datFEC) into intPeriod;
RETURN intPeriod;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `getBouquetId` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getBouquetId`(
vName VARCHAR(50),
vType int,
vSize int,
vColour VARCHAR(5)
) RETURNS int(11)
BEGIN
DECLARE bouquetId INT(11);
CALL vn2008.createBouquet(vName, vType, vSize, vColour, @vItem);
SET bouquetId = (SELECT @vItem);
RETURN bouquetId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `getInvoiceWeight` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getInvoiceWeight`(vInvoice VARCHAR(15)) RETURNS decimal(10,2)
BEGIN
DECLARE vTotalWeight DECIMAL(10,2);
SELECT SUM(IFNULL(tallos,1) * Cantidad * a.density) sumTotal
INTO vTotalWeight FROM Tickets t
LEFT JOIN Movimientos m ON m.Id_Ticket = t.Id_Ticket
LEFT JOIN Articles a ON a.Id_Article = m.Id_Article
LEFT JOIN Tipos tp ON tp.tipo_id = a.tipo_id
WHERE t.Factura = vInvoice AND Codintrastat;
RETURN vTotalWeight;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `getShippingFromTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getShippingFromTicket`(vTicket INTEGER) RETURNS decimal(10,2)
BEGIN
DECLARE vValue DECIMAL(10,2);
SELECT
SUM(Valor * m.Cantidad) INTO vValue
FROM
Movimientos_componentes mc
JOIN
Movimientos m ON m.Id_Movimiento = mc.Id_Movimiento
JOIN
bi.tarifa_componentes tc ON mc.Id_Componente = tc.Id_Componente
JOIN
bi.tarifa_componentes_series tcs ON tcs.tarifa_componentes_series_id = tc.tarifa_componentes_series_id
AND tcs.tarifa_componentes_series_id = 6
WHERE m.Id_Ticket = vTicket;
RETURN vValue;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `get_special_price` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `get_special_price`(intArticle int(11),intCliente int(11)) RETURNS decimal(10,2)
BEGIN
DECLARE price DECIMAL(10,2);
SELECT rate_3 INTO price FROM price_fixed WHERE item_id = intArticle AND CURDATE() BETWEEN date_start AND date_end order by odbc_date DESC limit 1;
SELECT precioespecial INTO price FROM PreciosEspeciales WHERE Id_Article = intArticle and Id_Cliente = intCliente ;
RETURN price;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `get_Trabajador` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `get_Trabajador`() RETURNS int(11)
DETERMINISTIC
BEGIN
RETURN IFNULL((SELECT Id_Trabajador FROM Trabajadores WHERE user_id = account.userGetId()),20);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `has_notify_passport` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `has_notify_passport`(idA INT, idCompra INT) RETURNS tinyint(1)
BEGIN
DECLARE has_passport BOOLEAN;
DECLARE is_already_sent BOOLEAN;
SELECT COUNT(*) INTO has_passport FROM vn2008.botanic_export be JOIN
vn2008.Articles_botanical ab ON be.edi_genus_id = ab.genus_id
AND IFNULL(be.edi_specie_id, ab.specie_id) = ab.specie_id
AND be.restriction = 'Se Requiere Certificado'
JOIN vn2008.Articles a ON a.Id_Article = ab.Id_Article
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
WHERE ab.Id_Article = idA AND t.reino_id = 2;
IF has_passport THEN
SELECT COUNT(*) INTO is_already_sent FROM mail M
JOIN vn2008.Compres c ON c.Id_Compra = idCompra
WHERE `text` LIKE CONCAT('%',c.buy_edi_id,'%') limit 1;
END IF;
RETURN has_passport && NOT is_already_sent;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `intrastat_neto` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `intrastat_neto`( intINSTRASTAT INTEGER,intUNIDADES INTEGER) RETURNS double
BEGIN
DECLARE n DOUBLE;
select ROUND(intUNIDADES / (sum(MEDIA) / count(media)),2) into n from (
select *, unidades / neto MEDIA FROM intrastat_data WHERE intrastat_id = intINSTRASTAT and neto and unidades > 0 ORDER BY odbc_date DESC limit 50) t;
RETURN n/2;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `is_bionic` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `is_bionic`(intTicket INT) RETURNS tinyint(1)
BEGIN
DECLARE bolIsBionic boolean;
SELECT (COUNT(*) > 0) INTO bolIsBionic FROM order_Tickets ot
WHERE ot.Id_Ticket = intTicket;
RETURN bolIsBionic;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `lang` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `lang`() RETURNS char(2) CHARSET utf8
DETERMINISTIC
BEGIN
RETURN IFNULL(@lang, 'es');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `next_venc` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `next_venc`( datFecha DATE,intDia INT,intPayDay INT) RETURNS date
BEGIN
DECLARE n DATE;
DECLARE datVenc DATE;
DECLARE intVenc INT;
SELECT TIMESTAMPADD(DAY,intDia,datFecha) INTO datVenc;
SELECT DAY(datVenc) INTO intVenc;
SELECT MIN(TIMESTAMPADD(MONTH,(intVenc > intPayDay),DATE_FORMAT(datVenc,CONCAT('%y/%m/',intPayDay)))) INTO n;
RETURN n;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `next_venctesting` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `next_venctesting`( datFecha DATE,intDia INT,intPayDay INT) RETURNS date
BEGIN
DECLARE n DATE;
DECLARE datVenc DATE;
DECLARE intVenc INT;
SELECT TIMESTAMPADD(DAY,intDia,datFecha) INTO datVenc;
SELECT DAY(datVenc) INTO intVenc;
SELECT IFNULL
(
TIMESTAMPADD
(
MONTH,
(intVenc > intPayDay),
DATE_FORMAT
(
datVenc,
CONCAT('%y/%m/',intPayDay)
)
),
LAST_DAY(datVenc)
) INTO n;
RETURN n;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `nz` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `nz`(dblCANTIDAD DOUBLE) RETURNS double
DETERMINISTIC
BEGIN
DECLARE dblRESULT DOUBLE;
SET dblRESULT = IFNULL(dblCANTIDAD,0);
RETURN dblRESULT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `paymentday` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `paymentday`(vDated DATE, vDayToPay INT) RETURNS date
BEGIN
DECLARE vDued DATE;
SET vDued = vn.getDueDate(vDated, vDayToPay);
RETURN vDued;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `periodo` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `periodo`(datFEC DATETIME) RETURNS int(6)
DETERMINISTIC
BEGIN
DECLARE intPERIODO INt;
SET intPERIODO = YEAR(datFEC) * 100 + MONTH(datFEC);
RETURN intPERIODO;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `periodo_day` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `periodo_day`(datFEC DATETIME) RETURNS int(8)
DETERMINISTIC
BEGIN
DECLARE intPERIODO INt;
SET intPERIODO = YEAR(datFEC) * 10000 + MONTH(datFEC) * 100 + DAY(datFEC);
RETURN intPERIODO;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `porte` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `porte`(intId_Ticket INT) RETURNS double
BEGIN
DECLARE dblprice DOUBLE;
SELECT
SUM(`az`.`price`) INTO dblprice
FROM
(((((`expeditions` `e`
JOIN `Tickets` `t` ON ((`e`.`ticket_id` = `t`.`Id_Ticket`)))
JOIN `Consignatarios` `c` ON ((`c`.`Id_Consigna` = `t`.`Id_Consigna`)))
JOIN `Agencias` `a` ON ((`a`.`Id_Agencia` = `t`.`Id_Agencia`)))
JOIN `Agencias_province` `ap` ON (((`t`.`warehouse_id` = `ap`.`warehouse_id`)
AND (`ap`.`province_id` = `c`.`province_id`)
AND (`ap`.`agency_id` = `a`.`agency_id`))))
JOIN `Agencias_zonas` `az` ON (((`az`.`Id_Agencia` = `t`.`Id_Agencia`)
AND (`az`.`zona` = `ap`.`zona`)
AND (`t`.`warehouse_id` = `az`.`warehouse_id`)
AND (`az`.`Id_Article` = `e`.`EsBulto`))))
WHERE
((`t`.`Fecha` >= '2015-10-01')
AND (`t`.`empresa_id` IN (442 , 791))) AND t.Id_Ticket = intId_Ticket
GROUP BY `t`.`Id_Ticket`;
RETURN dblprice;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `red` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `red`( intCANTIDAD DOUBLE) RETURNS double
DETERMINISTIC
BEGIN
DECLARE n DOUBLE;
SET n = SIGN(intCANTIDAD) * TRUNCATE( (ABS(intCANTIDAD) * 100) + 0.5001 ,0) /100 ;
RETURN n;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `risk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `risk`(datMax DATE, intCustomer INT) RETURNS decimal(10,2)
BEGIN
DECLARE decRisk DECIMAL(10,2) DEFAULT 0;
SELECT vn.clientGetDebt(intCustomer,datMax) INTO decRisk;
RETURN decRisk;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `semana` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `semana`(datFec DATETIME) RETURNS int(11)
DETERMINISTIC
BEGIN
RETURN vnperiod(datFec);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `shipmentDay` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `shipmentDay`(landingDay INT, intervalDays INT) RETURNS int(11)
BEGIN
DECLARE resultDay INT;
SET resultDay = (landingDay + 7 - (intervalDays mod 7)) mod 7;
RETURN resultDay;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_freight` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_freight`(idT INT) RETURNS decimal(10,3)
BEGIN
DECLARE intWh INTEGER;
DECLARE datFecha DATE;
DECLARE dblFreight DECIMAL(10,2);
SELECT warehouse_id, Fecha INTO intWh,datFecha FROM Tickets WHERE Id_Ticket = idT;
CALL item_last_buy_(intWh,datFecha);
SELECT SUM((`M`.`Cantidad` * (CM3(`b`.`buy_id`) / 1000000 /`C`.`Packing`) * `az`.`price` / 0.08)) INTO dblFreight
FROM Movimientos M
JOIN t_item_last_buy b on M.Id_Article = b.item_id
JOIN Compres C ON C.Id_Compra = b.buy_id
JOIN Tickets t on t.Id_Ticket = M.Id_Ticket
JOIN `Consignatarios` `cn` ON (`cn`.`Id_Consigna` = `t`.`Id_Consigna`)
JOIN `Agencias` `a` ON (`a`.`Id_Agencia` = `t`.`Id_Agencia`)
JOIN `Agencias_province` `ap` ON (`t`.`warehouse_id` = `ap`.`warehouse_id`)
AND (`ap`.`province_id` = `cn`.`province_id`)
AND (`ap`.`agency_id` = `a`.`agency_id`)
JOIN `Agencias_zonas` `az` ON (`az`.`Id_Agencia` = `t`.`Id_Agencia`)
AND (`az`.`zona` = `ap`.`zona`)
AND (`t`.`warehouse_id` = `az`.`warehouse_id`)
AND (`az`.`Id_Article` = 71)
WHERE M.Id_Ticket = idT;
DROP TEMPORARY TABLE t_item_last_buy;
RETURN dblFreight;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_state` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_state`(
strFAC VARCHAR(15),
intIMP TINYINT(1),
intETI TINYINT(1),
intBLO TINYINT(1)
) RETURNS varchar(15) CHARSET utf8
BEGIN
CASE
WHEN strFAC IS NOT NULL AND strFAC != '' THEN RETURN 'FACTURADO';
WHEN intETI <> 0 THEN RETURN 'ALBARAN';
WHEN intIMP <> 0 THEN RETURN 'PREPARACION';
WHEN intBLO <> 0 THEN RETURN 'BLOQUEADO';
ELSE RETURN 'LIBRE';
END CASE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_state_2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_state_2`(
idTICKET INT(11)
) RETURNS varchar(15) CHARSET utf8
BEGIN
DECLARE strVAR VARCHAR(15);
SELECT ticket_state(Factura, PedidoImpreso, Etiquetasemitidas, Blocked)
INTO strVAR
FROM Tickets
WHERE Id_Ticket = idTICKET;
RETURN strVAR;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_state_3` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_state_3`(
idTICKET INT(11)
) RETURNS varchar(15) CHARSET utf8
BEGIN
DECLARE strVAR VARCHAR(15);
DECLARE strNAM VARCHAR(15);
DECLARE fltID FLOAT DEFAULT 0;
DECLARE strfac VARCHAR(15);
DECLARE inteti tinyint;
DECLARE intimp tinyint;
DECLARE intblk tinyint;
SELECT s.`name`,id INTO strNAM,fltID
FROM Tickets t INNER JOIN vncontrol.inter i USING(Id_Ticket)
INNER JOIN state s ON s.id = i.state_id
WHERE Id_Ticket = idTICKET ORDER BY i.odbc_date DESC,i.state_id DESC LIMIT 1;
SELECT Factura, PedidoImpreso, Etiquetasemitidas, Blocked
INTO strfac,intimp,inteti,intblk
FROM Tickets
WHERE Id_Ticket = idTICKET;
CASE
WHEN strfac <> '' AND fltID < 11 THEN RETURN 'FACTURADO';
WHEN inteti <> 0 AND fltID < 11 THEN RETURN 'ALBARAN' ;
WHEN intimp <> 0 AND fltID <= 5 THEN RETURN 'EN PREPARACION';
WHEN fltID > 0 THEN RETURN strNAM;
ELSE RETURN 'LIBRE';
END CASE;
RETURN strVAR;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_total` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_total`(ticket_id INT) RETURNS double
BEGIN
DECLARE v_total DOUBLE;
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
CREATE TEMPORARY TABLE ticket_tmp
(INDEX idx USING HASH (ticket_id))
ENGINE = MEMORY
SELECT ticket_id;
CALL ticket_total ();
SELECT total INTO v_total FROM ticket_total;
DROP TEMPORARY TABLE ticket_total;
DROP TEMPORARY TABLE ticket_tmp;
RETURN v_total;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_volumen` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_volumen`(idT INT) RETURNS decimal(10,3)
BEGIN
DECLARE intWh INTEGER;
DECLARE datFecha DATE;
DECLARE dblVolume DECIMAL(10,3);
SELECT warehouse_id, Fecha
INTO intWh,datFecha
FROM Tickets
WHERE Id_Ticket = idT;
SELECT IFNULL(SUM(m.Cantidad * cm3)/1000000,0) INTO dblVolume
FROM Movimientos m
JOIN bi.rotacion r on r.Id_Article = m.Id_Article AND r.warehouse_id = intWh
WHERE m.Id_Ticket = idT;
RETURN dblVolume;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_volumen_encajado` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_volumen_encajado`(idT INT) RETURNS decimal(10,1)
BEGIN
DECLARE vVolumenCajaM3 DOUBLE;
DECLARE vTicketVolumenEnCajas DECIMAL(10,1);
DECLARE CAJA VARCHAR(10) DEFAULT '94';
SELECT Volumen/1000000 INTO vVolumenCajaM3 FROM Cubos WHERE Id_Cubo = CAJA;
SET vTicketVolumenEnCajas = ticket_volumen(idT) / vVolumenCajaM3;
RETURN vTicketVolumenEnCajas;
RETURN 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticket_volumen_en_cajas` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticket_volumen_en_cajas`(idT INT) RETURNS decimal(10,1)
BEGIN
RETURN 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `till_entry` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `till_entry`(
v_customer INT
,v_bank INT
,v_amount DOUBLE
,v_concept VARCHAR(25)
,v_date DATE
,v_serial CHAR(1)
,v_batch TINYINT
,v_number INT
,v_company SMALLINT
,v_employee INT
) RETURNS int(11)
BEGIN
DECLARE v_account VARCHAR(12);
DECLARE v_subaccount VARCHAR(12);
DECLARE v_asiento INT DEFAULT NULL;
INSERT INTO Cajas
SET
Id_Trabajador = v_employee
,Id_Banco = v_bank
,Entrada = v_amount
,Concepto = v_concept
,Cajafecha = v_date
,Serie = v_serial
,Partida = v_batch
,Numero = v_number
,empresa_id = v_company;
SELECT Cuenta INTO v_account
FROM Bancos WHERE Id_Banco = v_bank;
SELECT Cuenta INTO v_subaccount
FROM Clientes WHERE Id_Cliente = v_customer;
SET v_asiento = asiento
(
v_asiento
,v_date
,v_account
,v_subaccount
,v_concept
,v_amount
,0
,0
,NULL
,NULL
,NULL
,NULL
,FALSE
,v_company
);
DO asiento
(
v_asiento
,v_date
,v_subaccount
,v_account
,v_concept
,0
,v_amount
,0
,NULL
,NULL
,NULL
,NULL
,FALSE
,v_company
);
RETURN NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `to_weeks` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `to_weeks`(v_date DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
RETURN FLOOR((TO_DAYS(v_date) - 366) / 7);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ubicator_cabecaja` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ubicator_cabecaja`(x SMALLINT,y SMALLINT,z SMALLINT,w SMALLINT,d SMALLINT,h SMALLINT) RETURNS tinyint(1)
BEGIN
IF ((y>d) OR (x>w) OR (z>h)) THEN
RETURN FALSE;
END IF;
RETURN TRUE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `vnday` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `vnday`(datfec DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE intper INT;
SELECT day INTO intper FROM time WHERE date = datfec;
RETURN intper;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `vndayname` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `vndayname`(datfec DATE) RETURNS varchar(10) CHARSET utf8 COLLATE utf8_unicode_ci
DETERMINISTIC
BEGIN
DECLARE vDayName VARCHAR(10);
CASE weekday(datfec)
WHEN 6 then
SET vDayName = 'Domingo';
WHEN 0 then
SET vDayName = 'Lunes';
WHEN 1 then
SET vDayName = 'Martes';
WHEN 2 then
SET vDayName = 'Miercoles';
WHEN 3 then
SET vDayName = 'Jueves';
WHEN 4 then
SET vDayName = 'Viernes';
WHEN 5 then
SET vDayName = 'Sabado';
END CASE;
RETURN vDayName;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `vnmonth` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `vnmonth`(datfec DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE intper INT;
SELECT month INTO intper FROM time WHERE date = datfec;
RETURN intper;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `vnperiod` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `vnperiod`(datfec DATE) RETURNS int(6)
DETERMINISTIC
BEGIN
DECLARE intper INT;
SELECT period INTO intper FROM time WHERE date = datfec;
RETURN intper;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `vntrimestre` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `vntrimestre`(datfec DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
CASE
WHEN MONTH(datfec)<=3 THEN RETURN 1;
WHEN MONTH(datfec)<=6 THEN RETURN 2;
WHEN MONTH(datfec)<=9 THEN RETURN 3;
ELSE return 4;
END CASE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `vnweek` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `vnweek`(datfec DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE intper INT;
SELECT week INTO intper FROM time WHERE date = datfec;
RETURN intper;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `vnyear` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `vnyear`(datfec DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE intper INT;
SELECT year INTO intper FROM time WHERE date = datfec;
RETURN intper;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `abono` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `abono`(IN idT MEDIUMINT, IN idUSER SMALLINT)
BEGIN
DECLARE idC MEDIUMINT;
DECLARE newFEC DATE;
DECLARE idWH TINYINT;
DECLARE idUSER SMALLINT;
DECLARE idEMP MEDIUMINT;
DECLARE idCON MEDIUMINT;
DECLARE newTICKET MEDIUMINT;
SELECT Id_Cliente, TIMESTAMPADD(DAY, 1,Fecha), warehouse_id, empresa_id, Id_Consigna INTO idC, newFEC, idWH, idEMP, idCON
FROM Tickets WHERE Id_Ticket = idT;
SELECT Id_Trabajador into idUSER from Trabajadores where user_id = account.userGetId();
IF idUSER IS NULL THEN
SET idUSER = 20;
END IF;
CALL ticket_new_complet(idC, newFEC, idWH, idUSER, idEMP, idCON, 23,NULL,newTICKET);
UPDATE Tickets SET Etiquetasemitidas = 1 WHERE Id_Ticket = newTICKET;
INSERT INTO Movimientos(Id_Ticket, Id_Article, Cantidad, Concepte, Preu, Descuento, PrecioFijado)
SELECT newTICKET, Id_Article, -1 * Cantidad, Concepte, Preu, Descuento, 1 FROM Movimientos WHERE Id_Ticket = idT;
SELECT newTICKET;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `account_conciliacion_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `account_conciliacion_add`()
BEGIN
update account_conciliacion ac
join
(
select idaccount_conciliacion, @c:= if(@id = id_calculated, @c + 1, 1) contador
, @id:= id_calculated as id_calculated, concat(id_calculated,'(',@c,')') as new_id from account_conciliacion
join
(
select id_calculated, count(*) rep, @c:= 0, @id:= concat('-',id_calculated) from account_conciliacion
group by id_calculated
having rep > 1
) sub using(id_calculated)
) sub2 using(idaccount_conciliacion)
set ac.id_calculated = sub2.new_id;
insert into Cajas(Cajafecha, Partida, Serie, Concepto, Entrada, Salida, Id_Banco, Id_Trabajador, empresa_id, warehouse_id, Proveedores_account_id, id_calculated)
select Fechaoperacion, TRUE, 'MB', ac.Concepto, IF(DebeHaber = 2, importe,null), IF(DebeHaber = 1, importe, null), pa.Id_Banco, 20
, pa.Id_Proveedor, 1, ac.Id_Proveedores_account,ac.id_calculated
from account_conciliacion ac
join Proveedores_account pa on pa.Id_Proveedores_account = ac.Id_Proveedores_account
left join Cajas c on c.id_calculated = ac.id_calculated
where c.Id_Caja is null;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `accumulatorsReadingDateUpdate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `accumulatorsReadingDateUpdate`()
BEGIN
UPDATE accumulatorsReadingDate a
JOIN
(
SELECT
d.id,
CASE
WHEN rr.rate between p.lowerBarrier and p.rate THEN p.strike
WHEN rr.rate between p.rate and p.upperBarrier AND p.financialProductTypefk = 'AC' THEN p.strike
WHEN rr.rate >= p.upperBarrier THEN p.strike * 2
ELSE 0
END AS Acumulado
FROM vn2008.reference_rate rr
JOIN accumulatorsReadingDate d ON d.readingDate = rr.date
JOIN pago_sdc p ON p.pago_sdc_id = d.pagoSdcfk
WHERE IFNULL(amount,0) = 0
AND rr.rate >= p.lowerBarrier) sub ON sub.id = a.id
SET a.amount = sub.Acumulado
WHERE a.amount IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `add_awb_component` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `add_awb_component`(IN v_awb SMALLINT)
BEGIN
INSERT IGNORE INTO awb_component (awb_id,Id_Proveedor,awb_component_type_id,awb_role_id,awb_unit_id,value,Id_Moneda)
SELECT id,Id_Proveedor,awb_component_type_id,awb_role_id,awb_unit_id,LEAST(GREATEST(value1,IFNULL(min_value,value1)),IFNULL(max_value,value1)),Id_Moneda
FROM (
SELECT a.id,IFNULL(act.carguera_id,CASE awb_role_id WHEN 1 THEN a.carguera_id WHEN 2 THEN a.transitario_id WHEN 3 THEN f.airline_id END) Id_Proveedor,
act.awb_component_type_id,act.awb_role_id,act.awb_unit_id, value *
CASE awb_unit_id
WHEN '1000Tj-20' THEN ((CAST(stems AS SIGNED) - 20000)/1000) + (min_value / value)
WHEN '1000Tj-10' THEN ((CAST(stems AS SIGNED) - 10000)/1000) + (min_value / value)
WHEN '100GW' THEN peso/100
WHEN 'AWB' THEN 1
WHEN 'FB' THEN hb/2
WHEN 'GW' THEN peso
WHEN 'TW' THEN GREATEST(peso,volume_weight)
END value1
, value,
act.Id_Moneda, act.min_value, act.max_value
FROM awb a JOIN flight f ON f.flight_id = a.flight_id
LEFT JOIN awb_component_template act ON ((IFNULL(act.carguera_id, a.carguera_id) = a.carguera_id AND awb_role_id = 1)
OR (IFNULL(act.carguera_id, a.transitario_id) = a.transitario_id AND awb_role_id = 2))
AND IFNULL(act.airport_out, f.airport_out) = f.airport_out AND IFNULL(act.airport_in, f.airport_in) = f.airport_in
AND IFNULL(act.airline_id, f.airline_id) = f.airline_id
WHERE a.id = v_awb AND Fecha <= CURDATE() ORDER BY Fecha DESC) t ;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `adelantarTickets` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `adelantarTickets`(datCurrent DATE,datAttempted DATE)
BEGIN
DECLARE vWarehouse INTEGER;
DECLARE vFechedTicket INTEGER;
DECLARE done INT DEFAULT 0;
DECLARE vFetchCounter INT DEFAULT 0;
DECLARE cur1 CURSOR FOR
SELECT ticketId
FROM tmpTicketList;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;
OPEN cur1;
SELECT warehouse_id INTO vWarehouse FROM tmpTicketList ttl JOIN Tickets t ON t.Id_Ticket = ttl.ticketId LIMIT 1;
CALL item_stock(vWarehouse,CURDATE(),NULL);
DROP TEMPORARY TABLE IF EXISTS tmpAdelantarTickets;
CREATE TEMPORARY TABLE tmpAdelantarTickets(
Id_Ticket INT,
count INT,
media DOUBLE)
ENGINE = MEMORY;
REPEAT
FETCH cur1 INTO vFechedTicket;
INSERT INTO tmpAdelantarTickets
SELECT
vFechedTicket,
COUNT(Cantidad),
AVG(Cantidad <= IFNULL(Saldo, 0)) AS `AVG`
FROM Movimientos m
LEFT JOIN
(SELECT
*
FROM
(SELECT
Id_Article, Saldo
FROM
(SELECT
Dia, Id_Article, SUM(Entradas - Salidas) AS Saldo
FROM
(
SELECT CURDATE() AS Dia,
item_id Id_Article,
stock AS Entradas,
0 AS Salidas
FROM tmp_item ti
JOIN Movimientos m ON m.Id_Article = ti.item_id AND m.Id_Ticket = vFechedTicket
UNION ALL
SELECT DATE(t.Fecha) AS Dia,
mt.Id_Article,
0 AS Entradas,
- m.Cantidad AS Salidas
FROM Tickets t
JOIN Movimientos m ON m.Id_Ticket = t.Id_Ticket AND t.warehouse_id = vWarehouse
JOIN Movimientos mt ON mt.Id_Article = m.Id_Article
WHERE mt.Id_Ticket = vFechedTicket AND
t.Fecha BETWEEN curdate() AND datCurrent
UNION ALL
SELECT tr.landing, c.Id_Article, c.Cantidad, 0
FROM
Compres c
JOIN Movimientos mt ON mt.Id_Article = c.Id_Article
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = travel_id and tr.warehouse_id = vWarehouse
WHERE mt.Id_Ticket = vFechedTicket AND
tr.landing BETWEEN curdate() AND datCurrent
UNION ALL
SELECT tr.shipment, c.Id_Article, - c.Cantidad, 0
FROM
Compres c
JOIN Movimientos mt ON mt.Id_Article = c.Id_Article
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = travel_id and tr.warehouse_id_out = vWarehouse
WHERE mt.Id_Ticket = vFechedTicket AND tr.shipment BETWEEN curdate() AND datCurrent
) sub GROUP BY Dia , Id_Article) sub2
ORDER BY Saldo) sub3
GROUP BY Id_Article) sub4 USING (Id_Article)
WHERE m.Id_Ticket = vFechedTicket;
UNTIL done END REPEAT;
select * from tmpAdelantarTickets;
CLOSE cur1;
DROP TEMPORARY TABLE IF EXISTS tmpAdelantarTickets;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `agencia_descuadre` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `agencia_descuadre`(datSince DATE, datTo DATE, intAgency INT, intWarehouseAlias INT)
BEGIN
DECLARE isFile boolean;
DECLARE datTo2359 DATETIME;
SET datTo2359 = util.dayEnd(datTo);
SELECT SUM(price) INTO isFile FROM agencia_descuadre;
IF NOT IFNULL(isFile,0) THEN
SELECT t.Id_Ticket,0 AS Total_Agencia,t.Id_Consigna,t.empresa_id,t.warehouse_id,
v.suma_componente AS VN, v.suma_componente - shipping_charge AS Difer,
e.shipping_charge AS teorico,t.Id_Agencia, t.Bultos,t.Id_Cliente, ap.zona
FROM Tickets t LEFT JOIN
(SELECT Id_Ticket, SUM(suma_componente) suma_componente,Fecha
FROM v_descuadre_porte2
WHERE Fecha BETWEEN datSince AND datTo2359
GROUP BY Id_Ticket) v ON t.Id_Ticket = v.Id_Ticket
LEFT JOIN (SELECT Id_Ticket, SUM(shipping_charge) shipping_charge, Fecha
FROM v_expeditions_shipping_charge2
WHERE Fecha BETWEEN datSince AND datTo2359
GROUP BY Id_Ticket
) e ON t.Id_Ticket = e.Id_Ticket
JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
JOIN Consignatarios c ON t.Id_Consigna = c.Id_Consigna
JOIN Agencias_province ap ON ap.agency_id = a.agency_id AND ap.warehouse_id = t.warehouse_id AND ap.province_id = c.province_id
JOIN warehouse_group wg ON wg.warehouse_id =t.warehouse_id
WHERE DATE(t.Fecha) BETWEEN datSince AND datTo2359 AND a.agency_id = intAgency and wg.warehouse_alias_id = intWarehouseAlias;
ELSE
SELECT t.Id_Ticket, Round(sum_price , 2) AS Total_Agencia,t.Id_Consigna,t.empresa_id,t.warehouse_id,
v.suma_componente AS VN, IF(isFile,Round(sum_price, 2) - v.suma_componente,v.diferencia) AS Difer,
v.teorico_agencia AS teorico,zd.Id_Agencia, t.Bultos,t.Id_Cliente
FROM
(SELECT
*, SUM(price) sum_price
FROM
(select
t.Id_Ticket, zd.price,t.Id_Consigna, zd.date,t.empresa_id,t.warehouse_id,c.Descuento,t.Id_Agencia
from
agencia_descuadre zd
LEFT JOIN Tickets t ON t.Id_Ticket = zd.Id_Ticket
LEFT JOIN Clientes c ON c.Id_Cliente = t.Id_Cliente
ORDER BY t.Id_Cliente DESC) t
GROUP BY Id_Ticket,`date`) zd
LEFT JOIN
Tickets t ON zd.date = DATE(t.Fecha)
AND zd.Id_Consigna = t.Id_Consigna
AND zd.warehouse_id = t.warehouse_id
AND zd.Id_Agencia = t.Id_Agencia
LEFT JOIN
v_descuadre_porte v ON v.Id_Ticket = t.Id_Ticket
WHERE t.Id_Cliente <> 4712 AND t.Id_Cliente <> 450
GROUP BY zd.date,Id_Consigna,warehouse_id,zd.Id_Agencia
ORDER BY v.diferencia;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `agencia_volume` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `agencia_volume`()
BEGIN
DECLARE v_start DATETIME DEFAULT TIMESTAMP(CURDATE());
DECLARE v_end DATETIME DEFAULT TIMESTAMP(CURDATE(), '23:59:59');
SET v_start = IF(WEEKDAY(CURDATE()), CURDATE(),TIMESTAMPADD(DAY,-1,CURDATE()));
SET v_start = IF(CURDATE() = '2014-05-02', '2014-05-01',v_start);
DROP TEMPORARY TABLE IF EXISTS agenVOL;
CREATE TEMPORARY TABLE agenVOL
(
Id_Ticket INT PRIMARY KEY
,Id_Agencia INT
,Agencia VARCHAR(30)
,Bultos INT DEFAULT 0
,Faltan INT DEFAULT 0
)
ENGINE=MEMORY;
INSERT INTO agenVOL(Id_Agencia, Agencia, Id_Ticket, Bultos)
SELECT a.Id_Agencia, name , Id_Ticket, sum(Cantidad) Bultos
FROM Tickets t
JOIN Agencias a USING(Id_Agencia)
JOIN Movimientos m USING(Id_Ticket)
JOIN agency ag USING(agency_id)
JOIN warehouse_joined wj ON wj.warehouse_id = t.warehouse_id
WHERE Concepte LIKE '%porte%'
AND wj.warehouse_alias_id = 1
AND Fecha BETWEEN v_start AND v_end
AND Vista = 1
GROUP BY Id_Ticket;
INSERT INTO agenVOL(Id_Agencia, Agencia, Id_Ticket, Bultos)
SELECT a.Id_Agencia, name, ticket_id, COUNT(ticket_id)
FROM expeditions e
JOIN Tickets t ON t.Id_Ticket = e.ticket_id
JOIN Agencias a ON a.Id_Agencia = e.agency_id
JOIN agency ag ON ag.agency_id = a.agency_id
JOIN warehouse_joined wj ON wj.warehouse_id = t.warehouse_id
WHERE t.Fecha BETWEEN v_start AND v_end
AND wj.warehouse_alias_id = 1
AND Vista = 1
GROUP BY ticket_id
ON DUPLICATE KEY UPDATE Bultos = Bultos;
INSERT INTO agenVOL(Id_Agencia, Agencia, Id_Ticket, Faltan)
SELECT a.Id_Agencia, name, Id_Ticket, 1 as Faltan
FROM Tickets t
JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
JOIN agency ag ON ag.agency_id = a.agency_id
LEFT JOIN expeditions e ON e.ticket_id = t.Id_Ticket
JOIN warehouse_joined wj ON wj.warehouse_id = t.warehouse_id
WHERE Fecha BETWEEN v_start AND v_end
AND Bultos = 0 AND expeditions_id IS NULL AND EtiquetasEmitidas = 0
AND wj.warehouse_alias_id = 1
AND Vista = 1
GROUP BY Id_Ticket
ON DUPLICATE KEY UPDATE Faltan = Faltan + 1;
SELECT agen.agency_id, name Agencia, COUNT(Id_Ticket) expediciones, SUM(Bultos) Bultos, SUM(Faltan) Faltan
FROM agenVOL a
JOIN Agencias agen USING(Id_Agencia)
JOIN agency ag USING(agency_id)
GROUP BY ag.agency_id ;
DROP TEMPORARY TABLE IF EXISTS agenVOL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `alfa_invoices` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `alfa_invoices`(IN datFEC DATE)
BEGIN
DECLARE datSTART DATETIME;
DECLARE vTotal DECIMAL(10,2) DEFAULT 0.00;
SET @myId = -10000000;
SET @myRef = 'factura';
SET @myTotal = vTotal;
SET datSTART = TIMESTAMPADD(DAY, -1 * DAYOFMONTH(datFEC) + 1, datfec);
IF datFEC < '2017-07-01' THEN
SELECT Id_Factura `Invoice no`,
date(Fecha) as `Invoice date`,
Id_Cliente `Debtor no`,
`IF` `Vat nr`,
Razonsocial `Name`,
BI7 `Amount excl Vat 6%`,
BI16 `Amount excl Vat 19%`,
IVA7 `Vat 6%`,
IVA16 `Vat 19%`,
Importe `Total inc Vat`
from Facturas
INNER JOIN Clientes USING(Id_Cliente)
where empresa_id = 567
and Fecha BETWEEN datSTART AND datFEC
order by `Invoice date`, factura_id;
ELSE
SELECT * FROM
(
SELECT io.ref `Invoice no`,
io.issued `Invoice date`,
IF(@myId = io.id, '', clientFk) `Debtor no`,
IF(@myId = io.id, '', c.fi) `Vat nr`,
IF(@myId = io.id, '', c.socialName) `Name`,
taxableBase `Taxable Amount excl VAT`,
CONCAT(CAST(pgc.rate AS DECIMAL(2,0)) ,' %') `VAT Rate`,
CAST(vat AS DECIMAL(10,2)) `VAT Quote`,
CAST(@myTotal + taxableBase + vat AS DECIMAL(10,2)) `Total plus Vat`,
IF(@myId := io.id, NULL, NULL) as ControlField
FROM vn.invoiceOut io
JOIN vn.client c ON c.id = io.clientFk
JOIN vn.invoiceOutTax iot ON iot.invoiceOutFk = io.id
JOIN vn.pgc ON pgc.code = iot.pgcFk
WHERE io.companyFk = 567
AND io.issued BETWEEN datSTART AND datFEC
ORDER BY io.id, iot.id
) t1
ORDER BY `Invoice date` DESC, `Invoice no`;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS `article_inventory`;
CREATE TEMPORARY TABLE `article_inventory`
(
`article_id` INT(11) NOT NULL PRIMARY KEY,
`future` DATETIME
)
ENGINE = MEMORY;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `articleTagUpdatePriority_kk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `articleTagUpdatePriority_kk`(IN vItem INT)
BEGIN
CALL vn.itemTagUpdatePriority(vItem);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_available_single` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article_available_single`(IN v_wh TINYINT, IN v_date DATETIME, IN id_single INT)
BEGIN
CALL bionic_available_single (v_wh, v_date,id_single,0);
SELECT available AS minimo FROM tmp_item
WHERE item_id = id_single;
DROP TEMPORARY TABLE IF EXISTS tmp_item;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_inventory_warehouses` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article_inventory_warehouses`(vDate DATE)
proc: BEGIN
DECLARE vWh INT;
DECLARE vDone BOOL;
DECLARE vEntryId INT;
DECLARE vTravelId INT;
DECLARE vDateTime DATETIME DEFAULT TIMESTAMP(vDate, '00:00:00');
DECLARE vDeleteDate DATE DEFAULT TIMESTAMPADD(DAY, -2, vDate);
DECLARE cWarehouses CURSOR FOR
SELECT id FROM warehouse WHERE inventario;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET vDone = TRUE;
OPEN cWarehouses;
l: LOOP
SET vDone = FALSE;
FETCH cWarehouses INTO vWh;
IF vDone THEN
LEAVE l;
END IF;
INSERT INTO travel SET
warehouse_id_out = 13,
warehouse_id = vWh,
shipment = vDateTime,
landing = vDateTime,
agency_id = 53,
ref = 'inventario',
delivered = TRUE,
received = TRUE;
SELECT LAST_INSERT_ID() INTO vTravelId;
INSERT INTO Entradas SET
Id_Proveedor = 4,
Fecha = vDateTime,
Confirmada = TRUE,
Pedida = TRUE,
travel_id = vTravelId;
SELECT LAST_INSERT_ID() INTO vEntryId;
CALL inventario_multiple_inventarios (vWh, vDateTime);
ALTER TABLE article_inventory
ADD buy_id INT;
UPDATE article_inventory ai
JOIN
(
SELECT * FROM (
SELECT Id_Article, Id_Compra,warehouse_id
FROM Compres c
JOIN Entradas e USING (Id_Entrada)
JOIN travel tr ON tr.id = e.travel_id
WHERE Novincular = FALSE
AND costefijo > 0 AND tarifa2 > 0
AND NOT Redada
AND landing BETWEEN date_inv() AND vDate
ORDER BY (vWh = warehouse_id) DESC, landing DESC
) t1
GROUP BY Id_Article
) t
ON ai.article_id = t.Id_Article
SET ai.buy_id = t.Id_Compra;
INSERT INTO Compres (
Id_Entrada
,Id_Article
,Cantidad
,Costefijo
,Packing
,Id_Cubo
,Tarifa2
,Tarifa3
,Productor
)
SELECT
vEntryId
,AI.article_id
,IF(AI.visible < 0,0,AI.visible)
,ifnull(C.Costefijo,0) + ifnull(C.Portefijo,0) + ifnull(C.Comisionfija,0) + ifnull(C.Embalajefijo,0)
,C.Packing
,C.Id_Cubo
,C.Tarifa2
,C.Tarifa3
,C.Productor
FROM article_inventory AI
LEFT JOIN Compres C ON C.Id_Compra = AI.buy_id;
DROP TEMPORARY TABLE article_inventory;
END LOOP;
CLOSE cWarehouses;
UPDATE tblContadores SET FechaInventario = vDate;
DELETE e
FROM travel t
JOIN Entradas e ON e.travel_id = t.id
WHERE Id_Proveedor = 4
AND shipment <= vDeleteDate
AND (DAY(shipment) <> 1 OR shipment < TIMESTAMPADD(MONTH, -5, CURDATE()));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_minacum` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article_minacum`(IN v_wh TINYINT, IN v_date_ini DATETIME, IN v_range INT)
BEGIN
DECLARE v_date DATE DEFAULT v_date_ini;
DECLARE v_date_end DATETIME;
SET v_date_ini = TIMESTAMP(DATE(v_date_ini), '00:00:00');
SET v_date_end = TIMESTAMP(TIMESTAMPADD(DAY, v_range, v_date_ini),'23:59:59');
DROP TEMPORARY TABLE IF EXISTS article_minacum;
CREATE TEMPORARY TABLE article_minacum
ENGINE = MEMORY
SELECT t.article_id, t.warehouse_id, minacum(dat, amount, v_date) AS amount FROM (
SELECT article_id, DATE(Fecha) AS dat, SUM(amount) AS amount, warehouse_id FROM (
SELECT Id_Article article_id, Fecha, -Cantidad AS amount, warehouse_id
FROM Movimientos m INNER JOIN Tickets t USING (Id_Ticket)
WHERE Fecha BETWEEN v_date_ini AND v_date_end
AND Cantidad != 0
AND (@aid IS NULL OR Id_Article = @aid)
AND (v_wh IS NULL OR t.warehouse_id = v_wh)
UNION ALL
SELECT Id_Article, t.landing, Cantidad, warehouse_id
FROM Compres c INNER JOIN Entradas e USING (Id_Entrada)
LEFT JOIN travel t ON e.travel_id = t.id
WHERE t.landing BETWEEN v_date_ini AND v_date_end
AND (v_wh IS NULL OR t.warehouse_id = v_wh)
AND e.Inventario = FALSE
AND Cantidad != 0
AND (@aid IS NULL OR Id_Article = @aid)
UNION ALL
SELECT Id_Article, t.shipment, -Cantidad, warehouse_id_out
FROM Compres c INNER JOIN Entradas e USING (Id_Entrada)
LEFT JOIN travel t ON e.travel_id = t.id
WHERE t.shipment BETWEEN v_date_ini AND v_date_end
AND (v_wh IS NULL OR t.warehouse_id_out = v_wh)
AND e.Inventario = FALSE
AND Cantidad != 0
AND (@aid IS NULL OR Id_Article = @aid)
) t1
GROUP BY t1.article_id, dat, warehouse_id
) t
GROUP BY t.article_id, warehouse_id HAVING amount != 0;
SET @aid = NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_multiple_buy` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article_multiple_buy`(v_date DATETIME, wh INT)
BEGIN
DECLARE v_date_aux DATETIME;
SELECT TIMESTAMPADD(DAY, -90, CURDATE()) INTO v_date_aux;
ALTER TABLE article_inventory
ADD buy_id INT;
DROP TEMPORARY TABLE IF EXISTS tmp;
CREATE TEMPORARY TABLE tmp
(KEY (Id_Article))
ENGINE = MEMORY
SELECT * FROM
(
SELECT Id_Article, Id_Compra
FROM bi.Last_buy_id
ORDER BY (wh = warehouse_id) DESC
) t
GROUP BY Id_Article;
UPDATE article_inventory ai
JOIN tmp t ON ai.article_id = t.Id_Article
SET ai.buy_id = t.Id_Compra;
TRUNCATE TABLE tmp;
INSERT INTO tmp
SELECT Id_Article, Id_Compra
FROM Compres c
JOIN Entradas e USING (Id_Entrada)
JOIN travel tr ON tr.id = e.travel_id
WHERE Novincular = FALSE
AND tarifa2 > 0
AND landing BETWEEN CURDATE() AND v_date
ORDER BY (wh = warehouse_id) DESC;
UPDATE article_inventory ai
INNER JOIN tmp t
ON ai.article_id = t.Id_Article
SET ai.buy_id = t.Id_Compra;
CREATE INDEX idx USING HASH ON article_inventory (buy_id);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_multiple_buy_date` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `article_multiple_buy_date`(IN date_ DATETIME, IN wh TINYINT(3))
BEGIN
DECLARE datINV DATE;
SELECT FechaInventario INTO datINV FROM tblContadores;
ALTER TABLE `article_inventory`
ADD `buy_date` datetime NOT NULL;
UPDATE article_inventory INNER JOIN
(
SELECT * FROM
(
SELECT travel.landing AS bdate, Compres.Id_Article AS article_id
FROM Compres
JOIN Entradas USING(Id_Entrada)
JOIN travel ON travel.id = Entradas.travel_id
JOIN warehouse W ON W.id = travel.warehouse_id
WHERE travel.landing BETWEEN datINV AND date_
AND IF(wh = 0, W.comisionantes, wh = travel.warehouse_id)
AND Entradas.Redada = FALSE
ORDER BY article_id, bdate DESC
) AS temp
GROUP BY article_id
)
AS buy ON article_inventory.article_id = buy.article_id
SET article_inventory.buy_date = buy.bdate;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_multiple_buy_last` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = latin1 */ ;
/*!50003 SET character_set_results = latin1 */ ;
/*!50003 SET collation_connection = latin1_swedish_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article_multiple_buy_last`(IN wh TINYINT, IN date_end DATETIME)
BEGIN
DECLARE v_date DATETIME;
DROP TEMPORARY TABLE IF EXISTS article_buy_last;
CREATE TEMPORARY TABLE article_buy_last
SELECT * FROM (
SELECT c.Id_Article AS article_id, c.Id_Compra AS id
FROM Compres c INNER JOIN Entradas e USING(Id_Entrada)
INNER JOIN travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN date_inv() AND date_end
AND c.Novincular = FALSE
AND c.tarifa2 > 0
ORDER BY t.landing DESC,(wh IN (0,t.warehouse_id)) DESC, (Id_Cubo IS NULL) ,article_id, (e.Id_proveedor = 4)
) t
GROUP BY article_id;
ALTER TABLE article_buy_last ADD INDEX (article_id);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_visible_single` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article_visible_single`(IN v_wh TINYINT,IN v_article INT)
BEGIN
DECLARE bisible FLOAT;
CALL article_visible_single2(v_wh,v_article,@suma2);
SET bisible = @suma2;
SELECT bisible AS suma, A.Id_Article, A.Article, A.Medida, A.Tallos, A.Nicho, O.Abreviatura as origen, A.Color, A.Tipo, A.Nicho,
A.Categoria
FROM v_compres A INNER JOIN Origen O ON O.id = A.id_origen WHERE A.Id_Article =v_article AND A.warehouse_id = v_wh ORDER BY landing DESC LIMIT 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `article_visible_single2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `article_visible_single2`(IN v_wh TINYINT,IN v_article INT,OUT int_amount INT)
BEGIN
call item_stock(v_wh,CURDATE(),v_article);
call article_visible(v_wh);
SELECT SUM(stock) INTO int_amount FROM tmp_item WHERE item_id = v_article ;
SELECT IFNULL(SUM(amount),0) + IFNULL(int_amount,0) INTO int_amount
FROM article_visible
WHERE article_id = v_article;
DROP TEMPORARY TABLE tmp_item;
DROP TEMPORARY TABLE article_visible;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `availableTraslate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `availableTraslate`(vWarehouseLanding INT, v_date DATE,vWarehouseShipment INT)
proc: BEGIN
DECLARE v_date_ini DATE;
DECLARE v_date_end DATETIME;
DECLARE v_reserve_date DATETIME;
DECLARE v_date_inv DATE;
IF v_date < CURDATE()
THEN
LEAVE proc;
END IF;
CALL vn2008.item_stock (vWarehouseLanding, v_date, NULL);
SET v_date_ini = TIMESTAMP(v_date, '00:00:00');
SET v_date_end = TIMESTAMP(TIMESTAMPADD(DAY, 4, v_date), '23:59:59');
SELECT FechaInventario INTO v_date_inv FROM vn2008.tblContadores;
SELECT SUBTIME(NOW(), reserve_time) INTO v_reserve_date
FROM hedera.order_config;
DROP TEMPORARY TABLE IF EXISTS item_range;
CREATE TEMPORARY TABLE item_range
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT c.Id_Article item_id, MAX(landing) date_end
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN vn2008.travel t ON t.id = e.travel_id
JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE t.landing BETWEEN v_date_inv AND v_date_ini
AND t.warehouse_id = vWarehouseLanding
AND NOT e.Inventario
AND NOT e.Redada
GROUP BY Id_Article;
CALL item_last_buy_(vWarehouseShipment,curdate());
DROP TEMPORARY TABLE IF EXISTS item_range_copy;
CREATE TEMPORARY TABLE item_range_copy LIKE item_range;
INSERT INTO item_range_copy
SELECT * FROM item_range;
INSERT INTO item_range
SELECT t.item_id, tr.landing
FROM t_item_last_buy t
JOIN Compres c ON c.Id_Compra = t.buy_id
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
LEFT JOIN item_range_copy i ON t.item_id = i.item_id
WHERE t.warehouse_id = vWarehouseShipment
ON DUPLICATE KEY UPDATE item_range.date_end = GREATEST(item_range.date_end,landing);
DROP TEMPORARY TABLE item_range_copy;
DROP TEMPORARY TABLE IF EXISTS item_range_copy1;
CREATE TEMPORARY TABLE item_range_copy1 LIKE item_range;
INSERT INTO item_range_copy1
SELECT c.item_id, TIMESTAMP(TIMESTAMPADD(DAY, t.life, c.date_end), '23:59:59') date_end FROM item_range c
JOIN vn2008.Articles a ON a.Id_Article = c.item_id
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
HAVING date_end >= v_date_ini OR date_end IS NULL;
DROP TEMPORARY TABLE IF EXISTS item_range_copy2;
CREATE TEMPORARY TABLE item_range_copy2 LIKE item_range_copy1;
INSERT INTO item_range_copy2
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy3;
CREATE TEMPORARY TABLE item_range_copy3 LIKE item_range_copy1;
INSERT INTO item_range_copy3
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy4;
CREATE TEMPORARY TABLE item_range_copy4 LIKE item_range_copy1;
INSERT INTO item_range_copy4
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy5;
CREATE TEMPORARY TABLE item_range_copy5 LIKE item_range_copy1;
INSERT INTO item_range_copy5
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS availableTraslate;
CREATE TEMPORARY TABLE availableTraslate
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT t.item_id, SUM(stock) available FROM (
SELECT ti.item_id, stock
FROM vn2008.tmp_item ti
JOIN item_range ir ON ir.item_id = ti.item_id
UNION ALL
SELECT t.item_id, minacum(dt, amount, v_date) AS available FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_out i
JOIN item_range_copy1 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding
UNION ALL
SELECT m.Id_Article item_id, t.landing dat, m.Cantidad amount
FROM Compres m
JOIN Entradas e ON m.Id_Entrada = e.Id_Entrada
JOIN travel t ON e.travel_id = t.id
JOIN item_range_copy2 ir ON ir.item_id = m.Id_Article
WHERE
e.Inventario = 0
AND m.Cantidad <> 0
AND e.redada = 0
AND t.warehouse_id = vWarehouseLanding
AND t.landing >= v_date_ini
AND (ir.date_end IS NULL OR t.landing <= ir.date_end)
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_out i
JOIN item_range_copy3 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding
UNION ALL
SELECT r.item_id, r.shipment, -r.amount
FROM hedera.order_row r
JOIN hedera.`order` o ON o.id = r.order_id
JOIN item_range_copy4 ir ON ir.item_id = r.item_id
WHERE r.shipment >= v_date_ini
AND (ir.date_end IS NULL OR r.shipment <= ir.date_end)
AND r.warehouse_id = vWarehouseLanding
AND r.created >= v_reserve_date
AND NOT o.confirmed
) t
GROUP BY item_id, dt
) t
GROUP BY t.item_id
) t GROUP BY t.item_id HAVING available != 0;
DROP TEMPORARY TABLE
vn2008.tmp_item
,item_range
,item_range_copy1
,item_range_copy2
,item_range_copy3
,item_range_copy4
,item_range_copy5;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `availableTraslatekk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `availableTraslatekk`(vWarehouseLanding INT, v_date DATE,vWarehouseShipment INT)
proc: BEGIN
DECLARE v_date_ini DATE;
DECLARE v_date_end DATETIME;
DECLARE v_reserve_date DATETIME;
DECLARE v_date_inv DATE;
IF v_date < CURDATE()
THEN
LEAVE proc;
END IF;
CALL vn2008.item_stock (vWarehouseLanding, v_date, NULL);
SET v_date_ini = TIMESTAMP(v_date, '00:00:00');
SET v_date_end = TIMESTAMP(TIMESTAMPADD(DAY, 4, v_date), '23:59:59');
SELECT FechaInventario INTO v_date_inv FROM vn2008.tblContadores;
SELECT SUBTIME(NOW(), reserve_time) INTO v_reserve_date
FROM hedera.order_config;
DROP TEMPORARY TABLE IF EXISTS item_range;
CREATE TEMPORARY TABLE item_range
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT c.Id_Article item_id, MAX(landing) date_end
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN vn2008.travel t ON t.id = e.travel_id
JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE t.landing BETWEEN v_date_inv AND v_date_ini
AND t.warehouse_id = vWarehouseLanding
AND NOT e.Inventario
AND NOT e.Redada
GROUP BY Id_Article;
SELECT c.Id_Article item_id, MAX(landing) date_end
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN vn2008.travel t ON t.id = e.travel_id
JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE t.landing BETWEEN v_date_inv AND v_date_ini
AND t.warehouse_id = vWarehouseLanding
AND NOT e.Inventario
AND NOT e.Redada
GROUP BY Id_Article;
CALL item_last_buy_(vWarehouseShipment,curdate());
DROP TEMPORARY TABLE IF EXISTS item_range_copy;
CREATE TEMPORARY TABLE item_range_copy LIKE item_range;
INSERT INTO item_range_copy
SELECT * FROM item_range;
INSERT INTO item_range
SELECT t.item_id, tr.landing
FROM t_item_last_buy t
JOIN Compres c ON c.Id_Compra = t.buy_id
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
LEFT JOIN item_range_copy i ON t.item_id = i.item_id
WHERE t.warehouse_id = vWarehouseShipment
ON DUPLICATE KEY UPDATE item_range.date_end = GREATEST(item_range.date_end,landing);
SELECT t.item_id, tr.landing
FROM t_item_last_buy t
JOIN Compres c ON c.Id_Compra = t.buy_id
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
LEFT JOIN item_range_copy i ON t.item_id = i.item_id
WHERE t.warehouse_id = vWarehouseShipment;
DROP TEMPORARY TABLE item_range_copy;
DROP TEMPORARY TABLE IF EXISTS item_range_copy1;
CREATE TEMPORARY TABLE item_range_copy1 LIKE item_range;
INSERT INTO item_range_copy1
SELECT c.item_id, TIMESTAMP(TIMESTAMPADD(DAY, t.life, c.date_end), '23:59:59') date_end FROM item_range c
JOIN vn2008.Articles a ON a.Id_Article = c.item_id
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
HAVING date_end >= v_date_ini OR date_end IS NULL;
DROP TEMPORARY TABLE IF EXISTS item_range_copy2;
CREATE TEMPORARY TABLE item_range_copy2 LIKE item_range_copy1;
INSERT INTO item_range_copy2
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy3;
CREATE TEMPORARY TABLE item_range_copy3 LIKE item_range_copy1;
INSERT INTO item_range_copy3
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy4;
CREATE TEMPORARY TABLE item_range_copy4 LIKE item_range_copy1;
INSERT INTO item_range_copy4
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy5;
CREATE TEMPORARY TABLE item_range_copy5 LIKE item_range_copy1;
INSERT INTO item_range_copy5
SELECT * FROM item_range_copy1;
SELECT item_id, stock,'tmp_item'
FROM vn2008.tmp_item;
DROP TEMPORARY TABLE IF EXISTS availableTraslate;
CREATE TEMPORARY TABLE availableTraslate
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT t.item_id, SUM(stock) available FROM (
SELECT ti.item_id, stock
FROM vn2008.tmp_item ti
JOIN item_range ir ON ir.item_id = ti.item_id
UNION ALL
SELECT t.item_id, minacum(dt, amount, v_date) AS available FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_out i
JOIN item_range_copy1 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_in i
JOIN item_range_copy2 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_out i
JOIN item_range_copy3 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding
UNION ALL
SELECT r.item_id, r.shipment, -r.amount
FROM hedera.order_row r
JOIN hedera.`order` o ON o.id = r.order_id
JOIN item_range_copy4 ir ON ir.item_id = r.item_id
WHERE r.shipment >= v_date_ini
AND (ir.date_end IS NULL OR r.shipment <= ir.date_end)
AND r.warehouse_id = vWarehouseLanding
AND r.created >= v_reserve_date
AND NOT o.confirmed
) t
GROUP BY item_id, dt
) t
GROUP BY t.item_id
) t GROUP BY t.item_id HAVING available != 0;
SELECT i.item_id, i.dat, i.amount,'item_out',vWarehouseLanding
FROM vn2008.item_out i
JOIN item_range_copy1 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding;
select * from availableTraslate;
DROP TEMPORARY TABLE
vn2008.tmp_item
,item_range
,item_range_copy1
,item_range_copy2
,item_range_copy3
,item_range_copy4
,item_range_copy5;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `availableTraslateTesting` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `availableTraslateTesting`(vWarehouseLanding INT, v_date DATE,vWarehouseShipment INT)
proc: BEGIN
DECLARE v_date_ini DATE;
DECLARE v_date_end DATETIME;
DECLARE v_reserve_date DATETIME;
DECLARE v_date_inv DATE;
IF v_date < CURDATE()
THEN
LEAVE proc;
END IF;
CALL vn2008.item_stock (vWarehouseLanding, v_date, NULL);
SET v_date_ini = TIMESTAMP(v_date, '00:00:00');
SET v_date_end = TIMESTAMP(TIMESTAMPADD(DAY, 4, v_date), '23:59:59');
SELECT FechaInventario INTO v_date_inv FROM vn2008.tblContadores;
SELECT SUBTIME(NOW(), reserve_time) INTO v_reserve_date
FROM hedera.order_config;
DROP TEMPORARY TABLE IF EXISTS item_range;
CREATE TEMPORARY TABLE item_range
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT c.Id_Article item_id, MAX(landing) date_end
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN vn2008.travel t ON t.id = e.travel_id
JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE t.landing BETWEEN v_date_inv AND v_date_ini
AND t.warehouse_id = vWarehouseLanding
AND NOT e.Inventario
AND NOT e.Redada
GROUP BY Id_Article;
SELECT vWarehouseShipment;
CALL item_last_buy_(vWarehouseShipment,v_date);
SELECT *,'last_buy' FROM t_item_last_buy t ;
SELECT * FROM item_range t WHERE t.item_id = 41576;
DROP TEMPORARY TABLE IF EXISTS item_range_copy;
CREATE TEMPORARY TABLE item_range_copy LIKE item_range;
INSERT INTO item_range_copy
SELECT * FROM item_range;
SELECT 'update' , t.item_id, tr.landing
FROM t_item_last_buy t
JOIN Compres c ON c.Id_Compra = t.buy_id
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
LEFT JOIN item_range_copy i ON t.item_id = i.item_id
WHERE t.warehouse_id = vWarehouseShipment AND t.item_id = 41576;
INSERT INTO item_range
SELECT t.item_id, tr.landing
FROM t_item_last_buy t
JOIN Compres c ON c.Id_Compra = t.buy_id
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
LEFT JOIN item_range_copy i ON t.item_id = i.item_id
WHERE t.warehouse_id = vWarehouseShipment
ON DUPLICATE KEY UPDATE item_range.date_end = GREATEST(item_range.date_end,landing);
DROP TEMPORARY TABLE item_range_copy;
DROP TEMPORARY TABLE IF EXISTS item_range_copy1;
CREATE TEMPORARY TABLE item_range_copy1 LIKE item_range;
INSERT INTO item_range_copy1
SELECT c.item_id, TIMESTAMP(TIMESTAMPADD(DAY, t.life, c.date_end), '23:59:59') date_end FROM item_range c
JOIN vn2008.Articles a ON a.Id_Article = c.item_id
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
HAVING date_end >= v_date_ini OR date_end IS NULL;
select * from item_range_copy1 where item_id = 41576;
DROP TEMPORARY TABLE IF EXISTS item_range_copy2;
CREATE TEMPORARY TABLE item_range_copy2 LIKE item_range_copy1;
INSERT INTO item_range_copy2
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy3;
CREATE TEMPORARY TABLE item_range_copy3 LIKE item_range_copy1;
INSERT INTO item_range_copy3
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy4;
CREATE TEMPORARY TABLE item_range_copy4 LIKE item_range_copy1;
INSERT INTO item_range_copy4
SELECT * FROM item_range_copy1;
DROP TEMPORARY TABLE IF EXISTS item_range_copy5;
CREATE TEMPORARY TABLE item_range_copy5 LIKE item_range_copy1;
INSERT INTO item_range_copy5
SELECT * FROM item_range_copy1;
SELECT ti.item_id, stock
FROM vn2008.tmp_item ti
JOIN item_range ir ON ir.item_id = ti.item_id ;
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_out i
JOIN item_range_copy1 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding;
SELECT m.Id_Article item_id, t.landing dat, m.Cantidad amount
FROM Compres m
JOIN Entradas e ON m.Id_Entrada = e.Id_Entrada
JOIN travel t ON e.travel_id = t.id
JOIN item_range_copy2 ir ON ir.item_id = m.Id_Article
WHERE
e.Inventario = 0
AND m.Cantidad <> 0
AND e.redada = 0
AND t.warehouse_id = vWarehouseLanding
AND t.landing >= v_date_ini
AND (ir.date_end IS NULL OR t.landing <= ir.date_end);
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_out i
JOIN item_range_copy3 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding;
SELECT r.item_id, r.shipment, -r.amount
FROM hedera.order_row r
JOIN hedera.`order` o ON o.id = r.order_id
JOIN item_range_copy4 ir ON ir.item_id = r.item_id
WHERE r.shipment >= v_date_ini
AND (ir.date_end IS NULL OR r.shipment <= ir.date_end)
AND r.warehouse_id = vWarehouseLanding
AND r.created >= v_reserve_date
AND NOT o.confirmed;
DROP TEMPORARY TABLE IF EXISTS availableTraslate;
CREATE TEMPORARY TABLE availableTraslate
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT t.item_id, SUM(stock) available FROM (
SELECT ti.item_id, stock
FROM vn2008.tmp_item ti
JOIN item_range ir ON ir.item_id = ti.item_id
UNION ALL
SELECT t.item_id, minacum(dt, amount, v_date) AS available FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_out i
JOIN item_range_copy1 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding
UNION ALL
SELECT m.Id_Article item_id, t.landing dat, m.Cantidad amount
FROM Compres m
JOIN Entradas e ON m.Id_Entrada = e.Id_Entrada
JOIN travel t ON e.travel_id = t.id
JOIN item_range_copy2 ir ON ir.item_id = m.Id_Article
WHERE
e.Inventario = 0
AND m.Cantidad <> 0
AND e.redada = 0
AND t.warehouse_id = vWarehouseLanding
AND t.landing >= v_date_ini
AND (ir.date_end IS NULL OR t.landing <= ir.date_end)
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_out i
JOIN item_range_copy3 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = vWarehouseLanding
UNION ALL
SELECT r.item_id, r.shipment, -r.amount
FROM hedera.order_row r
JOIN hedera.`order` o ON o.id = r.order_id
JOIN item_range_copy4 ir ON ir.item_id = r.item_id
WHERE r.shipment >= v_date_ini
AND (ir.date_end IS NULL OR r.shipment <= ir.date_end)
AND r.warehouse_id = vWarehouseLanding
AND r.created >= v_reserve_date
AND NOT o.confirmed
) t
GROUP BY item_id, dt
) t
GROUP BY t.item_id
) t GROUP BY t.item_id HAVING available != 0;
select * from availableTraslate where item_id = 41576;
DROP TEMPORARY TABLE
vn2008.tmp_item
,item_range
,item_range_copy1
,item_range_copy2
,item_range_copy3
,item_range_copy4
,item_range_copy5;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `balance_create` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `balance_create`(IN vStartingMonth INT
, IN vEndingMonth INT
, IN vCompany INT
, IN vConsolidate BOOLEAN
, IN vInterGroupSalesIncluded BOOLEAN)
BEGIN
DECLARE v_sql TEXT;
DECLARE strTABLE VARCHAR(20) DEFAULT "balance_nest_tree";
DECLARE intGAP INTEGER DEFAULT 7;
DECLARE intYEARS INTEGER DEFAULT 3;
DECLARE vConsolidatedGroup INTEGER;
DECLARE vStartingDate DATE DEFAULT '2015-01-01';
DECLARE vStartingYear INT DEFAULT 2015;
CALL nest_tree(strTABLE,intGAP, FALSE);
DROP TEMPORARY TABLE IF EXISTS tmp.balance;
CREATE TEMPORARY TABLE tmp.balance
SELECT * FROM tmp.nest;
DROP TEMPORARY TABLE IF EXISTS tmp.empresas_receptoras;
DROP TEMPORARY TABLE IF EXISTS tmp.empresas_emisoras;
IF vConsolidate THEN
SELECT empresa_grupo INTO vConsolidatedGroup FROM empresa WHERE id = vCompany;
END IF;
CREATE TEMPORARY TABLE tmp.empresas_receptoras
SELECT id as empresa_id
FROM vn2008.empresa
WHERE id = vCompany
OR empresa_grupo = vConsolidatedGroup;
CREATE TEMPORARY TABLE tmp.empresas_emisoras
SELECT Id_Proveedor as empresa_id
FROM vn2008.Proveedores p;
IF NOT vInterGroupSalesIncluded THEN
DELETE ee.*
FROM tmp.empresas_emisoras ee
JOIN vn2008.empresa e on e.id = ee.empresa_id
WHERE e.empresa_grupo = vConsolidatedGroup;
END IF;
DROP TEMPORARY TABLE IF EXISTS tmp.balance_desglose;
CREATE TEMPORARY TABLE tmp.balance_desglose
SELECT er.empresa_id as receptora_id
, ee.empresa_id as emisora_id
, year(IFNULL(IFNULL(tr.dateBooking,tr.Fecha),IFNULL(r.dateBooking,r.Fecha))) as `year`
, month(IFNULL(IFNULL(tr.dateBooking,tr.Fecha),IFNULL(r.dateBooking,r.Fecha))) as `month`
, gastos_id as Id_Gasto
, sum(bi) as importe
FROM recibida r
JOIN recibida_iva ri on ri.recibida_id = r.id
JOIN tmp.empresas_receptoras er on er.empresa_id = r.empresa_id
JOIN tmp.empresas_emisoras ee ON ee.empresa_id = r.proveedor_id
LEFT JOIN vn2008.recibida_entrada re ON re.recibida_id = r.id
LEFT JOIN vn2008.recibida tr ON tr.id = re.awb_recibida
WHERE IFNULL(r.dateBooking,r.Fecha) between vStartingDate and CURDATE()
GROUP BY Id_Gasto, year, month, emisora_id, receptora_id;
INSERT INTO tmp.balance_desglose(receptora_id
, emisora_id
, year
, month
, Id_Gasto
, importe)
SELECT gr.empresa_id
, gr.empresa_id
, year
, month
, Id_Gasto
, sum(importe)
FROM gastos_resumen gr
JOIN tmp.empresas_receptoras er on gr.empresa_id = er.empresa_id
WHERE year >= vStartingYear
AND month BETWEEN vStartingMonth AND vEndingMonth
GROUP BY Id_Gasto, year, month, gr.empresa_id;
DELETE FROM tmp.balance_desglose
WHERE month < vStartingMonth
OR month > vEndingMonth;
SET v_sql = sql_printf (
'
ALTER TABLE tmp.balance
ADD COLUMN %t INT(10) NULL ,
ADD COLUMN %t INT(10) NULL ,
ADD COLUMN %t INT(10) NULL ,
ADD COLUMN Id_Gasto VARCHAR(10) NULL,
ADD COLUMN Gasto VARCHAR(45) NULL;
',
YEAR(CURDATE())-2,
YEAR(CURDATE())-1,
YEAR(CURDATE())
);
CALL sql_query (v_sql);
UPDATE tmp.balance b
JOIN vn2008.balance_nest_tree bnt on bnt.id = b.id
JOIN (SELECT Id_Gasto, Gasto
FROM vn2008.Gastos
GROUP BY Id_Gasto) g ON g.Id_Gasto = bnt.Id_Gasto
SET b.Id_Gasto = g.Id_Gasto
, b.Gasto = g.Gasto;
WHILE intYEARS > 0 DO
SET intYEARS = intYEARS - 1;
SET v_sql = sql_printf (
'
UPDATE tmp.balance b
JOIN
(
SELECT Id_Gasto, sum(Importe) as Importe
FROM tmp.balance_desglose
WHERE year = %v
GROUP BY Id_Gasto
) sub on sub.Id_Gasto = b.Id_Gasto
SET %t = - Importe;
',
YEAR(CURDATE()) - intYEARS,
YEAR(CURDATE()) - intYEARS
);
CALL sql_query (v_sql);
END WHILE;
SET v_sql = sql_printf (
'
UPDATE tmp.balance b
JOIN (
SELECT sum(IF(year = %v, venta, 0)) as y2
, sum(IF(year = %v, venta, 0)) as y1
, sum(IF(year = %v, venta, 0)) as y0
, c.Gasto
FROM bs.ventas_contables c
join tmp.empresas_receptoras er on er.empresa_id = c.empresa_id
WHERE month BETWEEN %v AND %v
GROUP BY c.Gasto
) sub ON sub.Gasto = b.Id_Gasto
SET %t = IFNULL(%t,0) + sub.y2
, %t = IFNULL(%t,0) + sub.y1
, %t = IFNULL(%t,0) + sub.y0
;
',
YEAR(CURDATE()) - 2,
YEAR(CURDATE()) - 1,
YEAR(CURDATE()),
vStartingMonth,
vEndingMonth,
YEAR(CURDATE()) - 2, YEAR(CURDATE()) - 2,
YEAR(CURDATE()) - 1, YEAR(CURDATE()) - 1,
YEAR(CURDATE()), YEAR(CURDATE())
);
CALL sql_query (v_sql);
IF NOT vInterGroupSalesIncluded THEN
SELECT lft, rgt
INTO @grupoLft, @grupoRgt
FROM tmp.balance b
WHERE TRIM(b.`name`) = 'Grupo';
DELETE
FROM tmp.balance
WHERE lft BETWEEN @grupoLft AND @grupoRgt;
END IF;
DROP TEMPORARY TABLE IF EXISTS tmp.balance_aux;
CREATE TEMPORARY TABLE tmp.balance_aux SELECT * FROM tmp.balance;
UPDATE tmp.balance b
JOIN
(
select b1.id, b1.name, sum(b2.`2015`) as `2015`, sum(b2.`2016`) as `2016`, sum(b2.`2017`) as `2017`
from tmp.nest b1
join tmp.balance_aux b2 on b2.lft between b1.lft and b1.rgt
group by b1.id) sub on sub.id = b.id
SET b.`2015` = sub.`2015`, b.`2016` = sub.`2016`, b.`2017` = sub.`2017`
;
SELECT *, concat('',ifnull(Id_Gasto,'')) as newgasto FROM tmp.balance;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `base_ticket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `base_ticket`(IN Id_Ticket INT)
BEGIN
SELECT
red(SUM(Cantidad * Preu * (100 - Descuento) / 100)) AS base
FROm
Movimientos m
INNER JOIN Tickets t USING (Id_Ticket)
WHERE t.Id_Ticket = Id_Ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_available_` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_available_`(
v_date DATE,
v_consigna INT,
v_agencia INT)
BEGIN
DECLARE v_available_calc INT;
DECLARE v_shipment DATE;
DECLARE v_agency_id INT;
DECLARE v_wh INT;
DECLARE done BOOL;
DECLARE cur CURSOR FOR
SELECT warehouse_id, Fecha_envio FROM travel_tree;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
SELECT agency_id INTO v_agency_id FROM Agencias WHERE Id_Agencia = v_agencia;
CALL travel_tree (v_date,v_consigna, v_agency_id);
DROP TEMPORARY TABLE IF EXISTS t_bionic_available;
CREATE TEMPORARY TABLE t_bionic_available(
calc_id INT UNSIGNED,
PRIMARY KEY (calc_id)
)
ENGINE = MEMORY;
OPEN cur;
l: LOOP
SET done = FALSE;
FETCH cur INTO v_wh, v_shipment;
IF done THEN
LEAVE l;
END IF;
CALL `cache`.available_refresh (v_available_calc, FALSE, v_wh, v_shipment);
INSERT IGNORE INTO t_bionic_available (calc_id)
VALUES (v_available_calc);
END LOOP;
CLOSE cur;
DROP TEMPORARY TABLE travel_tree;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_available_articlelist` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_available_articlelist`(IN strART VARCHAR(50)
, IN minMED DOUBLE
, IN maxMED DOUBLE
, IN minPVP DOUBLE
, IN maxPVP DOUBLE)
BEGIN
DECLARE intSPACE_POS INT;
DECLARE strSUBTR VARCHAR(50);
DECLARE strFILTER VARCHAR(500);
DECLARE v_sql TEXT;
DROP TEMPORARY TABLE IF EXISTS articlelist;
CREATE TEMPORARY table articlelist
(Id_Article INT(11) PRIMARY KEY)
ENGINE = INNODB;
SET minMED = IFNULL(minMED,0);
SET minMED = IF(minMED = 0,0.01, minMED);
SET maxMED = IFNULL(maxMED,9990);
SET maxMED = IF(maxMED = 0,9990, maxMED);
SET minPVP = IFNULL(minPVP,0);
SET minPVP = IF(minPVP = 0, 0.01, minPVP);
SET maxPVP = IFNULL(maxPVP,9990);
SET maxPVP = IF(maxPVP = 0, 9990, maxPVP);
SET strART = TRIM(strART);
IF ASCII(strART) BETWEEN 48 AND 57 THEN
INSERT INTO articlelist(Id_Article) VALUES(CAST(strART AS UNSIGNED));
ELSE
SET strFILTER = 'TRUE ';
WHILE LENGTH(strART) > 0 DO
SET intSPACE_POS = POSITION(' ' IN strART) ;
IF intSPACE_POS = 0 THEN
SET strFILTER = CONCAT(strFILTER, ' AND CONCAT(a.Id_Article,Article,t.Tipo) LIKE "%',strART,'%"');
SET strART = '';
ELSE
SET strFILTER = CONCAT(strFILTER, ' AND CONCAT(a.Id_Article,Article,t.Tipo) LIKE "%',LEFT(strART,intSPACE_POS - 1),'%"');
SET strART = TRIM(SUBSTRING(strART, intSPACE_POS));
END IF;
END WHILE;
if minpvp = 0.01 and maxpvp = 9990 then
SET v_sql = sql_printf (
'
REPLACE articlelist
SELECT a.Id_Article
FROM Articles a
LEFT JOIN Tipos t ON t.tipo_id = a.tipo_id
WHERE %s
AND Medida BETWEEN %v AND %v;
'
,strFILTER
,minMED
,maxMED);
else
SET v_sql = sql_printf (
'
REPLACE articlelist
SELECT a.Id_Article
FROM Articles a
LEFT JOIN Tipos t ON t.tipo_id = a.tipo_id
JOIN (
SELECT DISTINCT Id_Article
FROM Movimientos m
JOIN Tickets t using(Id_Ticket)
JOIN Clientes c using(Id_Cliente)
WHERE Fecha > CURDATE() - INTERVAL 4 DAY
AND Preu BETWEEN %v AND %v
AND c.invoice <> 0
) v on v.Id_Article = a.Id_Article
WHERE %s
AND Medida BETWEEN %v AND %v;
'
,minPVP
,maxPVP
,strFILTER
,minMED
,maxMED);
end if;
CALL sql_query (v_sql);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_available_items_` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_available_items_`(v_date DATE,
v_consigna INT,
v_agencia INT)
BEGIN
CALL bionic_available_ (v_date, v_consigna, v_agencia);
DROP TEMPORARY TABLE IF EXISTS t_bionic_available_items;
CREATE TEMPORARY TABLE t_bionic_available_items
(INDEX (Id_Article))
ENGINE = MEMORY
SELECT a.Id_Article, a.Article
FROM `cache`.available c
JOIN Articles a ON c.item_id = a.Id_Article
JOIN t_bionic_available ba ON c.calc_id = ba.calc_id
WHERE c.available GROUP BY a.Article;
DROP TEMPORARY TABLE t_bionic_available;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_available_single` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_available_single`(IN v_wh TINYINT, IN v_date DATETIME, IN id_single INT, IN refresh TINYINT)
BEGIN
DECLARE intcalc_id INT;
call cache.available_refresh(intcalc_id,refresh, v_wh,v_date);
SELECT available AS minimo FROM cache.available WHERE calc_id = intcalc_id AND item_id = id_single ;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_available_types_` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_available_types_`(
v_date DATE,
v_consigna INT,
v_agencia INT)
BEGIN
CALL bionic_available_(v_date, v_consigna, v_agencia);
DROP TEMPORARY TABLE IF EXISTS t_bionic_available_types;
CREATE TEMPORARY TABLE t_bionic_available_types
(INDEX (tipo_id))
ENGINE = MEMORY
SELECT a.tipo_id, t.Tipo
FROM `cache`.available c
JOIN Articles a ON c.item_id = a.Id_Article
JOIN Tipos t ON t.tipo_id = a.tipo_id
JOIN t_bionic_available ba ON c.calc_id = ba.calc_id
WHERE c.available > 0
AND t.Orden != 0
GROUP BY t.tipo_id;
DROP TEMPORARY TABLE t_bionic_available;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_available_types_filter` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_available_types_filter`(IN v_date DATE,
IN v_consigna INT,
IN v_agencia INT,
IN v_filter TEXT)
BEGIN
DECLARE v_sql TEXT;
DECLARE v_list TEXT;
SET v_list = '';
SET v_filter = IFNULL(v_filter,' TRUE');
CALL bionic_available_(v_date, v_consigna, v_agencia);
DROP TEMPORARY TABLE IF EXISTS t_bionic_available_types;
CALL check_table_existence('articlelist');
IF @table_exists THEN
SET v_list = 'JOIN articlelist AL ON AL.Id_Article = a.Id_Article ';
END IF;
SET v_sql = sql_printf (
'
CREATE TEMPORARY TABLE t_bionic_available_types
SELECT a.tipo_id, Tipo, reino, count(*) as item_count
FROM `cache`.available c
JOIN Articles a ON c.item_id = a.Id_Article
JOIN Tipos t ON t.tipo_id = a.tipo_id
JOIN reinos r ON r.id = t.reino_id
JOIN t_bionic_available ba ON c.calc_id = ba.calc_id
%s
WHERE c.available > 0
AND %s
GROUP BY a.tipo_id;
'
, v_list
, v_filter);
CALL sql_query (v_sql);
DROP TEMPORARY TABLE t_bionic_available;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc`(
v_date DATE,
v_consigna INT,
v_agencia INT)
proc: BEGIN
DECLARE v_available_calc INT;
DECLARE v_shipment DATE;
DECLARE v_agency_id INT;
DECLARE v_customer INT;
DECLARE v_wh SMALLINT;
DECLARE done BOOL;
DECLARE cur CURSOR FOR
SELECT warehouse_id, Fecha_envio FROM vn2008.travel_tree;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_item;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_component;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_price;
SELECT agency_id INTO v_agency_id FROM vn2008.Agencias WHERE Id_Agencia = v_agencia;
SELECT Id_Cliente INTO v_customer FROM vn2008.Consignatarios WHERE Id_Consigna = v_consigna;
CALL vn2008.travel_tree(v_date,v_consigna, v_agency_id);
CREATE TEMPORARY TABLE tmp.bionic_lot LIKE
template_bionic_lot;
OPEN cur;
l: LOOP
SET done = FALSE;
FETCH cur INTO v_wh, v_shipment;
IF done THEN
LEAVE l;
END IF;
CALL `cache`.available_refresh (v_available_calc, FALSE, v_wh, v_shipment);
CALL item_last_buy_ (v_wh, v_shipment);
INSERT INTO tmp.bionic_lot (warehouse_id, item_id, available, buy_id)
SELECT
v_wh,
i.item_id,
IFNULL(i.available, 0),
ilb.buy_id
FROM `cache`.available i
JOIN tmp.bionic_calc br ON br.item_id = i.item_id
LEFT JOIN Articles a ON a.Id_Article = i.item_id
LEFT JOIN t_item_last_buy ilb ON ilb.item_id = i.item_id
WHERE i.calc_id = v_available_calc
AND a.Id_Article != 100
AND i.available > 0;
DROP TEMPORARY TABLE t_item_last_buy;
END LOOP;
CLOSE cur;
CALL bionic_calc_component(v_consigna,v_agencia);
CREATE TEMPORARY TABLE tmp.bionic_item
ENGINE = MEMORY
SELECT b.item_id, SUM(b.available) available, p.name producer, a.Article item, a.Medida size, a.Tallos stems,
a.Categoria category, a.Color, a.Foto image, o.Abreviatura origin, bl.min_price price
FROM tmp.bionic_lot b
JOIN Articles a ON b.item_id = a.Id_Article
LEFT JOIN producer p ON p.producer_id = a.producer_id AND p.visible
JOIN Origen o ON o.id = a.id_origen
JOIN (
SELECT MIN(price) min_price, item_id
FROM tmp.bionic_price
GROUP BY item_id
) bl ON bl.item_id = b.item_id
GROUP BY b.item_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_clon` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_clon`(IN v_ticket BIGINT)
BEGIN
DECLARE v_shipment DATE;
DECLARE v_customer INT;
DECLARE v_wh SMALLINT;
DECLARE v_agencia INT;
DECLARE v_consigna INT;
DECLARE v_landing DATE;
DECLARE v_agency INT;
REPLACE order_Tickets(order_id,Id_Ticket) VALUES(48, v_ticket);
SELECT t.Id_Cliente , t.warehouse_id, date(t.Fecha), t.Id_Consigna, t.Id_Agencia, t.landing, a.agency_id
INTO v_customer, v_wh, v_shipment, v_consigna, v_agencia, v_landing, v_agency
FROM vn2008.Agencias a
JOIN vn2008.Tickets t ON t.Id_Agencia = a.Id_Agencia
WHERE t.Id_Ticket = v_ticket;
DROP TEMPORARY TABLE IF EXISTS travel_tree;
CREATE TEMPORARY TABLE travel_tree ENGINE = MEMORY
SELECT v_wh warehouse_id, v_shipment Fecha_envio, v_landing Fecha_recepcion;
CALL item_last_buy_ (v_wh, v_shipment);
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
CREATE TEMPORARY TABLE tmp.bionic_lot
SELECT v_wh warehouse_id,NULL available,
m.Id_Article item_id,ilb.buy_id
FROM Movimientos m
LEFT JOIN t_item_last_buy ilb ON ilb.item_id = m.Id_Article
WHERE m.Id_Ticket = v_ticket GROUP BY m.Id_Article;
CALL bionic_calc_component(v_consigna,v_agencia);
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento, v_wh warehouse_id FROM Movimientos m
JOIN Tickets t on t.Id_Ticket = m.Id_Ticket WHERE m.Id_Ticket = v_ticket AND Preu = 0;
CALL bionic_movement_update(1);
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento, v_wh warehouse_id FROM Movimientos m
JOIN Tickets t on t.Id_Ticket = m.Id_Ticket WHERE m.Id_Ticket = v_ticket AND Preu > 0;
CALL bionic_movement_update(6);
IF v_landing IS NULL THEN
CALL travel_tree_shipment(v_shipment, v_consigna, v_agency,v_wh);
UPDATE Tickets t
JOIN travel_tree_shipment tts ON t.warehouse_id = tts.warehouse_id
SET t.landing = tts.landing
WHERE Id_Ticket = v_ticket;
END IF;
call Ditacio(v_ticket
,'Bioniza Ticket'
,'T'
, 20
, 'proc bionic_calc_clon'
, NULL);
DROP TEMPORARY TABLE t_item_last_buy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_clonkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_clonkk`(IN v_ticket BIGINT)
BEGIN
DECLARE v_shipment DATE;
DECLARE v_customer INT;
DECLARE v_wh SMALLINT;
DECLARE v_agencia INT;
DECLARE v_consigna INT;
DECLARE v_landing DATE;
REPLACE order_Tickets(order_id,Id_Ticket) VALUES(48, v_ticket);
SELECT Id_Cliente , t.warehouse_id, date(t.Fecha), Id_Consigna , Id_Agencia
INTO v_customer ,v_wh, v_shipment , v_consigna , v_agencia
FROM vn2008.Agencias a
JOIN vn2008.Tickets t using(Id_Agencia)
WHERE Id_Ticket = v_ticket;
DROP TEMPORARY TABLE IF EXISTS travel_tree;
CREATE TEMPORARY TABLE travel_tree ENGINE = MEMORY
SELECT v_wh warehouse_id, v_shipment Fecha_envio, v_landing Fecha_recepcion;
CALL item_last_buy_ (v_wh, v_shipment);
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
CREATE TEMPORARY TABLE tmp.bionic_lot
SELECT v_wh warehouse_id,NULL available,
m.Id_Article item_id,ilb.buy_id
FROM Movimientos m
LEFT JOIN t_item_last_buy ilb ON ilb.item_id = m.Id_Article
WHERE m.Id_Ticket = v_ticket GROUP BY m.Id_Article;
CALL bionic_calc_component(v_consigna,v_agencia);
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento, v_wh warehouse_id FROM Movimientos m
JOIN Tickets t on t.Id_Ticket = m.Id_Ticket WHERE m.Id_Ticket = v_ticket AND Preu = 0;
CALL bionic_movement_update(1);
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento, v_wh warehouse_id FROM Movimientos m
JOIN Tickets t on t.Id_Ticket = m.Id_Ticket WHERE m.Id_Ticket = v_ticket AND Preu > 0;
CALL bionic_movement_update(6);
call Ditacio(v_ticket
,'Bioniza Ticket'
,'T'
, 20
, 'proc bionic_calc_clon'
, NULL);
DROP TEMPORARY TABLE t_item_last_buy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_component` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_component`(
v_consigna INT,
v_agencia INT)
proc: BEGIN
DECLARE v_customer INT;
DECLARE COEFICIENTE_DE_INFLACION_GENERAL INT DEFAULT 1.3;
DECLARE DENSIDAD_MINIMA_PESO_VOLUMETRICO INT DEFAULT 167;
DECLARE VOLUMEN_CAJA_VERDNATURA BIGINT DEFAULT 138000;
SELECT Id_Cliente INTO v_customer FROM Consignatarios WHERE Id_Consigna = v_consigna;
SET @rate2 := 0;
SET @rate3 := 0;
DROP TEMPORARY TABLE IF EXISTS t_bionic_temp;
CREATE TEMPORARY TABLE t_bionic_temp
(PRIMARY KEY (item_id,warehouse_id))
ENGINE = MEMORY
SELECT
b.item_id, b.warehouse_id,available,
IF((@rate2 := IFNULL(pf.rate_2,c.Tarifa2)) < a.PVP AND a.`Min`, a.PVP, @rate2) * 1.0 rate_2,
IF((@rate3 := IFNULL(pf.rate_3,c.Tarifa3)) < a.PVP AND a.`Min`, a.PVP, @rate3) * 1.0 rate_3,
ifnull(pf.rate_3,0) AS min_price,
IFNULL(pf.Packing,c.Packing) packing,
IFNULL(pf.grouping,c.grouping) grouping,
ABS(IFNULL(pf.caja,c.caja)) box,
b.buy_id, a.tipo_id
FROM tmp.bionic_lot b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra
JOIN vn2008.Articles a ON b.item_id = a.Id_Article
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = t.reino_id
LEFT JOIN vn2008.PreciosEspeciales p ON a.Id_Article = p.Id_Article AND p.Id_Cliente = v_customer
LEFT JOIN (
SELECT * FROM (
SELECT p.item_id, p.grouping, p.Packing,p.caja, p.rate_2, p.rate_3, t.warehouse_id
FROM vn2008.price_fixed p
JOIN vn2008.travel_tree t ON t.warehouse_id = p.warehouse_id OR p.warehouse_id = 0
WHERE t.Fecha_envio BETWEEN p.date_start AND p.date_end ORDER BY p.item_id, p.warehouse_id DESC
) t
GROUP BY item_id, warehouse_id
) pf ON pf.item_id = b.item_id AND pf.warehouse_id = b.warehouse_id
WHERE Costefijo + Portefijo + Embalajefijo + Comisionfija > 0.01 AND r.display <> 0;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_component;
CREATE TEMPORARY TABLE tmp.bionic_component LIKE
template_bionic_component;
INSERT INTO tmp.bionic_component ( warehouse_id, item_id, component_id, cost)
SELECT b.warehouse_id, b.item_id, 29, rate_3 - Costefijo - Portefijo - Embalajefijo - Comisionfija
FROM t_bionic_temp b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra;
INSERT INTO tmp.bionic_component ( warehouse_id, item_id, component_id, cost)
SELECT b.warehouse_id, b.item_id, 28, Costefijo + Portefijo + Embalajefijo + Comisionfija
FROM t_bionic_temp b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra;
DROP TEMPORARY TABLE IF EXISTS t_components_base;
CREATE TEMPORARY TABLE t_components_base
SELECT bc.item_id, ROUND(SUM(cost), 4) AS base, bc.warehouse_id
FROM tmp.bionic_component bc
GROUP BY bc.item_id,warehouse_id;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, item_id, 17, ROUND(base * LEAST(recobro,0.25), 3)
FROM t_components_base cb
JOIN bi.claims_ratio ON Id_Cliente = v_customer
WHERE recobro > 0.009;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, item_id, 39, ROUND(base * prices_modifier_rate, 3) as manaAuto
FROM t_components_base cb
JOIN Clientes c on c.Id_Cliente = v_customer
JOIN bs.mana_spellers ms ON c.Id_Trabajador = ms.Id_Trabajador
WHERE ms.prices_modifier_activated
HAVING manaAuto <> 0 ;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, b.item_id, Id_Componente, GREATEST(IFNULL(ROUND(base * tax,4), 0), b.min_price - b.rate_3)
FROM t_components_base cb
JOIN bi.tarifa_componentes
JOIN t_bionic_temp b ON b.item_id = cb.item_id
LEFT JOIN PreciosEspeciales pe ON pe.Id_Cliente = v_customer AND pe.Id_Article = b.item_id
WHERE Id_Componente = 32 AND tax <> 0 AND b.min_price < b.rate_3 AND PrecioEspecial IS NULL;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id, b.item_id, 22, rate_2 - rate_3
FROM t_bionic_temp b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra
LEFT JOIN PreciosEspeciales pe ON pe.Id_Cliente = v_customer AND pe.Id_Article = b.item_id
WHERE PrecioEspecial IS NULL;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id
, b.item_id
, 15
, COEFICIENTE_DE_INFLACION_GENERAL
* ROUND(
r.cm3
* IF(a.Vista = 1, (GREATEST(art.density,DENSIDAD_MINIMA_PESO_VOLUMETRICO) / DENSIDAD_MINIMA_PESO_VOLUMETRICO ) , 1)
* az.price
* az.inflacion
/ VOLUMEN_CAJA_VERDNATURA, 4
) cost
FROM t_bionic_temp b
JOIN vn2008.Articles art ON art.Id_Article = b.item_id
JOIN vn2008.Agencias a ON a.Id_Agencia = v_agencia
JOIN vn2008.Consignatarios c ON c.Id_Consigna = v_consigna
JOIN vn2008.Agencias_province ap ON ap.agency_id = a.agency_id AND ap.warehouse_id = b.warehouse_id AND ap.province_id = c.province_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = v_agencia AND az.zona = ap.zona AND az.Id_Article = 71 AND az.warehouse_id = b.warehouse_id
LEFT JOIN bi.rotacion r ON r.warehouse_id = b.warehouse_id AND r.Id_Article = b.item_id
HAVING cost <> 0;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id
, b.item_id
, 41
, COEFICIENTE_DE_INFLACION_GENERAL
* ROUND(
r.cm3
* IF(a.Vista = 1, (GREATEST(art.density,DENSIDAD_MINIMA_PESO_VOLUMETRICO) / DENSIDAD_MINIMA_PESO_VOLUMETRICO ) , 1)
* awb.bonus
* az.inflacion
/ VOLUMEN_CAJA_VERDNATURA, 4
) cost
FROM t_bionic_temp b
JOIN vn2008.Articles art ON art.Id_Article = b.item_id
JOIN vn2008.Agencias a ON a.Id_Agencia = v_agencia
JOIN vn2008.Consignatarios c ON c.Id_Consigna = v_consigna
JOIN vn2008.Agencias_province ap ON ap.agency_id = a.agency_id AND ap.warehouse_id = b.warehouse_id AND ap.province_id = c.province_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = v_agencia AND az.zona = ap.zona AND az.Id_Article = 71 AND az.warehouse_id = b.warehouse_id
JOIN vn2008.agency_weekday_bonus awb ON awb.warehouse_id = az.warehouse_id AND awb.zona = az.zona AND a.agency_id = awb.agency_id
LEFT JOIN bi.rotacion r ON r.warehouse_id = b.warehouse_id AND r.Id_Article = b.item_id
JOIN vn2008.travel_tree t ON t.warehouse_id = awb.warehouse_id AND weekday(t.Fecha_recepcion) = awb.weekDay
HAVING cost <> 0;
IF (SELECT COUNT(*) FROM vn.addressForPackaging WHERE addressFk = v_consigna) THEN
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id, b.item_id, 38, ap.packagingValue cost
FROM t_bionic_temp b
JOIN vn.addressForPackaging ap
WHERE ap.addressFk = v_consigna;
END IF;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, cb.item_id, 14, cb.base * (IFNULL(pe.percentage,pp.percentage)/100)
FROM t_components_base cb
JOIN vn2008.travel_tree tt ON tt.warehouse_id = cb.warehouse_id
LEFT JOIN vn2008.preparation_percentage pp ON pp.week_day = weekday(tt.Fecha_envio) AND cb.warehouse_id = IFNULL(pp.warehouse_id,cb.warehouse_id)
LEFT JOIN vn2008.preparation_exception pe ON pe.exception_day = tt.Fecha_envio AND cb.warehouse_id = IFNULL(pe.warehouse_id,cb.warehouse_id)
WHERE IFNULL(pe.percentage,pp.percentage);
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_component_copy;
CREATE TEMPORARY TABLE tmp.bionic_component_copy
SELECT * FROM tmp.bionic_component;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id, b.item_id, 10, pe.PrecioEspecial - SUM(cost) sum_cost
FROM tmp.bionic_component_copy b
JOIN bi.tarifa_componentes t ON b.component_id = t.Id_Componente
JOIN PreciosEspeciales pe ON pe.Id_Cliente = v_customer AND pe.Id_Article = b.item_id
WHERE t.tarifa_class IS NULL
GROUP BY b.item_id, b.warehouse_id
HAVING ABS(sum_cost) > 0.001;
DROP TEMPORARY TABLE IF EXISTS t_component_sum;
CREATE TEMPORARY TABLE t_component_sum
(INDEX (item_id, warehouse_id))
ENGINE = MEMORY
SELECT SUM(cost) sum_cost, b.item_id, b.warehouse_id, t.tarifa_class
FROM tmp.bionic_component b
JOIN bi.tarifa_componentes t ON b.component_id = t.Id_Componente
GROUP BY b.item_id, b.warehouse_id, t.tarifa_class;
DROP TEMPORARY TABLE IF EXISTS t_bionic_rate;
CREATE TEMPORARY TABLE t_bionic_rate
ENGINE = MEMORY
SELECT b.warehouse_id, item_id, 1 rate,
IF(box = 1, grouping, 1) grouping, SUM(sum_cost) price
FROM t_bionic_temp b
JOIN t_component_sum cs USING(item_id, warehouse_id)
WHERE IFNULL(cs.tarifa_class,1) = 1 AND box < 2 AND (packing > grouping or box = 0)
GROUP BY warehouse_id, item_id;
INSERT INTO t_bionic_rate (warehouse_id, item_id, rate, grouping, price)
SELECT b.warehouse_id, item_id, 2 rate, packing grouping,
SUM(sum_cost) price
FROM t_bionic_temp b
JOIN t_component_sum cs USING(item_id, warehouse_id)
WHERE available IS NULL OR (IFNULL(cs.tarifa_class,2) = 2 AND packing > 0 AND available >= packing)
GROUP BY warehouse_id, item_id;
INSERT INTO t_bionic_rate (warehouse_id, item_id, rate, grouping, price)
SELECT b.warehouse_id, item_id, 3 rate, available grouping,
SUM(sum_cost) price
FROM t_bionic_temp b
JOIN t_component_sum cs USING(item_id, warehouse_id)
WHERE IFNULL(cs.tarifa_class,3) = 3
GROUP BY warehouse_id, item_id;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_price;
CREATE TEMPORARY TABLE tmp.bionic_price
LIKE template_bionic_price;
INSERT INTO tmp.bionic_price (warehouse_id, item_id, rate, grouping, price)
SELECT * FROM (
SELECT * FROM t_bionic_rate ORDER BY price
) t
GROUP BY item_id, warehouse_id, grouping;
DROP TEMPORARY TABLE IF EXISTS tmp.travel_tree;
CREATE TEMPORARY TABLE tmp.travel_tree
ENGINE = MEMORY
SELECT * FROM travel_tree;
DROP TEMPORARY TABLE travel_tree;
DROP TEMPORARY TABLE t_bionic_temp;
DROP TEMPORARY TABLE t_component_sum;
DROP TEMPORARY TABLE t_components_base;
DROP TEMPORARY TABLE t_bionic_rate;
DROP TEMPORARY TABLE tmp.bionic_component_copy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_component_beta` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_component_beta`(
v_consigna INT,
v_agencia INT)
proc: BEGIN
DECLARE v_customer INT;
DECLARE COEFICIENTE_DE_INFLACION_GENERAL INT DEFAULT 1.3;
DECLARE DENSIDAD_MINIMA_PESO_VOLUMETRICO INT DEFAULT 167;
DECLARE VOLUMEN_CAJA_VERDNATURA BIGINT DEFAULT 138000;
SELECT Id_Cliente INTO v_customer FROM Consignatarios WHERE Id_Consigna = v_consigna;
SET @rate2 := 0;
SET @rate3 := 0;
DROP TEMPORARY TABLE IF EXISTS t_bionic_temp;
CREATE TEMPORARY TABLE t_bionic_temp
(PRIMARY KEY (item_id,warehouse_id))
ENGINE = MEMORY
SELECT
b.item_id, b.warehouse_id,available,
IF((@rate2 := IFNULL(pf.rate_2,c.Tarifa2)) < a.PVP AND a.`Min`, a.PVP, @rate2) * 1.0 rate_2,
IF((@rate3 := IFNULL(pf.rate_3,c.Tarifa3)) < a.PVP AND a.`Min`, a.PVP, @rate3) * 1.0 rate_3,
ifnull(pf.rate_3,0) AS min_price,
IFNULL(pf.Packing,c.Packing) packing,
IFNULL(pf.grouping,c.grouping) grouping,
ABS(IFNULL(pf.caja,c.caja)) box,
b.buy_id, a.tipo_id
FROM tmp.bionic_lot b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra
JOIN vn2008.Articles a ON b.item_id = a.Id_Article
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = t.reino_id
LEFT JOIN vn2008.PreciosEspeciales p ON a.Id_Article = p.Id_Article AND p.Id_Cliente = v_customer
LEFT JOIN (
SELECT * FROM (
SELECT p.item_id, p.grouping, p.Packing,p.caja, p.rate_2, p.rate_3, t.warehouse_id
FROM vn2008.price_fixed p
JOIN vn2008.travel_tree t ON t.warehouse_id = p.warehouse_id OR p.warehouse_id = 0
WHERE t.Fecha_envio BETWEEN p.date_start AND p.date_end ORDER BY p.item_id, p.warehouse_id DESC
) t
GROUP BY item_id, warehouse_id
) pf ON pf.item_id = b.item_id AND pf.warehouse_id = b.warehouse_id
WHERE Costefijo + Portefijo + Embalajefijo + Comisionfija > 0.01 AND r.display <> 0;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_component;
CREATE TEMPORARY TABLE tmp.bionic_component LIKE
template_bionic_component;
INSERT INTO tmp.bionic_component ( warehouse_id, item_id, component_id, cost)
SELECT b.warehouse_id, b.item_id, 29, rate_3 - Costefijo - Portefijo - Embalajefijo - Comisionfija
FROM t_bionic_temp b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra;
INSERT INTO tmp.bionic_component ( warehouse_id, item_id, component_id, cost)
SELECT b.warehouse_id, b.item_id, 28, Costefijo + Portefijo + Embalajefijo + Comisionfija
FROM t_bionic_temp b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra;
DROP TEMPORARY TABLE IF EXISTS t_components_base;
CREATE TEMPORARY TABLE t_components_base
SELECT bc.item_id, ROUND(SUM(cost), 4) AS base, bc.warehouse_id
FROM tmp.bionic_component bc
GROUP BY bc.item_id,warehouse_id;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, item_id, 17, ROUND(base * LEAST(recobro,0.25), 3)
FROM t_components_base cb
JOIN bi.claims_ratio ON Id_Cliente = v_customer
WHERE recobro > 0.009;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, item_id, 39, ROUND(base * prices_modifier_rate, 3) as manaAuto
FROM t_components_base cb
JOIN Clientes c on c.Id_Cliente = v_customer
JOIN bs.mana_spellers ms ON c.Id_Trabajador = ms.Id_Trabajador
WHERE ms.prices_modifier_activated
HAVING manaAuto <> 0 ;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, b.item_id, Id_Componente, GREATEST(IFNULL(ROUND(base * tax,4), 0), b.min_price - b.rate_3)
FROM t_components_base cb
JOIN bi.tarifa_componentes
JOIN t_bionic_temp b ON b.item_id = cb.item_id
LEFT JOIN PreciosEspeciales pe ON pe.Id_Cliente = v_customer AND pe.Id_Article = b.item_id
WHERE Id_Componente = 32 AND tax <> 0 AND b.min_price < b.rate_3 AND PrecioEspecial IS NULL;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id, b.item_id, 22, rate_2 - rate_3
FROM t_bionic_temp b
JOIN vn2008.Compres c ON b.buy_id = c.Id_Compra
LEFT JOIN PreciosEspeciales pe ON pe.Id_Cliente = v_customer AND pe.Id_Article = b.item_id
WHERE PrecioEspecial IS NULL;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id
, b.item_id
, 15
, COEFICIENTE_DE_INFLACION_GENERAL
* ROUND(
r.cm3
* IF(a.Vista = 1, (GREATEST(art.density,DENSIDAD_MINIMA_PESO_VOLUMETRICO) / DENSIDAD_MINIMA_PESO_VOLUMETRICO ) , 1)
* az.price
* az.inflacion
/ VOLUMEN_CAJA_VERDNATURA, 4
) cost
FROM t_bionic_temp b
JOIN vn2008.Articles art ON art.Id_Article = b.item_id
JOIN vn2008.Agencias a ON a.Id_Agencia = v_agencia
JOIN vn2008.Consignatarios c ON c.Id_Consigna = v_consigna
JOIN vn2008.Agencias_province ap ON ap.agency_id = a.agency_id AND ap.warehouse_id = b.warehouse_id AND ap.province_id = c.province_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = v_agencia AND az.zona = ap.zona AND az.Id_Article = 71 AND az.warehouse_id = b.warehouse_id
LEFT JOIN bi.rotacion r ON r.warehouse_id = b.warehouse_id AND r.Id_Article = b.item_id
HAVING cost <> 0;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id
, b.item_id
, 41
, COEFICIENTE_DE_INFLACION_GENERAL
* ROUND(
r.cm3
* IF(a.Vista = 1, (GREATEST(art.density,DENSIDAD_MINIMA_PESO_VOLUMETRICO) / DENSIDAD_MINIMA_PESO_VOLUMETRICO ) , 1)
* awb.bonus
* az.inflacion
/ VOLUMEN_CAJA_VERDNATURA, 4
) cost
FROM t_bionic_temp b
JOIN vn2008.Articles art ON art.Id_Article = b.item_id
JOIN vn2008.Agencias a ON a.Id_Agencia = v_agencia
JOIN vn2008.Consignatarios c ON c.Id_Consigna = v_consigna
JOIN vn2008.Agencias_province ap ON ap.agency_id = a.agency_id AND ap.warehouse_id = b.warehouse_id AND ap.province_id = c.province_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = v_agencia AND az.zona = ap.zona AND az.Id_Article = 71 AND az.warehouse_id = b.warehouse_id
JOIN vn2008.agency_weekday_bonus awb ON awb.warehouse_id = az.warehouse_id AND awb.zona = az.zona AND a.agency_id = awb.agency_id
LEFT JOIN bi.rotacion r ON r.warehouse_id = b.warehouse_id AND r.Id_Article = b.item_id
JOIN vn2008.travel_tree t ON t.warehouse_id = awb.warehouse_id AND weekday(t.Fecha_recepcion) = awb.weekDay
HAVING cost <> 0;
IF (SELECT COUNT(*) FROM vn.addressForPackaging WHERE addressFk = v_consigna) THEN
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id, b.item_id, 38, ap.packagingValue cost
FROM t_bionic_temp b
JOIN vn.addressForPackaging ap
WHERE ap.addressFk = v_consigna;
END IF;
INSERT INTO tmp.bionic_component
SELECT cb.warehouse_id, cb.item_id, 14, cb.base * (IFNULL(pe.percentage,pp.percentage)/100)
FROM t_components_base cb
JOIN vn2008.travel_tree tt ON tt.warehouse_id = cb.warehouse_id
LEFT JOIN vn2008.preparation_percentage pp ON pp.week_day = weekday(tt.Fecha_envio) AND cb.warehouse_id = IFNULL(pp.warehouse_id,cb.warehouse_id)
LEFT JOIN vn2008.preparation_exception pe ON pe.exception_day = tt.Fecha_envio AND cb.warehouse_id = IFNULL(pe.warehouse_id,cb.warehouse_id)
WHERE IFNULL(pe.percentage,pp.percentage);
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_component_copy;
CREATE TEMPORARY TABLE tmp.bionic_component_copy
SELECT * FROM tmp.bionic_component;
INSERT INTO tmp.bionic_component
SELECT b.warehouse_id, b.item_id, 10, pe.PrecioEspecial - SUM(cost) sum_cost
FROM tmp.bionic_component_copy b
JOIN bi.tarifa_componentes t ON b.component_id = t.Id_Componente
JOIN PreciosEspeciales pe ON pe.Id_Cliente = v_customer AND pe.Id_Article = b.item_id
WHERE t.tarifa_class IS NULL
GROUP BY b.item_id, b.warehouse_id
HAVING ABS(sum_cost) > 0.001;
DROP TEMPORARY TABLE IF EXISTS t_component_sum;
CREATE TEMPORARY TABLE t_component_sum
(INDEX (item_id, warehouse_id))
ENGINE = MEMORY
SELECT SUM(cost) sum_cost, b.item_id, b.warehouse_id, t.tarifa_class
FROM tmp.bionic_component b
JOIN bi.tarifa_componentes t ON b.component_id = t.Id_Componente
GROUP BY b.item_id, b.warehouse_id, t.tarifa_class;
DROP TEMPORARY TABLE IF EXISTS t_bionic_rate;
CREATE TEMPORARY TABLE t_bionic_rate
ENGINE = MEMORY
SELECT b.warehouse_id, item_id, 1 rate,
IF(box = 1, grouping, 1) grouping, SUM(sum_cost) price
FROM t_bionic_temp b
JOIN t_component_sum cs USING(item_id, warehouse_id)
WHERE IFNULL(cs.tarifa_class,1) = 1 AND box < 2 AND (packing > grouping or box = 0)
GROUP BY warehouse_id, item_id;
INSERT INTO t_bionic_rate (warehouse_id, item_id, rate, grouping, price)
SELECT b.warehouse_id, item_id, 2 rate, packing grouping,
SUM(sum_cost) price
FROM t_bionic_temp b
JOIN t_component_sum cs USING(item_id, warehouse_id)
WHERE available IS NULL OR (IFNULL(cs.tarifa_class,2) = 2 AND packing > 0 AND available >= packing)
GROUP BY warehouse_id, item_id;
INSERT INTO t_bionic_rate (warehouse_id, item_id, rate, grouping, price)
SELECT b.warehouse_id, item_id, 3 rate, available grouping,
SUM(sum_cost) price
FROM t_bionic_temp b
JOIN t_component_sum cs USING(item_id, warehouse_id)
WHERE IFNULL(cs.tarifa_class,3) = 3
GROUP BY warehouse_id, item_id;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_price;
CREATE TEMPORARY TABLE tmp.bionic_price
LIKE template_bionic_price;
INSERT INTO tmp.bionic_price (warehouse_id, item_id, rate, grouping, price)
SELECT * FROM (
SELECT * FROM t_bionic_rate ORDER BY price
) t
GROUP BY item_id, warehouse_id, grouping;
DROP TEMPORARY TABLE IF EXISTS tmp.travel_tree;
CREATE TEMPORARY TABLE tmp.travel_tree
ENGINE = MEMORY
SELECT * FROM travel_tree;
DROP TEMPORARY TABLE travel_tree;
DROP TEMPORARY TABLE t_bionic_temp;
DROP TEMPORARY TABLE t_component_sum;
DROP TEMPORARY TABLE t_components_base;
DROP TEMPORARY TABLE t_bionic_rate;
DROP TEMPORARY TABLE tmp.bionic_component_copy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_date` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_date`(v_ticket INT)
proc: BEGIN
DECLARE v_shipment DATE;
DECLARE v_agency_id INT;
DECLARE v_wh SMALLINT;
DECLARE v_province INT;
DECLARE v_landing DATE;
SELECT agency_id, DATE(Fecha), t.warehouse_id, province_id
INTO v_agency_id, v_shipment, v_wh, v_province
FROM Tickets t
JOIN Consignatarios c ON c.Id_Consigna = t.Id_Consigna
JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
WHERE Id_Ticket = v_ticket;
SELECT landing INTO v_landing FROM (
SELECT
@d := TIMESTAMPADD(DAY, subtract_day, v_shipment),
@w := WEEKDAY(@d),
IF(week_day IS NOT NULL, TIMESTAMPADD(DAY, (week_day - @w) + IF(@w > week_day, 7, 0), @d), @d) landing
FROM agency_hour
WHERE warehouse_id = v_wh
AND (province_id = v_province OR province_id IS NULL)
AND agency_id = v_agency_id
ORDER BY
(province_id IS NOT NULL) * 3 + (week_day IS NOT NULL) DESC, landing
LIMIT 1
) t;
IF v_landing IS NULL THEN
SET v_landing = v_shipment;
END IF;
UPDATE Tickets SET landing = v_landing WHERE Id_Ticket = v_ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_movement` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_movement`(IN v_id_mov BIGINT )
proc: BEGIN
DECLARE v_shipment DATE;
DECLARE v_customer INT;
DECLARE v_wh SMALLINT;
DECLARE v_agencia INT;
DECLARE v_consigna INT;
DECLARE v_ticket BIGINT;
DECLARE v_id_article BIGINT;
DECLARE v_landing DATE;
DECLARE v_ticket_free BOOLEAN DEFAULT TRUE;
SELECT FALSE
INTO v_ticket_free
FROM Tickets t
JOIN Movimientos m ON m.Id_Ticket = t.Id_Ticket
LEFT JOIN vn.ticketState ts on ts.ticket = t.Id_Ticket
WHERE Id_Movimiento = v_id_mov
AND (t.Factura != ""
or
(
ts.alertLevel > 0
AND
m.Preu != 0
)
)
LIMIT 1;
SELECT Id_Ticket, Id_Article INTO v_ticket, v_id_article FROM Movimientos WHERE Id_Movimiento = v_id_mov;
REPLACE order_Tickets(order_id,Id_Ticket) VALUES(48, v_ticket);
SELECT Id_Cliente , t.warehouse_id, date(t.Fecha), Id_Consigna , Id_Agencia
INTO v_customer ,v_wh, v_shipment , v_consigna , v_agencia
FROM vn2008.Agencias a
JOIN vn2008.Tickets t using(Id_Agencia)
WHERE Id_Ticket = v_ticket;
DROP TEMPORARY TABLE IF EXISTS travel_tree;
CREATE TEMPORARY TABLE travel_tree ENGINE = MEMORY
SELECT v_wh warehouse_id, v_shipment Fecha_envio, v_landing Fecha_recepcion;
CALL item_last_buy_ (v_wh, v_shipment);
DELETE FROM t_item_last_buy WHERE item_id != v_id_article;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
CREATE TEMPORARY TABLE tmp.bionic_lot
SELECT v_wh warehouse_id,NULL available,
m.Id_Article item_id,ilb.buy_id
FROM Movimientos m
LEFT JOIN t_item_last_buy ilb ON ilb.item_id = m.Id_Article
WHERE m.Id_Movimiento = v_id_mov;
CALL bionic_calc_component(v_consigna,v_agencia);
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento,v_wh warehouse_id FROM Movimientos m WHERE m.Id_Movimiento = v_id_mov;
CALL bionic_movement_update(IF(v_ticket_free,1,6));
call Ditacio(v_ticket
,'Bioniza Linea'
,'T'
, 20
, 'proc bionic_calc_movement '
, v_id_mov);
DROP TEMPORARY TABLE t_item_last_buy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_movement_ok` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_movement_ok`(IN v_ticket BIGINT)
BEGIN
DECLARE v_shipment DATE;
DECLARE v_customer INT;
DECLARE v_wh SMALLINT;
DECLARE v_agencia INT;
DECLARE v_consigna INT;
DECLARE v_landing DATE;
REPLACE order_Tickets(order_id,Id_Ticket) VALUES(48, v_ticket);
SELECT Id_Cliente , t.warehouse_id, date(t.Fecha), Id_Consigna , Id_Agencia
INTO v_customer ,v_wh, v_shipment , v_consigna , v_agencia
FROM vn2008.Agencias a
JOIN vn2008.Tickets t using(Id_Agencia)
WHERE Id_Ticket = v_ticket;
DROP TEMPORARY TABLE IF EXISTS travel_tree;
CREATE TEMPORARY TABLE travel_tree ENGINE = MEMORY
SELECT v_wh warehouse_id, v_shipment Fecha_envio, v_landing Fecha_recepcion;
CALL item_last_buy_ (v_wh, v_shipment);
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
CREATE TEMPORARY TABLE tmp.bionic_lot
SELECT v_wh warehouse_id,NULL available,
m.Id_Article item_id,ilb.buy_id
FROM Movimientos m
LEFT JOIN t_item_last_buy ilb ON ilb.item_id = m.Id_Article
WHERE m.Id_Ticket = v_ticket GROUP BY m.Id_Article;
CALL bionic_calc_component(v_consigna,v_agencia);
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento, v_wh warehouse_id FROM Movimientos m WHERE m.Id_Ticket = v_ticket;
CALL bionic_movement_update(1);
call Ditacio(v_ticket
,'Bioniza Lineas OK'
,'T'
, 20
, 'proc bionic_calc_movement_ok '
, NULL);
DROP TEMPORARY TABLE t_item_last_buy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_reverse` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_reverse`(
vWarehouse INT,
vMargin DECIMAL(10,3),
vRetailedPrice DECIMAL(10,3),
vM3 DECIMAL(10,3),
vConsigna INT,
vAgencia INT)
proc: BEGIN
DECLARE COEFICIENTE_DE_INFLACION_GENERAL INT DEFAULT 1.3;
DECLARE DENSIDAD_MINIMA_PESO_VOLUMETRICO INT DEFAULT 167;
DECLARE VOLUMEN_CAJA_VERDNATURA BIGINT DEFAULT 138000;
DECLARE vCost DECIMAL(10,4) DEFAULT 0;
DECLARE vCustomer INT;
DECLARE vRecovery DECIMAL(10,4) DEFAULT 0;
DECLARE vMana DECIMAL(10,4) DEFAULT 0;
DECLARE vPort DECIMAL(10,4) DEFAULT 0;
SELECT Id_Cliente INTO vCustomer FROM Consignatarios WHERE Id_Consigna = vConsigna;
SELECT ROUND(LEAST(recobro,0.25), 3) INTO vRecovery
FROM bi.claims_ratio
WHERE Id_Cliente = vCustomer AND recobro > 0.009;
SELECT ROUND(prices_modifier_rate, 3) INTO vMana
FROM Clientes c
JOIN bs.mana_spellers ms ON c.Id_Trabajador = ms.Id_Trabajador
WHERE ms.prices_modifier_activated AND c.Id_Cliente = vCustomer;
SELECT COEFICIENTE_DE_INFLACION_GENERAL
* ROUND(
vM3
* az.price
* az.inflacion
/ VOLUMEN_CAJA_VERDNATURA, 4
) INTO vPort
FROM vn2008.Agencias a
JOIN vn2008.Consignatarios c ON c.Id_Consigna = vConsigna AND a.Id_Agencia = vAgencia
JOIN vn2008.Agencias_province ap ON ap.agency_id = a.agency_id AND ap.warehouse_id = vWarehouse AND ap.province_id = c.province_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = vAgencia AND az.zona = ap.zona AND az.Id_Article = 71 AND az.warehouse_id = vWarehouse;
SET vCost = ((vRetailedPrice - vPort) / ( 1 + (vRecovery + vMana))) - vMargin;
SELECT vCost,vRetailedPrice,vPort,vRecovery,vMana,vMargin,vCustomer;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc_ticket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc_ticket`(IN v_ticket BIGINT )
proc: BEGIN
DECLARE v_shipment DATE;
DECLARE v_customer INT;
DECLARE v_wh SMALLINT;
DECLARE v_agencia INT;
DECLARE v_consigna INT;
DECLARE v_landing DATE;
DECLARE v_ticket_free BOOLEAN;
DECLARE v_agency INT;
CALL bionic_free();
SELECT (IFNULL(ts.alertLevel,0) >0 or IFNULL(Factura,"") != "") = FALSE
INTO v_ticket_free
FROM Tickets t LEFT JOIN vn.ticketState ts ON t.Id_Ticket = ts.ticket
WHERE t.Id_Ticket = v_ticket;
REPLACE order_Tickets(order_id, Id_Ticket) VALUES(48, v_ticket);
SELECT Id_Cliente, t.warehouse_id, date(t.Fecha), Id_Consigna, t.Id_Agencia, landing, a.agency_id
INTO v_customer, v_wh, v_shipment, v_consigna, v_agencia, v_landing, v_agency
FROM vn2008.Tickets t LEFT JOIN vn2008.Agencias a ON t.Id_Agencia = a.Id_Agencia WHERE Id_Ticket = v_ticket;
DROP TEMPORARY TABLE IF EXISTS travel_tree;
CREATE TEMPORARY TABLE travel_tree ENGINE = MEMORY
SELECT v_wh warehouse_id, v_shipment Fecha_envio, v_landing Fecha_recepcion;
CALL item_last_buy_ (v_wh, v_shipment);
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
CREATE TEMPORARY TABLE tmp.bionic_lot
SELECT v_wh warehouse_id,NULL available,
m.Id_Article item_id,ilb.buy_id
FROM Movimientos m
LEFT JOIN t_item_last_buy ilb ON ilb.item_id = m.Id_Article
WHERE m.Id_Ticket = v_ticket GROUP BY m.Id_Article;
CALL bionic_calc_component(v_consigna,v_agencia);
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento, v_wh warehouse_id
FROM Movimientos m
where m.Id_Ticket = v_ticket;
CALL bionic_movement_update(IF(v_ticket_free,1,6));
IF v_landing IS NULL THEN
CALL travel_tree_shipment(v_shipment, v_consigna, v_agency,v_wh);
UPDATE Tickets t
JOIN travel_tree_shipment tts ON t.warehouse_id = tts.warehouse_id
SET t.landing = tts.landing
WHERE Id_Ticket = v_ticket;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_free` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_free`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_item;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_price;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_component;
DROP TEMPORARY TABLE IF EXISTS tmp.travel_tree;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_from_item` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_from_item`(
v_date DATE,
v_consigna INT,
v_agencia INT,
v_item INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_calc;
CREATE TEMPORARY TABLE tmp.bionic_calc
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT v_item item_id;
CALL bionic_calc (v_date, v_consigna, v_agencia);
DROP TEMPORARY TABLE tmp.bionic_calc;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_from_order` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_from_order`(
v_date DATE,
v_consigna INT,
v_agencia INT,
v_order INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_calc;
CREATE TEMPORARY TABLE tmp.bionic_calc
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT item_id FROM order_row
WHERE order_id = v_order GROUP BY item_id;
CALL bionic_calc (v_date, v_consigna, v_agencia);
DROP TEMPORARY TABLE tmp.bionic_calc;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_from_ticket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_from_ticket`(
v_date DATE,
v_consigna INT,
v_agencia INT,
v_ticket INT)
BEGIN
DECLARE int_warehouse SMALLINT;
DECLARE v_agency_id INT;
DECLARE v_shipment DATE;
SELECT warehouse_id INTO int_warehouse FROM Tickets WHERE Id_Ticket = v_ticket;
SELECT agency_id INTO v_agency_id FROM Agencias WHERE Id_Agencia = v_agencia;
CALL bionic_free();
CALL travel_tree(v_date,v_consigna, v_agency_id);
SELECT Fecha_envio INTO v_shipment FROM travel_tree WHERE warehouse_id = int_warehouse;
CALL item_last_buy_ (int_warehouse, v_shipment);
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_lot;
CREATE TEMPORARY TABLE tmp.bionic_lot
SELECT int_warehouse warehouse_id,NULL available,
m.Id_Article item_id,ilb.buy_id
FROM Movimientos m
LEFT JOIN t_item_last_buy ilb ON ilb.item_id = m.Id_Article
WHERE m.Id_Ticket = v_ticket
AND m.Id_Article != 100
GROUP BY warehouse_id, item_id;
DROP TEMPORARY TABLE t_item_last_buy;
CALL bionic_calc_component ( v_consigna, v_agencia);
SET @shipment = v_shipment;
DROP TEMPORARY TABLE tmp.bionic_lot;
IF IFNULL(v_shipment,CURDATE() - 1) < CURDATE() THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'No se puede realizar el cambio';
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_from_type` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_from_type`(
v_date DATE,
v_consigna INT,
v_agencia INT,
v_type INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_calc;
CREATE TEMPORARY TABLE tmp.bionic_calc
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT Id_Article AS item_id FROM Articles WHERE tipo_id = v_type;
CALL bionic_calc (v_date, v_consigna, v_agencia);
DROP TEMPORARY TABLE tmp.bionic_calc;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_make_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_make_update`(
i_ticket INT
,i_agencia INT
,i_consigna INT
,i_warehouse INT
,d_shipment DATE
,d_landing DATE
,i_option INT)
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
UPDATE Tickets t
SET
t.Id_Agencia = i_agencia,
t.Id_Consigna = i_consigna,
t.warehouse_id = i_warehouse,
t.landing = d_landing,
t.Fecha = d_shipment
WHERE
t.Id_Ticket = i_ticket;
IF i_option <> 8
THEN
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento))
ENGINE = MEMORY
SELECT Id_Movimiento, i_warehouse warehouse_id
FROM Movimientos m WHERE m.Id_Ticket = i_ticket;
CALL bionic_movement_update (i_option);
DROP TEMPORARY TABLE tmp.movement;
END IF;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_movement_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_movement_update`(i_option INT)
BEGIN
DECLARE intComponent INT;
DECLARE bolRENUEVA_COMPONENTES BOOLEAN;
DECLARE bolRESPETA_PRECIOS BOOLEAN;
CASE i_option
WHEN 1 THEN
SET bolRENUEVA_COMPONENTES = TRUE;
SET bolRESPETA_PRECIOS = FALSE;
WHEN 2 THEN
SET intComponent = 17;
SET bolRENUEVA_COMPONENTES = TRUE;
SET bolRESPETA_PRECIOS = TRUE;
WHEN 3 THEN
SET intComponent = 37;
SET bolRENUEVA_COMPONENTES = TRUE;
SET bolRESPETA_PRECIOS = TRUE;
WHEN 4 THEN
SET intComponent = 34;
SET bolRENUEVA_COMPONENTES = TRUE;
SET bolRESPETA_PRECIOS = TRUE;
WHEN 5 THEN
SET intComponent = 35;
SET bolRENUEVA_COMPONENTES = TRUE;
SET bolRESPETA_PRECIOS = TRUE;
WHEN 6 THEN
SET intComponent = 36;
SET bolRENUEVA_COMPONENTES = TRUE;
SET bolRESPETA_PRECIOS = TRUE;
WHEN 7 THEN
REPLACE INTO vn2008.Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento,28, round(((m.Preu * (100 - m.Descuento) /100 ) - SUM(IFNULL(mc.Valor,0))) * 0.8 ,3)
FROM Movimientos m
JOIN tmp.movement mo ON m.Id_Movimiento = mo.Id_Movimiento
LEFT JOIN Movimientos_componentes mc ON mc.Id_Movimiento = m.Id_Movimiento AND mc.Id_Componente NOT IN (28,29)
GROUP BY m.Id_Movimiento;
REPLACE INTO vn2008.Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento,29, round(((m.Preu * (100 - m.Descuento) /100 ) - SUM(IFNULL(mc.Valor,0))) * 0.2 ,3)
FROM Movimientos m
JOIN tmp.movement mo ON m.Id_Movimiento = mo.Id_Movimiento
LEFT JOIN Movimientos_componentes mc ON mc.Id_Movimiento = m.Id_Movimiento AND mc.Id_Componente NOT IN (28,29)
GROUP BY m.Id_Movimiento;
SET bolRENUEVA_COMPONENTES = FALSE;
SET bolRESPETA_PRECIOS = FALSE;
WHEN 8 THEN
DELETE mc.*
FROM tmp.movement mo
JOIN Movimientos_componentes mc ON mo.Id_Movimiento = mc.Id_Movimiento;
REPLACE INTO vn2008.Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento,28, round(((m.Preu * (100 - m.Descuento) /100 )) ,3)
FROM Movimientos m
JOIN tmp.movement mo ON m.Id_Movimiento = mo.Id_Movimiento;
SET bolRENUEVA_COMPONENTES = FALSE;
SET bolRESPETA_PRECIOS = FALSE;
WHEN 9 THEN
SET bolRENUEVA_COMPONENTES = TRUE;
SET bolRESPETA_PRECIOS = TRUE;
END CASE;
IF bolRENUEVA_COMPONENTES THEN
DELETE mc.*
FROM tmp.movement mo
JOIN Movimientos_componentes mc ON mo.Id_Movimiento = mc.Id_Movimiento
JOIN tarifa_componentes tc ON tc.Id_Componente = mc.Id_Componente
WHERE tc.is_renewable = TRUE;
REPLACE INTO Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento, bc.component_id, bc.cost
FROM Movimientos m
JOIN tmp.movement mo ON m.Id_Movimiento = mo.Id_Movimiento
JOIN tmp.bionic_component bc ON bc.item_id = m.Id_Article AND bc.warehouse_id = mo.warehouse_id
LEFT JOIN Movimientos_componentes mc ON mc.Id_Movimiento = m.Id_Movimiento AND mc.Id_Componente = bc.component_id
LEFT JOIN tarifa_componentes tc ON tc.Id_Componente = bc.component_id
WHERE IF(mc.Id_Componente IS NULL AND tc.is_renewable = FALSE,FALSE,TRUE);
END IF;
IF bolRESPETA_PRECIOS THEN
REPLACE INTO vn2008.Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento,intComponent, round((m.Preu * (100 - m.Descuento) /100 ) - SUM(mc.Valor) ,3) dif
FROM Movimientos m
JOIN tmp.movement mo ON m.Id_Movimiento = mo.Id_Movimiento
LEFT JOIN Movimientos_componentes mc ON mc.Id_Movimiento = m.Id_Movimiento
WHERE mc.Id_Componente <> intComponent
GROUP BY m.Id_Movimiento
HAVING dif <> 0;
ELSE
UPDATE Movimientos m
JOIN Articles a on a.Id_Article = m.Id_Article
JOIN Tipos tp on tp.tipo_id = a.tipo_id
JOIN (SELECT SUM(mc.Valor) sum_valor,mc.Id_Movimiento
FROM Movimientos_componentes mc
JOIN tmp.movement m ON m.Id_Movimiento = mc.Id_Movimiento
GROUP BY mc.Id_Movimiento) mc ON mc.Id_Movimiento = m.Id_Movimiento
SET m.Preu = sum_valor
WHERE Tipo != 'Portes';
REPLACE INTO Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento, 21, m.Preu * (100 -m.Descuento) / 100 - sum(Valor) v_valor
FROM Movimientos m
JOIN tmp.movement mo ON m.Id_Movimiento = mo.Id_Movimiento
JOIN Movimientos_componentes mc ON mc.Id_Movimiento = m.Id_Movimiento
WHERE mc.Id_Componente != 21
GROUP BY m.Id_Movimiento having round(v_valor,4) <> 0;
END IF;
UPDATE Movimientos m
JOIN (SELECT SUM(mc.Valor) sum_valor,mc.Id_Movimiento
FROM Movimientos_componentes mc
JOIN tmp.movement m ON m.Id_Movimiento = mc.Id_Movimiento
join bi.tarifa_componentes tc using(Id_Componente)
join bi.tarifa_componentes_series tcs on tcs.tarifa_componentes_series_id = tc.tarifa_componentes_series_id AND tcs.base
GROUP BY mc.Id_Movimiento) mc ON mc.Id_Movimiento = m.Id_Movimiento
SET m.CostFixat = sum_valor, PrecioFijado = 1;
DELETE mc.*
FROM Movimientos_componentes mc
JOIN tmp.movement mo ON mo.Id_Movimiento = mc.Id_Movimiento
JOIN Movimientos m on m.Id_Movimiento = mc.Id_Movimiento
JOIN Articles a ON a.Id_Article = m.Id_Article
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
WHERE Tipo = 'Portes';
INSERT INTO Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento, 15, preu
FROM Movimientos m
JOIN tmp.movement mo ON mo.Id_Movimiento = m.Id_Movimiento
JOIN Articles a ON a.Id_Article = m.Id_Article
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
WHERE Tipo = 'Portes' AND preu > 0;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_movement_update_mode` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_movement_update_mode`(IN idMOV BIGINT, IN i_MODE INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.movement;
CREATE TEMPORARY TABLE tmp.movement
(PRIMARY KEY (Id_Movimiento)) ENGINE = MEMORY
SELECT Id_Movimiento, warehouse_id
FROM Movimientos m
JOIN Tickets t using(Id_Ticket)
WHERE m.Id_Movimiento = idMOV;
CALL bionic_movement_update(i_MODE);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_movimiento_precio_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_movimiento_precio_update`(IN i_mov INT)
BEGIN
DECLARE d_compo_precio DOUBLE;
DECLARE d_mov_precio DOUBLE;
SELECT SUM(Valor) INTO d_compo_precio
FROM bi.movimientos_componentes
WHERE Id_Movimiento = i_mov;
SELECT Preu INTO d_mov_precio
FROM Movimientos
WHERE Id_Movimiento = i_mov;
IF d_mov_precio <> d_compo_precio
AND d_compo_precio IS NOT NULL
AND d_mov_precio IS NOT NULL
THEN
INSERT INTO bi.movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
VALUES (i_mov, 21, d_mov_precio - d_compo_precio)
ON DUPLICATE KEY UPDATE Valor = Valor + d_mov_precio - d_compo_precio ;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_tickets_range_bionizar` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_tickets_range_bionizar`(IN datSTART DATE, IN datEND DATE)
BEGIN
DECLARE done BIT DEFAULT 0;
DECLARE datEND_Midnight DATETIME DEFAULT vn2008.dayend(datEND);
DECLARE v_ticket BIGINT;
DECLARE rs CURSOR FOR
SELECT DISTINCT t.Id_Ticket
FROM
(
select t.Id_Ticket, IFNULL(sum(Valor),0) - (Preu * (100 - m.Descuento)/100) as Diferencia, NULL as Nothing
from vn2008.Tickets t
join vn2008.Movimientos m on t.Id_Ticket = m.Id_Ticket
join vn2008.Articles a using(Id_Article)
left join vn2008.Movimientos_componentes mc using(Id_Movimiento)
join vn2008.Tipos tp on a.tipo_id = tp.tipo_id
where t.Fecha between datSTART and datEND_Midnight
and not tp.confeccion
and m.Cantidad > 0
and tp.reino_id != 6
group by Id_Movimiento
having ABS(Diferencia) > 1 OR (Diferencia IS NULL)
UNION ALL
SELECT t.Id_Ticket, NULL, NULL
FROM Tickets t
LEFT JOIN
(
SELECT DISTINCT t.Id_Ticket, 0
FROM Tickets t
JOIN Movimientos m on m.Id_Ticket = t.Id_Ticket
JOIN Articles a on a.Id_Article = m.Id_Article
JOIN Tipos tp on a.tipo_id = tp.tipo_id
JOIN Movimientos_componentes mc on mc.Id_Movimiento = m.Id_Movimiento
JOIN tarifa_componentes tc on tc.Id_Componente = mc.Id_Componente
WHERE (tarifa_componentes_series_id = 1 OR tp.reino_id = 6)
AND t.Fecha between datSTART and datEND_Midnight
) sub on sub.Id_Ticket = t.Id_Ticket
WHERE sub.Id_Ticket IS NULL
AND t.Fecha between datSTART and datEND_Midnight
UNION ALL
SELECT m.Id_Ticket, count(Id_Movimiento) as Lineas_totales, Lineas_conPorte
FROM Movimientos m
JOIN Articles a on a.Id_Article = m.Id_Article
JOIN Tipos tp on tp.tipo_id = a.tipo_id
JOIN Tickets t on m.Id_Ticket = t.Id_Ticket
JOIN v_expeditions_shipping_charge v on v.Id_ticket = t.Id_Ticket
LEFT JOIN
(
SELECT m.Id_Ticket, count(Id_Componente) Lineas_conPorte
FROM Movimientos_componentes mc
JOIN Movimientos m using(Id_Movimiento)
JOIN Tickets t using(Id_Ticket)
WHERE Id_Componente = 15
AND Fecha between datSTART and datEND_Midnight
GROUP BY m.Id_Ticket
) sub on sub.Id_Ticket = t.Id_Ticket
WHERE t.Fecha between datSTART and datEND_Midnight
AND Preu != 0
AND tp.reino_id != 6
AND shipping_charge > 1
GROUP BY m.Id_Ticket
HAVING Lineas_totales > IFNULL(Lineas_conPorte,0)
) sub
JOIN Tickets t ON t.Id_Ticket = sub.Id_Ticket
JOIN warehouse w ON w.id = t.warehouse_id
WHERE w.inventario;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN rs;
FETCH rs INTO v_ticket ;
WHILE NOT done DO
CALL bionic_calc_ticket(v_ticket);
call Ditacio(v_ticket
,'Bioniza Ticket'
,'T'
, 20
, 'proc bionic_tickets_range_bionizar'
, NULL);
FETCH rs INTO v_ticket ;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bonus_comparados` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bonus_comparados`()
BEGIN
SELECT CodigoTrabajador as Comercial
, T.Fecha
, bs.Id_Ticket
, T.Alias
, bs.Id_Article
, A.Article
, A.Medida
,A.Categoria
, O.Abreviatura
, bs.amount
, bs.bonus
, amount * bonus * IF(bonus_buenos.bonus_sales_id IS NULL,0,1) as saldo
FROM bonus_sales bs
JOIN Articles A USING(Id_Article)
JOIN Trabajadores USING(Id_Trabajador)
JOIN Tickets T USING(Id_Ticket)
JOIN Clientes C USING(Id_Cliente)
JOIN Origen O ON O.id = A.id_origen
JOIN Permisos P ON bs.Id_Trabajador = P.Id_Trabajador
LEFT JOIN (
select b.bonus_sales_id
from bonus_sales b
left join Movimientos M using(Id_Ticket, Id_Article)
join Tickets T on T.Id_Ticket = b.Id_Ticket
where Fecha >= '2012-12-01'
and Cantidad > amount / 2
) bonus_buenos USING(bonus_sales_id)
WHERE T.Fecha > '2012-12-01' AND invoice AND Id_Grupo = 6;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_label` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_label`(IN entry_id_ INT, IN groupby TINYINT(1))
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE label INT;
DECLARE id INT;
DECLARE recordset CURSOR FOR SELECT Compres.Etiquetas, Compres.Id_Compra FROM Compres INNER JOIN
(SELECT e.Id_entrada FROM Entradas e INNER JOIN (
SELECT Id_Entrada,Inventario,Id_proveedor,travel_id,Id_Agencia FROM Entradas e1 INNER JOIN travel t ON e1.travel_id = t.id WHERE Id_Entrada = entry_id_) y
ON y.Inventario = e.Inventario AND e.travel_id = y.travel_id AND e.Id_proveedor = y.Id_proveedor AND y.Id_Agencia = e.Id_Agencia
WHERE (0 OR e.Id_Entrada = entry_id_)) entry_label
ON Compres.Id_Entrada = entry_label.Id_entrada
INNER JOIN Articles ON Compres.Id_Article = Articles.Id_Article WHERE Articles.Imprimir <> FALSE;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
DROP TEMPORARY TABLE IF EXISTS `buy_label_source`;
CREATE TEMPORARY TABLE `buy_label_source`
(
`buy_id` INT(11) NOT NULL
)
ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
OPEN recordset;
REPEAT
FETCH recordset INTO label, id;
WHILE label > 0 DO
SET label = label - 1;
INSERT INTO buy_label_source (buy_id) VALUES (id);
END WHILE;
UNTIL done END REPEAT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_label_bunch` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_label_bunch`(IN entry_id_ INT, IN groupby TINYINT(1),IN single TINYINT(1), IN idCOM BIGINT)
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE date_ DATE;
DECLARE provider_id INT;
DECLARE agency_id INT;
DECLARE i_wh INT;
DECLARE label INT;
DECLARE id INT;
DECLARE recordset CURSOR FOR
SELECT ROUND(C.Cantidad / IF(C.caja = FALSE, 1,C.Grouping) + 0.49), C.Id_Compra
FROM Compres C
INNER JOIN entry_label ON C.Id_Entrada = entry_label.entry_id
INNER JOIN Articles A ON C.Id_Article = A.Id_Article
WHERE (A.Imprimir <> FALSE AND idCOM = 0 AND C.Novincular = FALSE)
OR idCOM = C.Id_Compra;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
SET idCOM = IFNULL(idCOM, 0);
DROP TEMPORARY TABLE IF EXISTS `entry_label`;
CREATE TEMPORARY TABLE `entry_label`
(
`entry_id` INT(11) NOT NULL
)
ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
IF groupby <> FALSE THEN
SELECT Id_Proveedor, DATE(landing), travel.agency_id, warehouse_id INTO provider_id, date_, agency_id, i_wh
FROM Entradas
INNER JOIN travel ON travel.id = Entradas.travel_id
WHERE Id_Entrada = entry_id_;
INSERT INTO entry_label (entry_id) SELECT Entradas.Id_Entrada FROM Entradas
INNER JOIN travel ON travel.id = Entradas.travel_id
WHERE Entradas.Inventario = FALSE AND Entradas.Id_Proveedor = provider_id
AND warehouse_id = i_wh AND DATE(landing) = date_ AND travel.agency_id= agency_id;
ELSE
INSERT INTO entry_label (entry_id) VALUES (entry_id_);
SELECT landing INTO date_ FROM Entradas e
JOIN travel t ON t.id = e.travel_id
JOIN Compres c ON c.Id_Entrada = e.Id_Entrada
WHERE (entry_id_ = e.Id_Entrada OR c.Id_Compra = idCOM) LIMIT 1;
END IF;
DROP TEMPORARY TABLE IF EXISTS `buy_label_source`;
CREATE TEMPORARY TABLE `buy_label_source`
(
`buy_id` INT(11) NOT NULL
)
ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
OPEN recordset;
FETCH recordset INTO label, id;
REPEAT
REPEAT
SET label = label - 1;
INSERT INTO buy_label_source (buy_id) VALUES (id);
UNTIL label <= 0 OR single END REPEAT;
INSERT INTO buy_label_source (buy_id) VALUES (0);
FETCH recordset INTO label, id;
UNTIL done END REPEAT;
SELECT C.Id_Article,@a := IF(A.min AND IFNULL(rate_3,C.Tarifa3) < A.PVP, A.PVP, IFNULL(rate_3,C.Tarifa3)) Tarifa2,
ROUND(IF(C.caja = FALSE, @a,@a * C.Grouping),2) AS Bunch,
ROUND(@a / A.Tallos,2) AS PPT,
A.Article, A.Medida, A.Color, A.Categoria, Abreviatura as Origen, C.Productor,
A.Tallos, C.grouping, E.Notas_Eva,P.Proveedor,C.Packing
FROM buy_label_source bls
LEFT JOIN Compres C ON C.Id_Compra = bls.buy_id
LEFT JOIN Entradas E ON E.Id_Entrada = C.Id_Entrada
LEFT JOIN Articles A ON A.Id_Article = C.Id_Article
LEFT JOIN Proveedores P ON P.Id_Proveedor = E.Id_Proveedor
LEFT JOIN Origen o ON A.id_origen = o.id
LEFT JOIN (
SELECT item_id, rate_3 FROM price_fixed
WHERE IFNULL(date_,CURDATE()) BETWEEN date_start AND date_end AND rate_3
AND warehouse_id IN (0,i_wh)
GROUP BY item_id
) pf ON pf.item_id = A.Id_Article;
DROP TEMPORARY TABLE `entry_label`;
DROP TEMPORARY TABLE `buy_label_source`;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_scan` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_scan`(v_barcode VARCHAR(255), v_labels INT)
BEGIN
DECLARE v_edi INT;
DECLARE v_buy INT;
DECLARE v_item INT;
DECLARE v_do_photo BOOL;
IF SUBSTR(v_barcode, 3, 2) != '99' THEN
SET v_barcode = CONCAT(LEFT(v_barcode, 12), '010');
END IF;
SELECT e.id, c.Id_Compra, c.Id_Article, a.do_photo
INTO v_edi, v_buy, v_item, v_do_photo
FROM buy_edi e
JOIN Compres c ON c.buy_edi_id = e.id
JOIN Articles a ON a.Id_Article = c.Id_Article
WHERE e.barcode = v_barcode
AND e.entry_year = YEAR(CURDATE())
ORDER BY c.Id_Compra
LIMIT 1;
UPDATE buy_edi SET scanned = TRUE WHERE id = v_edi;
UPDATE Compres
SET Vida = Vida + IF(v_labels != -1, v_labels, Etiquetas)
WHERE Id_Compra = v_buy;
IF v_do_photo THEN
UPDATE Articles SET do_photo = FALSE WHERE Id_Article = v_item;
END IF;
SELECT v_buy buy, v_do_photo do_photo;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_split` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_split`(v_buy INT, v_fv_entry INT, v_pca_entry INT)
BEGIN
DECLARE v_item INT;
DECLARE v_packing INT;
DECLARE v_remaining INT;
DECLARE v_labels INT;
DECLARE v_remainder INT;
DECLARE v_is_buy INT;
DECLARE v_id INT;
DECLARE v_amount INT;
DECLARE v_done BOOL DEFAULT FALSE;
DECLARE cur CURSOR FOR
SELECT TRUE, c.Id_Compra, c.Cantidad - IFNULL((c.Vida * c.Packing), 0)
FROM Compres c
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
WHERE c.Id_Article = v_item
AND t.shipment = CURDATE() AND t.warehouse_id_out IN (7, 40)
AND t.warehouse_id NOT IN (44, 1)
AND NOT e.redada AND NOT e.Inventario
AND IFNULL(c.Vida, 0) < c.Etiquetas
LOCK IN SHARE MODE
UNION ALL
SELECT FALSE, m.Id_Movimiento, m.Cantidad - IFNULL(l.stem, 0)
FROM Movimientos m
JOIN Tickets t ON t.Id_Ticket = m.Id_Ticket
LEFT JOIN movement_label l ON l.Id_Movimiento = m.Id_Movimiento
WHERE m.Id_Article = v_item
AND t.Fecha = CURDATE() AND t.warehouse_id IN (7, 40)
AND NOT t.Etiquetasemitidas
AND IFNULL(l.stem, 0) < m.Cantidad
LOCK IN SHARE MODE;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET v_done = TRUE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
SELECT Id_Article, Packing, Cantidad
INTO v_item, v_packing, v_remaining
FROM Compres WHERE Id_Compra = v_buy;
DROP TEMPORARY TABLE IF EXISTS tmp.split;
CREATE TEMPORARY TABLE tmp.split
(
is_buy BOOL,
id INT,
labels INT,
remainder INT
)
ENGINE = MEMORY;
OPEN cur;
l: LOOP
SET v_done = FALSE;
FETCH cur INTO v_is_buy, v_id, v_amount;
IF v_done OR v_remaining = 0 THEN
LEAVE l;
END IF;
SET v_amount = LEAST(v_amount, v_remaining);
SET v_remaining = v_remaining - v_amount;
SET v_labels = v_amount DIV v_packing;
INSERT INTO tmp.split
VALUES (v_is_buy, v_id, v_labels, v_amount % v_packing);
IF v_is_buy
THEN
UPDATE Compres
SET Vida = Vida + v_labels
WHERE Id_Compra = v_id;
ELSE
INSERT INTO movement_label
SET
Id_Movimiento = v_id,
stem = v_amount,
label = v_labels
ON DUPLICATE KEY UPDATE
stem = stem + VALUES(stem),
label = label + VALUES(label);
END IF;
END LOOP;
CLOSE cur;
CALL buy_transfer (v_buy, v_fv_entry, v_pca_entry);
UPDATE Compres SET dispatched = Vida * Packing
WHERE Id_Compra = v_buy;
DROP TEMPORARY TABLE IF EXISTS tmp.aux;
CREATE TEMPORARY TABLE tmp.aux
ENGINE = MEMORY
SELECT s.labels, s.remainder, w.`name` destination,
a.Id_Article, a.Article, a.Medida
FROM tmp.split s
JOIN Compres c ON c.Id_Compra = s.id
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
JOIN warehouse w ON t.warehouse_id = w.id
WHERE s.is_buy;
INSERT INTO tmp.aux
SELECT s.labels, s.remainder, o.Consignatario,
a.Id_Article, a.Article, a.Medida
FROM tmp.split s
JOIN Movimientos m ON m.Id_Movimiento = s.id
JOIN Articles a ON a.Id_Article = m.Id_Article
JOIN Tickets t ON t.Id_Ticket = m.Id_Ticket
JOIN Consignatarios o ON o.Id_Consigna = t.Id_Consigna
WHERE NOT s.is_buy;
SELECT * FROM tmp.aux;
DROP TEMPORARY TABLE
tmp.split,
tmp.aux;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `buy_tarifas`(v_buy INT)
BEGIN
DECLARE v_entry INT;
DECLARE v_wh INT;
SELECT Id_Entrada, warehouse_id
INTO v_entry, v_wh
FROM Compres
JOIN Entradas USING(Id_Entrada)
JOIN travel ON travel.id = travel_id
WHERE v_buy = Id_Compra;
CALL buy_tarifas_table (v_entry);
UPDATE Compres C
LEFT JOIN Cubos CB USING(Id_Cubo)
JOIN Articles A USING(Id_Article)
JOIN Tipos TP USING(tipo_id)
JOIN Entradas E USING(Id_Entrada)
JOIN travel TR ON TR.id = E.travel_id
JOIN Agencias AG ON TR.agency_id = AG.Id_Agencia
LEFT JOIN recibida_entrada re ON E.Id_Entrada = re.Id_Entrada
LEFT JOIN awb_recibida ar ON re.awb_recibida = ar.recibida_id
LEFT JOIN v_awb_volumen va ON va.awb_id = ar.awb_id
JOIN tblTARIFAS TC
SET C.Portefijo = @PF:=
IF (va.importe,
ROUND((va.importe * TP.density * CM3_2(C.Id_Cubo, C.Id_Article) / 1000) / (va.Vol_Total * 167 * C.Packing ),3),
ROUND(IFNULL(((AG.m3 * cm3_2(C.Id_Cubo, C.Id_Article)) / 1000000) / C.Packing,0),3)
),
C.Comisionfija = @CF:= ROUND(IFNULL(E.comision * C.Costefijo / 100,0),3),
C.Embalajefijo = @EF:= IF(CB.Retornable != 0, 0, ROUND(IFNULL( CB.Valor / C.Packing ,0),3)),
C.Tarifa3 = @t3:= IF(TC.t3 = 0, C.Costefijo,ROUND((C.Costefijo + @CF + @EF + @PF) / ((100 - TC.t3 - TP.promo ) /100) ,2)),
C.Tarifa2 = @t2:= ROUND(@t3 * (1 + ( (TC.t2 - TC.t3)/100) ),2),
C.Tarifa2 = IF(@t2 <= @t3, @t3 , @t2)
WHERE C.Id_Compra = v_buy;
IF v_wh = 42
THEN
UPDATE Compres
SET Tarifa2 = Tarifa3
WHERE Id_Compra = v_buy;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_awb` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `buy_tarifas_awb`(IN strAWB varchar(18))
BEGIN
DECLARE datINV DATE;
DECLARE wh_id INT;
DECLARE idENTRADA INT;
SELECT warehouse_id, E.Id_Entrada INTO wh_id, idENTRADA
FROM Entradas E
JOIN travel ON travel.id = travel_id
JOIN recibida_entrada re on E.Id_Entrada = re.Id_Entrada
JOIN awb_recibida ar ON re.awb_recibida = ar.recibida_id
JOIN awb ON awb.id = ar.awb_id
WHERE awb.codigo = strAWB
LIMIT 1;
CALL buy_tarifas_table(idENTRADA);
UPDATE Compres C
LEFT JOIN Cubos CB USING(Id_Cubo)
JOIN Articles A USING(Id_Article)
JOIN Entradas E USING(Id_Entrada)
JOIN recibida_entrada re on E.Id_Entrada = re.Id_Entrada
JOIN awb_recibida ar ON re.awb_recibida = ar.recibida_id
JOIN v_awb_volumen va ON va.awb_id = ar.awb_id
JOIN Tipos TP USING(tipo_id)
JOIN travel TR ON TR.id = E.travel_id
JOIN Agencias AG ON TR.agency_id = AG.Id_Agencia
JOIN tblTARIFAS TC
SET C.Portefijo = @PF:= round((va.importe * TP.density * CM3_2(C.Id_Cubo, C.Id_Article) / 1000) / (va.Vol_Total * 167 * C.Packing ),3),
C.Comisionfija = @CF:= ROUND(IFNULL(E.comision * C.Costefijo / 100,0),3),
C.Embalajefijo = @EF:= IF(CB.Retornable != 0, 0, ROUND(IFNULL( CB.Valor / C.Packing ,0),3)),
C.Tarifa3 = @t3:= IF(TC.t3 = 0, C.Costefijo,ROUND((C.Costefijo + @CF + @EF + @PF) / ((100 - TC.t3 - TP.promo ) /100) ,2)),
C.Tarifa2 = @t2:= round(@t3 * (1 + ( (TC.t2 - TC.t3)/100) ),2),
C.Tarifa2 = @t2:= IF(@t2 <= @t3, @t3 , @t2)
WHERE va.codigo = strAWB ;
CASE wh_id
WHEN 41 THEN
UPDATE Compres
SET Tarifa2 = Tarifa3
WHERE Id_Entrada = idENTRADA;
ELSE
BEGIN
END;
END CASE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_awb_bucle` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `buy_tarifas_awb_bucle`()
BEGIN
DECLARE strAWB VARCHAR(25);
DECLARE done INT DEFAULT FALSE;
DECLARE rs CURSOR FOR
SELECT codigo
FROM awb
WHERE MYSQL_TIME > '2015-06-30' AND importe > 0 ;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN rs;
FETCH rs INTO strAWB;
WHILE NOT done DO
insert into killme select strAWB, MYSQL_TIME, importe from awb where codigo = strAWB;
call buy_tarifas_awb(strAWB);
FETCH rs INTO strAWB;
select * from killme order by fecha desc;
END WHILE;
drop temporary table killme;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_entry` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `buy_tarifas_entry`(IN idENTRADA INT(11))
BEGIN
DECLARE datINV DATE;
DECLARE wh_id INT;
DECLARE m3i INTEGER;
SELECT warehouse_id INTO wh_id
FROM Entradas
JOIN travel ON travel.id = travel_id
WHERE Id_Entrada = idENTRADA;
CALL buy_tarifas_table(idENTRADA);
SELECT AG.m3 * sum( etiquetas * IFNULL(((AG.m3 * cm3_2(C.Id_Cubo, C.Id_Article)) / 1000000) ,0) ) /
sum(etiquetas * IFNULL(((AG.m3 * ( TP.density / 167 ) * cm3_2(C.Id_Cubo, C.Id_Article)) / 1000000) ,0)) INTO m3i
FROM Compres C
JOIN Articles A USING(Id_Article)
JOIN Entradas E USING(Id_Entrada)
JOIN Tipos TP USING(tipo_id)
JOIN travel TR ON TR.id = E.travel_id
JOIN Agencias AG ON TR.agency_id = AG.Id_Agencia
WHERE E.Id_Entrada = idENTRADA;
UPDATE Compres C
LEFT JOIN Cubos CB USING(Id_Cubo)
JOIN Articles A USING(Id_Article)
JOIN Entradas E USING(Id_Entrada)
LEFT JOIN recibida_entrada re on E.Id_Entrada = re.Id_Entrada
LEFT JOIN awb_recibida ar ON re.awb_recibida = ar.recibida_id
LEFT JOIN v_awb_volumen va ON va.awb_id = ar.awb_id
JOIN Tipos TP USING(tipo_id)
JOIN travel TR ON TR.id = E.travel_id
JOIN Agencias AG ON TR.agency_id = AG.Id_Agencia
JOIN tblTARIFAS TC
SET C.Portefijo = @PF:=
IF (va.importe,
round((va.importe * TP.density * CM3_2(C.Id_Cubo, C.Id_Article) / 1000) / (va.Vol_Total * 167 * C.Packing ),3),
ROUND(IFNULL(((AG.m3 * @cm3:= cm3_2(C.Id_Cubo, C.Id_Article)) / 1000000) / C.Packing,0),3)
),
C.Comisionfija = @CF:= ROUND(IFNULL(E.comision * C.Costefijo / 100,0),3),
C.Embalajefijo = @EF:= IF(CB.Retornable != 0, 0, ROUND(IFNULL( CB.Valor / C.Packing ,0),3)),
C.Tarifa3 = @t3:= IF(TC.t3 = 0, C.Costefijo,ROUND((C.Costefijo + @CF + @EF + @PF) / ((100 - TC.t3 - TP.promo ) /100) ,2)),
C.Tarifa2 = @t2:= round(@t3 * (1 + ( (TC.t2 - TC.t3)/100)),2),
C.Tarifa2 = @t2:= IF(@t2 <= @t3, @t3 , @t2)
WHERE C.Id_Entrada = idENTRADA ;
CASE wh_id
WHEN 41 THEN
UPDATE Compres
SET Tarifa2 = Tarifa3
WHERE Id_Entrada = idENTRADA;
ELSE
BEGIN
END;
END CASE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_lot` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_tarifas_lot`(IN idCOMPRA INT(11))
BEGIN
DECLARE intWHIN INTEGER(3);
DECLARE intDAYS INTEGER(3);
DECLARE dbM3 DOUBLE;
DECLARE done INT DEFAULT 0;
DECLARE datFEC DATE;
DECLARE wh INTEGER(3);
DECLARE idART INTEGER(11);
DECLARE dbCOST DOUBLE;
DECLARE m3value DOUBLE;
DECLARE intLIFE INTEGER;
DECLARE intPACK INTEGER;
DECLARE intPromo DOUBLE;
DECLARE whlc CURSOR FOR SELECT whin, days, m3 FROM warehouse_lc WHERE whout = @wh:= wh UNION ALL SELECT @wh, 0, 0 ;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;
SELECT
Id_Article,
warehouse_id,
landing,
nz(Costefijo) + nz(Embalajefijo) + nz(Portefijo) + nz(Comisionfija),
life,
C.Packing,
(cm3_2(C.Id_Cubo, C.Id_Article) / 1000000) / C.Packing,
promo
INTO idART , wh , datFEC , dbCOST , intLIFE, intPACK, m3value, intPromo FROM
Compres C
JOIN
Articles A USING (Id_Article)
JOIN
Tipos TP USING (tipo_id)
JOIN
Entradas E USING (Id_Entrada)
JOIN
travel tr ON tr.id = E.travel_id
WHERE
Id_Compra = idCOMPRA;
OPEN whlc;
FETCH whlc INTO intWHIN, intDAYS, dbM3;
WHILE NOT done DO
SELECT idART , wh , datFEC , dbCOST , intLIFE, intPACK, m3value, intWHIN, intDAYS, dbM3, done, dbCOST + (m3value * dbM3);
INSERT INTO price_fixed(item_id,
rate_3,
rate_2,
date_start,
date_end,
warehouse_id)
SELECT idART,
round( (dbCOST + (m3value * dbM3)) / ((100 - t3 - intPromo )/100) , 2),
@tf2 := round((dbCOST + (m3value * dbM3)) / ((100 - t2 - intPromo)/100) ,2),
TIMESTAMPADD(DAY, intDAYS, datFEC),
TIMESTAMPADD(DAY, intLIFE, datFEC),
intWHIN
FROM tarifas
WHERE warehouse_id = intWHIN AND fecha <= TIMESTAMPADD(DAY, intDAYS, datFEC)
ORDER BY fecha DESC
LIMIT 1;
FETCH whlc INTO intWHIN, intDAYS, dbM3;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_recalcular_almacen` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_tarifas_recalcular_almacen`(IN wh_id INT, IN datFEC DATE)
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE idE INT;
DECLARE cur1 CURSOR FOR
SELECT Id_Entrada
FROM Entradas
JOIN travel ON travel.id = travel_id
WHERE landing >= datFEC AND wh_id IN (0,warehouse_id);
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;
OPEN cur1;
REPEAT
FETCH cur1 INTO idE;
IF NOT done THEN
Call buy_tarifas_entry(idE);
END IF;
UNTIL done END REPEAT;
CLOSE cur1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_T3` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `buy_tarifas_T3`(IN idCOMPRA INT(11))
BEGIN
DECLARE idENTRADA BIGINT;
DECLARE wh_id INT;
SELECT Id_Entrada, warehouse_id INTO idENTRADA, wh_id
FROM Compres
JOIN Entradas using(Id_Entrada)
JOIN travel ON travel.id = travel_id
WHERE idCOMPRA = Id_Compra;
CALL buy_tarifas_table(idENTRADA);
UPDATE Compres C
JOIN tblTARIFAS TC
SET
C.Tarifa3 = @t3:= C.Tarifa3,
C.Tarifa2 = @t2:= round(@t3 * (1 + ( (TC.t2 - TC.t3)/100) ),2),
C.Tarifa2 = @t2:= IF(@t2 <= @t3, @t3 + 0.01, @t2)
WHERE C.Id_Compra = idCOMPRA;
IF wh_id = 41 THEN
UPDATE Compres
SET Tarifa2 = Tarifa3
WHERE Id_Compra = idCOMPRA;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_T3_pf` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `buy_tarifas_T3_pf`(IN idPRICE INT, IN t3 DOUBLE)
BEGIN
DECLARE idENTRADA BIGINT;
DECLARE idCOMPRA BIGINT;
DECLARE datFEC DATE;
DECLARE wh INT;
DECLARE idART BIGINT;
SELECT date_start, warehouse_id, item_id INTO datFEC, wh, idART
FROM price_fixed WHERE price_fixed_id = idPRICE;
SELECT C.Id_Entrada, Id_Compra INTO idENTRADA, idCOMPRA
FROM Compres C
JOIN Entradas E using(Id_Entrada)
JOIN travel TR on TR.id = E.travel_id
WHERE Id_Article = idART
AND wh IN (0, warehouse_id)
AND Novincular = FALSE
AND NOT Redada
AND landing <= datFEC
ORDER BY landing DESC
LIMIT 1;
CALL buy_tarifas_table(idENTRADA);
SELECT
@t2:= round(t3 * (1 + ( (TC.t2 - TC.t3)/100) ),2) as rate_2b,
@t2:= IF(@t2 <= t3, t3 + 0.01, @t2) as rate_2
FROM price_fixed PF
JOIN Compres C ON C.Id_Compra = idCOMPRA AND price_fixed_id = idPRICE
JOIN tblTARIFAS TC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_tarifas_table` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_tarifas_table`(v_entry INT)
BEGIN
DECLARE v_date DATE;
DECLARE v_wh INT;
SELECT landing, warehouse_id INTO v_date , v_wh
FROM travel TR
JOIN Entradas E ON TR.id = E.travel_id
WHERE Id_Entrada = v_entry;
DROP TEMPORARY TABLE IF EXISTS tblTARIFAS;
CREATE TEMPORARY TABLE tblTARIFAS
ENGINE = MEMORY
SELECT * FROM
(
SELECT * FROM
(
SELECT t0, t1, t2, t3
FROM tarifas
WHERE fecha <= v_date
AND warehouse_id = v_wh
ORDER BY fecha DESC
) sub
UNION ALL
SELECT t0, t1, t2, t3
FROM tblContadores
) sub2
LIMIT 1;
UPDATE bi.rotacion r
JOIN Compres c ON c.Id_Article = r.Id_Article
SET cm3 = vn2008.cm3_unidad(c.Id_Compra)
WHERE Id_Entrada = v_entry
AND r.warehouse_id = v_wh;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `buy_transfer` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `buy_transfer`(v_buy INT, v_fv_entry INT, v_pca_entry INT)
proc: BEGIN
DECLARE v_wh INT;
DECLARE v_entry INT;
DECLARE v_fv INT;
DECLARE v_amount INT;
DECLARE v_item INT;
DECLARE v_holland_wh INT DEFAULT 7;
SELECT t.warehouse_id, tp.FV INTO v_wh, v_fv
FROM Compres c
JOIN Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN travel t ON t.id = e.travel_id
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
WHERE c.Id_Compra = v_buy;
IF v_wh != v_holland_wh THEN
LEAVE proc;
END IF;
SET v_entry = IF(v_fv, v_fv_entry, v_pca_entry);
SET v_entry = IFNULL(v_entry, IFNULL(v_pca_entry, v_fv_entry));
IF v_entry IS NULL THEN
LEAVE proc;
END IF;
SELECT Id_Article INTO v_item
FROM Compres WHERE Id_Compra = v_buy;
SELECT IFNULL(SUM(amount), 0) INTO v_amount
FROM (
SELECT SUM(c.Cantidad) amount
FROM Compres c
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
WHERE c.Id_Article = v_item
AND t.landing = CURDATE()
AND t.warehouse_id = v_holland_wh
UNION ALL
SELECT -SUM(c.Cantidad)
FROM Compres c
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
WHERE c.Id_Article = v_item
AND t.shipment = CURDATE()
AND t.warehouse_id_out = v_holland_wh
UNION ALL
SELECT -SUM(Cantidad)
FROM Movimientos m
JOIN Tickets t ON t.Id_Ticket = m.Id_Ticket
WHERE m.Id_Article = v_item
AND t.Fecha = CURDATE()
AND t.warehouse_id = v_holland_wh
) t;
IF v_amount <= 0 THEN
LEAVE proc;
END IF;
INSERT INTO Compres (
Id_Article, Etiquetas, Cantidad, Id_Entrada,
Id_Cubo, Packing, grouping, caja, Costefijo, Portefijo,
Embalajefijo, Comisionfija, novincular, buy_edi_id)
SELECT
c.Id_Article,
v_amount DIV c.Packing,
v_amount,
v_entry,
c.Id_Cubo,
c.Packing,
c.grouping,
c.caja,
@cost := IFNULL(c.Costefijo, 0) + IFNULL(c.Comisionfija, 0) + IFNULL(c.Portefijo, 0),
@porte := ROUND((@cm3:= cm3_2(c.Id_Cubo, c.Id_Article)) * a.m3 / 1000000 / c.Packing, 3),
c.EmbalajeFijo,
@comision := ROUND(c.Costefijo * e.comision / 100, 3),
c.novincular,
c.buy_edi_id
FROM Compres c
JOIN Cubos cu ON cu.Id_Cubo = c.Id_Cubo
JOIN Entradas e ON e.Id_Entrada = v_entry
JOIN travel t ON t.id = e.travel_id
JOIN Agencias a ON t.agency_id = a.Id_Agencia
WHERE c.Id_Compra = v_buy;
CALL buy_tarifas (LAST_INSERT_ID());
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Cajas_Saldo_Detalle` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Cajas_Saldo_Detalle`()
BEGIN
Select Proveedores.Id_Proveedor, Proveedor, Fecha, round(Importe) as Importe
from Proveedores
join
(
select Fecha, sub.Id_Proveedor, sum(Importe) as Importe
from
(
select round(sum(Importe),2) as Importe, TIMESTAMPADD(DAY,-1,CURDATE()) as Fecha, Id_Proveedor
from pago
join Proveedores using(Id_Proveedor)
where Fecha >= '2011-01-01'
and Id_Proveedor NOT IN (select id from empresa)
group by Id_Proveedor
union all
select IFNULL(-1 * round(sum(rv.Cantidad / if(Id_Moneda = 2,rate,1)),2),0) AS Vto, TIMESTAMPADD(DAY,-1,CURDATE()), proveedor_id
from recibida_vencimiento rv
join recibida r on r.id = rv.recibida_id
join reference_rate rr on rr.`date` = rv.fecha
join Proveedores P on P.Id_Proveedor = r.proveedor_id
join Paises PS on PS.Id = P.pais_id
where rv.fecha between '2011-01-01' and CURDATE()-1
and Id_Proveedor NOT IN (select id from empresa)
group by proveedor_id
union all
select -1 * round(rv.Cantidad / if(Id_Moneda = 2,currate(),1),2) AS Vto, rv.fecha, proveedor_id
from recibida_vencimiento rv
join recibida r on r.id = rv.recibida_id
join Proveedores P on P.Id_Proveedor = r.proveedor_id
join Paises PS on PS.Id = P.pais_id
where rv.fecha >= CURDATE()
and Id_Proveedor NOT IN (select id from empresa)
union all
select @remesas:= @pago:= @saldo:= 0.0000, curdate(), @prov:= 0) sub
group by Fecha,Id_Proveedor
) sub2 using(Id_Proveedor)
having Importe < -100
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `CalculoRemesas` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `CalculoRemesas`(IN vFechaRemesa DATE)
BEGIN
DROP TEMPORARY TABLE IF EXISTS TMP_REMESAS;
CREATE TEMPORARY TABLE TMP_REMESAS SELECT
CONCAT(p.NIF,REPEAT('0', 12-LENGTH(p.NIF))) as CIF1,
cli.Id_Cliente,
cli.Cliente,
cli.`IF` as NIF ,
cli.CC,
c.PaymentDate as Vencimiento,
0 ImporteFac,
cast(c.Recibo as decimal(10,2)) as ImporteRec,
0 as ImporteActual,
c.empresa_id,
cli.RazonSocial,
cast(c.Recibo as decimal(10,2)) as ImporteTotal,
cast(c.Recibo as decimal(10,2)) as Saldo,
p.Proveedor as Empresa,
e.abbreviation as EMP,
cli.cuenta,
CONCAT(cc_to_iban(CC),CC) AS Iban,
CONVERT(left(CC,4),UNSIGNED INT) AS nrbe ,
IF(c.empresa_id=442,sepavnl,sepafth) as SEPA,
IF(c.empresa_id=442,corevnl,corefth) as RecibidoCORE
FROM Clientes cli
JOIN
(SELECT empresa_id,
c.Id_Cliente,
sum(Importe) as Recibo,
IF((c.Vencimiento + graceDays) mod 30.001 <= day(vFechaRemesa)
,TIMESTAMPADD(DAY, (c.Vencimiento + graceDays) MOD 30.001, LAST_DAY(TIMESTAMPADD(MONTH,-1,vFechaRemesa)))
,TIMESTAMPADD(DAY, (c.Vencimiento + graceDays) MOD 30.001, LAST_DAY(TIMESTAMPADD(MONTH,-2,vFechaRemesa)))
) as PaymentDate
FROM Clientes c
JOIN pay_met pm on pm.id = pay_met_id
JOIN
(
SELECT empresa_id, Id_Cliente, Importe
FROM Facturas f
JOIN Clientes c using(Id_Cliente)
JOIN pay_met pm on pm.id = pay_met_id
WHERE IF(Importe > 0,paymentday(Fecha,c.Vencimiento + graceDays), Fecha) <= vFechaRemesa
AND pay_met_id = 4 AND deudaviva
UNION ALL
SELECT empresa_id, Id_Cliente, - Entregado
FROM Recibos r
JOIN Clientes c using(Id_Cliente)
JOIN pay_met pm on pm.id = pay_met_id
WHERE pay_met_id = 4 AND deudaviva
) sub using(Id_Cliente)
GROUP BY empresa_id, Id_Cliente
HAVING Recibo > 10
) c on c.Id_Cliente = cli.Id_Cliente
JOIN Proveedores p on p.Id_Proveedor = c.empresa_id
JOIN empresa e on e.id = c.empresa_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `calling` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `calling`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS Agenda, Agenda2;
CREATE TEMPORARY TABLE IF NOT EXISTS Agenda (Telefono varchar(15) PRIMARY KEY, Cliente VARCHAR(45));
CREATE TEMPORARY TABLE IF NOT EXISTS Agenda2 LIKE Agenda;
REPLACE Agenda(Telefono, Cliente)
SELECT Telefono, Nombre from v_Agenda2;
REPLACE Agenda(Telefono, Cliente)
SELECT DISTINCT src, clid FROM cdr WHERE src < 6000 AND clid NOT LIKE '%device%'
AND calldate > TIMESTAMPADD(DAY, -7,CURDATE()) ;
INSERT INTO Agenda2(Telefono, Cliente)
SELECT Telefono, Cliente FROM Agenda;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `camiones` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `camiones`(vWarehouse INT, vDate DATE)
BEGIN
SELECT Temperatura
,ROUND(SUM(Etiquetas * cm3_2(Id_Cubo, Id_Article))) AS cm3
,ROUND(SUM(IF(scanned,Etiquetas,0) * cm3_2(Id_Cubo, Id_Article))) AS cm3s
,ROUND(SUM(Vida * cm3_2(Id_Cubo, Id_Article))) AS cm3e
FROM (
SELECT t.Temperatura, c.Etiquetas, c.Id_Cubo, c.Id_Article, b.scanned, c.Vida
FROM Compres c
LEFT JOIN buy_edi b ON b.id = c.buy_edi_id
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN Tipos t ON t.tipo_id = a.tipo_id
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
WHERE tr.warehouse_id = vWarehouse
AND tr.landing = vDate
) sub
GROUP BY Temperatura;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Campaigns_Generator` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Campaigns_Generator`(IN datFEC DATE, IN intDAYS INT, IN intIMP INT)
BEGIN
DELETE FROM Campaigns;
INSERT INTO Campaigns(Id_Cliente, Notas)
SELECT T.Id_Cliente, CONCAT('Consumo año anterior: ',FORMAT(SUM(M.Cantidad * M.Preu * (100 - M.Descuento) / 100), 0), ' € ') as Total
FROM Movimientos M
INNER JOIN Tickets T ON T.Id_Ticket = M.Id_Ticket
WHERE Date(T.Fecha) BETWEEN ADDDATE(datFEC,-1 * intDAYS) AND datFEC
GROUP BY T.Id_Cliente;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Campaigns_GeneratorKK` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Campaigns_GeneratorKK`(IN datFEC DATE, IN intDAYS INT, IN intIMP INT)
BEGIN
DELETE FROM Campaigns;
INSERT INTO Campaigns(Id_Cliente, Notas)
SELECT T.Id_Cliente, CONCAT('Consumo año anterior: ',FORMAT(SUM(M.Cantidad * M.Preu * (100 - M.Descuento) / 100), 0), ' € ') as Total
FROM Movimientos M
INNER JOIN Tickets T ON T.Id_Ticket = M.Id_Ticket
WHERE Date(T.Fecha) BETWEEN ADDDATE(datFEC,-1 * intDAYS) AND datFEC
GROUP BY T.Id_Cliente;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Canariaskk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Canariaskk`(IN datFEC DATE, IN idWH INT , IN idEMP INT)
BEGIN
DECLARE idTICKET DOUBLE;
CALL ticket_new_complet(4712, datFEC, idWH , 20, idEMP, NULL, NULL,NULL, idTICKET);
INSERT INTO Movimientos (Id_Ticket, Id_Article, Concepte, Cantidad, Preu, PrecioFijado)
SELECT idTICKET, 95, CONCAT(Codintrastat, ' : ', IF(Abreviatura = 'XYZ', 'NAC', Abreviatura), ' : ' , Nombotanic), sum(Cantidad), Preu, TRUE
FROM Articles INNER JOIN Movimientos ON Articles.Id_Article = Movimientos.Id_Article
INNER JOIN Tickets ON Movimientos.Id_Ticket = Tickets.Id_Ticket
INNER JOIN Consignatarios ON Tickets.Id_Consigna = Consignatarios.Id_Consigna
INNER JOIN province ON Consignatarios.province_id = province.province_id
INNER JOIN Origen ON Articles.id_origen = Origen.id
WHERE date(Tickets.Fecha) = datFEC AND province.name IN ('SANTA CRUZ DE TENERIFE','LAS PALMAS DE GRAN CANARIA')
GROUP BY Nombotanic, Preu;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `check_table_existence` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `check_table_existence`(IN table_name CHAR(64))
BEGIN
DECLARE CONTINUE HANDLER FOR SQLSTATE '42S02' SET @err = 1;
SET @err = 0;
SET @table_name = table_name;
SET @sql_query = CONCAT('SELECT NULL FROM ',@table_name);
PREPARE stmt1 FROM @sql_query;
IF (@err = 1) THEN
SET @table_exists = 0;
ELSE
SET @table_exists = 1;
DEALLOCATE PREPARE stmt1;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clean` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean`(IN v_full TINYINT(1))
BEGIN
DECLARE v_date DATETIME;
DECLARE v_date_fut DATE;
DECLARE v_date18 DATETIME;
DECLARE v_date8 DATE;
DECLARE v_date6 DATE;
DECLARE strtable varchar(15) DEFAULT NULL;
DECLARE done BIT DEFAULT 0;
SET v_date = TIMESTAMPADD(MONTH, -2, CURDATE());
SET v_date18 = TIMESTAMPADD(MONTH, -18,CURDATE());
SET v_date8 = TIMESTAMPADD(DAY, -8,CURDATE());
SET v_date6 = TIMESTAMPADD(DAY, -6,CURDATE());
INSERT INTO vn2008.daily_task_log(consulta) VALUES('clean START');
DELETE FROM cdr WHERE calldate < v_date;
DELETE FROM Monitoring WHERE ODBC_TIME < v_date;
DELETE FROM Conteo WHERE Fecha < v_date;
DELETE FROM XDiario WHERE FECHA < v_date OR FECHA IS NULL;
DELETE FROM mail WHERE DATE_ODBC < v_date;
DELETE rr FROM Recibos_recorded rr JOIN Recibos r ON rr.Id_Recibos = r.Id WHERE r.Fechacobro < v_date;
SELECT MAX(idTickets_dits)
INTO @id
FROM Tickets_dits
WHERE ODBC_DATE < v_date;
DELETE FROM Tickets_dits WHERE idTickets_dits <= @id;
DELETE FROM expeditions WHERE odbc_date < v_date18;
DELETE FROM expeditions_deleted WHERE odbc_date < v_date18;
DELETE FROM Entradas_dits WHERE ODBC_DATE < v_date18;
DELETE FROM log_articles WHERE ODBC_DATE < v_date;
DELETE FROM sms WHERE DATE_ODBC < v_date18;
DELETE FROM Movimientos_mark WHERE odbc_date < v_date;
DELETE FROM Splits WHERE Fecha < v_date18;
DELETE ts FROM Tickets_stack ts JOIN Tickets t ON ts.Id_Ticket = t.Id_Ticket WHERE t.Fecha < v_date;
DELETE tobs FROM ticket_observation tobs JOIN Tickets t ON tobs.Id_Ticket = t.Id_Ticket WHERE t.Fecha < v_date;
DELETE tobs FROM movement_label tobs JOIN Movimientos m ON tobs.Id_Movimiento = m.Id_Movimiento
JOIN Tickets t ON m.Id_Ticket = t.Id_Ticket WHERE t.Fecha < v_date;
DELETE FROM chat WHERE odbc_date < v_date;
DELETE FROM Extractos WHERE Fecha < v_date;
DELETE FROM Remesas WHERE `Fecha Remesa` < v_date18;
DELETE FROM sharingcart where datEND < v_date;
DELETE FROM sharingclient where datEND < v_date;
DELETE FROM Stockcontrol WHERE Datestart < v_date18;
DELETE FROM bi.comparativa_clientes WHERE Fecha < v_date18;
DELETE FROM reference_rate WHERE date < v_date18;
SELECT MAX(inter_id)
INTO @id
FROM vncontrol.inter
WHERE odbc_date < v_date18;
DELETE FROM vncontrol.inter WHERE inter_id <= @id;
DELETE FROM Entradas_dits WHERE ODBC_DATE < v_date;
DELETE FROM Ordenes WHERE datTICKET < v_date18 AND datTICKET <> '2000-01-01';
DELETE FROM cyc_declaration WHERE Fecha < v_date18;
DELETE FROM vn.message WHERE sendDate < v_date;
DELETE FROM travel_reserve WHERE odbc_date < v_date;
DELETE FROM daily_task_log WHERE odbc_date < v_date;
DELETE FROM bi.Greuge_Evolution WHERE Fecha < v_date AND weekday(Fecha) != 1;
DELETE mc FROM Movimientos_checked mc JOIN Movimientos m ON mc.Id_Movimiento = m.Id_Movimiento WHERE m.odbc_date < v_date;
DELETE FROM cache.departure_limit WHERE Fecha < TIMESTAMPADD(MONTH,-1,CURDATE());
DELETE cm FROM Compres_mark cm
JOIN Compres c ON c.Id_Compra = cm.Id_Compra
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
WHERE t.landing <= v_date;
DELETE co FROM Compres_ok co JOIN Compres c ON c.Id_Compra = co.Id_Compra
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
WHERE t.landing <= v_date;
DELETE FROM vn2008.scan WHERE odbc_date < v_date6 AND id <> 1;
SET v_date = TIMESTAMPADD(YEAR, 2000 - YEAR(v_date), v_date);
SET v_date_fut = TIMESTAMPADD(MONTH, 3, v_date);
IF v_date_fut > '2000-12-31' THEN
SET v_date_fut = '2000-12-30';
END IF;
IF v_full THEN
DELETE FROM Tickets
WHERE (Fecha <= v_date AND Fecha NOT IN ('2000-01-01','2000-01-02'))
OR (Fecha BETWEEN v_date_fut AND '2000-12-31');
DELETE e.* FROM Entradas e
LEFT JOIN recibida_entrada re ON e.Id_Entrada = re.Id_Entrada
WHERE travel_id IS NULL
AND re.Id_Entrada IS NULL;
END IF;
UPDATE Tickets t
JOIN
(
SELECT DISTINCT t.Id_Ticket
FROM Tickets t
LEFT JOIN Movimientos m using(Id_Ticket)
WHERE Id_Movimiento IS NULL
AND t.Fecha between '2016-01-01' and util.yesterday()) sub using(Id_Ticket)
SET t.Fecha = TIMESTAMPADD(YEAR, 2000 - year(CURDATE()), t.Fecha);
UPDATE vn2008.Tickets
SET empresa_id = 965
WHERE Id_Cliente = 31
AND empresa_id != 965;
DELETE w.*
FROM vn2008.workerTeam w
JOIN (SELECT id, team, user, COUNT(*) - 1 as duplicated
FROM vn.workerTeam
GROUP BY team,user
HAVING duplicated
) d ON d.team = w.team AND d.user = w.user AND d.id != w.id;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('clean END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clean_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean_launcher`()
BEGIN
call vn2008.clean(TRUE);
call vn.clean();
call vncontrol.clean();
call bi.clean();
call cache.clean();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Clientes_Calidad` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Clientes_Calidad`()
BEGIN
DECLARE intMONTH INTEGER;
DECLARE intYEAR INTEGER;
SET intYEAR = YEAR(Curdate());
SET intMONTH = MONTH(curdate())-1;
IF intMONTH = 0 THEN
SET intYEAR = intYEAR -1;
SET intMONTH = 12;
END IF;
UPDATE Clientes
SET
Calidad = 0;
TRUNCATE bi.calidad_detalle;
INSERT INTO bi.calidad_detalle(Id_Cliente,calidad_parametros_id,valor)
SELECT Id_Cliente, calidad_parametros_id, 0
FROM bi.calidad_parametros
JOIN Clientes;
REPLACE INTO bi.calidad_detalle(Id_Cliente,calidad_parametros_id,valor)
SELECT Id_Cliente, 1, IF(Consumo > 5, 5, Consumo)
FROM (
SELECT Id_Cliente, round(sum(importe)/1000) as Consumo
from bs.ventas v
join vn2008.time t on t.date = v.fecha
where year =intYEAR and month = intMONTH
group by Id_Cliente) sub;
REPLACE INTO bi.calidad_detalle(Id_Cliente,calidad_parametros_id,valor)
SELECT Id_Cliente, 3, CASE pay_met_id WHEN 4
THEN 2
WHEN 1
THEN -1
WHEN 5
THEN 1
WHEN 7
THEN 1
WHEN 6
THEN -1
ELSE 0 END
FROM Clientes;
REPLACE INTO bi.calidad_detalle(Id_Cliente,calidad_parametros_id,valor)
SELECT Id_Cliente, 2, CASE nz(Ratio)
WHEN 0 THEN 2
WHEN 0.01 THEN 1
WHEN 0.02 THEN 0
WHEN 0.03 THEN -3
WHEN 0.04 THEN -6
ELSE -9
END
FROM bi.claims_ratio ;
REPLACE INTO bi.calidad_detalle(Id_Cliente,calidad_parametros_id,valor)
SELECT Id_Cliente, 4, Webs
FROM
( SELECT Id_Cliente, sum(sub.Id_Trabajador = 4) / count(sub.Id_Trabajador) as Webs
FROM Tickets
JOIN
(SELECT Id_Ticket, Id_Trabajador
FROM Tickets_dits
WHERE idaccion_dits = 84
AND ODBC_DATE >= TIMESTAMPADD(DAY,-30,CURDATE())) sub USING(Id_Ticket)
WHERE Fecha > '2001-01-01' AND Id_Agencia <> 23
GROUP BY Id_Cliente
HAVING Webs > 0.5) sub2;
REPLACE INTO bi.calidad_detalle(Id_Cliente,calidad_parametros_id,valor)
SELECT Id_Cliente, 5, 11
FROM
(SELECT Id_Cliente, MIN(Fecha) as Inicio
FROM Tickets
WHERE Fecha > '2001-01-01'
GROUP BY Id_Cliente
HAVING Inicio >= TIMESTAMPADD(DAY,-30,CURDATE())) sub ;
UPDATE Clientes
JOIN
(SELECT
Id_Cliente, SUM(valor) AS valoracion
FROM
bi.calidad_detalle
GROUP BY Id_Cliente) sub USING (Id_Cliente)
SET
calidad = IF(valoracion > 11, 11, valoracion);
IF DAY(CURDATE()) = 1 THEN
UPDATE account.user u
SET
active = 0
WHERE
u.role = 2
AND id NOT IN (SELECT DISTINCT
c.Id_Cliente
FROM
Clientes c LEFT JOIN Tickets t ON t.Id_Cliente = c.Id_Cliente
WHERE
Created > TIMESTAMPADD(MONTH, - 2, CURDATE()) OR
Fecha > TIMESTAMPADD(MONTH, - 2, CURDATE()));
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Clientes_Calidad_detalle` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Clientes_Calidad_detalle`(IN IdC INT)
BEGIN
SELECT descripcion Concepto, valor Puntos
FROM bi.calidad_parametros
JOIN bi.calidad_detalle using(calidad_parametros_id)
WHERE Id_Cliente = idC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clientes_saldos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clientes_saldos`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS clientes_pendientes;
CREATE TEMPORARY TABLE clientes_pendientes
( Id_Cliente INT NOT NULL
, empresa_id INT NOT NULL
, saldo double NOT NULL
, PRIMARY KEY(Id_Cliente, empresa_id));
INSERT INTO clientes_pendientes
SELECT Id_Cliente, empresa_id, sum(importe) as saldo
FROM
(
SELECT
Id_Cliente,
empresa_id,
- Entregado as importe
FROM
Recibos
JOIN
Clientes USING(Id_Cliente)
JOIN
pay_met p on p.id = pay_met_id
WHERE
deudaviva
UNION ALL
SELECT
Id_Cliente,
empresa_id,
Importe
FROM
Facturas
JOIN
Clientes USING(Id_Cliente)
JOIN
pay_met p on p.id = pay_met_id
WHERE
deudaviva
) sub
GROUP BY empresa_id, Id_Cliente
having saldo > 0;
DROP TEMPORARY TABLE IF EXISTS cobros_pendientes;
CREATE TEMPORARY TABLE cobros_pendientes
(Id_Cliente INT
,fecha DATE
,empresa_id INT NOT NULL
,saldo DOUBLE
,PRIMARY KEY(Id_Cliente, empresa_id));
INSERT INTO cobros_pendientes(Id_Cliente
, fecha
, empresa_id
, saldo)
SELECT cp.Id_Cliente,
CASE (vencimiento > 30)
WHEN TRUE THEN
timestampadd(DAY,vencimiento,maxFecha)
ELSE
timestampadd(
DAY
,vencimiento - day(maxFecha)
,timestampadd(MONTH,1,maxFecha)
)
END as fecha,
cp.empresa_id,
cp.saldo
FROM clientes_pendientes cp
JOIN Clientes USING(Id_Cliente)
JOIN ( SELECT
max(Fecha) as maxFecha,
Id_Cliente,
empresa_id
FROM
Facturas
GROUP BY
Id_Cliente,
empresa_id
) mf on mf.Id_Cliente = cp.Id_Cliente
AND mf.empresa_id = cp.empresa_id;
SELECT * FROM cobros_pendientes;
DROP TEMPORARY TABLE cobros_pendientes;
DROP TEMPORARY TABLE clientes_pendientes;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clientManaGrouped` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clientManaGrouped`(vClient INT)
BEGIN
SELECT 'Tickets' as Grupo, CAST(sum(s.quantity * Valor) AS DECIMAL(10,2)) as Mana
FROM vn.ticket t
JOIN vn.address a ON a.id = t.addressFk
JOIN vn.sale s on s.ticketFk = t.id
JOIN vn2008.Movimientos_componentes mc on mc.Id_Movimiento = s.id
WHERE Id_Componente IN (37, 39)
AND t.shipped >= '2016-01-01'
AND t.clientFk = vClient
UNION ALL
SELECT 'Recibos' as Grupo, - sum(Entregado) as Mana
FROM vn2008.Recibos r
JOIN vn2008.Clientes c using(Id_Cliente)
WHERE r.Id_Banco = 66
AND r.Fechacobro >= '2016-01-01'
AND c.Id_Cliente = vClient
UNION ALL
SELECT 'Greuges' as Grupo, sum(g.Importe) as Mana
FROM vn2008.Greuges g
JOIN vn2008.Clientes c using(Id_Cliente)
WHERE g.Greuges_type_id = 3
AND g.Fecha > '2016-01-01'
AND c.Id_Cliente = vClient;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clonWeeklyTickets` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clonWeeklyTickets`(IN vWeek INT)
BEGIN
DECLARE done BIT DEFAULT 0;
DECLARE vLanding DATE;
DECLARE vShipment DATE;
DECLARE vWarehouse INT;
DECLARE vTicket INT;
DECLARE vWeekDay INT;
DECLARE vClient INT;
DECLARE vEmpresa INT;
DECLARE vConsignatario INT;
DECLARE vAgencia INT;
DECLARE vNewTicket INT;
DECLARE vYear INT;
DECLARE rsTicket CURSOR FOR
SELECT tt.Id_Ticket, weekDay, Id_Cliente, warehouse_id, empresa_id, Id_Consigna, Id_Agencia
FROM Tickets_turno tt
JOIN Tickets t ON tt.Id_Ticket = t.Id_Ticket;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
SET done = 0;
SET vYear = YEAR(CURDATE()) + IF(vWeek < WEEK(CURDATE()),1, 0);
OPEN rsTicket;
FETCH rsTicket INTO vTicket, vWeekDay, vClient, vWarehouse, vEmpresa, vConsignatario, vAgencia;
WHILE NOT done DO
SELECT date INTO vShipment
FROM time
WHERE year = vYear AND week = vWeek
AND WEEKDAY(date) = vWeekDay;
IF (select count(*) FROM Tickets t JOIN ticket_observation tob ON t.Id_Ticket = tob.Id_Ticket
WHERE Id_Consigna = vConsignatario AND Fecha = vShipment AND tob.text LIKE CONCAT('%',vTicket,'%')) = 0
THEN
IF (SELECT COUNT(*) FROM Agencias WHERE Id_Agencia = vAgencia AND Agencia LIKE '%turno%') THEN
SET vAgencia = NULL;
END IF;
CALL vn.ticketCreate(vClient, vShipment, vWarehouse, vEmpresa, vConsignatario, vAgencia, NULL, vLanding, vNewTicket);
INSERT INTO Movimientos (Id_Ticket, Id_Article, Concepte, Cantidad, Preu, Descuento, CostFixat, PrecioFijado)
SELECT vNewTicket, Id_Article, Concepte, Cantidad, Preu, Descuento, CostFixat, PrecioFijado
FROM Movimientos WHERE Id_Ticket = vTicket;
INSERT INTO Ordenes (orden,datorden,datticket,codvendedor,codcomprador,cantidad,preciomax,preu,id_article,id_cliente,comentario,
ok, total,datcompra,ko,id_movimiento)
SELECT o.orden,o.datorden,vShipment,o.codvendedor,o.codcomprador,o.cantidad,o.preciomax,o.preu,o.id_article,o.id_cliente,o.comentario,
o.ok, o.total,o.datcompra,o.ko,m2.Id_Movimiento
FROM Movimientos m JOIN Ordenes o ON o.Id_Movimiento = m.Id_Movimiento
JOIN Movimientos m2 ON m.Concepte = m2.Concepte AND m.Cantidad = m2.Cantidad AND m.Id_Article = m2.Id_Article
WHERE m.Id_Ticket = vTicket AND m2.Id_Ticket = vNewTicket;
INSERT INTO ticket_observation(Id_Ticket,observation_type_id,text) VALUES(vNewTicket,4,CONCAT('turno desde ticket: ',vTicket))
ON DUPLICATE KEY UPDATE text = CONCAT(ticket_observation.text,VALUES(text),' ');
CALL bionic_calc_clon(vNewTicket);
END IF;
FETCH rsTicket INTO vTicket, vWeekDay, vClient, vWarehouse, vEmpresa, vConsignatario, vAgencia;
END WHILE;
CLOSE rsTicket;
DROP TEMPORARY TABLE IF EXISTS travel_tree_shipment;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cobro` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cobro`(IN datFEC DATE
, IN idCLI INT
, IN dblIMPORTE DOUBLE
, IN idCAJA INT
, IN idPAYMET INT
, IN strCONCEPTO VARCHAR(40)
, IN idEMP INT
, IN idWH INT
, IN idTRABAJADOR INT)
BEGIN
DECLARE bolCASH BOOLEAN;
DECLARE cuenta_banco BIGINT;
DECLARE cuenta_cliente BIGINT;
DECLARE max_asien INT;
SELECT (cash = 1) INTO bolCASH FROM Bancos WHERE Bancos.Id_Banco = idCAJA;
IF bolCASH THEN
SELECT Cuenta INTO cuenta_banco FROM Bancos WHERE Id_Banco = idCAJA;
SELECT Cuenta INTO cuenta_cliente FROM Clientes WHERE Id_Cliente = idCLI;
SELECT MAX(asien)+1 INTO max_asien FROM XDiario;
INSERT INTO XDiario (ASIEN,FECHA,SUBCTA,CONTRA,CONCEPTO,EURODEBE,EUROHABER,empresa_id)
SELECT max_asien,datFEC,SUBCTA,CONTRA,strCONCEPTO,EURODEBE,EUROHABER,idEMP FROM
(
SELECT cuenta_banco SUBCTA, cuenta_cliente CONTRA, 0 EURODEBE, dblIMPORTE EUROHABER
UNION ALL
SELECT cuenta_cliente SUBCTA, cuenta_banco CONTRA, dblIMPORTE EURODEBE, 0 EUROHABER
) gf;
END IF;
INSERT INTO Cajas(Id_Trabajador
, Id_Banco
, Entrada
, Concepto
, Cajafecha
, Serie
, Partida
, Numero
,empresa_id
,warehouse_id)
VALUES ( idTRABAJADOR
, idCAJA
, dblIMPORTE
, strCONCEPTO
, datFEC
, 'A'
, TRUE
, idCLI
, idEMP
, idWH );
INSERT INTO Recibos(Entregado
,Fechacobro
,Id_Trabajador
,Id_Banco
,Id_Cliente
,Id_Factura
,empresa_id)
VALUES ( dblIMPORTE
, datFEC
, idTRABAJADOR
, idCAJA
, idCLI
, strCONCEPTO
, idEMP);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `colas_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `colas_launcher`()
BEGIN
INSERT INTO vn2008.Colas(Id_Informe,Id_Trabajador) VALUES (11,57);
INSERT INTO vn2008.Colas(Id_Informe) VALUES (16);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comercial_caducado` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comercial_caducado`()
BEGIN
IF day(CURDATE()) = 5 then
Update Clientes
join
(
Select c.Id_Cliente
from Clientes c
join jerarquia j on j.worker_id = c.Id_Trabajador
join
(
select Id_Cliente, sum(Importe) as Saldo
from
(
select Id_Cliente, Importe from Facturas
union all
select Id_Cliente, - Entregado from Recibos
) sub
group by Id_Cliente
) sindeuda on sindeuda.Id_Cliente = c.Id_Cliente
left join
(
select distinct Id_Cliente
from Facturas
where Fecha BETWEEN CURDATE() - INTERVAL 12 MONTH AND CURDATE()
) f on f.Id_Cliente = c.Id_Cliente
left join
(
select distinct Id_Cliente
from Tickets
where Fecha between CURDATE() - INTERVAL 2 DAY AND CURDATE() + INTERVAL 200 DAY
) tic_vivos on tic_vivos.Id_Cliente = c.Id_Cliente
where c.Created < CURDATE() - INTERVAL 2 MONTH
and j.boss_id = 87
and f.Id_Cliente is null
and sindeuda.Saldo < 10
and tic_vivos.Id_Cliente is null
) sub using(Id_Cliente)
set Id_Trabajador = 87 ;
end if;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparativa_clientes` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparativa_clientes`(IN v_date DATE,IN i_vendedor INT, IN i_comprador INT, IN i_tipo INT, IN i_wh INT, IN days INT)
BEGIN
DECLARE date_cyear_ini DATETIME;
DECLARE date_cyear_end DATETIME;
DECLARE date_lyear_ini DATETIME;
DECLARE date_lyear_end DATETIME;
DECLARE week_count TINYINT DEFAULT 7;
SET date_cyear_ini = TIMESTAMP(DATE(TIMESTAMPADD(DAY, -22 - WEEKDAY(v_date), v_date)), '00:00:00');
SET date_cyear_end = TIMESTAMP(DATE(TIMESTAMPADD(DAY, (7 * week_count) -1, date_cyear_ini)), '23:59:59');
SET date_lyear_ini = TIMESTAMPADD(DAY,-364,date_cyear_ini);
SET date_lyear_end = TIMESTAMPADD(DAY,-364,date_cyear_end);
CALL article ();
INSERT INTO article_inventory (article_id)
SELECT Id_Article
FROM Articles a
JOIN Tipos t ON t.tipo_id = a.tipo_id
LEFT JOIN reinos r ON r.id = t.reino_id
WHERE (i_tipo = 0 OR a.tipo_id = i_tipo)
AND r.display <> 0;
IF v_date < CURDATE()
THEN
ALTER TABLE `article_inventory`
ADD `buy_id` INT NOT NULL DEFAULT 0,
ADD `buy_date` DATE DEFAULT '2000-01-01',
ADD `life` INT DEFAULT 0,
ADD `sd` INT DEFAULT 0,
ADD `avalaible` INT DEFAULT 0,
ADD `visible` INT DEFAULT 0;
ELSE
CALL inventario_multiple_2 (v_date, i_wh, days);
CALL article_multiple_buy (v_date, i_wh);
CALL article_multiple_buy_date (v_date, i_wh);
END IF;
DROP TEMPORARY TABLE IF EXISTS clientcom;
CREATE TEMPORARY TABLE clientcom
SELECT vnperiod(Fecha) as period
,Id_Article
, Cantidad
, Preu
, CS.Id_Cliente
FROM vn2008.Movimientos M
JOIN vn2008.Tickets T USING (Id_Ticket)
JOIN vn2008.Consignatarios CS USING(Id_Consigna)
JOIN vn2008.Clientes C ON C.Id_Cliente = CS.Id_Cliente
JOIN vn2008.Articles a USING (Id_Article)
LEFT JOIN vn2008.Tipos tp ON tp.tipo_id = a.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
WHERE (T.Fecha BETWEEN date_cyear_ini AND date_cyear_end or T.Fecha BETWEEN date_lyear_ini AND date_lyear_end)
AND T.Id_Cliente NOT IN(400,200)
AND i_vendedor IN (0, C.Id_Trabajador )
AND i_comprador IN (0, tp.Id_Trabajador)
AND i_tipo IN (0,tp.tipo_id)
AND r.display <> 0 AND T.warehouse_id NOT IN (0,13)
ORDER BY period;
DROP TEMPORARY TABLE IF EXISTS clientcom_periods;
CREATE TEMPORARY TABLE clientcom_periods
SELECT period, @order:= @order + 1 as period_order
FROM (
SELECT DISTINCT period, @order:=0
FROM clientcom
ORDER BY period) sub;
SELECT cc.Id_Article
, cc.Id_Cliente
,CAST(SUM(IF(period_order = 1, cc.Cantidad, 0)) AS SIGNED) AS lweek1
,CAST(SUM(IF(period_order = 2, cc.Cantidad, 0)) AS SIGNED) AS lweek2
,CAST(SUM(IF(period_order = 3, cc.Cantidad, 0)) AS SIGNED) AS lweek3
,CAST(SUM(IF(period_order = 4, cc.Cantidad, 0)) AS SIGNED) AS lweek4
,CAST(SUM(IF(period_order = 5, cc.Cantidad, 0)) AS SIGNED) AS lweek5
,CAST(SUM(IF(period_order = 6, cc.Cantidad, 0)) AS SIGNED) AS lweek6
,CAST(SUM(IF(period_order = 7, cc.Cantidad, 0)) AS SIGNED) AS lweek7
,CAST(SUM(IF(period_order = 7+1, cc.Cantidad, 0)) AS SIGNED) AS cweek1
,CAST(SUM(IF(period_order = 7+2, cc.Cantidad, 0)) AS SIGNED) AS cweek2
,CAST(SUM(IF(period_order = 7+3, cc.Cantidad, 0)) AS SIGNED) AS cweek3
,CAST(SUM(IF(period_order = 7+4, cc.Cantidad, 0)) AS SIGNED) AS cweek4
,CAST(SUM(IF(period_order = 7+5, cc.Cantidad, 0)) AS SIGNED) AS cweek5
,CAST(SUM(IF(period_order = 7+6, cc.Cantidad, 0)) AS SIGNED) AS cweek6
,CAST(SUM(IF(period_order = 7+7, cc.Cantidad, 0)) AS SIGNED) AS cweek7
,CAST(SUM(IF(period_order = 1, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice1
,CAST(SUM(IF(period_order = 2, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice2
,CAST(SUM(IF(period_order = 3, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice3
,CAST(SUM(IF(period_order = 4, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice4
,CAST(SUM(IF(period_order = 5, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice5
,CAST(SUM(IF(period_order = 6, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice6
,CAST(SUM(IF(period_order = 7, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice7
,CAST(SUM(IF(period_order = 7+1, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice1
,CAST(SUM(IF(period_order = 7+2, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice2
,CAST(SUM(IF(period_order = 7+3, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice3
,CAST(SUM(IF(period_order = 7+4, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice4
,CAST(SUM(IF(period_order = 7+5, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice5
,CAST(SUM(IF(period_order = 7+6, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice6
,CAST(SUM(IF(period_order = 7+7, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice7
,A.Article
,A.Medida
,A.Color
,A.tipo_id
,C.Cliente
,T1.CodigoTrabajador as Comercial
,O.Abreviatura as Origen
,TT.ball as Tinta
,r.reino as Reino
,TP.Id_Tipo
,JF.CodigoTrabajador as Equipo
,T2.CodigoTrabajador as Comprador
,TT.orden as Orden_Color
,i.buy_id
, i.life
, CAST(IFNULL(i.sd,0) AS SIGNED) as sd
,CAST(i.avalaible AS SIGNED) avalaible
, CAST(i.visible AS SIGNED) visible
, i.buy_date
,P.Proveedor
FROM clientcom cc
JOIN clientcom_periods ccp using(period)
LEFT JOIN article_inventory i ON i.article_id = cc.Id_Article
LEFT JOIN Compres CM ON i.buy_id = CM.Id_Compra
LEFT JOIN Entradas E USING(Id_Entrada)
LEFT JOIN Proveedores P ON P.Id_Proveedor = E.Id_Proveedor
JOIN Clientes C ON C.Id_Cliente = cc.Id_Cliente
JOIN Trabajadores T1 ON C.Id_Trabajador = T1.Id_Trabajador
LEFT JOIN jerarquia J ON J.worker_id = T1.Id_Trabajador
JOIN Trabajadores JF ON JF.Id_Trabajador = J.boss_id
JOIN Articles A ON A.Id_Article = cc.Id_Article
JOIN Origen O ON O.id = A.id_origen
JOIN Tintas TT ON TT.Id_Tinta = A.Color
JOIN Tipos TP ON TP.tipo_id = A.tipo_id
JOIN reinos r ON r.id = TP.reino_id
JOIN Trabajadores T2 ON T2.Id_Trabajador = TP.Id_Trabajador
GROUP BY Id_Article,Id_Cliente;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparativa_clienteskk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparativa_clienteskk`(IN v_date DATE,IN i_vendedor INT, IN i_comprador INT, IN i_tipo INT, IN i_wh INT, IN days INT)
BEGIN
DECLARE date_cyear_ini DATETIME;
DECLARE date_cyear_end DATETIME;
DECLARE date_lyear_ini DATETIME;
DECLARE date_lyear_end DATETIME;
DECLARE week_count TINYINT DEFAULT 7;
SET date_cyear_ini = TIMESTAMP(DATE(TIMESTAMPADD(DAY, -22 - WEEKDAY(v_date), v_date)), '00:00:00');
SET date_cyear_end = TIMESTAMP(DATE(TIMESTAMPADD(DAY, (7 * week_count) -1, date_cyear_ini)), '23:59:59');
SET date_lyear_ini = TIMESTAMPADD(DAY,-364,date_cyear_ini);
SET date_lyear_end = TIMESTAMPADD(DAY,-364,date_cyear_end);
CALL article ();
INSERT INTO article_inventory (article_id)
SELECT Id_Article FROM Articles a
JOIN Tipos t using(tipo_id)
WHERE i_tipo = 0 OR a.tipo_id = i_tipo
AND reino_id <> 6;
IF v_date < CURDATE()
THEN
ALTER TABLE `article_inventory`
ADD `buy_id` INT NOT NULL DEFAULT 0,
ADD `buy_date` DATE DEFAULT '2000-01-01',
ADD `life` INT DEFAULT 0,
ADD `sd` INT DEFAULT 0,
ADD `avalaible` INT DEFAULT 0,
ADD `visible` INT DEFAULT 0;
ELSE
CALL inventario_multiple_2 (v_date, i_wh, days);
CALL article_multiple_buy (v_date, i_wh);
CALL article_multiple_buy_date (v_date, i_wh);
END IF;
DROP TEMPORARY TABLE IF EXISTS clientcom;
CREATE TEMPORARY TABLE clientcom
SELECT vnperiod(Fecha) as period
,Id_Article
, Cantidad
, Preu
, CS.Id_Cliente
FROM vn2008.Movimientos M
JOIN vn2008.Tickets T USING (Id_Ticket)
JOIN vn2008.Consignatarios CS USING(Id_Consigna)
JOIN vn2008.Clientes C ON C.Id_Cliente = CS.Id_Cliente
JOIN vn2008.Articles A USING (Id_Article)
LEFT JOIN vn2008.Tipos USING(tipo_id)
WHERE (T.Fecha BETWEEN date_cyear_ini AND date_cyear_end or T.Fecha BETWEEN date_lyear_ini AND date_lyear_end)
AND T.Id_Cliente NOT IN(400,200)
AND i_vendedor IN (0, C.Id_Trabajador )
AND i_comprador IN (0, Tipos.Id_Trabajador)
AND i_tipo IN (0,Tipos.tipo_id)
AND reino_id <> 6 AND T.warehouse_id NOT IN (0,13)
ORDER BY period;
DROP TEMPORARY TABLE IF EXISTS clientcom_periods;
CREATE TEMPORARY TABLE clientcom_periods
SELECT period, @order:= @order + 1 as period_order
FROM (
SELECT DISTINCT period, @order:=0
FROM clientcom
ORDER BY period) sub;
SELECT cc.Id_Article
, cc.Id_Cliente
,CAST(SUM(IF(period_order = 1, cc.Cantidad, 0)) AS SIGNED) AS lweek1
,CAST(SUM(IF(period_order = 2, cc.Cantidad, 0)) AS SIGNED) AS lweek2
,CAST(SUM(IF(period_order = 3, cc.Cantidad, 0)) AS SIGNED) AS lweek3
,CAST(SUM(IF(period_order = 4, cc.Cantidad, 0)) AS SIGNED) AS lweek4
,CAST(SUM(IF(period_order = 5, cc.Cantidad, 0)) AS SIGNED) AS lweek5
,CAST(SUM(IF(period_order = 6, cc.Cantidad, 0)) AS SIGNED) AS lweek6
,CAST(SUM(IF(period_order = 7, cc.Cantidad, 0)) AS SIGNED) AS lweek7
,CAST(SUM(IF(period_order = 7+1, cc.Cantidad, 0)) AS SIGNED) AS cweek1
,CAST(SUM(IF(period_order = 7+2, cc.Cantidad, 0)) AS SIGNED) AS cweek2
,CAST(SUM(IF(period_order = 7+3, cc.Cantidad, 0)) AS SIGNED) AS cweek3
,CAST(SUM(IF(period_order = 7+4, cc.Cantidad, 0)) AS SIGNED) AS cweek4
,CAST(SUM(IF(period_order = 7+5, cc.Cantidad, 0)) AS SIGNED) AS cweek5
,CAST(SUM(IF(period_order = 7+6, cc.Cantidad, 0)) AS SIGNED) AS cweek6
,CAST(SUM(IF(period_order = 7+7, cc.Cantidad, 0)) AS SIGNED) AS cweek7
,CAST(SUM(IF(period_order = 1, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice1
,CAST(SUM(IF(period_order = 2, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice2
,CAST(SUM(IF(period_order = 3, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice3
,CAST(SUM(IF(period_order = 4, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice4
,CAST(SUM(IF(period_order = 5, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice5
,CAST(SUM(IF(period_order = 6, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice6
,CAST(SUM(IF(period_order = 7, cc.Cantidad* Preu, 0)) AS SIGNED) AS lprice7
,CAST(SUM(IF(period_order = 7+1, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice1
,CAST(SUM(IF(period_order = 7+2, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice2
,CAST(SUM(IF(period_order = 7+3, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice3
,CAST(SUM(IF(period_order = 7+4, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice4
,CAST(SUM(IF(period_order = 7+5, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice5
,CAST(SUM(IF(period_order = 7+6, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice6
,CAST(SUM(IF(period_order = 7+7, cc.Cantidad* Preu, 0)) AS SIGNED) AS cprice7
,A.Article
,A.Medida
,A.Color
,A.tipo_id
,C.Cliente
,T1.CodigoTrabajador as Comercial
,O.Abreviatura as Origen
,TT.ball as Tinta
,r.reino as Reino
,TP.Id_Tipo
,JF.CodigoTrabajador as Equipo
,T2.CodigoTrabajador as Comprador
,TT.orden as Orden_Color
,i.buy_id
, i.life
, CAST(IFNULL(i.sd,0) AS SIGNED) as sd
,CAST(i.avalaible AS SIGNED) avalaible
, CAST(i.visible AS SIGNED) visible
, i.buy_date
,P.Proveedor
FROM clientcom cc
JOIN clientcom_periods ccp using(period)
LEFT JOIN article_inventory i ON i.article_id = cc.Id_Article
LEFT JOIN Compres CM ON i.buy_id = CM.Id_Compra
LEFT JOIN Entradas E USING(Id_Entrada)
LEFT JOIN Proveedores P ON P.Id_Proveedor = E.Id_Proveedor
JOIN Clientes C ON C.Id_Cliente = cc.Id_Cliente
JOIN Trabajadores T1 ON C.Id_Trabajador = T1.Id_Trabajador
LEFT JOIN jerarquia J ON J.worker_id = T1.Id_Trabajador
JOIN Trabajadores JF ON JF.Id_Trabajador = J.boss_id
JOIN Articles A ON A.Id_Article = cc.Id_Article
JOIN Origen O ON O.id = A.id_origen
JOIN Tintas TT ON TT.Id_Tinta = A.Color
JOIN Tipos TP ON TP.tipo_id = A.tipo_id
JOIN reinos r ON r.id = TP.reino_id
JOIN Trabajadores T2 ON T2.Id_Trabajador = TP.Id_Trabajador
GROUP BY Id_Article,Id_Cliente;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparativa_clientes_tickets` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparativa_clientes_tickets`(IN i_week INT
, IN i_year INT
, IN i_vendedor INT
, IN i_comprador INT
, IN i_article INT
, IN i_cliente INT
, IN i_tipo INT
, IN i_reino INT
, IN i_equipo INT
, IN v_color varchar(3))
BEGIN
DECLARE datSTART DATETIME;
DECLARE datEND DATETIME;
SELECT min(date), TIMESTAMP(max(date),'23:59:59') INTO datSTART, datEND FROM time WHERE i_week = week AND i_year = year;
SELECT T.Id_Ticket, Fecha, Alias, Id_Article, Concepte, Cantidad, Preu, M.Descuento, Cantidad * Preu * (100-M.Descuento)/100 as Importe, w.name as almacen
FROM Movimientos M
JOIN Tickets T using(Id_Ticket)
JOIN warehouse w on w.id = T.warehouse_id
JOIN Consignatarios CS using(Id_Consigna)
JOIN Clientes C ON C.Id_Cliente = CS.Id_Cliente
JOIN Trabajadores TR ON TR.Id_Trabajador = C.Id_Trabajador
JOIN jerarquia J ON J.worker_id = TR.Id_Trabajador
JOIN Articles A using(Id_Article)
JOIN Tipos TP using(tipo_id)
WHERE T.Fecha BETWEEN datSTART AND datEND
AND i_vendedor IN (0, C.Id_Trabajador)
AND i_comprador IN (0, TP.Id_Trabajador)
AND i_cliente IN (0, CS.Id_Cliente)
AND i_tipo IN (0, A.tipo_id)
AND i_article IN (0,A.Id_Article)
AND i_reino IN (0,TP.reino_id)
AND i_equipo IN(0,J.boss_id)
AND v_color IN ("",A.color);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparative` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparative`(
v_date DATETIME
,days TINYINT
,i_wh TINYINT
,i_tipo INT
,i_filtro INT
)
BEGIN
DECLARE wstart INT;
DECLARE wend INT;
DECLARE cyear INT;
DECLARE date_cyear_ini DATETIME;
DECLARE date_cyear_end DATETIME;
DECLARE week_count TINYINT DEFAULT 7;
DECLARE date_lyear_ini DATETIME;
DECLARE date_lyear_end DATETIME;
DECLARE corrector INT;
DECLARE w1, w2, w3, w4, w5, w6, w7 INT;
DECLARE y1, y2, y3, y4, y5, y6, y7 INT;
DECLARE wperiod INT;
DECLARE i INT DEFAULT 0;
DECLARE lastCOMP BIGINT;
DECLARE strFILTRO VARCHAR(255) DEFAULT 'TRUE';
IF i_filtro THEN
SELECT `sql` INTO strFILTRO FROM filtros WHERE id = i_filtro;
END IF;
SET corrector = 1;
IF days < 0 OR days > 30 THEN
SET days = 15;
END IF;
IF i_wh = NULL THEN
SET i_wh = 0;
END IF;
SET date_cyear_ini = TIMESTAMP(DATE(TIMESTAMPADD(DAY, -22 - WEEKDAY(v_date), v_date)), '00:00:00');
SET date_cyear_end = TIMESTAMP(DATE(TIMESTAMPADD(DAY, (7 * week_count) -1, date_cyear_ini)), '23:59:59');
CALL article ();
INSERT INTO article_inventory (article_id)
SELECT Id_Article FROM Articles a
JOIN Tipos t ON a.tipo_id = t.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = t.reino_id
WHERE (i_tipo = 0 OR a.tipo_id = i_tipo)
AND r.display <> 0;
IF v_date < CURDATE()
THEN
ALTER TABLE `article_inventory`
ADD `buy_id` INT NOT NULL DEFAULT 0,
ADD `buy_date` DATE DEFAULT '2000-01-01',
ADD `life` INT DEFAULT 0,
ADD `sd` INT DEFAULT 0,
ADD `avalaible` INT DEFAULT 0,
ADD `visible` INT DEFAULT 0;
ELSE
CALL inventario_multiple_2 (v_date, i_wh, days);
CALL article_multiple_buy (v_date, i_wh);
CALL article_multiple_buy_date (v_date, i_wh);
END IF;
DROP TEMPORARY TABLE IF EXISTS wtable;
CREATE TEMPORARY TABLE wtable (
cy INT(6),
ly INT(6)
);
REPEAT
SET i = i + 1;
SET wperiod = vnperiod(TIMESTAMPADD(DAY, 7*(i - 1), date_cyear_ini));
INSERT INTO wtable(cy, ly) VALUES(wperiod, wperiod - 100);
UNTIL i = 7 END REPEAT;
SELECT cy, ly INTO w1, y1 FROM wtable limit 1;
SELECT cy, ly INTO w2, y2 FROM wtable WHERE cy > w1 limit 1;
SELECT cy, ly INTO w3, y3 FROM wtable WHERE cy > w2 limit 1;
SELECT cy, ly INTO w4, y4 FROM wtable WHERE cy > w3 limit 1;
SELECT cy, ly INTO w5, y5 FROM wtable WHERE cy > w4 limit 1;
SELECT cy, ly INTO w6, y6 FROM wtable WHERE cy > w5 limit 1;
SELECT cy, ly INTO w7, y7 FROM wtable WHERE cy > w6 limit 1;
DROP TEMPORARY TABLE wtable;
SET cyear = YEAR(date_cyear_ini);
DROP TEMPORARY TABLE IF EXISTS last_year;
CREATE TEMPORARY TABLE last_year
(KEY (Id_Article))
ENGINE = MEMORY
SELECT Id_Article
,CAST(SUM(IF(Periodo = y1, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek1
,CAST(SUM(IF(Periodo = y2, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek2
,CAST(SUM(IF(Periodo = y3, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek3
,CAST(SUM(IF(Periodo = y4, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek4
,CAST(SUM(IF(Periodo = y5, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek5
,CAST(SUM(IF(Periodo = y6, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek6
,CAST(SUM(IF(Periodo = y7, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek7
,CAST(SUM(IF(Periodo = y1, price, 0)) AS DECIMAL(10,0)) AS lprice1
,CAST(SUM(IF(Periodo = y2, price, 0)) AS DECIMAL(10,0)) AS lprice2
,CAST(SUM(IF(Periodo = y3, price, 0)) AS DECIMAL(10,0)) AS lprice3
,CAST(SUM(IF(Periodo = y4, price, 0)) AS DECIMAL(10,0)) AS lprice4
,CAST(SUM(IF(Periodo = y5, price, 0)) AS DECIMAL(10,0)) AS lprice5
,CAST(SUM(IF(Periodo = y6, price, 0)) AS DECIMAL(10,0)) AS lprice6
,CAST(SUM(IF(Periodo = y7, price, 0)) AS DECIMAL(10,0)) AS lprice7
FROM Comparativa
JOIN warehouse W on W.id = warehouse_id
WHERE (Periodo BETWEEN y1 and y7)
AND IF(i_wh = 0, W.is_comparative, i_wh = warehouse_id)
GROUP BY Id_Article;
DROP TEMPORARY TABLE IF EXISTS cur_year;
CREATE TEMPORARY TABLE cur_year
(KEY (Id_Article))
ENGINE = MEMORY
SELECT Id_Article
,CAST(SUM(IF(week = w1, Total, 0)) AS DECIMAL(10,0)) AS cweek1
,CAST(SUM(IF(week = w2, Total, 0)) AS DECIMAL(10,0)) AS cweek2
,CAST(SUM(IF(week = w3, Total, 0)) AS DECIMAL(10,0)) AS cweek3
,CAST(SUM(IF(week = w4, Total, 0)) AS DECIMAL(10,0)) AS cweek4
,CAST(SUM(IF(week = w5, Total, 0)) AS DECIMAL(10,0)) AS cweek5
,CAST(SUM(IF(week = w6, Total, 0)) AS DECIMAL(10,0)) AS cweek6
,CAST(SUM(IF(week = w7, Total, 0)) AS DECIMAL(10,0)) AS cweek7
,CAST(SUM(IF(week = w1, price, 0)) AS DECIMAL(10,0)) AS cprice1
,CAST(SUM(IF(week = w2, price, 0)) AS DECIMAL(10,0)) AS cprice2
,CAST(SUM(IF(week = w3, price, 0)) AS DECIMAL(10,0)) AS cprice3
,CAST(SUM(IF(week = w4, price, 0)) AS DECIMAL(10,0)) AS cprice4
,CAST(SUM(IF(week = w5, price, 0)) AS DECIMAL(10,0)) AS cprice5
,CAST(SUM(IF(week = w6, price, 0)) AS DECIMAL(10,0)) AS cprice6
,CAST(SUM(IF(week = w7, price, 0)) AS DECIMAL(10,0)) AS cprice7
FROM (
SELECT A.Id_Article
,CTS.period week
,SUM(Cantidad) AS Total
,TRUNCATE(SUM(Cantidad * IF(T.Fecha >= '2015-10-01',M.CostFixat,Preu * (100 - Descuento) / 100)),0) AS price
FROM Movimientos M
LEFT JOIN Tickets T ON T.Id_Ticket = M.Id_Ticket
INNER JOIN `time` CTS ON CTS.`date` = DATE(T.Fecha)
INNER JOIN Articles A USING (Id_Article)
INNER JOIN Tipos tp ON tp.tipo_id = A.tipo_id
LEFT JOIN reinos r ON r.id = tp.reino_id
JOIN warehouse W ON W.id = T.warehouse_id
WHERE Fecha BETWEEN date_cyear_ini AND date_cyear_end
AND T.Id_Cliente NOT IN(400,200)
AND IF(i_wh = 0, W.is_comparative, i_wh = T.warehouse_id)
AND r.display <> 0
GROUP BY A.Id_Article, week
) t
GROUP BY Id_Article;
DROP TEMPORARY TABLE IF EXISTS remcom;
SET strFILTRO = REPLACE(strFILTRO, 'Id_Article','A.Id_Article');
SET strFILTRO = REPLACE(strFILTRO, 'tipo_id','tp.tipo_id');
CALL sql_query (sql_printf
(
'CREATE TEMPORARY TABLE remcom
SELECT
an.nicho, p.name Productor, C.Packing, C.Costefijo
,A.Color, Id_Tipo as Tipo,A.tipo_id, o.Abreviatura as Origen, A.Categoria
,A.Tallos, A.Medida, A.Article, TR.CodigoTrabajador
,cweek1, cweek2, cweek3, cweek4, cweek5, cweek6, cweek7
,lweek1, lweek2, lweek3, lweek4, lweek5, lweek6, lweek7
,cprice1, cprice2, cprice3, cprice4, cprice5, cprice6, cprice7
,lprice1, lprice2, lprice3, lprice4, lprice5, lprice6, lprice7
,A.Id_Article, i.buy_id , tp.life , CAST(IFNULL(i.sd,0) AS SIGNED) as sd
,CAST(i.avalaible AS SIGNED) avalaible, CAST(i.visible AS SIGNED) visible, i.buy_date
,E.Id_Proveedor AS provider_id, t.Orden, t.Tinta
,A.offer, A.bargain, A.comments, A.relevancy
,IF(cy.Id_Article IS NULL AND i.visible = 0 AND i.avalaible = 0 AND IFNULL(i.sd, 0) = 0, FALSE, TRUE) AS filtret
FROM article_inventory i
JOIN Articles A ON A.Id_Article = i.article_id
LEFT JOIN Articles_nicho an ON A.Id_Article = an.Id_Article AND an.warehouse_id = %s
LEFT JOIN producer p ON p.producer_id = A.producer_id
LEFT JOIN Tipos tp ON A.tipo_id = tp.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
LEFT JOIN Trabajadores TR ON TR.Id_Trabajador = tp.Id_Trabajador
LEFT JOIN Tintas t ON t.Id_Tinta = A.color
LEFT JOIN Compres C ON i.buy_id = C.Id_Compra
LEFT JOIN Entradas E USING(Id_Entrada)
LEFT JOIN Origen o ON o.id = A.id_origen
LEFT JOIN last_year ly ON ly.Id_Article = A.Id_Article
LEFT JOIN cur_year cy ON cy.Id_Article = A.Id_Article AND (i.avalaible <> 0 OR i.visible <> 0 OR cweek1 OR cweek2 OR cweek3 OR cweek4
OR cweek5 OR cweek6 OR cweek7 OR lweek1 OR lweek2 OR lweek3 OR lweek4 OR lweek5
OR lweek6 OR lweek7)
WHERE r.display <> 0 AND %s '
,i_wh,strFILTRO
));
ALTER TABLE remcom
CHANGE COLUMN `cweek1` `cweek1` INT NOT NULL,
CHANGE COLUMN `cweek2` `cweek2` INT NOT NULL,
CHANGE COLUMN `cweek3` `cweek3` INT NOT NULL,
CHANGE COLUMN `cweek4` `cweek4` INT NOT NULL,
CHANGE COLUMN `cweek5` `cweek5` INT NOT NULL,
CHANGE COLUMN `cweek6` `cweek6` INT NOT NULL,
CHANGE COLUMN `cweek7` `cweek7` INT NOT NULL,
CHANGE COLUMN `lweek1` `lweek1` INT NOT NULL,
CHANGE COLUMN `lweek2` `lweek2` INT NOT NULL,
CHANGE COLUMN `lweek3` `lweek3` INT NOT NULL,
CHANGE COLUMN `lweek4` `lweek4` INT NOT NULL,
CHANGE COLUMN `lweek5` `lweek5` INT NOT NULL,
CHANGE COLUMN `lweek6` `lweek6` INT NOT NULL,
CHANGE COLUMN `lweek7` `lweek7` INT NOT NULL;
SELECT * FROM remcom;
DROP TEMPORARY TABLE last_year;
DROP TEMPORARY TABLE cur_year;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparative2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparative2`(
v_date DATETIME
,days TINYINT
,i_wh TINYINT
,i_tipo INT
,i_filtro INT
)
BEGIN
DECLARE wstart INT;
DECLARE wend INT;
DECLARE cyear INT;
DECLARE date_cyear_ini DATETIME;
DECLARE date_cyear_end DATETIME;
DECLARE week_count TINYINT DEFAULT 7;
DECLARE date_lyear_ini DATETIME;
DECLARE date_lyear_end DATETIME;
DECLARE corrector INT;
DECLARE w1, w2, w3, w4, w5, w6, w7 INT;
DECLARE y1, y2, y3, y4, y5, y6, y7 INT;
DECLARE wperiod INT;
DECLARE i INT DEFAULT 0;
DECLARE lastCOMP BIGINT;
DECLARE strFILTRO VARCHAR(255) DEFAULT 'TRUE';
IF i_filtro THEN
SELECT `sql` INTO strFILTRO FROM filtros WHERE id = i_filtro;
END IF;
SET corrector = 1;
IF days < 0 OR days > 30 THEN
SET days = 15;
END IF;
IF i_wh = NULL THEN
SET i_wh = 0;
END IF;
SET date_cyear_ini = TIMESTAMP(DATE(TIMESTAMPADD(DAY, -22 - WEEKDAY(v_date), v_date)), '00:00:00');
SET date_cyear_end = TIMESTAMP(DATE(TIMESTAMPADD(DAY, (7 * week_count) -1, date_cyear_ini)), '23:59:59');
CALL article ();
INSERT INTO article_inventory (article_id)
SELECT Id_Article FROM Articles a
JOIN Tipos t ON a.tipo_id = t.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = t.reino_id
WHERE (i_tipo = 0 OR a.tipo_id = i_tipo)
AND r.display <> 0;
IF v_date < CURDATE()
THEN
ALTER TABLE `article_inventory`
ADD `buy_id` INT NOT NULL DEFAULT 0,
ADD `buy_date` DATE DEFAULT '2000-01-01',
ADD `life` INT DEFAULT 0,
ADD `sd` INT DEFAULT 0,
ADD `avalaible` INT DEFAULT 0,
ADD `visible` INT DEFAULT 0;
ELSE
CALL inventario_multiple_2 (v_date, i_wh, days);
CALL article_multiple_buy (v_date, i_wh);
CALL article_multiple_buy_date (v_date, i_wh);
END IF;
DROP TEMPORARY TABLE IF EXISTS wtable;
CREATE TEMPORARY TABLE wtable (
cy INT(6),
ly INT(6)
);
REPEAT
SET i = i + 1;
SET wperiod = vnperiod(TIMESTAMPADD(DAY, 7*(i - 1), date_cyear_ini));
INSERT INTO wtable(cy, ly) VALUES(wperiod, wperiod - 100);
UNTIL i = 7 END REPEAT;
SELECT cy, ly INTO w1, y1 FROM wtable limit 1;
SELECT cy, ly INTO w2, y2 FROM wtable WHERE cy > w1 limit 1;
SELECT cy, ly INTO w3, y3 FROM wtable WHERE cy > w2 limit 1;
SELECT cy, ly INTO w4, y4 FROM wtable WHERE cy > w3 limit 1;
SELECT cy, ly INTO w5, y5 FROM wtable WHERE cy > w4 limit 1;
SELECT cy, ly INTO w6, y6 FROM wtable WHERE cy > w5 limit 1;
SELECT cy, ly INTO w7, y7 FROM wtable WHERE cy > w6 limit 1;
DROP TEMPORARY TABLE wtable;
SET cyear = YEAR(date_cyear_ini);
DROP TEMPORARY TABLE IF EXISTS last_year;
CREATE TEMPORARY TABLE last_year
(KEY (Id_Article))
ENGINE = MEMORY
SELECT Id_Article
,CAST(SUM(IF(Periodo = y1, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek1
,CAST(SUM(IF(Periodo = y2, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek2
,CAST(SUM(IF(Periodo = y3, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek3
,CAST(SUM(IF(Periodo = y4, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek4
,CAST(SUM(IF(Periodo = y5, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek5
,CAST(SUM(IF(Periodo = y6, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek6
,CAST(SUM(IF(Periodo = y7, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek7
,CAST(SUM(IF(Periodo = y1, price, 0)) AS DECIMAL(10,0)) AS lprice1
,CAST(SUM(IF(Periodo = y2, price, 0)) AS DECIMAL(10,0)) AS lprice2
,CAST(SUM(IF(Periodo = y3, price, 0)) AS DECIMAL(10,0)) AS lprice3
,CAST(SUM(IF(Periodo = y4, price, 0)) AS DECIMAL(10,0)) AS lprice4
,CAST(SUM(IF(Periodo = y5, price, 0)) AS DECIMAL(10,0)) AS lprice5
,CAST(SUM(IF(Periodo = y6, price, 0)) AS DECIMAL(10,0)) AS lprice6
,CAST(SUM(IF(Periodo = y7, price, 0)) AS DECIMAL(10,0)) AS lprice7
FROM Comparativa
JOIN warehouse W on W.id = warehouse_id
WHERE (Periodo BETWEEN y1 and y7)
AND IF(i_wh = 0, W.is_comparative, i_wh = warehouse_id)
GROUP BY Id_Article;
DROP TEMPORARY TABLE IF EXISTS cur_year;
CREATE TEMPORARY TABLE cur_year
(KEY (Id_Article))
ENGINE = MEMORY
SELECT Id_Article
,CAST(SUM(IF(week = w1, Total, 0)) AS DECIMAL(10,0)) AS cweek1
,CAST(SUM(IF(week = w2, Total, 0)) AS DECIMAL(10,0)) AS cweek2
,CAST(SUM(IF(week = w3, Total, 0)) AS DECIMAL(10,0)) AS cweek3
,CAST(SUM(IF(week = w4, Total, 0)) AS DECIMAL(10,0)) AS cweek4
,CAST(SUM(IF(week = w5, Total, 0)) AS DECIMAL(10,0)) AS cweek5
,CAST(SUM(IF(week = w6, Total, 0)) AS DECIMAL(10,0)) AS cweek6
,CAST(SUM(IF(week = w7, Total, 0)) AS DECIMAL(10,0)) AS cweek7
,CAST(SUM(IF(week = w1, price, 0)) AS DECIMAL(10,0)) AS cprice1
,CAST(SUM(IF(week = w2, price, 0)) AS DECIMAL(10,0)) AS cprice2
,CAST(SUM(IF(week = w3, price, 0)) AS DECIMAL(10,0)) AS cprice3
,CAST(SUM(IF(week = w4, price, 0)) AS DECIMAL(10,0)) AS cprice4
,CAST(SUM(IF(week = w5, price, 0)) AS DECIMAL(10,0)) AS cprice5
,CAST(SUM(IF(week = w6, price, 0)) AS DECIMAL(10,0)) AS cprice6
,CAST(SUM(IF(week = w7, price, 0)) AS DECIMAL(10,0)) AS cprice7
FROM (
SELECT A.Id_Article
,CTS.period week
,SUM(Cantidad) AS Total
,TRUNCATE(SUM(Cantidad * IF(T.Fecha >= '2015-10-01',M.CostFixat,Preu * (100 - Descuento) / 100)),0) AS price
FROM Movimientos M
LEFT JOIN Tickets T ON T.Id_Ticket = M.Id_Ticket
INNER JOIN `time` CTS ON CTS.`date` = DATE(T.Fecha)
INNER JOIN Articles A USING (Id_Article)
INNER JOIN Tipos tp ON tp.tipo_id = A.tipo_id
LEFT JOIN reinos r ON r.id = tp.reino_id
JOIN warehouse W ON W.id = T.warehouse_id
WHERE Fecha BETWEEN date_cyear_ini AND date_cyear_end
AND T.Id_Cliente NOT IN(400,200)
AND IF(i_wh = 0, W.is_comparative, i_wh = T.warehouse_id)
AND r.display <> 0
GROUP BY A.Id_Article, week
) t
GROUP BY Id_Article;
DROP TEMPORARY TABLE IF EXISTS remcom;
SET strFILTRO = REPLACE(strFILTRO, 'Id_Article','A.Id_Article');
SET strFILTRO = REPLACE(strFILTRO, 'tipo_id','tp.tipo_id');
CALL sql_query (sql_printf
(
'CREATE TEMPORARY TABLE remcom
SELECT
an.nicho, p.name Productor, C.Packing, C.Costefijo
,A.Color, Id_Tipo as Tipo,A.tipo_id, o.Abreviatura as Origen, A.Categoria
,A.Tallos, A.Medida, A.Article, TR.CodigoTrabajador
,cweek1, cweek2, cweek3, cweek4, cweek5, cweek6, cweek7
,lweek1, lweek2, lweek3, lweek4, lweek5, lweek6, lweek7
,cprice1, cprice2, cprice3, cprice4, cprice5, cprice6, cprice7
,lprice1, lprice2, lprice3, lprice4, lprice5, lprice6, lprice7
,A.Id_Article, i.buy_id , i.life , CAST(IFNULL(i.sd,0) AS SIGNED) as sd
,CAST(i.avalaible AS SIGNED) avalaible, CAST(i.visible AS SIGNED) visible, i.buy_date
,E.Id_Proveedor AS provider_id, t.Orden, t.Tinta
,A.offer, A.bargain, A.comments
,IF(cy.Id_Article IS NULL AND i.visible = 0 AND i.avalaible = 0 AND IFNULL(i.sd, 0) = 0, FALSE, TRUE) AS filtret
FROM article_inventory i
JOIN Articles A ON A.Id_Article = i.article_id
LEFT JOIN Articles_nicho an ON A.Id_Article = an.Id_Article AND an.warehouse_id = %s
LEFT JOIN producer p ON p.producer_id = A.producer_id
LEFT JOIN Tipos tp ON A.tipo_id = tp.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
LEFT JOIN Trabajadores TR ON TR.Id_Trabajador = tp.Id_Trabajador
LEFT JOIN Tintas t ON t.Id_Tinta = A.color
LEFT JOIN Compres C ON i.buy_id = C.Id_Compra
LEFT JOIN Entradas E USING(Id_Entrada)
LEFT JOIN Origen o ON o.id = A.id_origen
LEFT JOIN last_year ly ON ly.Id_Article = A.Id_Article
LEFT JOIN cur_year cy ON cy.Id_Article = A.Id_Article
WHERE r.display <> 0 AND (i.avalaible <> 0 OR i.visible <> 0 OR cweek1 OR cweek2 OR cweek3 OR cweek4
OR cweek5 OR cweek6 OR cweek7 OR lweek1 OR lweek2 OR lweek3 OR lweek4 OR lweek5
OR lweek6 OR lweek7)
AND %s LIMIT 20000'
,i_wh,strFILTRO
));
ALTER TABLE remcom
CHANGE COLUMN `cweek1` `cweek1` INT NOT NULL,
CHANGE COLUMN `cweek2` `cweek2` INT NOT NULL,
CHANGE COLUMN `cweek3` `cweek3` INT NOT NULL,
CHANGE COLUMN `cweek4` `cweek4` INT NOT NULL,
CHANGE COLUMN `cweek5` `cweek5` INT NOT NULL,
CHANGE COLUMN `cweek6` `cweek6` INT NOT NULL,
CHANGE COLUMN `cweek7` `cweek7` INT NOT NULL,
CHANGE COLUMN `lweek1` `lweek1` INT NOT NULL,
CHANGE COLUMN `lweek2` `lweek2` INT NOT NULL,
CHANGE COLUMN `lweek3` `lweek3` INT NOT NULL,
CHANGE COLUMN `lweek4` `lweek4` INT NOT NULL,
CHANGE COLUMN `lweek5` `lweek5` INT NOT NULL,
CHANGE COLUMN `lweek6` `lweek6` INT NOT NULL,
CHANGE COLUMN `lweek7` `lweek7` INT NOT NULL;
SELECT * FROM remcom;
DROP TEMPORARY TABLE last_year;
DROP TEMPORARY TABLE cur_year;
DROP TEMPORARY TABLE article_inventory;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparative_test` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparative_test`(
v_date DATETIME
,days TINYINT
,i_wh TINYINT
,i_tipo INT
,i_filtro INT
)
BEGIN
DECLARE wstart INT;
DECLARE wend INT;
DECLARE cyear INT;
DECLARE date_cyear_ini DATETIME;
DECLARE date_cyear_end DATETIME;
DECLARE week_count TINYINT DEFAULT 7;
DECLARE date_lyear_ini DATETIME;
DECLARE date_lyear_end DATETIME;
DECLARE corrector INT;
DECLARE w1, w2, w3, w4, w5, w6, w7 INT;
DECLARE y1, y2, y3, y4, y5, y6, y7 INT;
DECLARE wperiod INT;
DECLARE i INT DEFAULT 0;
DECLARE lastCOMP BIGINT;
DECLARE strFILTRO VARCHAR(255) DEFAULT 'TRUE';
IF i_filtro THEN
SELECT `sql` INTO strFILTRO FROM filtros WHERE id = i_filtro;
END IF;
SET corrector = 1;
IF days < 0 OR days > 30 THEN
SET days = 15;
END IF;
IF i_wh = NULL THEN
SET i_wh = 0;
END IF;
SET date_cyear_ini = TIMESTAMP(DATE(TIMESTAMPADD(DAY, -22 - WEEKDAY(v_date), v_date)), '00:00:00');
SET date_cyear_end = TIMESTAMP(DATE(TIMESTAMPADD(DAY, (7 * week_count) -1, date_cyear_ini)), '23:59:59');
CALL article ();
INSERT INTO article_inventory (article_id)
SELECT Id_Article FROM Articles a
JOIN Tipos t ON a.tipo_id = t.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = t.reino_id
WHERE (i_tipo = 0 OR a.tipo_id = i_tipo)
AND r.display <> 0;
IF v_date < CURDATE()
THEN
ALTER TABLE `article_inventory`
ADD `buy_id` INT NOT NULL DEFAULT 0,
ADD `buy_date` DATE DEFAULT '2000-01-01',
ADD `life` INT DEFAULT 0,
ADD `sd` INT DEFAULT 0,
ADD `avalaible` INT DEFAULT 0,
ADD `visible` INT DEFAULT 0;
ELSE
CALL inventario_multiple_2 (v_date, i_wh, days);
CALL article_multiple_buy (v_date, i_wh);
CALL article_multiple_buy_date (v_date, i_wh);
END IF;
DROP TEMPORARY TABLE IF EXISTS wtable;
CREATE TEMPORARY TABLE wtable (
cy INT(6),
ly INT(6)
);
REPEAT
SET i = i + 1;
SET wperiod = vnperiod(TIMESTAMPADD(DAY, 7*(i - 1), date_cyear_ini));
INSERT INTO wtable(cy, ly) VALUES(wperiod, wperiod - 100);
UNTIL i = 7 END REPEAT;
SELECT cy, ly INTO w1, y1 FROM wtable limit 1;
SELECT cy, ly INTO w2, y2 FROM wtable WHERE cy > w1 limit 1;
SELECT cy, ly INTO w3, y3 FROM wtable WHERE cy > w2 limit 1;
SELECT cy, ly INTO w4, y4 FROM wtable WHERE cy > w3 limit 1;
SELECT cy, ly INTO w5, y5 FROM wtable WHERE cy > w4 limit 1;
SELECT cy, ly INTO w6, y6 FROM wtable WHERE cy > w5 limit 1;
SELECT cy, ly INTO w7, y7 FROM wtable WHERE cy > w6 limit 1;
DROP TEMPORARY TABLE wtable;
SET cyear = YEAR(date_cyear_ini);
DROP TEMPORARY TABLE IF EXISTS last_year;
CREATE TEMPORARY TABLE last_year
(KEY (Id_Article))
ENGINE = MEMORY
SELECT Id_Article
,CAST(SUM(IF(Periodo = y1, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek1
,CAST(SUM(IF(Periodo = y2, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek2
,CAST(SUM(IF(Periodo = y3, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek3
,CAST(SUM(IF(Periodo = y4, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek4
,CAST(SUM(IF(Periodo = y5, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek5
,CAST(SUM(IF(Periodo = y6, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek6
,CAST(SUM(IF(Periodo = y7, Cantidad, 0)) AS DECIMAL(10,0)) AS lweek7
,CAST(SUM(IF(Periodo = y1, price, 0)) AS DECIMAL(10,0)) AS lprice1
,CAST(SUM(IF(Periodo = y2, price, 0)) AS DECIMAL(10,0)) AS lprice2
,CAST(SUM(IF(Periodo = y3, price, 0)) AS DECIMAL(10,0)) AS lprice3
,CAST(SUM(IF(Periodo = y4, price, 0)) AS DECIMAL(10,0)) AS lprice4
,CAST(SUM(IF(Periodo = y5, price, 0)) AS DECIMAL(10,0)) AS lprice5
,CAST(SUM(IF(Periodo = y6, price, 0)) AS DECIMAL(10,0)) AS lprice6
,CAST(SUM(IF(Periodo = y7, price, 0)) AS DECIMAL(10,0)) AS lprice7
FROM Comparativa
JOIN warehouse W on W.id = warehouse_id
WHERE (Periodo BETWEEN y1 and y7)
AND IF(i_wh = 0, W.is_comparative, i_wh = warehouse_id)
GROUP BY Id_Article;
DROP TEMPORARY TABLE IF EXISTS cur_year;
CREATE TEMPORARY TABLE cur_year
(KEY (Id_Article))
ENGINE = MEMORY
SELECT Id_Article
,CAST(SUM(IF(week = w1, Total, 0)) AS DECIMAL(10,0)) AS cweek1
,CAST(SUM(IF(week = w2, Total, 0)) AS DECIMAL(10,0)) AS cweek2
,CAST(SUM(IF(week = w3, Total, 0)) AS DECIMAL(10,0)) AS cweek3
,CAST(SUM(IF(week = w4, Total, 0)) AS DECIMAL(10,0)) AS cweek4
,CAST(SUM(IF(week = w5, Total, 0)) AS DECIMAL(10,0)) AS cweek5
,CAST(SUM(IF(week = w6, Total, 0)) AS DECIMAL(10,0)) AS cweek6
,CAST(SUM(IF(week = w7, Total, 0)) AS DECIMAL(10,0)) AS cweek7
,CAST(SUM(IF(week = w1, price, 0)) AS DECIMAL(10,0)) AS cprice1
,CAST(SUM(IF(week = w2, price, 0)) AS DECIMAL(10,0)) AS cprice2
,CAST(SUM(IF(week = w3, price, 0)) AS DECIMAL(10,0)) AS cprice3
,CAST(SUM(IF(week = w4, price, 0)) AS DECIMAL(10,0)) AS cprice4
,CAST(SUM(IF(week = w5, price, 0)) AS DECIMAL(10,0)) AS cprice5
,CAST(SUM(IF(week = w6, price, 0)) AS DECIMAL(10,0)) AS cprice6
,CAST(SUM(IF(week = w7, price, 0)) AS DECIMAL(10,0)) AS cprice7
FROM (
SELECT A.Id_Article
,CTS.period week
,SUM(Cantidad) AS Total
,TRUNCATE(SUM(Cantidad * IF(T.Fecha >= '2015-10-01',M.CostFixat,Preu * (100 - Descuento) / 100)),0) AS price
FROM Movimientos M
LEFT JOIN Tickets T ON T.Id_Ticket = M.Id_Ticket
INNER JOIN `time` CTS ON CTS.`date` = DATE(T.Fecha)
INNER JOIN Articles A USING (Id_Article)
INNER JOIN Tipos tp ON tp.tipo_id = A.tipo_id
LEFT JOIN reinos r ON r.id = tp.reino_id
JOIN warehouse W ON W.id = T.warehouse_id
WHERE Fecha BETWEEN date_cyear_ini AND date_cyear_end
AND T.Id_Cliente NOT IN(400,200)
AND IF(i_wh = 0, W.is_comparative, i_wh = T.warehouse_id)
AND r.display <> 0
GROUP BY A.Id_Article, week
) t
GROUP BY Id_Article;
DROP TEMPORARY TABLE IF EXISTS remcom;
SET strFILTRO = REPLACE(strFILTRO, 'Id_Article','A.Id_Article');
SET strFILTRO = REPLACE(strFILTRO, 'tipo_id','tp.tipo_id');
CALL sql_query (sql_printf
(
'CREATE TEMPORARY TABLE remcom
SELECT
an.nicho, p.name Productor, C.Packing, C.Costefijo
,A.Color, Id_Tipo as Tipo,A.tipo_id, o.Abreviatura as Origen, A.Categoria
,A.Tallos, A.Medida, A.Article, TR.CodigoTrabajador
,cweek1, cweek2, cweek3, cweek4, cweek5, cweek6, cweek7
,lweek1, lweek2, lweek3, lweek4, lweek5, lweek6, lweek7
,cprice1, cprice2, cprice3, cprice4, cprice5, cprice6, cprice7
,lprice1, lprice2, lprice3, lprice4, lprice5, lprice6, lprice7
,A.Id_Article, i.buy_id , tp.life , CAST(IFNULL(i.sd,0) AS SIGNED) as sd
,CAST(i.avalaible AS SIGNED) avalaible, CAST(i.visible AS SIGNED) visible, i.buy_date
,E.Id_Proveedor AS provider_id, t.Orden, t.Tinta
,A.offer, A.bargain, A.comments, A.relevancy
,IF(cy.Id_Article IS NULL AND i.visible = 0 AND i.avalaible = 0 AND IFNULL(i.sd, 0) = 0, FALSE, TRUE) AS filtret
FROM article_inventory i
JOIN Articles A ON A.Id_Article = i.article_id
LEFT JOIN Articles_nicho an ON A.Id_Article = an.Id_Article AND an.warehouse_id = %s
LEFT JOIN producer p ON p.producer_id = A.producer_id
LEFT JOIN Tipos tp ON A.tipo_id = tp.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
LEFT JOIN Trabajadores TR ON TR.Id_Trabajador = tp.Id_Trabajador
LEFT JOIN Tintas t ON t.Id_Tinta = A.color
LEFT JOIN Compres C ON i.buy_id = C.Id_Compra
LEFT JOIN Entradas E USING(Id_Entrada)
LEFT JOIN Origen o ON o.id = A.id_origen
LEFT JOIN last_year ly ON ly.Id_Article = A.Id_Article
LEFT JOIN cur_year cy ON cy.Id_Article = A.Id_Article AND (i.avalaible <> 0 OR i.visible <> 0 OR cweek1 OR cweek2 OR cweek3 OR cweek4
OR cweek5 OR cweek6 OR cweek7 OR lweek1 OR lweek2 OR lweek3 OR lweek4 OR lweek5
OR lweek6 OR lweek7)
WHERE r.display <> 0 AND %s '
,i_wh,strFILTRO
));
ALTER TABLE remcom
CHANGE COLUMN `cweek1` `cweek1` INT NOT NULL,
CHANGE COLUMN `cweek2` `cweek2` INT NOT NULL,
CHANGE COLUMN `cweek3` `cweek3` INT NOT NULL,
CHANGE COLUMN `cweek4` `cweek4` INT NOT NULL,
CHANGE COLUMN `cweek5` `cweek5` INT NOT NULL,
CHANGE COLUMN `cweek6` `cweek6` INT NOT NULL,
CHANGE COLUMN `cweek7` `cweek7` INT NOT NULL,
CHANGE COLUMN `lweek1` `lweek1` INT NOT NULL,
CHANGE COLUMN `lweek2` `lweek2` INT NOT NULL,
CHANGE COLUMN `lweek3` `lweek3` INT NOT NULL,
CHANGE COLUMN `lweek4` `lweek4` INT NOT NULL,
CHANGE COLUMN `lweek5` `lweek5` INT NOT NULL,
CHANGE COLUMN `lweek6` `lweek6` INT NOT NULL,
CHANGE COLUMN `lweek7` `lweek7` INT NOT NULL;
SELECT * FROM remcom;
DROP TEMPORARY TABLE last_year;
DROP TEMPORARY TABLE cur_year;
DROP TEMPORARY TABLE article_inventory;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `compresFromTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `compresFromTicket`(IN vTicketId BIGINT, IN vEntryId BIGINT)
BEGIN
DECLARE vShipmentWarehouse INT;
DECLARE vShipmentDate INT;
SELECT warehouse_id_out, shipment
INTO vShipmentWarehouse, vShipmentDate
FROM travel tr
JOIN Entradas e ON e.travel_id = tr.id
WHERE Id_Entrada = vEntryId;
CALL item_last_buy_(vShipmentWarehouse,vShipmentDate);
INSERT INTO Compres(Id_Article,Cantidad, Id_Entrada, Id_Cubo, Packing, grouping, caja, Costefijo, Etiquetas)
SELECT m.Id_Article,
m.Cantidad,
vEntryId,
c.Id_Cubo,
c.Packing,
IF(c.grouping,c.grouping,1),
c.caja,
buyingAbsoluteCost(c.Id_Compra) Costefijo,
ifnull(floor(m.Cantidad / c.Packing),1) Etiquetas
FROM
Movimientos m
JOIN Articles a ON m.Id_Article = a.Id_Article
LEFT JOIN t_item_last_buy b ON m.Id_Article = b.item_id AND b.warehouse_id = vShipmentWarehouse
LEFT JOIN Compres c ON c.Id_Compra = b.buy_id
WHERE m.Id_Ticket = vTicketId;
CALL buy_tarifas_entry(vEntryId);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `CompresTriggerBeforeDelete` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `CompresTriggerBeforeDelete`(oldId INT, oldEntrada INT)
BEGIN
DECLARE hasToRecalculate BOOLEAN;
DECLARE newWarehouse INT;
SELECT Id_Compra INTO hasToRecalculate FROM vn.lastBuy lb
WHERE lb.id = oldId LIMIT 1;
IF hasToRecalculate THEN
SELECT warehouse_id INTO newWarehouse FROM travel t
JOIN Entradas e ON t.id = e.travel_id
WHERE e.Id_Entrada = oldEntrada;
CALL vn.lastBuyRefresh(newWarehouse);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `compresTriggerBeforeInsert` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `compresTriggerBeforeInsert`(newNoVincular INT, newEntrada INT, newCompra INT, newItem INT)
BEGIN
DECLARE newWarehouse INTEGER;
IF newNoVincular = FALSE THEN
UPDATE travel t
JOIN vn.lastBuy lb ON newItem = lb.item AND t.warehouse_id = lb.warehouse
JOIN Entradas e ON e.travel_id = t.id
SET lb.id = newCompra
WHERE e.Id_Entrada = newEntrada AND t.landing > lb.landing AND t.landing <= CURDATE();
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `compresTriggerBeforeUpdate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `compresTriggerBeforeUpdate`(vOldEntrada INT, vNewEntrada INT, oldItem INT,
newItem INT, newNoVincular BOOLEAN, newCompra INT)
BEGIN
DECLARE newWarehouse INTEGER;
DECLARE hasToRecalculate BOOLEAN;
IF newNoVincular = FALSE THEN
IF oldItem <> newItem OR vOldEntrada <> vNewEntrada THEN
SELECT Id_Compra INTO hasToRecalculate FROM travel t
JOIN Entradas e ON e.travel_id = t.id
JOIN vn.lastBuy lb ON lb.id = newCompra
WHERE e.Id_Entrada = vOldEntrada LIMIT 1;
IF hasToRecalculate THEN
SELECT warehouse_id INTO newWarehouse FROM travel t
JOIN Entradas e ON t.id = e.travel_id
WHERE e.Id_Entrada = vOldEntrada;
CALL vn.lastBuyRefresh(newWarehouse);
END IF;
END IF;
IF vOldEntrada <> vNewEntrada THEN
UPDATE Entradas oldEntrada
JOIN travel oldTravel ON oldEntrada.travel_id = oldtravel.id
JOIN Entradas newEntrada ON newEntrada.Id_Entrada = vNewEntrada
JOIN travel newTravel ON newTravel.id = newEntrada.travel_id
JOIN vn.lastBuy lb ON newItem = lb.item AND newTravel.warehouse_id = lb.warehouse
SET lb.id = newCompra
WHERE oldEntrada.Id_Entrada = vOldEntrada AND oldTravel.warehouse_id <> newTravel.warehouse_id
AND newTravel.landing > lb.landing AND newTravel.landing <= CURDATE();
END IF;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `confection_control_source` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `confection_control_source`(vScopeDays TINYINT)
BEGIN
DECLARE vMidnight DATETIME DEFAULT TIMESTAMP(CURDATE(),'23:59:59');
DECLARE vEndingDate DATETIME DEFAULT TIMESTAMPADD(DAY,vScopeDays,vMidnight);
DECLARE SAFE_ALERT_LEVEL INT DEFAULT 3;
DROP TEMPORARY TABLE IF EXISTS tmp.production_buffer;
CREATE TEMPORARY TABLE tmp.production_buffer
ENGINE = MEMORY
SELECT
date(t.Fecha) as Fecha,
hour(t.Fecha) as Hora,
hour(t.Fecha) as Departure,
t.Id_Ticket,
m.Id_Movimiento,
m.Cantidad,
m.Concepte,
ABS(m.Reservado) Reservado,
i.Categoria,
t.Alias as Cliente,
wh.name as Almacen,
t.warehouse_id,
cs.province_id,
a.agency_id,
ct.description as Taller,
stock.visible,
stock.available
FROM vn2008.Tickets t
JOIN vn2008.Agencias a ON a.Id_Agencia = t.Id_Agencia
JOIN vn2008.warehouse wh ON wh.id = t.warehouse_id
JOIN vn2008.Movimientos m ON m.Id_Ticket = t.Id_Ticket
JOIN vn2008.Articles i ON i.Id_Article = m.Id_Article
JOIN vn2008.Tipos tp ON tp.tipo_id = i.tipo_id
JOIN vn.confectionType ct ON ct.id = tp.confeccion
JOIN vn2008.Consignatarios cs on cs.Id_Consigna = t.Id_Consigna
LEFT JOIN vn.ticketState tls on tls.ticket = t.Id_Ticket
LEFT JOIN
(
SELECT item_id, sum(visible) visible, sum(available) available
FROM
(
SELECT a.item_id, 0 as visible, a.available
FROM cache.cache_calc cc
LEFT JOIN cache.available a ON a.calc_id = cc.id
WHERE cc.cache_id IN (2,8)
AND cc.params IN (concat("1/", CURDATE()),concat("44/", CURDATE()))
UNION ALL
SELECT v.item_id, v.visible, 0 as available
FROM cache.cache_calc cc
LEFT JOIN cache.visible v ON v.calc_id = cc.id
where cc.cache_id IN (2,8) and cc.params IN ("1","44")
) sub
GROUP BY item_id
) stock ON stock.item_id = m.Id_Article
WHERE tp.confeccion
AND wh.hasConfectionTeam
AND t.Fecha BETWEEN CURDATE() AND vEndingDate
AND m.Cantidad > 0;
CALL production_buffer_set_priority;
INSERT INTO tmp.production_buffer(
Fecha,
Id_Ticket,
Cantidad,
Concepte,
Categoria,
Cliente,
Almacen,
Taller
)
SELECT
tr.shipment AS Fecha,
e.Id_Entrada AS Id_Ticket,
c.Cantidad,
a.Article,
a.Categoria,
whi.name as Cliente,
who.name as Almacen,
ct.description as Taller
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN vn2008.travel tr ON tr.id = e.travel_id
JOIN vn2008.warehouse whi ON whi.id = tr.warehouse_id
JOIN vn2008.warehouse who ON who.id = tr.warehouse_id_out
JOIN vn2008.Articles a ON a.Id_Article = c.Id_Article
JOIN vn2008.Tipos tp ON tp.tipo_id = a.tipo_id
JOIN vn.confectionType ct ON ct.id = tp.confeccion
WHERE who.hasConfectionTeam
AND tp.confeccion
AND tr.shipment BETWEEN CURDATE() AND vEndingDate;
SELECT * FROM tmp.production_buffer;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `createBouquet` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `createBouquet`(
vName VARCHAR(50),
vType int,
vSize int,
vColour VARCHAR(5),
OUT vItem INT(11)
)
BEGIN
DECLARE vDate DATE;
DECLARE vCodintrastat INT(11);
SELECT
Id_Article
INTO vItem FROM
Articles
WHERE
(Id_Article BETWEEN 161000 AND 169000)
AND Article LIKE CONCAT('%', vName)
AND tipo_id = vType
AND Medida = vSize
AND Color = vColour
LIMIT 1;
IF vItem IS NULL THEN
SELECT (IF(MAX(Id_Article) IS NULL, 161000, (MAX(Id_Article) + 1))) INTO vItem FROM Articles WHERE Id_Article BETWEEN 161000 AND 169000;
INSERT INTO Articles(Id_Article, Article, tipo_id, Medida, color, id_origen)
VALUES (
vItem,
vName,
vType,
vSize,
vColour,
1
);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `createWorker` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `createWorker`(
vName VARCHAR(50),
vCognames VARCHAR(50),
vDNI VARCHAR(9),
vAddress TEXT,
vPostalCode VARCHAR(5),
vTown VARCHAR(25),
vProvince SMALLINT(5),
vCompany SMALLINT(5),
vPhone VARCHAR(11),
vMail VARCHAR(80) CHARSET utf8,
vDniExpiration DATETIME,
vEmployeeBoss INT
)
BEGIN
DECLARE vClient INT;
DECLARE vUser INT;
DECLARE vWorker INT;
DECLARE vWorkerCode VARCHAR(8);
DECLARE vPassword VARCHAR(50);
DECLARE vUsername VARCHAR(50) CHARSET utf8;
SELECT Id_cliente INTO vClient FROM vn2008.Clientes WHERE `if` = vDNI;
IF vClient IS NULL THEN
SELECT (MAX(Id_Cliente) + 1) INTO vClient FROM Clientes WHERE Id_Cliente < 999999;
INSERT INTO Clientes (Id_Cliente, Cliente, Domicilio, `IF`, Telefono, province_id, Poblacion, CodPostal, RazonSocial, Contacto, Oficial, Descuento, Codpos, pay_met_id, Vencimiento, Credito)
SELECT vClient, Concat('TR ', vName, ' ', vCognames), vAddress, vDNI, vPhone, vProvince, vTown, vPostalCode, CONCAT(vCognames, ' ', vName), vName, 1, 3, vPostalCode, 4, 5, 300;
END IF;
SET vUsername = LCASE(CONCAT(REPLACE(vName, ' ', ''), LEFT(vCognames, 1), MID(vCognames, (LOCATE(' ', vCognames) + 1), 1)));
WHILE (SELECT COUNT(*) FROM account.user WHERE `name`= vUsername) DO
SET vUsername = CONCAT(vUsername, (FLOOR(RAND() * 100)));
END WHILE;
SET vPassword = CONCAT(IF(INSTR(vCognames,' ') = 0, vCognames, LEFT(vCognames, INSTR(vCognames,' ') - 1)), '.' , vClient);
IF NOT (SELECT COUNT(*) FROM account.user where id = vClient) THEN
INSERT INTO account.user (id, role, `name`, `password`, active) VALUES (vClient, 1, LCASE(vUsername), MD5(LCASE(vPassword)), 1);
SET vUser = vClient;
INSERT INTO account.account (id, lastchange, `expire`) values (vClient, CURRENT_DATE(), CURRENT_DATE());
ELSE
INSERT INTO account.user (role, `name`, `password`, active) VALUES (1, LCASE(vUsername), MD5(LCASE(vPassword)), 1);
SET vUser = LAST_INSERT_ID();
INSERT INTO account.account (id, lastchange ,`expire`) values (vUser, CURRENT_DATE(), CURRENT_DATE());
END IF;
SET vWorkerCode = CONCAT(LEFT(vName, 1), LEFT(vCognames, 1), MID(vCognames, (LOCATE(' ', vCognames) + 1), 1));
IF (SELECT COUNT(*) FROM Trabajadores WHERE CodigoTrabajador = vWorkerCode) THEN
SET vWorkerCode = "001";
END IF;
IF NOT (SELECT COUNT(*) FROM Trabajadores WHERE dni = vDNI) THEN
INSERT INTO Trabajadores (CodigoTrabajador, Nombre, Apellidos, `Password`, dni, empresa_id, user_id, boss, DniExpiration)
VALUES (vWorkerCode, vName, vCognames, LCASE(vPassword), vDNI, vCompany, vUser, vEmployeeBoss, VDniExpiration);
SET vWorker = LAST_INSERT_ID();
ELSE
UPDATE Trabajadores SET user_id = vUser WHERE dni = vDNI;
END IF;
IF vMail IS NOT NULL AND NOT (SELECT COUNT(*) FROM account.mailForward WHERE forwardTo = vMail) THEN
INSERT INTO account.mailForward (account, forwardTo) VALUES (vUser, vMail);
UPDATE Trabajadores SET email = CONCAT(vUsername, '@verdnatura.es') WHERE user_id = vUser;
END IF;
SELECT vUser, vWorker, vPassword, vUsername;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `credit_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `credit_update`()
BEGIN
DECLARE dblDiferencia DOUBLE DEFAULT 10.0;
DECLARE dblImporteRec,auxdblImporteRec DOUBLE DEFAULT 0.0;
DECLARE dblImporteFac,auxdblImporteFac DOUBLE DEFAULT 0.0;
DECLARE intIdRecibo,auxintIdRecibo INT (11) DEFAULT 0;
DECLARE intId_Cliente,auxintId_Cliente,intId_ClienteRec,auxintId_ClienteRec INT DEFAULT 0;
DECLARE bitFin,bitFinRecord,bitFinRecord1 BIT DEFAULT 0;
DECLARE datFechaVencimiento DATE DEFAULT CURDATE();
DECLARE intEmpresa_id INT DEFAULT 0;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `customerDebtEvolution` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `customerDebtEvolution`(IN vCustomer INT)
BEGIN
SELECT * FROM
(
SELECT day, date, @s:= round(IFNULL(Euros,0) + @s,2) as Saldo, Euros, Credito, 0 as Cero
FROM
(
SELECT day, date, IFNULL(Euros,0) as Euros, Credito
FROM time
JOIN (SELECT @s:= 0, - Credito as Credito FROM Clientes WHERE Id_Cliente = vCustomer) c
LEFT JOIN
(SELECT Euros, date(Fecha) as Fecha FROM
(
SELECT Fechacobro as Fecha, Entregado as Euros
FROM Recibos
WHERE Id_Cliente = vCustomer
AND Fechacobro >= '2017-01-01'
UNION ALL
SELECT paymentday(f.Fecha,c.Vencimiento), - Importe
FROM Facturas f
JOIN Clientes c ON f.Id_Cliente = c.Id_Cliente
WHERE f.Id_Cliente = vCustomer
AND Fecha >= '2017-01-01'
UNION ALL
SELECT '2016-12-31', Debt
FROM bi.customerDebtInventory
WHERE Id_Cliente = vCustomer
UNION ALL
SELECT Fecha, - SUM(Cantidad * Preu * (100 - Descuento ) * 1.10 / 100)
FROM Tickets t
JOIN Movimientos m on m.Id_Ticket = t.Id_Ticket
WHERE Id_Cliente = vCustomer
AND Factura IS NULL
AND Fecha >= '2017-01-01'
GROUP BY Fecha
) sub2
ORDER BY Fecha
)sub ON time.date = sub.Fecha
WHERE time.date BETWEEN '2016-12-31' AND CURDATE()
ORDER BY date
) sub3
)sub4
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cycDueDateClassification` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cycDueDateClassification`(vCompany INT,vDate DATE)
BEGIN
SELECT Fecha, Clasificacion, CAST(SUM(Importe) AS DECIMAL(10,2)) as Importe, empresa_id
FROM
(
SELECT CASE
WHEN C.Vencimiento <= 30 THEN '0-30 dias'
WHEN C.Vencimiento BETWEEN 31 AND 60 THEN '31-60 dias'
WHEN C.Vencimiento BETWEEN 61 AND 90 THEN '61-90 dias'
ELSE '> 90 dias'
END AS Clasificacion,
F.Importe,
C.Fecha,
F.empresa_id
FROM cyc_declaration C
JOIN Facturas F USING(factura_id)
WHERE C.Riesgo > 0 AND C.Fecha = vDate AND F.empresa_id = vCompany
) cyc
GROUP BY Fecha, Clasificacion, empresa_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cycGeneralClassification` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cycGeneralClassification`(vCompany INT,vDate DATE)
BEGIN
SELECT Fecha, Clasificacion, CAST(SUM(Importe) AS DECIMAL(10,2)) as Importe, empresa_id
FROM
(
SELECT CASE IFNULL(C.Riesgo,-1)
WHEN 0 THEN 'No aseguradas'
WHEN -1 THEN 'Clasificacion nada'
ELSE 'Asegurados'
END AS Clasificacion,
F.Importe,
C.Fecha,
F.empresa_id
FROM cyc_declaration C
JOIN Facturas F ON F.factura_id = C.factura_id
WHERE C.Fecha = vDate AND F.empresa_id = vCompany
) cyc
GROUP BY Fecha, Clasificacion, empresa_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cycNoInsurancedClassification` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cycNoInsurancedClassification`(vCompany INT,vDate DATE)
BEGIN
SELECT 'ORG. PUBLICOS' AS Tipo, C.Fecha, CAST(SUM(F.Importe) AS DECIMAL(10,2)) as Importe, F.empresa_id
FROM cyc_declaration C
INNER JOIN Facturas F USING(factura_id)
JOIN Clientes CL USING(Id_Cliente)
WHERE C.Riesgo IS NULL
AND LEFT(CL.`IF`,1) = 'G'
AND C.Fecha = vDate AND F.empresa_id = vCompany
GROUP BY Fecha, F.empresa_id
UNION ALL
SELECT 'VINCULADAS' , C.Fecha, CAST(SUM(F.Importe) AS DECIMAL(10,2)) as Importe, F.empresa_id
FROM cyc_declaration C
INNER JOIN Facturas F USING(factura_id)
WHERE C.Riesgo IS NULL
AND F.Id_Cliente IN(2066, 2067)
AND C.Fecha = vDate AND F.empresa_id = vCompany
GROUP BY Fecha, F.empresa_id
UNION ALL
SELECT 'CONTADO', C.Fecha, CAST(SUM(F.Importe) AS DECIMAL(10,2)) as Importe, F.empresa_id
FROM cyc_declaration C
INNER JOIN Facturas F USING(factura_id)
JOIN Clientes CL USING(Id_Cliente)
WHERE C.Riesgo IS NULL
AND pay_met_id = 1
AND LEFT(CL.`IF`,1) <> 'G'
AND F.Id_Cliente NOT IN(2066, 2067)
AND C.Fecha = vDate AND F.empresa_id = vCompany
GROUP BY Fecha, F.empresa_id
UNION ALL
SELECT 'OTROS', C.Fecha, CAST(SUM(F.Importe) AS DECIMAL(10,2)) as Importe, F.empresa_id
FROM cyc_declaration C
INNER JOIN Facturas F USING(factura_id)
JOIN Clientes CL USING(Id_Cliente)
WHERE C.Riesgo IS NULL
AND pay_met_id <> 1
AND LEFT(CL.`IF`,1) <> 'G'
AND F.Id_Cliente NOT IN(2066, 2067)
AND C.Fecha = vDate AND F.empresa_id = vCompany
GROUP BY Fecha, F.empresa_id
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cyc_mensual` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cyc_mensual`(IN datFEC DATE)
BEGIN
REPLACE cyc_declaration(factura_id, Riesgo, Fecha, Vencimiento)
SELECT F.factura_id, R.Riesgo, @fecha, IFNULL(C.Vencimiento,0)
FROM Facturas F
INNER JOIN Clientes C ON F.Id_Cliente = C.Id_Cliente
INNER JOIN empresa E ON E.id = F.empresa_id
LEFT JOIN
( SELECT *
FROM (
SELECT Id_Cliente, Riesgo
FROM cyc
WHERE Fecha <= @fecha:= TIMESTAMPADD(DAY, -1 * DAY(datFEC), datFEC)
ORDER BY Fecha DESC
) sub
GROUP BY Id_Cliente
) R ON F.Id_Cliente = R.Id_Cliente
WHERE E.cyc
AND periodo(Fecha) = periodo(@fecha)
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cyc_report2kk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cyc_report2kk`()
BEGIN
SELECT Fecha, Clasificacion, CAST(SUM(Importe) AS DECIMAL(10,2)) as Importe, empresa_id
FROM
(
SELECT CASE
WHEN C.Vencimiento <= 30 THEN '0-30 dias'
WHEN C.Vencimiento BETWEEN 31 AND 60 THEN '31-60 dias'
WHEN C.Vencimiento BETWEEN 61 AND 90 THEN '61-90 dias'
ELSE '> 90 dias'
END AS Clasificacion,
F.Importe,
C.Fecha,
F.empresa_id
FROM cyc_declaration C
INNER JOIN Facturas F USING(factura_id)
WHERE C.Riesgo > 0
) cyc
GROUP BY Fecha, Clasificacion, empresa_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cyc_reportkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cyc_reportkk`()
BEGIN
SELECT Fecha, Clasificacion, CAST(SUM(Importe) AS DECIMAL(10,2)) as Importe, empresa_id
FROM
(
SELECT CASE IFNULL(C.Riesgo,-1)
WHEN 0 THEN 'No aseguradas'
WHEN -1 THEN 'Sin clasificar'
ELSE 'Asegurados'
END AS Clasificacion,
F.Importe,
C.Fecha,
F.empresa_id
FROM cyc_declaration C
INNER JOIN Facturas F USING(factura_id)
) cyc
GROUP BY Fecha, Clasificacion, empresa_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `defaulterRanking` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `defaulterRanking`()
BEGIN
SELECT
c.Id_Cliente,
hasChanged,
Cliente,
amount as Deuda,
CodigoTrabajador,
CyC,
Apuntador,
Fecha_obs,
last_obs,
defaulterSince
from
bi.defaulters d
join
(
SELECT customer_id Id_Cliente,SUM(amount) AS Saldo
FROM bi.customerRiskOverdue
GROUP BY customer_id
) saldos ON saldos.Id_Cliente = d.client
join
Clientes c on c.Id_Cliente = d.client
join
Trabajadores t USING (Id_Trabajador)
left join
(
SELECT Id_Cliente, last_obs, CodigoTrabajador as Apuntador, Fecha as Fecha_obs
FROM
(
SELECT Id_Cliente, `text` as last_obs, CodigoTrabajador, client_observation.odbc_date as Fecha
FROM client_observation
JOIN Trabajadores using(Id_Trabajador)
order by client_observation.odbc_date desc
) sub GROUP BY Id_Cliente
) obs on obs.Id_Cliente = d.client
WHERE
date = CURDATE()
and amount > 0
and not (Saldo > amount AND amount < 0)
and CodigoTrabajador not in ('CYC','BUD','EJE')
ORDER BY amount DESC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `desglose_volume` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `desglose_volume`(IN agency_id INT)
BEGIN
DECLARE v_start DATETIME DEFAULT TIMESTAMP(CURDATE());
DECLARE v_end DATETIME DEFAULT TIMESTAMP(CURDATE(), '23:59:59');
SET v_start = IF(WEEKDAY(CURDATE()), CURDATE(),TIMESTAMPADD(DAY,-1,CURDATE()));
SET v_start = IF(CURDATE() = '2014-05-02', '2014-05-01',v_start);
DROP TEMPORARY TABLE IF EXISTS zeleVOL;
CREATE TEMPORARY TABLE zeleVOL
(
Id_Ticket INT PRIMARY KEY
,Provincia VARCHAR(30)
,Bultos INT DEFAULT 0
,Faltan INT DEFAULT 0
);
INSERT INTO zeleVOL(Provincia, Id_Ticket, Bultos)
SELECT p.name, t.Id_Ticket, sum(m.Cantidad)
FROM Tickets t
JOIN Consignatarios c USING(Id_Consigna)
JOIN province p ON c.province_id = p.province_id
JOIN Movimientos m USING(Id_Ticket)
JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
JOIN warehouse_joined wj ON wj.warehouse_id = t.warehouse_id
WHERE m.Id_Article = 71
AND wj.warehouse_alias_id = 1
AND t.Fecha BETWEEN v_start AND v_end
AND a.agency_id = agency_id
GROUP BY p.name, Id_Ticket;
INSERT INTO zeleVOL(Provincia, Id_Ticket, Bultos)
SELECT p.name, e.ticket_id, COUNT(e.ticket_id)
FROM expeditions e
JOIN Tickets t ON ticket_id = Id_Ticket
JOIN Consignatarios c USING(Id_Consigna)
JOIN province p ON c.province_id = p.province_id
JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
JOIN warehouse_joined wj ON wj.warehouse_id = t.warehouse_id
WHERE e.odbc_date BETWEEN v_start AND v_end
AND wj.warehouse_alias_id = 1
AND a.agency_id = agency_id
GROUP BY p.name, ticket_id
ON DUPLICATE KEY UPDATE Bultos = Bultos;
INSERT INTO zeleVOL(Provincia, Id_Ticket, Faltan)
SELECT province, Id_Ticket, COUNT(Id_Ticket) as Faltan
FROM
(
SELECT p.name AS province, Id_Ticket, COUNT(Id_Movimiento) l, SUM(Cantidad) c
FROM Movimientos m
JOIN Tickets t USING(Id_Ticket)
JOIN Consignatarios c USING(Id_Consigna)
JOIN province p ON c.province_id = p.province_id
JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
LEFT JOIN expeditions e ON t.Id_Ticket = e.ticket_id
JOIN warehouse_joined wj ON wj.warehouse_id = t.warehouse_id
WHERE Fecha BETWEEN v_start AND v_end
AND wj.warehouse_alias_id = 1
AND a.agency_id = agency_id
AND (Bultos = 0 AND expeditions_id IS NULL AND EtiquetasEmitidas = 0)
GROUP BY p.name, Id_Ticket
) sub GROUP BY province
ON DUPLICATE KEY UPDATE Faltan = Faltan;
SELECT Provincia, COUNT(Id_Ticket) expediciones, SUM(Bultos) Bultos, SUM(Faltan) Prevision
FROM zeleVOL
GROUP BY Provincia;
DROP TEMPORARY TABLE IF EXISTS zeleVOL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `dif_porte` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `dif_porte`(IN datFEC DATE)
BEGIN
drop temporary table if exists tmp.bionic_porte;
create temporary table tmp.bionic_porte
select Id_Ticket, sum(Valor * Cantidad) as bionic
from vn2008.Movimientos m
join vn2008.Movimientos_componentes mc using(Id_Movimiento)
where Id_Componente = 15
group by Id_Ticket;
ALTER TABLE tmp.bionic_porte
ADD KEY bp_Id_Ticket_ix (Id_Ticket);
drop temporary table if exists tmp.shipping_porte;
create temporary table tmp.shipping_porte
select Id_Ticket, shipping_charge from vn2008.v_expeditions_shipping_charge where Fecha >= datFEC;
ALTER TABLE tmp.shipping_porte
ADD KEY sp_Id_Ticket_ix (Id_Ticket);
drop temporary table if exists tmp.greuge_porte;
create temporary table tmp.greuge_porte
select Id as Id_Greuge, cast(right(Comentario,7) as decimal(10,0)) Id_Ticket, Importe
FROM vn2008.Greuges
where Comentario like 'dif_porte%';
ALTER TABLE tmp.greuge_porte
ADD KEY Id_Ticket_ix (Id_Ticket);
select * from tmp.greuge_porte;
SELECT Id_Ticket,shipping_charge as Teorico, bionic as Practico, Importe as Greuge, shipping_charge - bionic - Importe as dif
FROM tmp.shipping_porte
join tmp.greuge_porte using(Id_Ticket)
join tmp.bionic_porte using(Id_Ticket)
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Ditacio` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Ditacio`(IN intId INT,IN straccion varchar(100),IN strtabla CHAR(1),IN intIdTrabajador INT,
IN straccion_old VARCHAR(100),IN straccion_new VARCHAR(100))
proc_label:BEGIN
DECLARE intlengthaccion TINYINT;
DECLARE strtabla_dits VARCHAR(35);
SELECT CASE
WHEN strtabla='A' THEN 'Articles_dits'
WHEN strtabla='I' THEN 'Inventario_dits'
WHEN strtabla='E' THEN 'Entradas_dits'
WHEN strtabla='T' THEN 'Tickets_dits'
WHEN strtabla='C' THEN 'Clientes_dits'
WHEN strtabla='V' THEN 'travel_dits'
WHEN strtabla='R' THEN 'Rutas_dits'
WHEN strtabla='G' THEN 'Agencias_dits'
WHEN strtabla='S' THEN 'salarioDits'
ELSE NULL
END
INTO strtabla_dits;
IF (strtabla_dits IS NULL)
THEN LEAVE proc_label;
END IF;
SET @intIdTrabajador = intIdTrabajador;
SET @intId = intId;
SET @strvalue_old = straccion_old;
SET @strvalue_new = straccion_new;
SET @intidaccion = NULL;
SELECT idaccion_dits
INTO @intidaccion
FROM accion_dits
WHERE accion=left(straccion,CHAR_LENGTH(accion))
ORDER BY CHAR_LENGTH(accion) DESC
LIMIT 1;
IF @intidaccion IS null THEN
SET @intidaccion = 103;
END IF;
SET @SQL=CONCAT('INSERT INTO ',strtabla_dits,' (idaccion_dits,Id_Trabajador,Id_Ticket,value_old,value_new)
VALUES (?,?,?,?,?)');
PREPARE stmt1 FROM @SQL;
EXECUTE stmt1 USING @intidaccion,@intIdTrabajador,@intId,@strvalue_old,@strvalue_new;
DEALLOCATE PREPARE stmt1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `emailYesterdayPurchasesByConsigna` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `emailYesterdayPurchasesByConsigna`(IN v_Date DATE, IN v_Client_Id INT)
BEGIN
DECLARE MyIdTicket BIGINT;
DECLARE MyAlias VARCHAR(50);
DECLARE MyDomicilio VARCHAR(255);
DECLARE MyPoblacion VARCHAR(25);
DECLARE MyImporte DOUBLE;
DECLARE MyMailTo VARCHAR(250);
DECLARE MyMailReplyTo VARCHAR(250);
DECLARE done INT DEFAULT FALSE;
DECLARE emptyList INT DEFAULT 0;
DECLARE txt TEXT;
DECLARE rs CURSOR FOR
SELECT t.Id_Ticket, Alias, cast(amount as decimal(10,2)) Importe, Domicilio, POBLACION
FROM Tickets t
JOIN Consignatarios cs on t.Id_Consigna = cs.Id_Consigna
JOIN v_ticket_amount v on v.Id_Ticket = t.Id_Ticket
WHERE t.Fecha BETWEEN v_Date AND dayend(v_Date)
AND t.Id_Cliente = v_Client_Id;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
SET v_Date = IFNULL(v_Date, util.yesterday());
OPEN rs;
FETCH rs INTO MyIdTicket, MyAlias, MyImporte, MyDomicilio, MyPoblacion;
SET emptyList = done;
SET txt = CONCAT('
',
' Relación de envíos.
',
'Dia: ', v_Date, '
');
WHILE NOT done DO
SET txt = CONCAT(txt, '
',
''
, ' ', MyAlias, '
'
, ' ', MyDomicilio, '(', MyPoblacion, ')');
FETCH rs INTO MyIdTicket, MyAlias, MyImporte, MyDomicilio, MyPoblacion;
END WHILE;
SET txt = CONCAT(txt,
'',
'
Puede acceder al detalle de los albaranes haciendo click sobre el número de Ticket',
'
Muchas gracias por su confianza
',
'
');
IF emptyList = 0 THEN
SELECT CONCAT(`e-mail`,',pako@verdnatura.es') INTO MyMailTo
FROM Clientes
WHERE Id_Cliente = v_Client_Id AND `e-mail`>'';
IF v_Client_Id = 7818 THEN
SET MyMailTo = 'isabel@elisabethblumen.com,emunozca@loewe.es,pako@verdnatura.es';
END IF;
INSERT INTO mail(`to`, reply_to, subject, text)
VALUES (IFNULL(MyMailTo,'pako.natek@gmail.com'),'pako@verdnatura.es','Resumen de pedidos preparados',txt);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `emailYesterdayPurchasesLauncher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `emailYesterdayPurchasesLauncher`()
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE vMyClientId INT;
DECLARE rs CURSOR FOR
SELECT Id_Cliente
FROM Clientes
WHERE EYPBC != 0;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN rs;
FETCH rs INTO vMyClientId;
WHILE NOT done DO
CALL emailYesterdayPurchasesByConsigna(util.yesterday(), vMyClientId);
FETCH rs INTO vMyClientId;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `embalajes_stocks` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `embalajes_stocks`(IN idPEOPLE INT, IN bolCLIENT BOOLEAN)
BEGIN
if bolCLIENT then
select m.Id_Article, Article, - cast(sum(m.Cantidad) as decimal) as Saldo
from Movimientos m
join Articles a on m.Id_Article = a.Id_Article
join Tipos tp on tp.tipo_id = a.tipo_id
join Tickets t using(Id_Ticket)
join Consignatarios cs using(Id_Consigna)
where cs.Id_Cliente = idPEOPLE
and Tipo = 'Contenedores'
and t.Fecha > '2010-01-01'
group by m.Id_Article;
else
select Id_Article, Article, sum(Cantidad) as Saldo
from
(select Id_Article, Cantidad
from Compres c
join Articles a using(Id_Article)
join Tipos tp using(tipo_id)
join Entradas e using(Id_Entrada)
join travel tr on tr.id = travel_id
where Id_Proveedor = idPEOPLE
and landing >= '2010-01-01'
and reino_id = 6
union all
select Id_Article, - Cantidad
from Movimientos m
join Articles a using(Id_Article)
join Tipos tp using(tipo_id)
join Tickets t using(Id_Ticket)
join Consignatarios cs using(Id_Consigna)
join proveedores_clientes pc on pc.Id_Cliente = cs.Id_Cliente
where Id_Proveedor = idPEOPLE
and reino_id = 6
and t.Fecha > '2010-01-01') mov
join Articles a using(Id_Article)
group by Id_Article;
end if;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `embalajes_stocks_detalle` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `embalajes_stocks_detalle`(IN idPEOPLE INT, IN idARTICLE INT, IN bolCLIENT BOOLEAN)
BEGIN
if bolCLIENT then
select m.Id_Article
, Article
, IF(Cantidad < 0, - Cantidad, NULL) as Entrada
, IF(Cantidad < 0, NULL, Cantidad) as Salida
, 'T' as Tabla
, t.Id_Ticket as Registro
, t.Fecha
, w.name as Almacen
, cast(Preu as Decimal(5,2)) Precio
, c.Cliente as Proveedor
, abbreviation as Empresa
from Movimientos m
join Articles a using(Id_Article)
join Tickets t using(Id_Ticket)
join empresa e on e.id = t.empresa_id
join warehouse w on w.id = t.warehouse_id
join Consignatarios cs using(Id_Consigna)
join Clientes c on c.Id_Cliente = cs.Id_Cliente
where cs.Id_Cliente = idPEOPLE
and m.Id_Article = idARTICLE
and t.Fecha > '2010-01-01';
else
select Id_Article, Tabla, Registro, Fecha, Article
, w.name as Almacen, Entrada, Salida, Proveedor, cast(Precio as Decimal(5,2)) Precio
from
(select Id_Article
, IF(Cantidad > 0, Cantidad, NULL) as Entrada
, IF(Cantidad > 0, NULL,- Cantidad) as Salida
, 'E' as Tabla
, Id_Entrada as Registro
, landing as Fecha
, tr.warehouse_id
, Costefijo as Precio
from Compres c
join Entradas e using(Id_Entrada)
join travel tr on tr.id = travel_id
where Id_Proveedor = idPEOPLE
and Id_Article = idARTICLE
and landing >= '2010-01-01'
union all
select Id_Article
, IF(Cantidad < 0, - Cantidad, NULL) as Entrada
, IF(Cantidad < 0, NULL, Cantidad) as Salida
, 'T'
, Id_Ticket
, Fecha
, t.warehouse_id
, Preu
from Movimientos m
join Tickets t using(Id_Ticket)
join Consignatarios cs using(Id_Consigna)
join proveedores_clientes pc on pc.Id_Cliente = cs.Id_Cliente
where Id_Proveedor = idPEOPLE
and Id_Article = idARTICLE
and t.Fecha > '2010-01-01') mov
join Articles a using(Id_Article)
join Proveedores p on Id_Proveedor = idPEOPLE
join warehouse w on w.id = mov.warehouse_id
;
end if;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `EntradasTriggerBeforeDelete` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `EntradasTriggerBeforeDelete`(oldTravel INT, oldId INT)
BEGIN
DECLARE hasToRecalculate BOOLEAN;
DECLARE newWarehouse INT;
SELECT Id_Compra INTO hasToRecalculate FROM Compres c
JOIN vn.lastBuy lb ON lb.id = c.Id_Compra
WHERE c.Id_Entrada = newId LIMIT 1;
IF hasToRecalculate THEN
SELECT warehouse_id INTO newWarehouse FROM travel WHERE id = oldTravel;
CALL vn.lastBuyRefresh(newWarehouse);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `EntradasTriggerBeforeUpdate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `EntradasTriggerBeforeUpdate`(oldTravel INT, newTravel INT, oldRedada BOOLEAN,
newRedada BOOLEAN, newId INT)
BEGIN
DECLARE newWarehouse INTEGER;
DECLARE hasToRecalculate BOOLEAN;
IF oldRedada <> newRedada OR newTravel IS NULL THEN
SELECT Id_Compra INTO hasToRecalculate FROM Compres c
JOIN vn.lastBuy lb ON lb.id = c.Id_Compra
WHERE c.Id_Entrada = newId LIMIT 1;
IF hasToRecalculate THEN
SELECT warehouse_id INTO newWarehouse FROM travel WHERE id = newtravel;
CALL vn.lastBuyRefresh(newWarehouse);
END IF;
END IF;
IF newTravel <> oldTravel AND newTravel IS NOT NULL THEN
UPDATE travel t
JOIN Compres c ON c.Id_Entrada = newId
JOIN vn.lastBuy lb ON c.Id_Article = lb.item AND t.warehouse_id = lb.warehouse
SET lb.id = c.Id_Compra
WHERE t.id = newTravel AND t.landing BETWEEN date_inv() AND util.yesterday()
AND t.landing > lb.landing;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Entradas_Restar` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Entradas_Restar`(IN Id_Minuendo INT, IN Id_Sustraendo INT)
BEGIN
UPDATE Compres c
JOIN
(
SELECT Id_Article, Cantidad
FROM Compres
WHERE Id_Entrada = Id_Sustraendo
) sub using(Id_Article)
SET c.Cantidad = c.Cantidad - sub.Cantidad
WHERE Id_Entrada = Id_Minuendo;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `entryFromOrder` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `entryFromOrder`(IN vShipmentWarehouse INTEGER, IN vLandingWarehouse INTEGER, IN vItem INTEGER,
IN vAmount INTEGER,IN vVolume INTEGER,vCost DECIMAL(10,2), IN vRetailedPrice DECIMAL(10,2), vInOutDate DATE)
BEGIN
DECLARE vTravel INT;
DECLARE vEntry INT;
DECLARE vBucket VARCHAR(10);
SELECT id, Id_Entrada INTO vTravel, vEntry
FROM travel t LEFT JOIN Entradas e ON t.id = e.travel_id
WHERE t.landing = vInOutDate AND t.shipment = vInOutDate AND t.warehouse_id_out = vShipmentWarehouse
AND t.warehouse_id = vLandingWarehouse AND agency_id = 15
LIMIT 1;
IF NOT IFNULL(vTravel,0) THEN
INSERT INTO travel (shipment, landing, warehouse_id, warehouse_id_out, agency_id)
VALUES (vInOutDate, vInOutDate, vLandingWarehouse, vShipmentWarehouse, 15);
SELECT LAST_INSERT_ID() INTO vTravel;
END IF;
IF NOT IFNULL(vEntry,0) THEN
INSERT INTO Entradas (Id_Proveedor, travel_id)
VALUES (13, vTravel);
SELECT LAST_INSERT_ID() INTO vEntry;
END IF;
SELECT Id_Cubo INTO vBucket FROM Cubos WHERE Volumen = vVolume LIMIT 1;
IF NOT IFNULL(vBucket,'') > '' THEN
INSERT INTO Cubos (Id_Cubo, Volumen)
VALUES (CONCAT('dm',vVolume/1000), vVolume);
SELECT LAST_INSERT_ID() INTO vBucket;
END IF;
INSERT INTO Compres(Id_Article,Cantidad, Id_Entrada, Id_Cubo, Packing, grouping, caja, Costefijo, Portefijo, Embalajefijo,
Comisionfija, Tarifa2, Tarifa3)
VALUES(vItem,
vAmount,
vEntry,
vBucket,
1,
1,
0,
vCost,
0,
0,
0,
vRetailedPrice,
vRetailedPrice);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `entryFromTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `entryFromTicket`(IN vTicket INTEGER, IN vLandingWarehouse INTEGER)
BEGIN
DECLARE vShipmentWarehouse INT;
DECLARE vLandingDate DATE;
DECLARE vShipmentDate DATE;
DECLARE vTravel INT;
DECLARE vEntry INT;
SELECT warehouse_id, Fecha, Fecha INTO vShipmentWarehouse, vShipmentDate, vLandingDate FROM Tickets WHERE Id_Ticket = vTicket;
SELECT id, Id_Entrada INTO vTravel, vEntry
FROM travel t LEFT JOIN Entradas e ON t.id = e.travel_id
WHERE t.landing = vLandingDate AND t.shipment = vShipmentDate AND t.warehouse_id_out = vShipmentWarehouse AND t.warehouse_id = vLandingWarehouse
AND agency_id = 15
LIMIT 1;
IF vTravel IS NULL THEN
select vLandingDate;
INSERT INTO travel (shipment, landing, warehouse_id, warehouse_id_out, agency_id)
VALUES (vShipmentDate, vLandingDate, vLandingWarehouse, vShipmentWarehouse, 15);
SELECT LAST_INSERT_ID() INTO vTravel;
END IF;
IF vEntry IS NULL THEN
INSERT INTO Entradas (Id_Proveedor, travel_id)
VALUES (13, vTravel);
SELECT LAST_INSERT_ID() INTO vEntry;
END IF;
CALL item_last_buy_(vShipmentWarehouse,vShipmentDate);
INSERT INTO Compres(Id_Article,Cantidad, Id_Entrada, Id_Cubo, Packing, grouping, caja, Costefijo, Portefijo, Embalajefijo,
Comisionfija, Tarifa2, Tarifa3)
SELECT m.Id_Article,
m.Cantidad,
vEntry,
c.Id_Cubo,
c.Packing,
IF(c.grouping,c.grouping,1),
c.caja,
Costefijo,
c.Portefijo,
c.Embalajefijo,
c.Comisionfija,
m.Preu Tarifa2,
m.Preu Tarifa3
FROM
Movimientos m
JOIN Articles a ON m.Id_Article = a.Id_Article
LEFT JOIN t_item_last_buy b ON m.Id_Article = b.item_id AND b.warehouse_id = vShipmentWarehouse
LEFT JOIN Compres c ON c.Id_Compra = b.buy_id
WHERE m.Id_Ticket = vTicket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `entryWithItem` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `entryWithItem`(IN vShipmentWarehouse INTEGER, IN vLandingWarehouse INTEGER,
IN vItem INTEGER, IN vAmount INTEGER,IN vVolume INTEGER, IN vGrossMargin DECIMAL(10,2), vInOutDate DATE)
BEGIN
DECLARE vLandingWarehouse INT;
DECLARE vLandingDate DATE;
DECLARE vShipmentDate DATE;
DECLARE vTravel INT;
DECLARE vEntry INT;
DECLARE vBucket VARCHAR(10);
SELECT id, Id_Entrada INTO vTravel, vEntry
FROM travel t LEFT JOIN Entradas e ON t.id = e.travel_id
WHERE t.landing = vInOutDate AND t.shipment = vInOutDate AND t.warehouse_id_out = vShipmentWarehouse
AND t.warehouse_id = vLandingWarehouse AND agency_id = 15
LIMIT 1;
IF NOT vTravel THEN
INSERT INTO travel (shipment, landing, warehouse_id, warehouse_id_out, agency_id)
VALUES (vShipmentDate, vLandingDate, vLandingWarehouse, vLandingWarehouse, 15);
SELECT LAST_INSERT_ID() INTO vTravel;
END IF;
IF NOT vEntry THEN
INSERT INTO Entradas (Id_Proveedor, travel_id)
VALUES (13, vTravel);
SELECT LAST_INSERT_ID() INTO vEntry;
END IF;
SELECT Id_Cubo INTO vBucket FROM Cubos WHERE Volumen = vVolume LIMIT 1;
IF vBucket IS NULL THEN
INSERT INTO Cubos (Id_Cubo, Volumen)
VALUES (CONCAT('dm',vVolume/1000), vVolume);
SELECT LAST_INSERT_ID() INTO vBucket;
END IF;
INSERT INTO Compres(Id_Article,Cantidad, Id_Entrada, Id_Cubo, Packing, grouping, caja, Costefijo, Portefijo, Embalajefijo,
Comisionfija, Tarifa2, Tarifa3)
SELECT vItem,
vAmount,
vEntry,
vBucket,
1 Packing,
1 grouping,
0 caja,
SUM(m.Preu),
0 Portefijo,
0 Embalajefijo,
0 Comisionfija,
SUM(m.Preu) + vGrossMargin Tarifa2,
SUM(m.Preu) + vGrossMargin Tarifa3
FROM
Movimientos m
WHERE m.Id_Ticket = vTicket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `envios_masivos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `envios_masivos`(IN idTICKET INT, IN IdCONSIGNA_DESDE INT, IN IdCONSIGNA_HASTA INT)
BEGIN
INSERT INTO Tickets(Id_Consigna, Id_Cliente, warehouse_id, Fecha, Alias, Tipo, Id_Trabajador, empresa_id, Id_Agencia)
SELECT c.Id_Consigna, t.Id_Cliente, t.warehouse_id, t.Fecha, c.Consignatario, t.Tipo, t.Id_Trabajador, t.empresa_id, t.Id_Agencia
FROM Tickets t
JOIN Consignatarios c
WHERE Id_Ticket = idTICKET
AND c.Id_Consigna BETWEEN IdCONSIGNA_DESDE AND IdCONSIGNA_HASTA;
INSERT INTO Movimientos(Id_Article, Concepte, Cantidad, Preu, PrecioFijado, Id_Ticket)
SELECT Id_Article, Concepte, Cantidad, Preu, TRUE , t.Id_Ticket
FROM Tickets t
JOIN Movimientos m
WHERE m.Id_Ticket = idTICKET
AND t.Id_Consigna BETWEEN IdCONSIGNA_DESDE AND IdCONSIGNA_HASTA;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `etiqueta_sambori` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `etiqueta_sambori`(IN lngEXPEDITION BIGINT, IN intMODE INT, IN intH INT, IN intFILAS INT)
BEGIN
DECLARE intCOLUMNAS INT;
DECLARE intBULTOS INT;
DECLARE intDESCARGAS INT;
DECLARE intRUTA INT;
DECLARE intPOSICIONES INT;
SELECT Id_Ruta INTO intRUTA
FROM Tickets t
JOIN expeditions e on e.ticket_id = t.Id_Ticket
WHERE e.expeditions_id = lngEXPEDITION;
SELECT sum(Bultos) , count(*) , CEIL(SUM(CEIL(Bultos / intH)) / intFILAS), SUM(CEIL(Bultos / intH))
INTO intBULTOS,intDESCARGAS, intCOLUMNAS, intPOSICIONES
from
(
SELECT Id_Consigna, sum(Bultos) Bultos
FROM Tickets
WHERE Id_Ruta = intRUTA
group by Id_Consigna
) sub;
IF intMODE <> 2 THEN
SELECT
CONCAT( IF(posicion_min MOD intFILAS = 0, intFILAS, posicion_min MOD intFILAS)
, MID(' BCDEFG',CEIL(posicion_min /intFILAS),1)
, IF(posicion_min = posicion_max,'',' - ')
, IF(posicion_min = posicion_max,'',IF(posicion_max MOD intFILAS = 0, intFILAS, posicion_max MOD intFILAS))
, IF(posicion_min = posicion_max,'',MID(' BCDEFG',CEIL(posicion_max /intFILAS),1))
) sambori,
t.Prioridad,
t.Id_Consigna,
CONCAT(e.counter, ' / ', t.Bultos) count_bultos,
e.expeditions_id,
zone,
Matricula Vehiculo,
trab.CodigoTrabajador Chofer,
Rutas.Id_Ruta,
RIGHT(Rutas.Id_Ruta, 2) Id_RutaSTR,
t.Bultos TotalBultos,
RIGHT(e.expeditions_id,3) expeditions_IDSTR
FROM
expeditions e
JOIN
Tickets t ON e.ticket_id = t.Id_Ticket
JOIN
(
select Prioridad, cast(@s - 1 as decimal(3,0)) as posicion_max, @s:= cast(@s - ubicaciones as decimal(3,0)) as posicion_min
from
(
select t.Prioridad, sum(t.Bultos) as bultos, CEIL(sum(t.bultos) / intH) as ubicaciones, @s := intPOSICIONES + 1
from Tickets t
where Id_Ruta = intRUTA
group by Prioridad) sub
) posiciones on posiciones.Prioridad = t.Prioridad
JOIN
Consignatarios cs ON cs.Id_Consigna = t.Id_Consigna
JOIN
province p USING (province_id)
JOIN
Rutas ON t.Id_Ruta = Rutas.Id_Ruta
left JOIN
Vehiculos veh USING (Id_vehiculo)
left JOIN
Trabajadores trab ON Rutas.Id_Trabajador = trab.Id_Trabajador
WHERE
expeditions_id = lngEXPEDITION;
ELSE
SELECT
CEIL((SUM(IF(t.Prioridad > t1.Prioridad,
t1.Bultos,
0)) + e.Counter) / CEIL(SUM(t1.Bultos) / 13)) sambori,
t.Prioridad,
t.Id_Consigna,
CONCAT(e.counter, ' / ', t.Bultos) count_bultos,
e.expeditions_id,
zone,
Matricula Vehiculo,
trab.CodigoTrabajador Chofer,
Rutas.Id_Ruta,
RIGHT(Rutas.Id_Ruta, 2) Id_RutaSTR,
t.Bultos TotalBultos,
RIGHT(e.expeditions_id,3) expeditions_IDSTR
FROM
expeditions e
JOIN
Tickets t ON e.ticket_id = t.Id_Ticket
JOIN
Tickets t1 ON t.Id_Ruta = t1.Id_Ruta
JOIN
Consignatarios cs ON cs.Id_Consigna = t.Id_Consigna
JOIN
province p USING (province_id)
JOIN
Rutas ON t1.Id_Ruta = Rutas.Id_Ruta
LEFT JOIN
Vehiculos veh USING (Id_vehiculo)
LEFT JOIN
Trabajadores trab ON Rutas.Id_Trabajador = trab.Id_Trabajador
WHERE
expeditions_id = lngEXPEDITION;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `etiqueta_sambori_2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `etiqueta_sambori_2`(IN lngEXPEDITION BIGINT, IN intMODE INT, IN intH INT, IN intFILAS INT)
BEGIN
DECLARE intCOLUMNAS INT;
DECLARE intBULTOS INT;
DECLARE intDESCARGAS INT;
DECLARE intRUTA INT;
DECLARE intPOSICIONES INT;
SELECT Id_Ruta INTO intRUTA
FROM Tickets t
JOIN expeditions e on e.ticket_id = t.Id_Ticket
WHERE e.expeditions_id = lngEXPEDITION;
SELECT sum(Bultos) , count(*) , CEIL(SUM(CEIL(Bultos / intH)) / intFILAS), SUM(CEIL(Bultos / intH))
INTO intBULTOS,intDESCARGAS, intCOLUMNAS, intPOSICIONES
from
(
SELECT Id_Consigna, sum(Bultos) Bultos
FROM Tickets
WHERE Id_Ruta = intRUTA
group by Id_Consigna
) sub;
IF intMODE <> 2 THEN
SELECT
CONCAT( IF(posicion_min MOD intFILAS = 0, intFILAS, posicion_min MOD intFILAS)
, MID(' BCDEFG',CEIL(posicion_min /intFILAS),1)
, IF(posicion_min = posicion_max,'',' - ')
, IF(posicion_min = posicion_max,'',IF(posicion_max MOD intFILAS = 0, intFILAS, posicion_max MOD intFILAS))
, IF(posicion_min = posicion_max,'',MID(' BCDEFG',CEIL(posicion_max /intFILAS),1))
) sambori,
t.Prioridad,
t.Id_Consigna,
CONCAT(e.counter, ' / ', t.Bultos) count_bultos,
e.expeditions_id,
zone,
Matricula Vehiculo,
trab.CodigoTrabajador Chofer,
Rutas.Id_Ruta,
RIGHT(Rutas.Id_Ruta, 2) Id_RutaSTR
FROM
expeditions e
JOIN
Tickets t ON e.ticket_id = t.Id_Ticket
JOIN
(
select Prioridad, cast(@s - 1 as decimal(3,0)) as posicion_max, @s:= cast(@s - ubicaciones as decimal(3,0)) as posicion_min
from
(
select t.Prioridad, sum(t.Bultos) as bultos, CEIL(sum(t.bultos) / intH) as ubicaciones, @s := intPOSICIONES + 1
from Tickets t
where Id_Ruta = intRUTA
group by Prioridad) sub
) posiciones on posiciones.Prioridad = t.Prioridad
JOIN
Consignatarios cs ON cs.Id_Consigna = t.Id_Consigna
JOIN
province p USING (province_id)
JOIN
Rutas ON t.Id_Ruta = Rutas.Id_Ruta
left JOIN
Vehiculos veh USING (Id_vehiculo)
left JOIN
Trabajadores trab ON Rutas.Id_Trabajador = trab.Id_Trabajador
WHERE
expeditions_id = lngEXPEDITION;
ELSE
SELECT
CEIL((SUM(IF(t.Prioridad > t1.Prioridad,
t1.Bultos,
0)) + e.Counter) / CEIL(SUM(t1.Bultos) / 13)) sambori,
t.Prioridad,
t.Id_Consigna,
CONCAT(e.counter, ' / ', t.Bultos) count_bultos,
e.expeditions_id,
zone,
Matricula Vehiculo,
trab.CodigoTrabajador Chofer,
Rutas.Id_Ruta,
RIGHT(Rutas.Id_Ruta, 2) Id_RutaSTR
FROM
expeditions e
JOIN
Tickets t ON e.ticket_id = t.Id_Ticket
JOIN
Tickets t1 ON t.Id_Ruta = t1.Id_Ruta
JOIN
Consignatarios cs ON cs.Id_Consigna = t.Id_Consigna
JOIN
province p USING (province_id)
JOIN
Rutas ON t1.Id_Ruta = Rutas.Id_Ruta
LEFT JOIN
Vehiculos veh USING (Id_vehiculo)
LEFT JOIN
Trabajadores trab ON Rutas.Id_Trabajador = trab.Id_Trabajador
WHERE
expeditions_id = lngEXPEDITION;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `eti_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `eti_list`(IN wh_in INT)
BEGIN
SELECT warehouse.name AS Alm_Origen
, travel.shipment
, travel.shipment_hour AS ETD
, warehouse_1.name AS Alm_Destino
, travel.landing
,travel.landing_hour AS ETA
, awb.codigo AS awb
, Entradas.Id_Entrada
, Sum(Compres.Etiquetas) AS bultos
, Agencias.Agencia
, producer.name AS producer
, Proveedores.Proveedor
, Sum(Compres.Vida) AS Impresas
, producer.producer_id
, IFNULL((Entradas.Confirmada AND length(Entradas.Notas) > 0),0) as Ready_to_print
FROM Compres
INNER JOIN Entradas ON Entradas.Id_Entrada = Compres.Id_Entrada
INNER JOIN travel ON Entradas.travel_id = travel.id
INNER JOIN warehouse AS warehouse_1 ON warehouse_1.id = travel.warehouse_id
INNER JOIN warehouse ON warehouse.id = travel.warehouse_id_out
INNER JOIN Agencias ON Agencias.Id_Agencia = travel.agency_id
LEFT JOIN recibida_entrada ON Entradas.Id_Entrada = recibida_entrada.Id_Entrada
LEFT JOIN awb_recibida ON recibida_entrada.awb_recibida = awb_recibida.recibida_id
LEFT JOIN awb ON awb_recibida.awb_id = awb.id
INNER JOIN Articles ON Compres.Id_Article = Articles.Id_Article
LEFT JOIN producer ON Articles.producer_id = producer.producer_id
INNER JOIN Proveedores ON Entradas.Id_Proveedor = Proveedores.Id_Proveedor
WHERE wh_in IN (travel.warehouse_id_out, travel.warehouse_id)
AND travel.landing Between TIMESTAMPADD(DAY,-7,CURDATE()) and TIMESTAMPADD(DAY,14,CURDATE())
GROUP BY warehouse.name, travel.shipment, travel.shipment_hour
, warehouse_1.name, travel.landing, travel.landing_hour
, awb.codigo, Entradas.Id_Entrada, Agencias.Agencia
, producer.name, Proveedores.Proveedor
ORDER BY travel.landing DESC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `eti_to_print` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `eti_to_print`(IN idENTRADA INT, IN idPRODUCER INT)
BEGIN
select Vida as Impresas
,Etiquetas as bultos
,Packing
,Id_Article
,CONCAT(Article,' ',Medida,' ', Categoria) as Articat
,p.name as marca
,Proveedor
,Id_Entrada
,Id_Compra
from Compres c
join Entradas e using(Id_Entrada)
join Proveedores using(Id_Proveedor)
join travel tr on tr.id = e.travel_id
join Articles a using(Id_Article)
left join producer p using(producer_id)
where Id_Entrada = idENTRADA
and idPRODUCER in (0,a.producer_id) ;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `f10_no_vincular` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `f10_no_vincular`(lngEntrada INTEGER)
DETERMINISTIC
BEGIN
DECLARE datFecha DATE DEFAULT CURDATE();
DROP TEMPORARY TABLE IF EXISTS f10_no_vincular_;
CREATE TEMPORARY TABLE IF NOT EXISTS f10_no_vincular_
SELECT c.Id_Entrada,c.Id_Compra,c.Id_Article, c.Novincular, c.Packing, be.pri
FROM Compres c
JOIN buy_edi be ON c.buy_edi_id = be.id AND be.fec = datFecha
LEFT JOIN Entradas_kop ek ON ek.Id_Entrada = c.Id_Entrada
WHERE
((ek.Id_Entrada IS NOT NULL AND ek.sub IS NULL)
OR (c.Id_Entrada = 9200 AND be.ok <> FALSE)
OR c.Id_Entrada = lngEntrada) AND Id_Article <> 90;
DROP TEMPORARY TABLE IF EXISTS f10_mismo_Packing;
CREATE TEMPORARY TABLE IF NOT EXISTS f10_mismo_Packing
SELECT * FROM (
SELECT * FROM f10_no_vincular_
ORDER BY pri DESC) t
GROUP BY Id_Article,Packing
HAVING count(Id_Compra) > 1 AND BIT_OR(Id_Entrada = 9200);
UPDATE Compres c
JOIN buy_edi be ON c.buy_edi_id = be.id AND be.fec = datFecha
JOIN f10_mismo_Packing f ON f.Id_Article = c.Id_Article AND c.Packing = f.Packing
LEFT JOIN Entradas_kop ek ON ek.Id_Entrada = f.Id_Entrada
SET c.Novincular = IF(c.Id_Compra = f.Id_Compra,0,1)
WHERE
((ek.Id_Entrada IS NOT NULL AND ek.sub IS NULL)
OR (c.Id_Entrada = 9200 AND be.ok <> FALSE)
OR c.Id_Entrada = lngEntrada);
DROP TEMPORARY TABLE IF EXISTS f10_mismo_Articulo;
CREATE TEMPORARY TABLE IF NOT EXISTS f10_mismo_Articulo
SELECT Id_Article FROM (
SELECT * FROM (
SELECT * FROM f10_no_vincular_
ORDER BY Id_Entrada = 9200 DESC) t
GROUP BY Id_Article,Packing ) t
GROUP BY Id_Article HAVING COUNT(*) > 1 AND BIT_OR(Id_Entrada = 9200);
SELECT 4;
UPDATE Compres c
JOIN buy_edi be ON c.buy_edi_id = be.id AND be.fec = datFecha
JOIN f10_mismo_Articulo f ON f.Id_Article = c.Id_Article
LEFT JOIN Entradas_kop ek ON ek.Id_Entrada = c.Id_Entrada
SET c.Id_Article = 90
WHERE c.Id_Entrada = 9200 AND be.ok <> FALSE;
DROP TEMPORARY TABLE IF EXISTS f10_no_vincular_;
DROP TEMPORARY TABLE IF EXISTS f10_mismo_Packing;
DROP TEMPORARY TABLE IF EXISTS f10_mismo_Articulo;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `F5` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `F5`(IN idT BIGINT)
BEGIN
SELECT C.calidad,
LEFT(Article, 4) as Subtipo,
barcode,
'ASEGURADO' AS asegurado,
Reino,
R.orden,
CS.Consignatario,
T.Id_Cliente,
T.Id_Trabajador,
T.Id_Ticket,
T.Fecha,
M.Id_Article,
M.Cantidad,
M.quantity,
M.Cantidad / IF(nz(Gro.Grouping) = 0,1,nz(Gro.Grouping)) as Paquetes,
M.Concepte,
A.Medida,
A.Color,
A.Categoria,
O.Abreviatura as Origen,
T.Localizacion,
CT.CodigoTrabajador as Vendedor,
T.Bultos,
T.Observaciones,
Ag.Agencia Tipo,
TR.CodigoTrabajador,
M.OK,
M.Reservado,
A.Tallos,
Gro.Grouping,
IF(`transaction`,right(concat('000000' ,M.Id_Article),6),M.Id_Movimiento) Id_Movimiento,
an.Nicho,
'PEDIDO ASEGURADO' AS MSG,
T.Id_Ruta,
RT.Id_Vehiculo,
observation_type_id,
group_concat(IF(observation_type_id = 1,text,'') SEPARATOR '') 'sacador',
group_concat(IF(observation_type_id = 2,text,'') SEPARATOR '') 'encajador',
A.Foto,
M.Id_Movimiento movement_id,
lpad(ifnull(cooler_path_detail_id, an.Nicho),5,'0') as path,
M.Descuento,M.Preu, mm.valor as Preparado, mm.original_quantity
, p.`name` producer, T.warehouse_id, CS.POBLACION
FROM
Tickets T
LEFT JOIN Movimientos M USING(Id_Ticket)
LEFT JOIN Articles A on A.Id_Article = M.Id_Article
LEFT JOIN Articles_nicho an ON A.Id_Article = an.Id_Article AND an.warehouse_id = T.warehouse_id
LEFT JOIN producer p on p.producer_id = A.producer_id
LEFT JOIN cooler_path_detail c on left(an.Nicho,3) = pasillo
LEFT JOIN Origen O ON A.id_origen = O.id
LEFT JOIN Clientes C USING(Id_Cliente)
LEFT JOIN Trabajadores CT ON C.Id_Trabajador = CT.Id_Trabajador
LEFT JOIN Trabajadores TR ON TR.Id_Trabajador = T.Id_Trabajador
INNER JOIN Consignatarios CS ON T.Id_Consigna = CS.Id_Consigna
INNER JOIN Agencias Ag ON Ag.Id_Agencia = T.Id_Agencia
LEFT JOIN (
SELECT Id_Article, code as barcode
FROM barcodes
GROUP BY Id_Article
) BC ON BC.Id_Article = A.Id_Article
LEFT JOIN Tipos TP USING(tipo_id)
LEFT JOIN reinos R ON TP.reino_id = R.id
LEFT JOIN Rutas RT USING(Id_Ruta)
LEFT JOIN ticket_observation tobs ON T.Id_Ticket = tobs.Id_ticket
AND (tobs.observation_type_id = 1 or tobs.observation_type_id = 2)
LEFT JOIN (
SELECT Id_Article, Grouping
FROM (
SELECT landing, Id_Article, CASE caja
WHEN 0 THEN 1
WHEN 2 THEN Packing
ELSE Grouping
END as Grouping
FROM Compres C
JOIN Entradas E USING(Id_Entrada)
JOIN travel TR ON TR.id = travel_id
WHERE warehouse_id = (SELECT warehouse_id FROM Tickets WHERE Id_Ticket = idT)
AND landing between (SELECT FechaInventario FROM tblContadores LIMIT 1) AND (SELECT date(Fecha) FROM Tickets WHERE Id_Ticket = idT)
ORDER BY landing DESC
) GR1
GROUP BY Id_Article
) Gro ON Gro.Id_Article = M.Id_Article
LEFT JOIN Movimientos_mark mm ON mm.Id_Movimiento = M.Id_Movimiento
WHERE T.Id_Ticket = idT group by M.Id_Movimiento;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `F5_entrada` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `F5_entrada`(IN idE BIGINT)
BEGIN
SELECT
NULL AS Sacador,
NULL AS Encajador,
v.Cantidad / v.Packing AS Paquetes,
v.Packing AS Grouping,
barcode,
'ASEGURADO' AS asegurado,
reino,
r.orden,
Alias AS Consignatario,
v.Id_Proveedor AS Id_Cliente,
v.Pedida,
v.Confirmada,
NULL AS vendedor,
10 AS Calidad,
LPAD(IFNULL(cooler_path_detail_id, an.Nicho),
5,
'0') AS path,
TB.Id_Trabajador,
v.Id_Entrada AS Id_Ticket,
landing AS Fecha,
v.Id_Article,
v.Cantidad,
v.article AS Concepte,
v.Medida,
v.Color,
v.Categoria,
Abreviatura AS Origen,
NULL AS Localizacion,
0 AS Bultos,
w.`name` AS Tipo,
CodigoTrabajador,
0 AS OK,
0 AS Reservado,
v.Tallos,
v.Id_Compra AS Id_Movimiento,
an.Nicho,
'PEDIDO ASEGURADO' AS MSG,
0 AS Seguro,
0 AS Id_Ruta,
0 AS Id_Vehiculo,
a.Foto,
pr.name as producer
FROM
v_compres v
LEFT JOIN
Articles_nicho an ON v.Id_Article = an.Id_Article AND an.warehouse_id = v.warehouse_id_out
JOIN
warehouse w ON w.id = v.warehouse_id
LEFT JOIN
Tipos USING (tipo_id)
LEFT JOIN
reinos r ON r.id = Tipos.reino_id
LEFT JOIN
Trabajadores TB ON TB.Id_Trabajador = v.Id_Trabajador
LEFT JOIN
Proveedores p ON p.Id_Proveedor = v.Id_Proveedor
LEFT JOIN
(SELECT
Id_Article, code AS barcode
FROM
barcodes
GROUP BY Id_Article) BC ON BC.Id_Article = v.Id_Article
LEFT JOIN
Articles a ON a.Id_Article = v.Id_Article
LEFT JOIN
producer pr on pr.producer_id = a.producer_id
LEFT JOIN
cooler_path_detail c ON LEFT(v.Nicho, 3) = pasillo
LEFT JOIN
Origen o ON o.id = v.Id_origen
WHERE
v.Id_Entrada = idE
AND v.tipo_id IS NOT NULL
AND v.reino_id <> 8
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `F5_entradakk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `F5_entradakk`(IN idE BIGINT)
BEGIN
SELECT
NULL AS Sacador,
NULL AS Encajador,
v.Cantidad / v.Packing AS Paquetes,
v.Packing AS Grouping,
barcode,
'ASEGURADO' AS asegurado,
reino,
r.orden,
Alias AS Consignatario,
v.Id_Proveedor AS Id_Cliente,
v.Pedida,
v.Confirmada,
NULL AS vendedor,
10 AS Calidad,
LPAD(IFNULL(cooler_path_detail_id, an.Nicho),
5,
'0') AS path,
TB.Id_Trabajador,
v.Id_Entrada AS Id_Ticket,
landing AS Fecha,
v.Id_Article,
v.Cantidad,
v.article AS Concepte,
v.Medida,
v.Color,
v.Categoria,
Abreviatura AS Origen,
NULL AS Localizacion,
0 AS Bultos,
w.`name` AS Tipo,
CodigoTrabajador,
0 AS OK,
0 AS Reservado,
v.Tallos,
v.Id_Compra AS Id_Movimiento,
an.Nicho,
'PEDIDO ASEGURADO' AS MSG,
0 AS Seguro,
0 AS Id_Ruta,
0 AS Id_Vehiculo,
a.Foto,
pr.name as producer
FROM
v_compres v
LEFT JOIN
Articles_nicho an ON v.Id_Article = an.Id_Article AND an.warehouse_id = v.warehouse_id_out
JOIN
warehouse w ON w.id = v.warehouse_id
LEFT JOIN
Tipos USING (tipo_id)
LEFT JOIN
reinos r ON r.id = Tipos.reino_id
LEFT JOIN
Trabajadores TB ON TB.Id_Trabajador = v.Id_Trabajador
LEFT JOIN
Proveedores p ON p.Id_Proveedor = v.Id_Proveedor
LEFT JOIN
(SELECT
Id_Article, code AS barcode
FROM
barcodes
GROUP BY Id_Article) BC ON BC.Id_Article = v.Id_Article
LEFT JOIN
Articles a ON a.Id_Article = v.Id_Article
LEFT JOIN
producer pr on pr.producer_id = a.producer_id
LEFT JOIN
cooler_path_detail c ON LEFT(v.Nicho, 3) = pasillo
LEFT JOIN
Origen o ON o.id = v.Id_origen
WHERE
v.Id_Entrada = idE
AND v.tipo_id IS NOT NULL
AND v.tipo_id <> 77
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Facturas_Saltos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Facturas_Saltos`(IN datSTART DATE , IN datEND DATE)
BEGIN
DECLARE strSER1 VARCHAR(2);
DECLARE strSER2 VARCHAR(2);
DECLARE intEMP1 INT;
DECLARE intEMP2 INT;
DECLARE v_done BOOLEAN DEFAULT FALSE;
DECLARE strFAC1 VARCHAR(11);
DECLARE strFAC2 VARCHAR(11);
DECLARE rs CURSOR FOR
SELECT Id_Factura, empresa_id, Serie
FROM Facturas
WHERE Fecha BETWEEN datSTART AND datEND
ORDER BY empresa_id, Serie, Id_Factura;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET v_done = TRUE;
OPEN rs;
DROP TEMPORARY TABLE IF EXISTS Facturas_Saltarinas;
CREATE TEMPORARY TABLE Facturas_Saltarinas
(Factura_Inicial VARCHAR(11),
Factura_Final VARCHAR(11),
Empresa VARCHAR(3),
Serie VARCHAR(1));
FETCH rs INTO strFAC1, intEMP1, strSER1;
IF NOT v_done THEN
FETCH rs INTO strFAC2, intEMP2, strSER2;
END IF;
WHILE NOT v_done DO
IF strSER1 = strSER2 AND intEMP1 = intEMP2 AND right(strFAC2,5) - right(strFAC1,5) > 1 then
INSERT INTO Facturas_Saltarinas(Factura_Inicial, Factura_Final, Empresa, Serie)
SELECT strFAC1, strFAC2, abbreviation, strSER1
FROM empresa
WHERE id = intEMP1;
END IF;
SET strFAC1 = strFAC2;
SET intEMP1 = intEMP2;
SET STRSER1 = strSER2;
FETCH rs INTO strFAC2, intEMP2, strSER2;
END WHILE;
SELECT * FROM Facturas_Saltarinas;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Factura_vuelve` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Factura_vuelve`(IN strFactura VARCHAR(10), IN intCLI INT )
BEGIN
DECLARE dblIMPORTE DOUBLE;
DECLARE datFEC DATE;
DECLARE intEMP INT;
DECLARE intCLI_OLD INT;
SELECT Importe, Fecha, empresa_id, Id_Cliente
INTO dblIMPORTE, datFEC, intEMP, intCLI_OLD
FROM Facturas WHERE Id_Factura = strFactura;
UPDATE Facturas SET empresa_id = 965, Id_Cliente = intCLI WHERE Id_Factura = strFactura;
UPDATE Tickets SET empresa_id = 965, Id_Cliente = intCLI WHERE Factura = strFactura;
INSERT INTO Recibos(Id_Factura
,Entregado
,Fechacobro
,Id_Trabajador
,Id_Banco
,Id_Cliente
,empresa_id)
VALUES (strFactura
,-1 * dblIMPORTE
,datFEC
,2
,430
,intCLI_OLD
,intEMP);
INSERT INTO Recibos(Id_Factura
,Entregado
,Fechacobro
,Id_Trabajador
,Id_Banco
,Id_Cliente
,empresa_id)
VALUES (strFactura
,dblIMPORTE
,datFEC
,2
,430
,intCLI
,965);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `fv_to_pcakk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `fv_to_pcakk`()
BEGIN
DECLARE idT INT;
DECLARE idC INT;
DECLARE newFEC DATE;
DECLARE idEMP INT;
DECLARE idCON INT;
DECLARE intTIPO INT;
DECLARE newTICKET INT;
DECLARE newLANDING DATE;
SELECT DISTINCT Id_Ticket INTO idT
FROM Movimientos m
JOIN Tickets t using(Id_Ticket)
JOIN Articles a using(Id_Article)
WHERE tipo_id = 19 AND Article like 'HEL %'
AND Fecha between '2015-10-22' and '2015-10-31'
AND warehouse_id =1 LIMIT 1;
WHILE idT IS NOT NULL DO
SELECT Id_Cliente,Fecha,empresa_id,Id_Consigna,Id_Agencia , landing
INTO idC , newFEC, idEMP , idCON , intTIPO , newLANDING
FROM Tickets
WHERE Id_Ticket = idT;
CALL `ticket_new_complet`(idC ,newFEC, 44, 20, idEMP , idCON , intTIPO , NULL , newTICKET);
UPDATE Movimientos
JOIN Articles a using(Id_Article)
SET Id_Ticket = newTICKET
WHERE tipo_id = 19 AND Article like 'HEL %'
AND Id_Ticket = idT;
INSERT INTO order_Tickets (Id_Ticket, order_id)
SELECT newTICKET, order_id
FROM order_Tickets
WHERE Id_Ticket = idT;
UPDATE Tickets
SET landing = newLANDING
WHERE Id_Ticket = newTICKET;
SET idT = NULL;
SELECT DISTINCT Id_Ticket INTO idT
FROM Movimientos m
JOIN Tickets t using(Id_Ticket)
JOIN Articles a using(Id_Article)
WHERE tipo_id = 19 AND Article like 'HEL %'
AND Fecha between '2015-10-22' and '2015-10-31'
AND warehouse_id =1 LIMIT 1;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `gescartera_Estados` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `gescartera_Estados`(IN intAno INT,IN intMes INT,IN intDiasPerdidos INT)
BEGIN
DECLARE intCLI,intCLI2 INT DEFAULT 0;
DECLARE datFEC,datFEC2,auxdatFEC DATE DEFAULT '2001-01-01';
DECLARE lngTIC, lngTIC2 BIGINT DEFAULT 0;
DECLARE intDiferencia INT DEFAULT 0;
DECLARE done,EsPerdido bit DEFAULT 0;
DECLARE intEstado TINYINT(2) DEFAULT 0;
DECLARE intNuevo INT DEFAULT 1;
DECLARE intPerdido INT DEFAULT 2;
DECLARE intRecuperado INT DEFAULT 3;
DECLARE cursor1 CURSOR FOR SELECT Id_Ticket,fac.Id_Cliente,date_format(Fecha,'%Y-%m-%d') AS FormatoFecha
FROM Facturas fac
JOIN (SELECT Id_Ticket,Id_Cliente,Factura from Tickets ti where Factura is not null order by Fecha DESC,Id_Ticket DESC) sub1
on fac.Id_Factura=sub1.Factura
WHERE DATE_FORMAT(Fecha,'%Y-%m-%d')>CAST(CONCAT(YEAR(CURDATE())-2,'-','01-01')AS DATE)
AND DATE_FORMAT(Fecha,'%Y-%m-%d')<=LAST_DAY(CAST(CONCAT(intAno, '-' , intMes,'-',01) AS DATE))
group by Id_Cliente,Fecha
order by sub1.Id_Cliente,FormatoFecha;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;
DECLARE CONTINUE HANDLER FOR 1146
BEGIN
DROP TEMPORARY TABLE IF EXISTS GC;
CREATE TEMPORARY TABLE GC (Id_Ticket BIGINT,Fecha DATE,Id_Cliente int,Estado SMALLINT) ENGINE=MEMORY;
OPEN cursor1;
FETCH cursor1 INTO lngtIC,intCLI,datFEC;
INSERT INTO GC(Id_Ticket, Fecha, Id_Cliente, Estado) VALUES(lngtIC,datFEC, intCLI,intNuevo);
SET auxdatFEC=datFEC;
WHILE NOT DONE DO
FETCH cursor1 INTO lngtIC2,intCLI2,datFEC2;
CASE
WHEN DONE THEN SET intDiferencia=DATEDIFF(CURRENT_DATE,datFEC2);
WHEN intCLI=intCLI2 THEN
SET intDiferencia=DATEDIFF(datFEC2,datFEC);
IF ((intEstado=2)) THEN
INSERT INTO GC(Id_Ticket, Fecha, Id_Cliente, Estado) VALUES (lngtIC2,datFEC2, intCLI,intRecuperado);
SET intEstado=1;
SET auxdatFEC=datFEC2;
ELSE
IF (intDiferencia >= intDiasPerdidos) THEN
INSERT INTO GC(Id_Ticket, Fecha, Id_Cliente, Estado) VALUES (0,DATE_ADD(auxdatFEC,INTERVAL intDiasPerdidos DAY), intCLI,intPerdido);
INSERT INTO GC(Id_Ticket, Fecha, Id_Cliente, Estado) VALUES (lngtIC2,datFEC2, intCLI,intRecuperado);
SET intEstado=1,auxdatFEC=datFEC2;
END IF;
END IF;
WHEN intCLI<>intCLI2 THEN
SET intEstado=0;
SET intDiferencia=DATEDIFF(CURRENT_DATE,datFEC);
INSERT INTO GC(Id_Ticket, Fecha, Id_Cliente, Estado) VALUES(lngtIC2,datFEC2, intCLI2,intNuevo);
SET auxdatFEC=datFEC2;
END CASE;
SET datFEC=datFEC2;
SET intCLI=intCLI2;
SET lngTIC = lngTIC2,auxdatFEC=datFEC2;
END WHILE;
CLOSE cursor1;
INSERT GC
SELECT 0,'2000-01-01',Id_Cliente,4
FROM vn2008.Clientes
WHERE Id_Cliente NOT IN
(select distinct Id_Cliente
FROM vn2008.Tickets order by id_cliente);
SELECT Id_Ticket, Fecha, Id_Cliente, CASE ESTADO
WHEN 1 THEN 'NUEVO'
WHEN 2 THEN 'PERDIDO'
WHEN 3 THEN 'RECUPERADO'
ELSE 'SIN TICKET' END AS Estado,CodigoTrabajador
FROM GC
INNER JOIN vn2008.Clientes cli USING (Id_Cliente)
INNER JOIN vn2008.Trabajadores trab USING (Id_Trabajador);
END;
IF EXISTS (SELECT * FROM GC LIMIT 1) THEN
SELECT Id_Ticket, Fecha, Id_Cliente, CASE ESTADO
WHEN 1 THEN 'NUEVO'
WHEN 2 THEN 'PERDIDO'
WHEN 3 THEN 'RECUPERADO'
ELSE 'SIN TICKET' END AS Estado,CodigoTrabajador
FROM GC
INNER JOIN vn2008.Clientes cli USING (Id_Cliente)
INNER JOIN vn2008.Trabajadores trab USING (Id_Trabajador);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `get_barcodes_ticket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `get_barcodes_ticket`(IN idT BIGINT)
BEGIN
drop temporary TABLE IF EXISTS articles_ticket;
CREATE TEMPORARY TABLE IF NOT EXISTS articles_ticket
(PRIMARY KEY (Id_Article))
ENGINE = MEMORY
select distinct Id_Article from Movimientos where Id_Ticket = idT;
drop temporary TABLE IF EXISTS articles_ticket2;
CREATE TEMPORARY TABLE IF NOT EXISTS articles_ticket2
(PRIMARY KEY (Id_Article))
ENGINE = MEMORY
select * from articles_ticket;
drop temporary TABLE IF EXISTS articles_buys;
CREATE TEMPORARY TABLE IF NOT EXISTS articles_buys AS
select Id_Compra, a.Id_Article from v_compres c JOIN articles_ticket a ON a.Id_Article = c.Id_Article
where landing >= DATE_SUB(CURDATE(), INTERVAL 14 DAY);
SELECT distinct
code, a.Id_Article
FROM
barcodes b
inner join
articles_ticket a ON a.Id_Article = b.Id_Article
union
SELECT
Id_Compra as code, a.Id_Article
FROM
articles_buys c
inner join
articles_ticket2 a ON a.Id_Article = c.Id_Article;
drop temporary TABLE IF EXISTS articles_ticket;
drop temporary TABLE IF EXISTS articles_ticket2;
drop temporary TABLE IF EXISTS articles_buys;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `historico` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `historico`(IN idART INT, IN wh INT, IN v_virtual INT)
BEGIN
DECLARE datFEC DATETIME;
SELECT Fechainventario INTO datFEC FROM tblContadores;
SET @a = 0;
SELECT DATE(Fecha) AS Fecha,
Entrada,
Salida,
OK,
Alias,
Referencia,
id,
@a := @a + IFNULL(Entrada,0) - IFNULL(Salida,0) as acumulado,
F5,
v_virtual,
Calidad,CodigoTrabajador
FROM
( SELECT TR.landing as Fecha,
C.Cantidad as Entrada,
NULL as Salida,
(TR.received != FALSE) as OK,
P.Proveedor as Alias,
E.Referencia as Referencia,
E.Id_Entrada as id,
TR.delivered as F5,
0 as Calidad, tra.CodigoTrabajador
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON TR.id = E.travel_id
JOIN Proveedores P USING (Id_Proveedor)
LEFT JOIN Articles a ON a.Id_Article = C.Id_Article
LEFT JOIN Tipos ti ON ti.Id_Tipo = a.tipo_id
LEFT JOIN Trabajadores tra ON tra.Id_Trabajador = ti.Id_Trabajador
WHERE TR.landing >= datFEC
AND wh IN (TR.warehouse_id , 0)
AND C.Id_Article = idART
AND E.Inventario = 0
UNION ALL
SELECT TR.shipment as Fecha,
NULL as Entrada,
C.Cantidad as Salida,
TR.delivered as OK,
P.Proveedor as Alias,
E.Referencia as Referencia,
E.Id_Entrada as id,
TR.delivered as F5,
0 as Calidad, tra.CodigoTrabajador
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON TR.id = E.travel_id
JOIN warehouse ON warehouse.id = TR.warehouse_id_out
JOIN Proveedores P USING (Id_Proveedor)
LEFT JOIN Articles a ON a.Id_Article = C.Id_Article
LEFT JOIN Tipos ti ON ti.Id_Tipo = a.tipo_id
LEFT JOIN Trabajadores tra ON tra.Id_Trabajador = ti.Id_Trabajador
WHERE TR.shipment >= datFEC
AND wh IN (TR.warehouse_id_out,0)
AND Id_Proveedor <> 4
AND C.Id_Article = idART
AND E.Inventario = 0
AND fuente = 0
UNION ALL
SELECT T.Fecha as Fecha,
NULL as Entrada,
M.Cantidad as Salida,
(IFNULL(ts.alertLevel,0) > 0) as OK,
T.Alias as Alias,
T.Localizacion as Referencia,
T.Id_Ticket as id,
T.PedidoImpreso EtiquetasEmitidas,
C.Calidad, tr.CodigoTrabajador
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
LEFT JOIN vn.ticketState ts ON ts.ticket = T.Id_Ticket
JOIN Clientes C ON C.Id_Cliente = T.Id_Cliente
LEFT JOIN Trabajadores tr ON tr.Id_Trabajador = C.Id_Trabajador
WHERE T.Fecha >= datFEC
AND M.Id_Article = idART
AND wh IN (T.warehouse_id , 0)
) AS Historico
ORDER BY Fecha, OK DESC, Entrada DESC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `historicoprecio` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `historicoprecio`( id_art INT, id_wh INT,id_datestart DATE,id_dateend DATE)
BEGIN
SET @@max_sp_recursion_depth = 100 ;
DROP TEMPORARY TABLE IF EXISTS historicoprecio;
CREATE TEMPORARY TABLE historicoprecio
(
date_start DATE,
rate_0 DOUBLE,
rate_1 DOUBLE,
rate_2 DOUBLE,
rate_3 DOUBLE,
PRIMARY KEY (date_start)
)
ENGINE = MEMORY;
CALL historicoprecio2 (id_art,id_wh,id_datestart,id_dateend);
SET @a:= @b:= @c:= @d:= @e:= @f := @g:= @h:=0.0;
SELECT * FROM
(SELECT d.`date` landing,if(rate_0 IS NULL,@a,@a:=rate_0) Costefijo,if(rate_1 IS NULL,@b,@b:=rate_1) rate_1,
if(rate_2 IS NULL,@c,@c:=rate_2) rate_2,if(rate_3 IS NULL,@d,@d:=rate_3) rate_3,'PF' tipo FROM `time` d
LEFT JOIN historicoprecio hp ON d.`date` = hp.date_start WHERE d.`date` BETWEEN id_datestart AND id_dateend
UNION ALL
SELECT DISTINCT d.`date` ,if(Costefijo IS NULL,@e,@e:=Costefijo) Costefijo,if(Tarifa1 IS NULL,@f,@f:=Tarifa1),
if(Tarifa2 IS NULL,@g,@g:=Tarifa2),if(Tarifa3 IS NULL,@h,@h:=Tarifa3),'C'
FROM `time` d
LEFT JOIN travel t ON t.landing = d.`date`
LEFT JOIN Entradas e ON e.travel_id = t.id
LEFT JOIN Compres c ON c.Id_Entrada = e.Id_Entrada AND id_wh IN (0,warehouse_id) AND c.Id_Article = id_art AND NoVincular = FALSE
WHERE d.`date` BETWEEN id_datestart AND id_dateend
)
t ORDER BY landing DESC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `historicoprecio2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `historicoprecio2`( id_art INT, id_wh INT,id_datestart DATE,id_dateend DATE)
BEGIN
DECLARE done BIT DEFAULT 0;
DECLARE datini,datfin,datiniaux,datfinaux DATE;
DECLARE dblrate0,dblrate0aux,dblrate1,dblrate1aux,dblrate2,dblrate2aux,dblrate3,dblrate3aux DOUBLE DEFAULT 0;
DECLARE boolBeforeStart TINYINT DEFAULT 1;
SET datiniaux = NULL;
SET datfinaux = NULL;
SELECT IFNULL(rate_0,0), IFNULL(rate_1,0), IFNULL(rate_2,0), IFNULL(rate_3,0)
INTO dblrate0aux,dblrate1aux,dblrate2aux,dblrate3aux FROM price_fixed
WHERE date_start = id_datestart AND warehouse_id IN (0,id_wh) AND item_id = id_art;
REPEAT
SET datini = NULL;
SET datfin = NULL;
SET dblrate0 = NULL;
SET dblrate1 = NULL;
SET dblrate2 = NULL;
SET dblrate3 = NULL;
SELECT date_start,date_end,rate_0,rate_1,rate_2,rate_3 INTO datini,datfin,dblrate0,dblrate1,dblrate2,dblrate3 FROM price_fixed
WHERE item_id = id_art AND warehouse_id IN (0,id_wh) AND date_end < id_dateend
AND date_end >= IFNULL(datfinaux,id_datestart) AND date_start = (SELECT MIN(date_start) FROM price_fixed
WHERE date_start >= IFNULL(datiniaux,TIMESTAMPADD(DAY,1,id_datestart)) AND item_id = id_art AND warehouse_id IN (0,id_wh) )
ORDER BY date_start LIMIT 1;
IF datini IS NOT NULL THEN
IF boolBeforeStart THEN
INSERT INTO historicoprecio(date_start,rate_0,rate_1,rate_2,rate_3)
VALUES(TIMESTAMPADD(DAY,-1,datini),dblrate0aux,dblrate1aux,dblrate2aux,dblrate3aux);
SET boolBeforeStart = TRUE;
END IF;
SET datiniaux = NULL;
SET datfinaux = NULL;
SELECT MIN(date_start) INTO datfinaux FROM price_fixed WHERE date_start > datini AND date_start < datfin AND date_end >= datfin
AND warehouse_id IN (0,id_wh) AND item_id = id_art;
CALL historicoprecio2 (id_art,id_wh,datini,IFNULL(datfinaux,datfin));
IF datfinaux IS NULL THEN
INSERT INTO historicoprecio(date_start,rate_0,rate_1,rate_2,rate_3)
VALUES(TIMESTAMPADD(DAY,1,datfin),dblrate0aux,dblrate1aux,dblrate2aux,dblrate3aux),
(datfin,dblrate0,dblrate1,dblrate2,dblrate3);
ELSE
INSERT INTO historicoprecio(date_start,rate_0,rate_1,rate_2,rate_3)
VALUES(TIMESTAMPADD(DAY,-1,datfinaux),dblrate0,dblrate1,dblrate2,dblrate3);
SET boolBeforeStart = FALSE;
END IF;
SET datiniaux=TIMESTAMPADD(DAY,1,datini);
SET datfinaux=datfin;
END IF;
UNTIL datini IS NULL END REPEAT;
INSERT INTO historicoprecio(date_start,rate_0,rate_1,rate_2,rate_3) VALUES(id_datestart,dblrate0aux,dblrate1aux,dblrate2aux,dblrate3aux)
ON DUPLICATE KEY UPDATE rate_0 = dblrate0,rate_1 = dblrate1,rate_2 = dblrate2,rate_3 = dblrate3;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `historico_absoluto` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `historico_absoluto`(IN idART INT, IN wh INT, IN datfecha DATETIME)
BEGIN
DECLARE inv_calculado INT;
DECLARE inv INT;
DECLARE today DATETIME;
DECLARE fecha_inv DATETIME;
SET today = curdate();
DROP TEMPORARY TABLE IF EXISTS historico_pasado;
CREATE TEMPORARY TABLE historico_pasado
SELECT *
FROM (
SELECT TR.landing as Fecha,
C.Cantidad as Entrada,
NULL as Salida,
(TR.received != FALSE) as OK,
P.Proveedor as Alias,
E.Referencia as Referencia,
E.Id_Entrada as id,
TR.delivered as F5, 0 as Calidad
FROM Compres C
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Proveedores P USING (Id_Proveedor)
WHERE TR.landing >= '2001-01-01'
AND Id_proveedor <> 4
AND wh IN (TR.warehouse_id , 0)
AND C.Id_Article = idART
AND E.Inventario = 0
UNION ALL
SELECT TR.shipment as Fecha,
NULL as Entrada,
C.Cantidad as Salida,
TR.delivered as OK,
P.Proveedor as Alias,
E.Referencia as Referencia,
E.Id_Entrada as id,
TR.delivered as F5, 0 as Calidad
FROM Compres C
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Proveedores P USING (Id_Proveedor)
WHERE TR.shipment >= '2001-01-01'
AND wh = TR.warehouse_id_out
AND Id_Proveedor <> 4
AND C.Id_Article = idART
AND E.Inventario = 0
UNION ALL
SELECT T.Fecha as Fecha,
NULL as Entrada,
M.Cantidad as Salida,
(M.OK <> 0 OR T.Etiquetasemitidas <> 0 OR T.Factura IS NOT NULL) as OK,
T.Alias as Alias,
T.Factura as Referencia,
T.Id_Ticket,T.PedidoImpreso,
C.Calidad
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
JOIN Clientes C ON C.Id_Cliente = T.Id_Cliente
WHERE T.Fecha >= '2001-01-01'
AND M.Id_Article = idART
AND wh IN (T.warehouse_id , 0)
) as t1 ORDER BY Fecha, Entrada DESC, OK DESC;
SELECT sum(Entrada) - sum(Salida) INTO inv_calculado
FROM historico_pasado
WHERE Fecha < datfecha;
SELECT p1.*, NULL as v_virtual FROM(
SELECT datfecha as Fecha,inv_calculado as Entrada, NULL as Salida,1 as OK,
'Inventario calculado' as Alias, '' as Referencia, 0 as id, 1 as F5, 0 as Calidad
UNION ALL
SELECT * FROM historico_pasado WHERE Fecha >= datfecha
)as p1;
DROP TEMPORARY TABLE historico_pasado;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `historico_joined` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `historico_joined`(IN idART INT, IN wh_joined INT, IN v_virtual INT)
BEGIN
DECLARE datFEC DATETIME;
SELECT Fechainventario INTO datFEC FROM tblContadores;
SET @a = 0;
SELECT DATE(Fecha) AS Fecha,
Entrada,
Salida,
OK,
Alias,
Referencia,
id,
@a := @a + IFNULL(Entrada,0) - IFNULL(Salida,0) as acumulado,
F5,
v_virtual,
Calidad,CodigoTrabajador
FROM
( SELECT TR.landing as Fecha,
C.Cantidad as Entrada,
NULL as Salida,
(TR.received != FALSE) as OK,
P.Proveedor as Alias,
E.Referencia as Referencia,
E.Id_Entrada as id,
TR.delivered as F5,
0 as Calidad, tra.CodigoTrabajador
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON TR.id = E.travel_id
JOIN Proveedores P USING (Id_Proveedor)
LEFT JOIN Articles a ON a.Id_Article = C.Id_Article
LEFT JOIN Tipos ti ON ti.Id_Tipo = a.tipo_id
LEFT JOIN Trabajadores tra ON tra.Id_Trabajador = ti.Id_Trabajador
LEFT JOIN warehouse_joined wj ON wj.warehouse_id = TR.warehouse_id
WHERE TR.landing >= datFEC
AND wh_joined IN (wj.warehouse_alias_id , 0)
AND C.Id_Article = idART
AND E.Inventario = 0
UNION ALL
SELECT TR.shipment as Fecha,
NULL as Entrada,
C.Cantidad as Salida,
TR.delivered as OK,
P.Proveedor as Alias,
E.Referencia as Referencia,
E.Id_Entrada as id,
TR.delivered as F5,
0 as Calidad, tra.CodigoTrabajador
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON TR.id = E.travel_id
JOIN Proveedores P USING (Id_Proveedor)
LEFT JOIN Articles a ON a.Id_Article = C.Id_Article
LEFT JOIN Tipos ti ON ti.Id_Tipo = a.tipo_id
LEFT JOIN Trabajadores tra ON tra.Id_Trabajador = ti.Id_Trabajador
LEFT JOIN warehouse_joined wj ON wj.warehouse_id = TR.warehouse_id_out
WHERE TR.shipment >= datFEC
AND wh_joined IN (wj.warehouse_alias_id,0)
AND Id_Proveedor <> 4
AND C.Id_Article = idART
AND E.Inventario = 0
UNION ALL
SELECT T.Fecha as Fecha,
NULL as Entrada,
M.Cantidad as Salida,
(M.OK <> 0 OR T.Etiquetasemitidas <> 0 OR T.Factura IS NOT NULL) as OK,
T.Alias as Alias,
T.Localizacion as Referencia,
T.Id_Ticket as id,
T.PedidoImpreso EtiquetasEmitidas,
C.Calidad, tr.CodigoTrabajador
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN Clientes C ON C.Id_Cliente = T.Id_Cliente
LEFT JOIN Trabajadores tr ON tr.Id_Trabajador = C.Id_Trabajador
LEFT JOIN warehouse_joined wj ON wj.warehouse_id = T.warehouse_id
WHERE T.Fecha >= datFEC
AND M.Id_Article = idART
AND wh_joined IN (wj.warehouse_alias_id , 0)
) AS Historico
ORDER BY Fecha, Entrada DESC, OK DESC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `historico_multiple` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `historico_multiple`(IN idART INT)
BEGIN
DECLARE datFEC DATETIME;
SELECT Fechainventario INTO datFEC FROM tblContadores;
SET @a = 0;
DROP TEMPORARY TABLE IF EXISTS hm1;
CREATE TEMPORARY TABLE hm1
SELECT DATE(Fecha) as Fecha,
Entrada,
Salida,
OK,
Referencia,
Historia.id,
wh,
`name` as wh_name
FROM
( SELECT TR.landing as Fecha,
C.Cantidad as Entrada,
NULL as Salida,
IF(warehouse_id = 44, 1, warehouse_id) as wh,
(TR.received != FALSE) as OK,
E.Referencia as Referencia,
E.Id_Entrada as id
FROM Compres C
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
WHERE TR.landing >= datFEC
AND C.Id_Article = idART
AND E.Redada = 0
AND C.Cantidad <> 0
UNION ALL
SELECT TR.shipment as Fecha,
NULL as Entrada,
C.Cantidad as Salida,
IF(warehouse_id_out = 44, 1, warehouse_id_out) as wh,
TR.delivered as OK,
E.Referencia as Referencia,
E.Id_Entrada as id
FROM Compres C
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
WHERE TR.shipment >= datFEC
AND C.Id_Article = idART
AND E.Redada = 0
AND C.Cantidad <> 0
UNION ALL
SELECT T.Fecha as Fecha,
NULL as Entrada,
M.Cantidad as Salida,
IF(warehouse_id = 44, 1, warehouse_id) as wh,
(M.OK <> 0 OR T.Etiquetasemitidas <> 0 OR T.Factura IS NOT NULL) as OK,
T.Factura as Referencia,
T.Id_Ticket as id
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
WHERE T.Fecha >= datFEC
AND M.Id_Article = idART
) AS Historia
INNER JOIN warehouse ON warehouse.id = Historia.wh
ORDER BY Fecha, Entrada DESC, OK DESC;
DROP TEMPORARY TABLE IF EXISTS hm2;
DROP TEMPORARY TABLE IF EXISTS hm3;
DROP TEMPORARY TABLE IF EXISTS hm4;
DROP TEMPORARY TABLE IF EXISTS hm5;
DROP TEMPORARY TABLE IF EXISTS hm6;
DROP TEMPORARY TABLE IF EXISTS hm7;
DROP TEMPORARY TABLE IF EXISTS hm8;
CREATE TEMPORARY TABLE hm2 SELECT * FROM hm1 WHERE wh = 19;
CREATE TEMPORARY TABLE hm3 SELECT * FROM hm1 WHERE wh = 7;
CREATE TEMPORARY TABLE hm4 SELECT * FROM hm1 WHERE wh = 1 or wh = 44;
CREATE TEMPORARY TABLE hm5 SELECT * FROM hm1 WHERE wh = 5;
CREATE TEMPORARY TABLE hm6 SELECT * FROM hm1 WHERE wh = 17;
CREATE TEMPORARY TABLE hm7 SELECT * FROM hm1 WHERE wh = 37;
CREATE TEMPORARY TABLE hm8 SELECT * FROM hm1 WHERE wh = 55;
SELECT * FROM
(
SELECT Fecha, Entrada as BOGEntrada, Salida as BOGSalida, OK as BOGOK, Referencia as BOGReferencia, id as BOGid,
NULL AS VNHEntrada, NULL AS VNHSalida, NULL AS VNHOK, NULL AS VNHReferencia, NULL AS VNHid,
NULL AS SILEntrada, NULL AS SILSalida, NULL AS SILOK, NULL AS SILReferencia, NULL AS SILid,
NULL AS MADEntrada, NULL AS MADSalida, NULL AS MADOK, NULL AS MADReferencia, NULL AS MADid,
NULL AS MCFEntrada, NULL AS MCFSalida, NULL AS MCFOK, NULL AS MCFReferencia, NULL AS MCFid,
NULL AS VILEntrada, NULL AS VILSalida, NULL AS VILOK, NULL AS VILReferencia, NULL AS VILid,
NULL AS BAREntrada, NULL AS BARSalida, NULL AS BAROK, NULL AS BARReferencia, NULL AS BARid
FROM hm2
UNION ALL
SELECT Fecha
, NULL, NULL, NULL, NULL, NULL
,Entrada, Salida, OK, Referencia, id
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
FROM hm3
UNION ALL
SELECT Fecha
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, Entrada, Salida, OK, Referencia, id
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
FROM hm4
UNION ALL
SELECT Fecha
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, Entrada, Salida, OK, Referencia, id
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
FROM hm5
UNION ALL
SELECT Fecha
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, Entrada, Salida, OK, Referencia, id
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
FROM hm6
UNION ALL
SELECT Fecha
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, Entrada, Salida, OK, Referencia, id
, NULL, NULL, NULL, NULL, NULL
FROM hm7
UNION ALL
SELECT Fecha
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, NULL, NULL, NULL, NULL, NULL
, Entrada, Salida, OK, Referencia, id
FROM hm8
) sub
ORDER BY Fecha, BOGEntrada IS NULL, VNHEntrada IS NULL, SILEntrada IS NULL, MADEntrada IS NULL, MCFEntrada IS NULL, VILEntrada IS NULL, BAREntrada IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ImporteSantos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ImporteSantos`(IN dat_from date,IN dat_to date)
BEGIN
select codigotrabajador,Id_Cliente,Cliente,cast(sum(ImporteAnt) as decimal(10,0)) ImporteAnt,cast(sum(ImporteActual) as decimal(10,0)) ImporteActual
from (
select codigotrabajador,cli.Id_Cliente Id_Cliente,Cliente,sum(amount) ImporteAnt,0 ImporteActual
from bi.ticket ti
inner join Clientes cli on ti.Id_Cliente=cli.Id_Cliente
inner join vn2008.Trabajadores on cli.Id_Trabajador=Trabajadores.Id_Trabajador
where (date between date_add(dat_from,interval -1 year) and date_add(dat_to,interval -1 year))
group by CodigoTrabajador,ti.Id_Cliente
union all
select CodigoTrabajador,cli.Id_Cliente,Cliente,0 ImporteAnt,
IFNULL(round(sum(cantidad * Costfixat),2),2) ImporteActual
from Tickets ti
inner join Movimientos m using (Id_Ticket)
INNER JOIN vn2008.Articles a USING(Id_Article)
INNER JOIN Tipos tp ON tp.tipo_id = a.tipo_id
LEFT JOIN reinos r ON r.id = tp.reino_id
INNER JOIN vn2008.Consignatarios c USING(Id_Consigna)
inner join Clientes cli on c.Id_Cliente=cli.Id_cliente
inner join vn2008.Trabajadores on cli.Id_Trabajador=Trabajadores.Id_Trabajador
inner join vn2008.Permisos perm on cli.Id_Trabajador=perm.Id_Trabajador
inner join vn2008.Grupos grup on perm.Id_Grupo=grup.Id
where ti.Fecha between dat_from and DAYEND(dat_to)
AND r.display <> 0
and (grup.Id in (6) or cli.Id_Trabajador in (20))
group by CodigoTrabajador,c.Id_Cliente,year(Fecha)
)sub1
group by CodigoTrabajador,Id_Cliente
having (ImporteAnt<>0 or ImporteActual<>0)
order by CodigoTrabajador,Id_Cliente;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `InsertarEspionaje` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `InsertarEspionaje`(intIdTrabajador INT(11),intIdEquipo int)
BEGIN
DECLARE intNReg TINYINT DEFAULT 0;
SELECT Count(*) AS NReg
INTO intNReg
FROM Espionajes
WHERE Fecha=Current_date
AND Id_Trabajador=intIdTrabajador;
IF (intNReg=0) THEN
INSERT INTO Espionajes (Id_Trabajador,Fecha,HoraEntrada,Id_Equipo)
VALUES (intIdTrabajador,CURRENT_DATE,CURRENT_TIME,intIdEquipo);
ELSE
UPDATE Espionajes
SET HoraSalida=CURRENT_TIME
WHERE Id_Trabajador=intIdTrabajador
AND Fecha=curdate();
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `insert_producer_plantpassport` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `insert_producer_plantpassport`(IN idCompra INT)
BEGIN
DECLARE last_insert INTEGER;
INSERT IGNORE INTO producer (`name`)
SELECT es.company_name
FROM vn2008.Compres c
JOIN vn2008.buy_edi be ON be.id = c.buy_edi_id
JOIN edi.supplier es ON es.supplier_id = be.pro
WHERE c.Id_Compra = idCompra;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_margen` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_margen`(IN d_START DATETIME, IN d_END DATETIME, IN i_tipo INT, IN i_filtro INT, IN i_wh INT)
BEGIN
DECLARE d_INV DATETIME;
DECLARE bolREVERSE BOOLEAN DEFAULT 0;
DECLARE d_FEC2 DATETIME;
DECLARE d_FEC DATETIME;
DECLARE i_SECTOR INT DEFAULT 0;
DECLARE strFILTRO VARCHAR(255) DEFAULT 'TRUE';
DECLARE dblPORTE_m3 DOUBLE DEFAULT 45;
DECLARE intCASE INTEGER;
DECLARE ID_CLIENTE_COMPLEMENTOS INT DEFAULT 1927;
DECLARE ID_REINO_OTROS INT DEFAULT 6;
DECLARE ID_PROVEEDOR_INVENTARIO INT DEFAULT 4;
DECLARE ID_TRABAJADOR_MARIBEL INT DEFAULT 133;
IF i_filtro THEN
SELECT `sql` INTO strFILTRO FROM filtros WHERE id = i_filtro;
END IF;
DROP TEMPORARY TABLE IF EXISTS article_selection;
SET strFILTRO = REPLACE(strFILTRO, 'Id_Article','A.Id_Article');
CALL sql_query (sql_printf(
'CREATE TEMPORARY TABLE article_selection
ENGINE = MEMORY
SELECT Id_Article
FROM Articles A
LEFT JOIN Tipos USING(tipo_id)
LEFT JOIN Trabajadores TR ON TR.Id_Trabajador = Tipos.Id_Trabajador
LEFT JOIN Tintas ON A.color = Tintas.Id_Tinta
LEFT JOIN Origen ON Origen.id = A.id_origen
WHERE %s AND %s AND reino_id != %v'
,IF(i_tipo, CONCAT('tipo_id = ', i_tipo), 'TRUE')
,strFILTRO
,ID_REINO_OTROS
));
ALTER TABLE article_selection ADD PRIMARY KEY(Id_Article);
SELECT landing INTO d_INV
FROM travel TR
INNER JOIN Entradas E ON E.travel_id = TR.id
WHERE landing <= d_START
AND E.Id_Proveedor = ID_PROVEEDOR_INVENTARIO
AND i_wh IN (0,TR.warehouse_id)
ORDER BY landing DESC
LIMIT 1;
IF d_INV is null THEN
SELECT landing INTO d_INV
FROM travel TR
INNER JOIN Entradas E ON E.travel_id = TR.id
WHERE landing > d_START
AND E.Id_Proveedor = ID_PROVEEDOR_INVENTARIO
AND i_wh IN (0,TR.warehouse_id)
ORDER BY landing ASC
LIMIT 1;
END IF;
IF d_INV <= d_START THEN
SET intCASE = 1;
ELSE
IF d_INV > d_END THEN
SET intCASE = 3;
ELSE
SET intCASE = 2;
END IF;
END IF;
DROP TEMPORARY TABLE IF EXISTS inv;
CREATE TEMPORARY TABLE inv
(w_id SMALLINT,
Id_Article BIGINT,
Unidades INT,
Valor DOUBLE,
Sector INT DEFAULT 0 ) ENGINE = MEMORY;
ALTER TABLE inv ADD PRIMARY KEY USING HASH (w_id, Id_Article, Sector);
CASE intCASE
WHEN 1 THEN
SET d_FEC = TIMESTAMP(d_INV,'00:00:00');
SET d_FEC2 = TIMESTAMP(TIMESTAMPADD(DAY,-1,d_START) ,'23:59:59');
SET bolREVERSE = FALSE;
ELSE
SET d_FEC = TIMESTAMP(d_START,'00:00:00');
SET d_FEC2 = TIMESTAMP(TIMESTAMPADD(DAY,-1,d_INV) ,'23:59:59');
SET bolREVERSE = TRUE;
END CASE;
INSERT INTO inv(w_id, Id_Article, Unidades,Valor)
SELECT TR.warehouse_id, C.Id_Article, sum(C.Cantidad), ifnull(C.Costefijo,0) + IFNULL(C.Embalajefijo,0) + IFNULL(C.Portefijo,0) + IFNULL(C.Comisionfija,0)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id
JOIN article_selection USING(Id_Article)
WHERE landing = d_INV
AND w.comisionantes
AND i_wh IN (0,TR.warehouse_id)
AND E.Id_Proveedor = ID_PROVEEDOR_INVENTARIO
AND reino_id != ID_REINO_OTROS
AND TR.warehouse_id != TR.warehouse_id_out
GROUP BY TR.warehouse_id, C.Id_Article;
INSERT INTO inv(w_id, Id_Article, Unidades, Valor)
SELECT TR.warehouse_id, C.Id_Article, C.Cantidad * IF(bolREVERSE,-1,1), ifnull(C.Costefijo,0) + IFNULL(C.Embalajefijo,0) + IFNULL(C.Portefijo,0) + IFNULL(C.Comisionfija,0)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id
JOIN article_selection USING(Id_Article)
WHERE landing BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,TR.warehouse_id)
AND w.comisionantes
AND NOT redada
AND reino_id != ID_REINO_OTROS
AND E.Id_Proveedor != ID_PROVEEDOR_INVENTARIO
AND TR.warehouse_id != TR.warehouse_id_out
ORDER BY landing DESC
ON DUPLICATE KEY UPDATE inv.Unidades = inv.Unidades + (C.Cantidad * IF(bolREVERSE,-1,1))
, Valor = IF(Costefijo > 0,ifnull(C.Costefijo,0) + IFNULL(C.Embalajefijo,0) + IFNULL(C.Portefijo,0) + IFNULL(C.Comisionfija,0),Valor);
INSERT INTO inv(w_id, Id_Article, Unidades)
SELECT TR.warehouse_id_out, C.Id_Article, C.Cantidad * IF(bolREVERSE,1,-1)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id_out
JOIN article_selection USING(Id_Article)
WHERE shipment BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,TR.warehouse_id_out)
AND w.comisionantes
AND NOT redada
AND reino_id != ID_REINO_OTROS
AND E.Id_Proveedor != ID_PROVEEDOR_INVENTARIO
AND TR.warehouse_id != TR.warehouse_id_out
ON DUPLICATE KEY UPDATE inv.Unidades = inv.Unidades + (C.Cantidad * IF(bolREVERSE,1,-1));
INSERT INTO inv(w_id, Id_Article, Unidades)
SELECT w.id, M.Id_Article, M.Cantidad * IF(bolREVERSE,1,-1)
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN warehouse w ON w.id = T.warehouse_id
INNER JOIN article_selection USING(Id_Article)
WHERE T.Fecha BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,T.warehouse_id)
AND w.comisionantes
AND reino_id != ID_REINO_OTROS
ON DUPLICATE KEY UPDATE inv.Unidades = inv.Unidades + (M.Cantidad * IF(bolREVERSE,1,-1));
UPDATE inv SET Valor = inv.Unidades * Valor;
SET i_SECTOR = 1;
SET d_FEC = TIMESTAMP(d_START,'00:00:00');
SET d_FEC2 = TIMESTAMP(d_END ,'23:59:59');
INSERT INTO inv(Sector, w_id, Id_Article, Unidades, Valor)
SELECT i_SECTOR, TR.warehouse_id, C.Id_Article, sum(C.Cantidad )
, sum(C.Cantidad * (nz(Costefijo)+nz(Embalajefijo)+nz(Portefijo)+nz(Comisionfija)) )
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id
JOIN article_selection USING(Id_Article)
WHERE landing BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,TR.warehouse_id)
AND w.comisionantes
AND NOT redada
AND E.Id_Proveedor != ID_PROVEEDOR_INVENTARIO
AND reino_id != ID_REINO_OTROS
AND TR.warehouse_id != TR.warehouse_id_out
GROUP BY TR.warehouse_id, C.Id_Article;
SET i_SECTOR = 2;
INSERT INTO inv(Sector, w_id, Id_Article, Unidades, Valor)
SELECT i_SECTOR, TR.warehouse_id_out, C.Id_Article, sum( -1 * C.Cantidad )
, sum( -1 * C.Cantidad * (nz(Costefijo) + nz(Embalajefijo) ))
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id_out
JOIN article_selection USING(Id_Article)
WHERE shipment BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,TR.warehouse_id_out)
AND w.comisionantes
AND NOT redada
AND E.Id_Proveedor != ID_PROVEEDOR_INVENTARIO
AND reino_id != ID_REINO_OTROS
AND TR.warehouse_id != TR.warehouse_id_out
GROUP BY TR.warehouse_id_out, C.Id_Article ;
SET i_SECTOR = 3;
DROP TEMPORARY TABLE IF EXISTS Cub;
CREATE TEMPORARY TABLE Cub
SELECT * FROM (SELECT * FROM bi.last_Id_Cubo order by Id_Compra desc) sub group by Id_Article, warehouse_id;
ALTER TABLE Cub ADD PRIMARY KEY USING HASH (Id_Article, warehouse_id);
IF d_START >= '2015-10-01' THEN
INSERT INTO inv(Sector, w_id, Id_Article, Unidades, Valor)
SELECT i_SECTOR
, w.id
, M.Id_Article
, sum(-1 * M.Cantidad ) as Unidades
, sum(-1 * IF(T.Id_Cliente IN (200,400),0,1) * IFNULL(bsv.importe,0)) as Valor
FROM Movimientos M
LEFT JOIN bs.ventas bsv on bsv.Id_Movimiento = M.Id_Movimiento
INNER JOIN Tickets T USING (Id_Ticket)
INNER JOIN Articles A ON A.Id_Article = M.Id_Article
INNER JOIN Tipos TP on TP.tipo_id = A.tipo_id
INNER JOIN warehouse w ON w.id = T.warehouse_id
JOIN article_selection `AS` ON `AS`.Id_Article = M.Id_Article
WHERE T.Fecha BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,T.warehouse_id)
AND w.comisionantes
AND reino_id != ID_REINO_OTROS
GROUP BY T.warehouse_id, Id_Article;
ELSE
INSERT INTO inv(Sector, w_id, Id_Article, Unidades, Valor)
SELECT i_SECTOR, w.id, M.Id_Article, sum(-1 * M.Cantidad )
,
sum( -1
* M.Cantidad
* IF(CS.Id_Cliente IN (200,400),0,1)
* IF(
T.Fecha >= '2015-10-01'
, M.CostFixat
, (
( M.Preu
* (100 - M.Descuento)
/ 100
)
- IF(C.Descuento = 1 and T.Bultos > 0 and Fecha > '2013-07-01',
IFNULL( dblPORTE_m3 * (cm3_2(CB.Id_Cubo, CB.Id_Article) / 1000000) / CB.Packing ,0 )
,0)
)
)
) as Preu
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
LEFT JOIN Cub CB ON CB.Id_Article = M.Id_Article AND T.warehouse_id = CB.warehouse_id
INNER JOIN Consignatarios CS USING(Id_Consigna)
INNER JOIN Clientes C ON C.Id_Cliente = CS.Id_Cliente
INNER JOIN Articles A ON A.Id_Article = M.Id_Article
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN warehouse w ON w.id = T.warehouse_id
JOIN article_selection `AS` ON `AS`.Id_Article = M.Id_Article
WHERE T.Fecha BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,T.warehouse_id)
AND w.comisionantes
AND reino_id != ID_REINO_OTROS
GROUP BY T.warehouse_id, Id_Article;
END IF;
DROP TEMPORARY TABLE IF EXISTS Ventas_Lastyear;
CREATE TEMPORARY TABLE Ventas_Lastyear
SELECT CodigoTrabajador, TP.Id_Tipo,
sum(M.Cantidad
* IF(CS.Id_Cliente IN (200,400),0,1)
* IF(
T.Fecha >= '2015-10-01'
, M.CostFixat
, (
( M.Preu
* (100 - M.Descuento)
/ 100
)
- IF(C.Descuento = 1 and T.Bultos > 0 and Fecha > '2013-07-01',
IFNULL( dblPORTE_m3 * (cm3_2(CB.Id_Cubo, CB.Id_Article) / 1000000) / CB.Packing ,0 )
,0)
)
)
) as Importe
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
LEFT JOIN Cub CB ON CB.Id_Article = M.Id_Article AND T.warehouse_id = CB.warehouse_id
INNER JOIN Consignatarios CS USING(Id_Consigna)
INNER JOIN Clientes C ON C.Id_Cliente = CS.Id_Cliente
INNER JOIN Articles A ON A.Id_Article = M.Id_Article
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Trabajadores TR ON TP.Id_Trabajador = TR.Id_Trabajador
INNER JOIN warehouse w ON w.id = T.warehouse_id
JOIN article_selection `AS` ON `AS`.Id_Article = M.Id_Article
WHERE T.Fecha BETWEEN TIMESTAMPADD(YEAR,-1,d_FEC) AND TIMESTAMPADD(YEAR,-1,d_FEC2)
AND i_wh IN (0,T.warehouse_id)
AND w.comisionantes
AND reino_id != ID_REINO_OTROS
GROUP BY CodigoTrabajador, Id_Tipo;
SET i_SECTOR = 4;
CASE intCASE
WHEN 3 THEN
SET d_FEC = TIMESTAMP(TIMESTAMPADD(DAY,1,d_END),'00:00:00');
SET d_FEC2 = TIMESTAMP(TIMESTAMPADD(DAY,-1,d_INV),'23:59:59');
SET bolREVERSE = TRUE;
ELSE
SET d_FEC = TIMESTAMP(d_INV,'00:00:00');
SET d_FEC2 = TIMESTAMP(d_END ,'23:59:59');
SET bolREVERSE = FALSE;
END CASE;
INSERT INTO inv(Sector, w_id, Id_Article, Unidades, Valor)
SELECT i_SECTOR, TR.warehouse_id, C.Id_Article, sum(C.Cantidad), nz(Costefijo) + nz(Portefijo) + nz(Embalajefijo) + nz(Comisionfija)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id
JOIN article_selection USING(Id_Article)
WHERE landing = d_INV
AND i_wh IN (0,TR.warehouse_id)
AND E.Id_Proveedor = ID_PROVEEDOR_INVENTARIO
AND reino_id != ID_REINO_OTROS
AND w.comisionantes
AND TR.warehouse_id != TR.warehouse_id_out
GROUP BY TR.warehouse_id, C.Id_Article;
INSERT INTO inv(Sector, w_id, Id_Article, Unidades, Valor)
SELECT i_SECTOR, TR.warehouse_id, C.Id_Article, C.Cantidad * IF(bolREVERSE,-1,1), nz(Costefijo) + nz(Portefijo) + nz(Embalajefijo) + nz(Comisionfija)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id
JOIN article_selection USING(Id_Article)
WHERE landing BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,TR.warehouse_id)
AND NOT redada
AND w.comisionantes
AND E.Id_Proveedor != 4
AND reino_id != ID_REINO_OTROS
AND TR.warehouse_id != TR.warehouse_id_out
ORDER BY landing DESC
ON DUPLICATE KEY UPDATE inv.Unidades = inv.Unidades + (C.Cantidad * IF(bolREVERSE,-1,1))
, Valor = IF( nz(Costefijo) > 0,nz(Costefijo) + nz(Portefijo) + nz(Embalajefijo) + nz(Comisionfija),Valor);
INSERT INTO inv(Sector, w_id, Id_Article, Unidades)
SELECT i_SECTOR, TR.warehouse_id_out, C.Id_Article, C.Cantidad * IF(bolREVERSE,1,-1)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN warehouse w ON w.id = warehouse_id_out
JOIN article_selection USING(Id_Article)
WHERE shipment BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,TR.warehouse_id_out)
AND NOT redada
AND w.comisionantes
AND E.Id_Proveedor != 4
AND reino_id != ID_REINO_OTROS
ON DUPLICATE KEY UPDATE inv.Unidades = inv.Unidades + (C.Cantidad * IF(bolREVERSE,1,-1));
INSERT INTO inv(Sector, w_id, Id_Article, Unidades)
SELECT i_SECTOR, w.id, M.Id_Article, M.Cantidad * IF(bolREVERSE,1,-1)
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos TP USING(tipo_id)
INNER JOIN warehouse w ON w.id = T.warehouse_id
JOIN article_selection USING(Id_Article)
WHERE T.Fecha BETWEEN d_FEC AND d_FEC2
AND i_wh IN (0,T.warehouse_id)
AND w.comisionantes
AND reino_id != ID_REINO_OTROS
ON DUPLICATE KEY UPDATE inv.Unidades = inv.Unidades + (M.Cantidad * IF(bolREVERSE,1,-1));
UPDATE inv SET Valor = inv.Unidades * Valor WHERE Sector =4;
DROP TEMPORARY TABLE IF EXISTS Margen_Desglose;
CREATE TEMPORARY TABLE Margen_Desglose
SELECT CASE Sector
WHEN 0 THEN 'Inventario Inicial'
WHEN 1 THEN 'Entradas'
WHEN 2 THEN 'Salidas'
WHEN 3 THEN 'Ventas'
WHEN 4 THEN 'Inventario Final' END AS Seccion
, w.name as Almacen, r.reino as Reino, Id_Article, Article, Medida, Unidades,Id_Tipo, round(Valor,0) as Valor , round(Valor/Unidades,3) as Precio, Sector
FROM inv
JOIN Articles USING(Id_Article)
JOIN Tipos TP USING(tipo_id)
JOIN warehouse w ON w.id = w_id
JOIN reinos r ON r.id = TP.reino_id
WHERE Unidades != 0
ORDER BY Almacen, Sector
;
DROP TEMPORARY TABLE IF EXISTS Margen_Bruto;
CREATE TEMPORARY TABLE Margen_Bruto
SELECT Unidades_Vendidas, Coste, Venta,1 - round(coste / venta,2) as Margen
FROM (
SELECT w.name as Almacen, r.reino as Reino, Id_Article, Article, Medida, sum(IF(Sector = 3, -1,0) * Unidades) as Unidades_Vendidas
, @coste:= round(sum( IF(Sector != 3, Valor * IF(Sector = 4,-1,1), 0) ) ,0) as Coste
, @venta:= round(sum( IF(Sector = 3, - Valor, 0 ) ),0) as Venta
FROM inv
JOIN Articles USING(Id_Article)
JOIN Tipos TP USING(tipo_id)
JOIN warehouse w ON w.id = w_id
JOIN reinos r ON r.id = TP.reino_id
WHERE Unidades != 0
) sub;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_multiple` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_multiple`(IN wh TINYINT(2), IN date_ticket DATETIME)
BEGIN
DECLARE date_order DATETIME;
DECLARE date_end DATETIME DEFAULT CURDATE();
DECLARE date_aux DATE;
DECLARE date_start DATETIME;
DECLARE date_yesterday DATETIME;
DECLARE date_tomorrow DATETIME;
DECLARE strWH VARCHAR(2);
SET strWH = IF(wh,wh,'%');
SET date_end = TIMESTAMPADD(DAY, 7, date_ticket);
CALL article ();
ALTER TABLE `article_inventory`
ADD `available` FLOAT(7,2) NOT NULL,
ADD `inventory` FLOAT(7,2) NOT NULL,
ADD `visible` FLOAT(7,2) NOT NULL;
SELECT
FechaInventario,TIMESTAMP(TIMESTAMPADD(DAY, 15, date_ticket),'23:59:59')
INTO date_start, date_end
FROM tblContadores;
SET date_order = TIMESTAMP(DATE(date_ticket), '00:00:00');
SET date_tomorrow = TIMESTAMPADD(DAY, 1, date_order);
CALL item_stock(wh,date_ticket,NULL);
INSERT INTO article_inventory (article_id,inventory,visible,available)
SELECT item_id, stock, visible, available
FROM tmp_item;
DROP TEMPORARY TABLE IF EXISTS tmp_item;
INSERT INTO article_inventory(article_id,visible)
SELECT Id_Article, SUM(amount) AS Subtotal
FROM (
SELECT Id_Article, -Cantidad AS amount
FROM Movimientos M INNER JOIN Tickets T USING (Id_Ticket)
WHERE Fecha >= date_order
AND Fecha < date_tomorrow
AND (M.OK != FALSE
OR T.Etiquetasemitidas != FALSE
OR T.Factura IS NOT NULL)
AND T.warehouse_id = wh
UNION ALL
SELECT Id_Article, Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
WHERE TR.landing >= date_order
AND TR.landing < date_tomorrow
AND TR.received != FALSE
AND TR.warehouse_id = wh
AND E.Inventario = FALSE
AND E.Redada = FALSE
UNION ALL
SELECT Id_Article, -Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
WHERE TR.shipment >= date_order
AND TR.shipment < date_tomorrow
AND TR.delivered != FALSE
AND TR.warehouse_id_out = wh
AND E.Inventario = FALSE
AND E.Redada = FALSE
) AS T1
GROUP BY Id_Article
ON DUPLICATE KEY UPDATE
visible = inventory + VALUES(visible);
CALL item_travel (wh, date_order);
SET date_aux = DATE(date_order);
INSERT INTO article_inventory(article_id,available)
SELECT Tic3.Id_Article, minacum(dat, amount, date_aux) AS sd
FROM (
SELECT Tic2.Id_Article, DATE(Fecha) AS dat, SUM(amount) AS amount
FROM (
SELECT Id_Article, Fecha, -Cantidad AS amount
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
WHERE Fecha BETWEEN date_order AND date_end
AND T.warehouse_id = wh
UNION ALL
SELECT Id_Article, TR.landing, Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
WHERE TR.landing BETWEEN date_order AND date_end
AND TR.warehouse_id = wh
AND E.Inventario = FALSE
AND E.Redada = FALSE
UNION ALL
SELECT Id_Article, TR.shipment, -Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
WHERE TR.shipment BETWEEN date_order AND date_end
AND TR.warehouse_id_out = wh
AND E.Inventario = FALSE
AND E.Redada = FALSE
) AS Tic2
GROUP BY Tic2.Id_Article, dat
) Tic3
LEFT JOIN Articles A ON Tic3.Id_Article = A.Id_Article
LEFT JOIN Origen O ON O.id = A.id_origen
LEFT JOIN item_travel t ON t.wh = O.warehouse_id
WHERE dat < IFNULL(t.landing, date_end)
GROUP BY Tic3.Id_Article
ON DUPLICATE KEY UPDATE
available = IFNULL(inventory,0) + VALUES(available);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_multiple_2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_multiple_2`(
date_ticket DATETIME
,wh TINYINT
,days_max TINYINT
)
proc: BEGIN
DECLARE date_end DATETIME DEFAULT CURDATE();
DECLARE date_start DATETIME;
DECLARE date_top DATETIME;
DECLARE date_tomorrow DATETIME;
SET date_ticket = DATE(date_ticket);
ALTER TABLE `article_inventory`
ADD `avalaible` INT NOT NULL,
ADD `sd` INT NOT NULL,
ADD `rest` INT NOT NULL,
ADD `expected` INT NOT NULL,
ADD `inventory` INT NOT NULL,
ADD `visible` INT NOT NULL,
ADD `life` TINYINT NOT NULL DEFAULT '0';
IF date_ticket < CURDATE()
THEN
LEAVE proc;
END IF;
SELECT FechaInventario INTO date_start FROM tblContadores;
SET date_end = TIMESTAMP(TIMESTAMPADD(DAY, IF(days_max >= 0, days_max,15), date_ticket),'23:59:59');
SET date_tomorrow = TIMESTAMPADD(DAY, 1,date_ticket);
SET date_top = TIMESTAMPADD(DAY, 1,date_end);
UPDATE article_inventory AI INNER JOIN
(
SELECT Id_Article, SUM(amount) as Subtotal FROM
(
SELECT Id_Article, -Cantidad AS amount
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN warehouse W ON W.id = T.warehouse_id
WHERE DATE(Fecha) BETWEEN date_start AND date_ticket
AND IF(wh = 0, W.is_comparative, wh =T.warehouse_id)
UNION ALL
SELECT Id_Article, Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse W ON W.id = TR.warehouse_id
WHERE TR.landing BETWEEN date_start AND date_ticket
AND IF(wh = 0, W.is_comparative, wh =TR.warehouse_id)
AND E.Inventario = 0
AND E.Redada = 0
UNION ALL
SELECT Id_Article, -Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse W ON W.id = TR.warehouse_id_out
WHERE TR.shipment BETWEEN date_start AND date_ticket
AND IF(wh = 0, W.is_comparative, wh =TR.warehouse_id_out)
AND E.Inventario = 0
AND E.Redada = 0
) AS T1
GROUP BY Id_Article
) AS T2
ON AI.article_id = T2.Id_Article
SET AI.inventory = T2.Subtotal,
AI.visible = T2.Subtotal,
AI.avalaible = T2.Subtotal,
AI.sd = T2.Subtotal;
UPDATE article_inventory AI INNER JOIN
(
SELECT Id_Article, SUM(amount) as Subtotal FROM
(
SELECT Id_Article, Cantidad AS amount
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN warehouse W ON W.id = T.warehouse_id
WHERE Fecha >= date_ticket AND Fecha < date_tomorrow
AND (M.OK = 0 AND T.Etiquetasemitidas = 0 AND T.Factura IS NULL)
AND IF(wh = 0, W.is_comparative, wh =T.warehouse_id)
UNION ALL
SELECT Id_Article, -Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse W ON W.id = TR.warehouse_id
WHERE TR.landing = date_ticket
AND TR.received = 0
AND E.Inventario = 0
AND E.Redada = 0
AND IF(wh = 0, W.is_comparative, wh =TR.warehouse_id)
UNION ALL
SELECT Id_Article, Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
INNER JOIN warehouse W ON W.id = TR.warehouse_id_out
WHERE TR.shipment = date_ticket
AND TR.delivered = 0
AND E.Inventario = 0
AND E.Redada = 0
AND IF(wh = 0, W.is_comparative, wh =TR.warehouse_id_out)
) AS T1
GROUP BY Id_Article
) AS T2
ON AI.article_id = T2.Id_Article
SET AI.visible = AI.visible + T2.Subtotal;
CALL item_travel (wh, date_ticket);
UPDATE article_inventory AI INNER JOIN
(
SELECT Tic3.Id_Article, SUM(amount) AS sd, minacum(Fecha, amount, date_ticket) as smd FROM
(
SELECT Tic2.Id_Article, Fecha, SUM(amount) AS amount FROM
(
SELECT Id_Article, DATE(Fecha) as Fecha, -Cantidad AS amount
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN warehouse W ON W.id = T.warehouse_id
WHERE Fecha BETWEEN date_tomorrow AND date_end
AND IF(wh = 0, W.is_comparative, wh =T.warehouse_id)
UNION ALL
SELECT Id_Article, landing as Fecha, Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse W ON W.id = TR.warehouse_id
WHERE TR.landing BETWEEN date_tomorrow AND date_end
AND IF(wh = 0, W.is_comparative, wh =TR.warehouse_id)
AND E.Inventario = 0
AND E.Redada = 0
UNION ALL
SELECT Id_Article, shipment as Fecha, -Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse W ON W.id = TR.warehouse_id_out
WHERE TR.shipment BETWEEN date_tomorrow AND date_end
AND IF(wh = 0, W.is_comparative, wh =TR.warehouse_id_out)
AND E.Inventario = 0
AND E.Redada = 0
) AS Tic2
GROUP BY Tic2.Id_Article, Fecha
) Tic3
LEFT JOIN Articles A ON Tic3.Id_Article = A.Id_Article
LEFT JOIN Origen O ON O.id = A.id_origen
LEFT JOIN item_travel t ON t.wh = O.warehouse_id
WHERE Fecha < IF(days_max < 0 AND t.landing IS NOT NULL,
t.landing,
date_top)
GROUP BY Tic3.Id_Article
) AS Tic5
ON Tic5.Id_Article = AI.article_id
SET AI.avalaible = IF(Tic5.smd > 0, AI.avalaible, AI.avalaible + Tic5.smd),
AI.sd = AI.inventory + Tic5.sd;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_multiple_inventarios` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_multiple_inventarios`(wh SMALLINT, date_ticket DATETIME)
BEGIN
DECLARE date_order DATETIME;
DECLARE date_end DATETIME DEFAULT CURDATE();
DECLARE date_start DATETIME;
CALL article ();
ALTER TABLE article_inventory
ADD visible FLOAT(7,2) NOT NULL;
SELECT
IF(@camp := DATEDIFF(campaign, date_ticket) BETWEEN 0 AND campaign_life ,
TIMESTAMPADD(DAY, -campaign_life, campaign) ,
FechaInventario),
IF(@camp BETWEEN 0 AND campaign_life,
TIMESTAMP(campaign, '23:59:59'),
TIMESTAMP(TIMESTAMPADD(DAY, 15, date_ticket),'23:59:59'))
INTO date_start, date_end
FROM tblContadores;
SET date_order = TIMESTAMP(DATE(date_ticket), '00:00:00');
INSERT INTO article_inventory (article_id, visible)
SELECT Id_Article, SUM(amount)
FROM (
SELECT Id_Article, -Cantidad AS amount
FROM Movimientos M INNER JOIN Tickets T USING (Id_Ticket)
WHERE Fecha >= date_start
AND Fecha < date_order
AND T.warehouse_id = wh
UNION ALL
SELECT Id_Article, Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
WHERE TR.landing >= date_start
AND TR.landing < date_order
AND TR.warehouse_id = wh
AND E.Inventario = FALSE
UNION ALL
SELECT Id_Article, -Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
WHERE TR.shipment >= date_start
AND TR.shipment < date_order
AND TR.warehouse_id_out = wh
AND E.Inventario = FALSE
) AS T1
GROUP BY Id_Article;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_multiple_joined` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_multiple_joined`(
date_ticket DATETIME
,wh_joined TINYINT
,days_max TINYINT
)
proc: BEGIN
DECLARE date_end DATETIME DEFAULT CURDATE();
DECLARE date_start DATETIME;
DECLARE date_top DATETIME;
DECLARE date_tomorrow DATETIME;
DECLARE i_avalaible INTEGER;
DECLARE wh INTEGER;
SET date_ticket = DATE(date_ticket);
ALTER TABLE `article_inventory`
ADD `avalaible` INT NOT NULL,
ADD `sd` INT NOT NULL,
ADD `rest` INT NOT NULL,
ADD `expected` INT NOT NULL,
ADD `inventory` INT NOT NULL,
ADD `visible` INT NOT NULL,
ADD `life` TINYINT NOT NULL DEFAULT '0';
IF date_ticket < CURDATE()
THEN
LEAVE proc;
END IF;
SELECT FechaInventario INTO date_start FROM tblContadores;
SET date_end = TIMESTAMP(TIMESTAMPADD(DAY, IF(days_max >= 0, days_max,15), date_ticket),'23:59:59');
SET date_tomorrow = TIMESTAMPADD(DAY, 1,date_ticket);
SET date_top = TIMESTAMPADD(DAY, 1,date_end);
UPDATE article_inventory AI INNER JOIN
(
SELECT Id_Article, SUM(amount) as Subtotal FROM
(
SELECT Id_Article, -Cantidad AS amount
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN warehouse_joined wj ON T.warehouse_id = wj.warehouse_id
WHERE DATE(Fecha) BETWEEN date_start AND date_ticket
AND wh_joined IN (wj.warehouse_alias_id, 0)
UNION ALL
SELECT Id_Article, Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse_joined wj ON TR.warehouse_id = wj.warehouse_id
WHERE TR.landing BETWEEN date_start AND date_ticket
AND wh_joined IN (wj.warehouse_alias_id, 0)
AND E.Inventario = 0
AND E.Redada = 0
UNION ALL
SELECT Id_Article, -Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse_joined wj ON TR.warehouse_id_out = wj.warehouse_id
WHERE TR.shipment BETWEEN date_start AND date_ticket
AND wh_joined IN (wj.warehouse_alias_id,0)
AND E.Inventario = 0
AND E.Redada = 0
) AS T1
GROUP BY Id_Article
) AS T2
ON AI.article_id = T2.Id_Article
SET AI.inventory = T2.Subtotal,
AI.visible = T2.Subtotal,
AI.avalaible = T2.Subtotal,
AI.sd = T2.Subtotal;
SELECT avalaible INTO i_avalaible FROM article_inventory WHERE article_id = 21012;
UPDATE article_inventory AI INNER JOIN
(
SELECT Id_Article, SUM(amount) as Subtotal FROM
(
SELECT Id_Article, Cantidad AS amount
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN warehouse_joined wj ON T.warehouse_id = wj.warehouse_id
WHERE Fecha >= date_ticket AND Fecha < date_tomorrow
AND (M.OK = 0 AND T.Etiquetasemitidas = 0 AND T.Factura IS NULL)
AND wh_joined IN (wj.warehouse_alias_id, 0)
UNION ALL
SELECT Id_Article, -Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse_joined wj ON TR.warehouse_id = wj.warehouse_id
WHERE TR.landing = date_ticket
AND TR.received = 0
AND E.Inventario = 0
AND E.Redada = 0
AND wh_joined IN (wj.warehouse_alias_id, 0)
UNION ALL
SELECT Id_Article, Cantidad
FROM Compres C INNER JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse_joined wj ON TR.warehouse_id_out = wj.warehouse_id
WHERE TR.shipment = date_ticket
AND TR.delivered = 0
AND E.Inventario = 0
AND E.Redada = 0
AND wh_joined IN (wj.warehouse_alias_id,0)
) AS T1
GROUP BY Id_Article
) AS T2
ON AI.article_id = T2.Id_Article
SET AI.visible = AI.visible + T2.Subtotal;
SELECT IF(COUNT(warehouse_id),0,warehouse_id) INTO wh FROM warehouse_joined WHERE warehouse_alias_id = wh_joined;
CALL item_travel (wh, date_ticket);
UPDATE article_inventory AI INNER JOIN
(
SELECT Tic3.Id_Article, SUM(amount) AS sd, minacum(Fecha, amount, date_ticket) as smd FROM
(
SELECT Tic2.Id_Article, Fecha, SUM(amount) AS amount FROM
(
SELECT Id_Article, DATE(Fecha) as Fecha, -Cantidad AS amount
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN warehouse_joined wj ON T.warehouse_id = wj.warehouse_id
WHERE Fecha BETWEEN date_tomorrow AND date_end
AND wh_joined IN (wj.warehouse_alias_id, 0)
UNION ALL
SELECT Id_Article, landing as Fecha, Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse_joined wj ON TR.warehouse_id = wj.warehouse_id
WHERE TR.landing BETWEEN date_tomorrow AND date_end
AND wh_joined IN (wj.warehouse_alias_id, 0)
AND E.Inventario = 0
AND E.Redada = 0
UNION ALL
SELECT Id_Article, shipment as Fecha, -Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse_joined wj ON TR.warehouse_id_out = wj.warehouse_id
WHERE TR.shipment BETWEEN date_tomorrow AND date_end
AND wh_joined IN (wj.warehouse_alias_id,0)
AND E.Inventario = 0
AND E.Redada = 0
) AS Tic2
GROUP BY Tic2.Id_Article, Fecha
) Tic3
LEFT JOIN Articles A ON Tic3.Id_Article = A.Id_Article
LEFT JOIN Origen O ON O.id = A.id_origen
LEFT JOIN item_travel t ON t.wh = O.warehouse_id
WHERE Fecha < IF(days_max < 0 AND t.landing IS NOT NULL,
t.landing,
date_top)
GROUP BY Tic3.Id_Article
) AS Tic5
ON Tic5.Id_Article = AI.article_id
SET AI.avalaible = IF(Tic5.smd > 0, AI.avalaible, AI.avalaible + Tic5.smd),
AI.sd = AI.inventory + Tic5.sd;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_multiple_reservas` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_multiple_reservas`(date_ticket DATETIME, wh INT, days_max INT)
BEGIN
DECLARE date_end DATETIME DEFAULT CURDATE();
DECLARE date_start DATETIME;
DECLARE i_avalaible INTEGER;
SET date_ticket = DATE(date_ticket);
CALL article ();
INSERT INTO article_inventory (article_id)
SELECT a.Id_Article
FROM Articles a
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
LEFT JOIN reinos r ON r.id = tp.reino_id
WHERE r.display <> 0;
ALTER TABLE `article_inventory`
ADD `avalaible` INT(11) NOT NULL,
ADD `sd` INT(11) NOT NULL,
ADD `rest` INT(11) NOT NULL,
ADD `expected` INT(11) NOT NULL,
ADD `inventory` INT(11) NOT NULL,
ADD `visible` INT(11) NOT NULL,
ADD `life` TINYINT(1) NOT NULL DEFAULT '0';
SELECT FechaInventario INTO date_start FROM tblContadores;
SET date_end = TIMESTAMP(TIMESTAMPADD(DAY, -1, date_ticket),'23:59:59');
IF days_max = 4848 THEN
set date_ticket = date_end;
END IF;
UPDATE article_inventory AI INNER JOIN
(
SELECT Id_Article, SUM(amount) as Subtotal FROM (
SELECT Id_Article, -Cantidad AS amount
FROM Movimientos M
JOIN Tickets T USING (Id_Ticket)
JOIN warehouse W ON W.id = T.warehouse_id
WHERE Fecha BETWEEN date_start AND date_end
AND wh IN (T.warehouse_id, 0)
AND NOT W.fuente
UNION ALL
SELECT Id_Article, Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
LEFT JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse W ON W.id = TR.warehouse_id
WHERE TR.landing BETWEEN date_start AND date_ticket
AND wh IN (TR.warehouse_id, 0)
AND NOT W.fuente
AND E.Inventario = 0
AND E.Redada = 0
UNION ALL
SELECT Id_Article, -Cantidad
FROM Compres C
JOIN Entradas E USING (Id_Entrada)
JOIN travel TR ON E.travel_id = TR.id
JOIN warehouse W ON W.id = TR.warehouse_id_out
WHERE TR.shipment BETWEEN date_start AND date_end
AND wh IN (TR.warehouse_id_out,0)
AND NOT W.fuente
AND E.Inventario = 0
AND E.Redada = 0
) AS T1
GROUP BY Id_Article
) AS T2
ON AI.article_id = T2.Id_Article
SET AI.inventory = T2.Subtotal,
AI.visible = T2.Subtotal,
AI.avalaible = T2.Subtotal,
AI.sd = T2.Subtotal;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_valorado` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_valorado`(IN d_FEC DATE, IN bol_DESGLOSE BOOLEAN)
BEGIN
DECLARE d_INV DATE;
DECLARE bolREVERSE BOOLEAN DEFAULT 0;
DECLARE d_INV2 DATE;
SELECT landing INTO d_INV
FROM travel TR
INNER JOIN Entradas E ON E.travel_id = TR.id
WHERE landing <= d_FEC
AND E.Id_Proveedor = 4
ORDER BY landing DESC
LIMIT 1;
SET bolREVERSE = IF (d_INV is null, 1, 0);
IF bolREVERSE THEN
SELECT landing INTO d_INV2
FROM travel TR
INNER JOIN Entradas E ON E.travel_id = TR.id
WHERE landing >= d_FEC
AND E.Id_Proveedor = 4
ORDER BY landing ASC
LIMIT 1;
SET d_INV = TIMESTAMPADD(DAY,1,d_FEC);
SET d_FEC = d_INV2;
END IF;
DROP TEMPORARY TABLE IF EXISTS inv;
CREATE TEMPORARY TABLE inv
(w_id SMALLINT,
Id_Article BIGINT,
cantidad INT,
coste DOUBLE DEFAULT 0,
total DOUBLE DEFAULT 0) ENGINE = MEMORY;
ALTER TABLE inv ADD PRIMARY KEY USING HASH (w_id, Id_Article);
IF bolREVERSE = 1 THEN
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT TR.warehouse_id, C.Id_Article, SUM(C.Cantidad)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id
WHERE landing = d_FEC
AND E.Id_Proveedor = 4
AND NOT w.fuente
AND t.inventory
AND reino_id NOT IN (7)
GROUP BY TR.warehouse_id, C.Id_Article;
END IF;
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT TR.warehouse_id, C.Id_Article, C.Cantidad * IF(bolREVERSE,-1,1)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = TR.warehouse_id
WHERE landing BETWEEN d_INV AND TIMESTAMPADD(DAY, IF(bolREVERSE,-1,0) ,d_FEC)
AND NOT redada
AND NOT w.fuente
AND reino_id NOT IN (7)
AND t.inventory
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + (C.Cantidad * IF(bolREVERSE,-1,1));
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT TR.warehouse_id_out, C.Id_Article, C.Cantidad * IF(bolREVERSE,1,-1)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id_out
WHERE shipment BETWEEN d_INV AND TIMESTAMPADD(DAY, IF(bolREVERSE,-1,0) ,d_FEC)
AND NOT redada
AND NOT w.fuente
AND reino_id NOT IN (7)
AND t.inventory
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + (C.Cantidad * IF(bolREVERSE,1,-1));
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT w.id, M.Id_Article, M.Cantidad * IF(bolREVERSE,1,-1)
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
INNER JOIN Clientes C USING(Id_Cliente)
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id
WHERE T.Fecha BETWEEN d_INV AND TIMESTAMPADD(DAY, -1 ,d_FEC)
AND NOT w.fuente
AND reino_id NOT IN (7)
AND t.inventory
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + M.Cantidad * IF(bolREVERSE,1,-1);
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT w.id, M.Id_Article, M.Cantidad * IF(bolREVERSE,0,-1)
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
INNER JOIN Clientes C USING(Id_Cliente)
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id
WHERE T.Fecha = d_FEC
AND (d_FEC <> CURDATE() or (M.OK <> 0 or T.Etiquetasemitidas <> 0 ))
AND NOT w.fuente
AND reino_id NOT IN (7)
AND t.inventory
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + M.Cantidad * IF(bolREVERSE,0,-1);
CALL item_last_buy_(NULL,d_FEC);
UPDATE inv
JOIN t_item_last_buy lb ON w_id = lb.warehouse_id AND inv.Id_Article = lb.item_id
JOIN Compres C ON C.Id_Compra = lb.buy_id
SET total = inv.cantidad * (ifnull(C.Costefijo,0) + IFNULL(C.Embalajefijo,0) + IFNULL(C.Portefijo,0) + IFNULL(C.Comisionfija,0)),
coste = ifnull(C.Costefijo,0) + IFNULL(C.Embalajefijo,0) + IFNULL(C.Portefijo,0) + IFNULL(C.Comisionfija,0)
WHERE inv.cantidad <> 0;
DELETE FROM inv WHERE Cantidad IS NULL or Cantidad = 0;
IF bol_DESGLOSE THEN
SELECT w_id, Id_Article, Article, Medida, Cantidad,Id_Tipo,reino_id, coste, cast(total as decimal(10,2)) total
FROM inv
JOIN warehouse w on w.id = w_id
JOIN Articles USING(Id_Article)
JOIN Tipos TP USING(tipo_id)
where w.valuatedInventory
and total > 0
order by total desc;
ELSE
SELECT w.name as Almacen, r.reino as Reino, cast(total as decimal) as Euros
FROM inv
JOIN warehouse w ON w.id = w_id
JOIN Articles A USING(Id_Article)
JOIN Tipos t USING(tipo_id)
JOIN reinos r ON r.id = t.reino_id
where w.valuatedInventory;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventario_valorado_FTH` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventario_valorado_FTH`(IN d_FEC DATE, IN bol_DESGLOSE BOOLEAN, IN inv_value_new DOUBLE)
BEGIN
DECLARE emp_id INT DEFAULT 791;
DECLARE inv_value DOUBLE ;
DECLARE d_INV DATE;
DECLARE bolREVERSE BOOLEAN DEFAULT 0;
DECLARE d_INV2 DATE;
SELECT landing INTO d_INV
FROM travel TR
INNER JOIN Entradas E ON E.travel_id = TR.id
WHERE landing <= d_FEC
AND E.Id_Proveedor = 4
ORDER BY landing DESC
LIMIT 1;
SET bolREVERSE = IF (d_INV is null, 1, 0);
IF bolREVERSE THEN
SELECT landing INTO d_INV2
FROM travel TR
INNER JOIN Entradas E ON E.travel_id = TR.id
WHERE landing >= d_FEC
AND E.Id_Proveedor = 4
ORDER BY landing ASC
LIMIT 1;
SET d_INV = TIMESTAMPADD(DAY,1,d_FEC);
SET d_FEC = d_INV2;
END IF;
DROP TEMPORARY TABLE IF EXISTS inv;
CREATE TEMPORARY TABLE inv
(w_id SMALLINT,
Id_Article BIGINT,
cantidad INT,
landing DATE,
Proveedor VARCHAR(30),
Id_Entrada BIGINT,
coste DOUBLE DEFAULT 0,
total DOUBLE DEFAULT 0) ENGINE = MEMORY;
ALTER TABLE inv ADD PRIMARY KEY USING HASH (w_id, Id_Article);
IF bolREVERSE = 1 THEN
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT TR.warehouse_id, C.Id_Article, SUM(C.Cantidad)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id
WHERE landing = d_FEC
AND E.Id_Proveedor = 4
AND NOT w.fuente
AND A.tipo_id NOT IN (21,7)
AND reino_id NOT IN (6,7)
GROUP BY TR.warehouse_id, C.Id_Article;
END IF;
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT TR.warehouse_id, C.Id_Article, C.Cantidad * IF(bolREVERSE,-1,1)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = TR.warehouse_id
WHERE landing BETWEEN d_INV AND TIMESTAMPADD(DAY, IF(bolREVERSE,-1,0) ,d_FEC)
AND NOT redada
AND NOT w.fuente
AND reino_id NOT IN (6,7)
AND A.tipo_id NOT IN (21,7)
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + (C.Cantidad * IF(bolREVERSE,-1,1));
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT TR.warehouse_id_out, C.Id_Article, C.Cantidad * IF(bolREVERSE,1,-1)
FROM Compres C
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Entradas E USING (Id_Entrada)
INNER JOIN travel TR ON TR.id = E.travel_id
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id_out
WHERE shipment BETWEEN d_INV AND TIMESTAMPADD(DAY, IF(bolREVERSE,-1,0) ,d_FEC)
AND NOT redada
AND NOT w.fuente
AND reino_id NOT IN (6,7)
AND A.tipo_id NOT IN (21,7)
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + (C.Cantidad * IF(bolREVERSE,1,-1));
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT w.id, M.Id_Article, M.Cantidad * IF(bolREVERSE,1,-1)
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
INNER JOIN Clientes C USING(Id_Cliente)
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id
WHERE T.Fecha BETWEEN d_INV AND TIMESTAMPADD(DAY, -1 ,d_FEC)
AND empresa_id = emp_id AND NOT w.fuente
AND reino_id NOT IN (6,7)
AND A.tipo_id NOT IN (21,7)
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + M.Cantidad * IF(bolREVERSE,1,-1);
INSERT INTO inv(w_id, Id_Article, cantidad)
SELECT w.id, M.Id_Article, M.Cantidad * IF(bolREVERSE,0,-1)
FROM Movimientos M
INNER JOIN Tickets T USING (Id_Ticket)
INNER JOIN Clientes C USING(Id_Cliente)
INNER JOIN Articles A USING(Id_Article)
INNER JOIN Tipos t USING(tipo_id)
INNER JOIN warehouse w ON w.id = warehouse_id
WHERE T.Fecha = d_FEC
AND (d_FEC <> CURDATE() or (M.OK <> 0 or T.Etiquetasemitidas <> 0 ))
AND NOT w.fuente
AND empresa_id = emp_id
AND reino_id NOT IN (6,7)
AND A.tipo_id NOT IN (21,7)
ON DUPLICATE KEY UPDATE inv.cantidad = inv.cantidad + M.Cantidad * IF(bolREVERSE,0,-1);
UPDATE inv
JOIN ( SELECT * FROM
(
SELECT Id_Article
, warehouse_id
, Id_Entrada
, landing
, IF(Id_Proveedor = 13 AND warehouse_id_out = 7, 'VNH',Proveedor) Proveedor
, ifnull(C.Costefijo,0)
+ IFNULL(C.Embalajefijo,0)
+ IFNULL(C.Portefijo,0)
+ IFNULL(C.Comisionfija,0) cost
FROM Compres C
JOIN Entradas E using(Id_Entrada)
JOIN Proveedores P using(Id_Proveedor)
JOIN travel tr on tr.id = travel_id
WHERE empresa_id = emp_id
AND landing between '2015-01-02' and '2015-08-31'
AND noVincular = FALSE
AND E.Id_Proveedor NOT IN (12,4,30,850,963,IF(warehouse_id_out = 7, -0.48, 13))
AND NOT redada
ORDER BY landing DESC
) sub
GROUP BY Id_Article, warehouse_id
) lb ON w_id = lb.warehouse_id AND inv.Id_Article = lb.Id_Article
SET total = inv.cantidad * cost,
coste = cost,
inv.landing = lb.landing,
inv.Proveedor = lb.Proveedor,
inv.Id_Entrada = lb.Id_Entrada
WHERE inv.cantidad > 0;
DELETE FROM inv WHERE Cantidad IS NULL or Cantidad <= 0 or total = 0;
SELECT SUM(total) INTO inv_value FROM inv;
UPDATE inv SET cantidad = ROUND(cantidad * inv_value_new / inv_value ,0);
UPDATE inv SET total = cantidad * coste;
IF bol_DESGLOSE THEN
SELECT inv.*, Article, Medida, Id_Tipo,reino_id
FROM inv
JOIN Articles USING(Id_Article)
JOIN Tipos TP USING(tipo_id)
where w_id IN (1,44, 5)
and total > 0
order by total desc;
ELSE
SELECT w.name as Almacen, r.reino as Reino, total as Euros
FROM inv
JOIN warehouse w ON w.id = w_id
JOIN Articles A USING(Id_Article)
JOIN Tipos t USING(tipo_id)
JOIN reinos r ON r.id = t.reino_id
;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `inventory_refresh` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `inventory_refresh`()
BEGIN
INSERT INTO daily_task_log
SET consulta = 'inventory_refresh-begin';
CALL article_inventory_warehouses (TIMESTAMPADD(DAY, -10, CURDATE()));
INSERT INTO daily_task_log
SET consulta = 'inventory_refresh-end';
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoice_newkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoice_newkk`(
customer_id INT,
serie VARCHAR(10),
date_ini DATE,
date_end DATE,
date_invoice DATETIME,
ticket_id INT,
empresa_act INT,
Id_Trabajador INT
)
BEGIN
DECLARE invoice_id VARCHAR(30) DEFAULT NULL;
DECLARE date_vec DATE DEFAULT date_invoice;
DECLARE day_vec INT;
DECLARE bi_r DOUBLE DEFAULT 0;
DECLARE bi_g DOUBLE DEFAULT 0;
DECLARE bi_n DOUBLE DEFAULT 0;
DECLARE iva_r DOUBLE DEFAULT 0;
DECLARE iva_g DOUBLE DEFAULT 0;
DECLARE re_r DOUBLE DEFAULT 0;
DECLARE re_g DOUBLE DEFAULT 0;
DECLARE dblImporte DOUBLE DEFAULT 0;
DECLARE intpais_id TINYINT DEFAULT 1;
DECLARE intFac INTEGER;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
SELECT TIMESTAMP (date_ini, '00:00:00') into date_ini;
SET date_invoice = IFNULL(date_invoice,CURDATE());
IF date_invoice >= '2015-12-01' AND empresa_act = 791 AND serie <> 'A' THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT ='ERROR_FTH_NO_EXISTE';
END IF;
DROP TEMPORARY TABLE IF EXISTS `iva_base`;
CREATE TEMPORARY TABLE `iva_base`
(
`id` VARCHAR(3) NOT NULL,
`base` DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (`id`)
)
ENGINE = MEMORY;
DROP TEMPORARY TABLE IF EXISTS `ticket_invoice`;
CREATE TEMPORARY TABLE `ticket_invoice`
(
`ticket_id` INT NOT NULL,
PRIMARY KEY (`ticket_id`)
)
ENGINE = MEMORY;
START TRANSACTION;
SELECT pais_id INTO intpais_id FROM Proveedores WHERE Id_Proveedor = empresa_act;
IF ticket_id = 0 THEN
INSERT INTO ticket_invoice (ticket_id) SELECT Id_Ticket FROM Tickets WHERE (Fecha BETWEEN date_ini
AND DAYEND(date_end)) AND Id_Cliente = customer_id AND Factura IS NULL AND empresa_id = empresa_act ;
ELSE
INSERT INTO ticket_invoice (ticket_id) SELECT Id_Ticket FROM Tickets WHERE Id_Ticket = ticket_id
AND Factura IS NULL ;
END IF;
UPDATE Tickets INNER JOIN (SELECT COUNT(Movimientos.Id_Movimiento) AS num, ticket_invoice.ticket_id AS ticket_id
FROM ticket_invoice LEFT JOIN Movimientos ON ticket_invoice.ticket_id = Movimientos.Id_Ticket
GROUP BY ticket_invoice.ticket_id HAVING num = 0) counter
ON Tickets.Id_Ticket = counter.ticket_id SET Tickets.Fecha = '1999-01-01 00:00:00';
DELETE ticket_invoice.* FROM ticket_invoice INNER JOIN Tickets ON ticket_invoice.ticket_id = Tickets.Id_Ticket
INNER JOIN Clientes ON Tickets.Id_Cliente = Clientes.Id_cliente WHERE YEAR(Tickets.Fecha) < 2001 AND invoice;
IF (SELECT COUNT(*) FROM ticket_invoice) > 0 THEN
INSERT INTO iva_base (id) SELECT tipoiva FROM tblIVA;
UPDATE iva_base
INNER JOIN
(SELECT tipo, SUM(base) base
FROM
(SELECT t.tipo, red(m.Cantidad * m.Preu * (100 - Descuento) / 100) AS base
FROM
Movimientos m
INNER JOIN ticket_invoice ti ON m.Id_Ticket = ti.ticket_id
INNER JOIN (SELECT t.tipo, Id_Article
FROM
(SELECT
date, iva_codigo_id, ic.tipo, iva_group_id
FROM
iva_group_codigo gi
INNER JOIN iva_codigo ic ON gi.iva_codigo_id = ic.id
INNER JOIN iva_tipo itp ON itp.id = ic.iva_tipo_id
WHERE
date <= date_invoice
AND Id_Pais = intpais_id
ORDER BY date DESC) t
INNER JOIN Articles USING (iva_group_id)
GROUP BY Id_Article) t USING (Id_Article)) sub
GROUP BY tipo) iva_movement ON iva_base.id = iva_movement.tipo
SET
iva_base.base = iva_movement.base;
IF (serie = 'H' OR serie = 'V' OR serie = 'E' OR serie = 'X') then
SELECT SUM(base) into dblImporte from iva_base;
ELSE
SET bi_r = (SELECT base FROM iva_base WHERE id = 'R');
SET bi_g = (SELECT base FROM iva_base WHERE id = 'G');
SET bi_n = (SELECT base FROM iva_base WHERE id = '0');
SET iva_r = red(bi_r * (SELECT iva FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'R' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
SET iva_g = red(bi_g * (SELECT iva FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'G' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
IF (SELECT IF(RE = 0, FALSE, TRUE) FROM Clientes WHERE Clientes.Id_cliente = customer_id) THEN
SET re_r = red(bi_r * (SELECT recargo FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'R' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
SET re_g = red(bi_g * (SELECT recargo FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'G' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
END IF;
SET dblImporte = bi_r + bi_g + bi_n + iva_r + iva_g + re_r + re_g ;
END IF;
END IF;
IF dblImporte <> 0 THEN
SELECT Vencimiento INTO day_vec FROM Clientes WHERE Id_cliente = customer_id;
SET date_vec = TIMESTAMPADD(DAY, day_vec, date_vec);
INSERT INTO Facturas
(
Id_Factura,
Serie,
Fecha,
Id_Cliente,
BI7,
BI16,
IVA7,
IVA16,
RE1,
RE4,
Importe,
Vencimiento,
empresa_id
)
VALUES
(
1,
serie,
date_invoice,
customer_id,
bi_r,
bi_g,
iva_r,
iva_g,
re_r,
re_g,
dblImporte,
date_vec,
empresa_act
);
SET intFac = LAST_INSERT_ID();
SELECT Id_Factura INTO invoice_id FROM Facturas
WHERE factura_id = intFac;
UPDATE Tickets INNER JOIN ticket_invoice ON Tickets.Id_Ticket = ticket_invoice.ticket_id
SET Factura = invoice_id, Etiquetasemitidas = TRUE;
DROP TEMPORARY TABLE IF EXISTS tmp.updateInter;
CREATE TEMPORARY TABLE tmp.updateInter ENGINE = MEMORY
SELECT s.id,ti.ticket_id,Id_Trabajador
FROM ticket_invoice ti
JOIN vn.ticketState ts ON ti.ticket_id = ts.ticket
JOIN state s
WHERE IFNULL(ts.alertLevel,0) < 3 and s.`code` = vn.getAlert3State(ti.ticket_id);
INSERT INTO vncontrol.inter(state_id,Id_Ticket,Id_Trabajador)
SELECT * FROM tmp.updateInter;
INSERT INTO Tickets_dits (idaccion_dits,Id_Trabajador,Id_Ticket,value_old,value_new)
SELECT 111 ,Id_Trabajador,ti.ticket_id,NULL,serie FROM ticket_invoice ti;
END IF;
DROP TEMPORARY TABLE `iva_base`;
DROP TEMPORARY TABLE `ticket_invoice`;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `itemTagArrangedUpdate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemTagArrangedUpdate`(IN vItem BIGINT)
BEGIN
CALL vn.itemTagArrangedUpdate(vItem);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `itemTagArrangedUpdate_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemTagArrangedUpdate_launcher`()
BEGIN
call vn2008.itemTagArrangedUpdate(0);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `itemTagUpdatePriority` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemTagUpdatePriority`(IN vItem INT)
BEGIN
CALL vn.itemTagUpdatePriority(vItem);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_buffer_tarifa_traveltreekk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_buffer_tarifa_traveltreekk`(v_date DATE, v_consigna INT, v_agencia INT, i_order INT, v_wh SMALLINT)
BEGIN
DECLARE done TINYINT DEFAULT 0;
DECLARE v_shipment DATE;
DECLARE v_agency_id INT;
DECLARE cur1 CURSOR FOR
SELECT warehouse_id, Fecha_envio
FROM travel_tree;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
SELECT agency_id INTO v_agency_id FROM Agencias WHERE Id_Agencia = v_agencia;
IF v_wh = 0
THEN
CALL travel_tree(v_date,v_consigna, v_agency_id);
ELSE
DROP TEMPORARY TABLE IF EXISTS travel_tree;
CREATE TEMPORARY TABLE travel_tree (
warehouse_id SMALLINT NOT NULL,
Fecha_envio DATE NOT NULL,
Fecha_recepcion DATE NOT NULL,
PRIMARY KEY ( warehouse_id)
) ENGINE = MEMORY;
INSERT INTO travel_tree
SELECT v_wh, v_date, v_date;
END IF;
OPEN cur1;
FETCH cur1 INTO v_wh, v_shipment;
DROP TEMPORARY TABLE IF EXISTS buffer_multi;
CREATE TEMPORARY TABLE buffer_multi (
warehouse_id tinyint(4) NOT NULL ,
Id_Article int(11) NOT NULL ,
visible double DEFAULT NULL,
available double DEFAULT NULL,
future date DEFAULT NULL,
buy_inc int(11) DEFAULT NULL,
buy_last date DEFAULT NULL,
buy_id int(11) DEFAULT NULL,
`fixed` tinyint(4) DEFAULT '0',
rate_0 double DEFAULT NULL,
rate_1 double DEFAULT NULL,
rate_2 double DEFAULT NULL,
rate_3 double DEFAULT NULL,
Packing int(8) DEFAULT 1,
Grouping int(8) DEFAULT 1,
Productor VARCHAR(45) DEFAULT NULL,
caja tinyint(4) DEFAULT '0',
Origen VARCHAR(3) NOT NULL DEFAULT '---',
mark tinyint(4) DEFAULT '0',
`comment` VARCHAR(100),
foto VARCHAR(50),
Id_Tipo smallint(5),
Article VARCHAR(50),
PRIMARY KEY (Id_Article, warehouse_id)
) ENGINE = MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ;
WHILE NOT done
DO
CALL item_buffer_tarifa(v_wh, v_shipment, v_consigna, FALSE, v_agencia);
INSERT INTO buffer_multi(warehouse_id, Id_Article, visible, available, future, buy_inc, buy_last, buy_id, `fixed`, rate_0, rate_1, rate_2, rate_3, Packing, Grouping, Productor, caja, Origen, mark, `comment`, foto, Id_Tipo, Article)
SELECT v_wh, id, visible, available, future, buy_inc, buy_last, buy_id, `fixed`, rate_0, rate_1, rate_2, rate_3, Packing, Grouping, Productor, bb.caja, Origen, mark, `comment`, A.Foto, A.tipo_id, A.Article
FROM bionic_buffer bb
JOIN Articles A ON A.Id_Article = bb.id
JOIN Tipos TP ON TP.tipo_id = A.tipo_id
WHERE NOT (v_wh = 44 AND TP.reino_id IN (1,5))
AND NOT (v_wh = 1 AND TP.reino_id NOT IN (1,5));
INSERT INTO order_components(order_id, warehouse_id, Id_Article, Valor, Id_Componente)
SELECT i_order, v_wh, bb.Id_Article, Valor, Id_Componente
FROM components bb
JOIN Articles A ON A.Id_Article = bb.Id_Article
JOIN Tipos TP ON TP.tipo_id = A.tipo_id
WHERE NOT (v_wh = 44 AND TP.reino_id IN (1,5))
AND NOT (v_wh = 1 AND TP.reino_id NOT IN (1,5));
DROP TEMPORARY TABLE bionic_buffer;
DROP TEMPORARY TABLE components;
FETCH cur1 INTO v_wh, v_shipment;
END WHILE;
CLOSE cur1;
DROP TEMPORARY TABLE IF EXISTS buffer_multi_lotes;
CREATE TEMPORARY TABLE buffer_multi_lotes
ENGINE = MEMORY
SELECT buy_last as landing, warehouse_id, Id_Article, FLOOR(available/IF(caja = 1,Grouping,1)) AS Items,
IF(caja = 1,Grouping,1) AS Grouping, rate_1 AS Precio, 1 AS tarifa_class
FROM buffer_multi
WHERE caja < 2
AND (Packing > Grouping or caja = 0);
INSERT INTO buffer_multi_lotes
SELECT buy_last, warehouse_id, Id_Article, FLOOR(available/Packing) AS items, Packing AS Grouping, rate_2 AS Precio,2 AS tarifa_class
FROM buffer_multi
WHERE Packing > 0
AND available > Packing;
INSERT INTO buffer_multi_lotes
SELECT buy_last, warehouse_id, Id_Article, 1 AS items, available AS Grouping, rate_3 AS Precio,3 AS tarifa_class
FROM buffer_multi;
DROP TEMPORARY TABLE travel_tree;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_buffer_tarifa_traveltree_dupkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_buffer_tarifa_traveltree_dupkk`(
v_date DATE,
v_consigna INT,
v_agencia INT,
i_order INT,
v_wh TINYINT)
BEGIN
DECLARE v_shipment DATE;
DECLARE v_agency_id INT;
DECLARE done BOOL DEFAULT FALSE;
DECLARE cur CURSOR FOR
SELECT warehouse_id, Fecha_envio FROM travel_tree;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
CALL cache.order_clean (i_order);
SELECT agency_id INTO v_agency_id FROM Agencias WHERE Id_Agencia = v_agencia;
DROP TEMPORARY TABLE IF EXISTS travel_tree;
IF v_wh = 0
THEN
CALL vn2008.travel_tree(v_date,v_consigna, v_agency_id);
ELSE
CREATE TEMPORARY TABLE travel_tree
(PRIMARY KEY (warehouse_id))
ENGINE=MEMORY
SELECT v_wh warehouse_id, v_date Fecha_envio;
END IF;
OPEN cur;
FETCH cur INTO v_wh, v_shipment;
WHILE NOT done
DO
CALL item_buffer_tarifa_dup (v_wh, v_shipment, v_consigna, FALSE, v_agencia);
INSERT INTO cache.order_stock (
order_id, warehouse_id, Id_Article, visible, available, future, buy_inc, buy_last, buy_id, `fixed`, rate_0, rate_1, rate_2, rate_3, Packing, Grouping, Productor, caja, Origen, mark, `comment`, foto, Id_Tipo, Article
)
SELECT i_order, v_wh, id, visible, available, future, buy_inc, buy_last, buy_id, `fixed`, rate_0, rate_1, rate_2, rate_3, Packing, Grouping, Productor, bb.caja, Origen, mark, `comment`, A.Foto, A.tipo_id, A.Article
FROM bionic_buffer bb
JOIN Articles A on A.Id_Article = bb.id
JOIN Tipos TP on TP.tipo_id = A.tipo_id
WHERE NOT (v_wh = 44 AND TP.reino_id IN (1,5))
AND NOT (v_wh = 1 AND TP.reino_id NOT IN (1,5));
INSERT INTO cache.order_component (
order_id, warehouse_id, item_id, cost, component_id
)
SELECT i_order, v_wh, bb.Id_Article, Valor, Id_Componente
FROM components bb
JOIN Articles A on A.Id_Article = bb.Id_Article
JOIN Tipos TP on TP.tipo_id = A.tipo_id
WHERE NOT (v_wh = 44 AND TP.reino_id IN (1,5))
AND NOT (v_wh = 1 AND TP.reino_id NOT IN (1,5));
FETCH cur INTO v_wh, v_shipment;
END WHILE;
CLOSE cur;
INSERT INTO cache.order_stock_lot (
order_id,
landing,
warehouse_id,
item_id,
items,
grouping,
price,
rate_class
)
SELECT order_id, buy_last, warehouse_id, Id_Article, FLOOR(available / IF(caja = 1, Grouping, 1)), IF(caja = 1, Grouping, 1), rate_1, 1
FROM cache.order_stock
WHERE caja < 2
AND (Packing > Grouping or caja = 0)
UNION ALL
SELECT order_id, buy_last, warehouse_id, Id_Article, FLOOR(available/Packing), Packing, rate_2, 2
FROM cache.order_stock
WHERE Packing > 0
AND available > Packing
UNION ALL
SELECT order_id, buy_last, warehouse_id, Id_Article, 1, available, rate_3, 3
FROM cache.order_stock;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_buy` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_buy`(IN v_wh TINYINT, IN v_date DATETIME)
BEGIN
DECLARE date_inv DATE;
ALTER TABLE item
ADD buy_id INT UNSIGNED;
IF v_date < (SELECT date_inv()) THEN
SELECT MIN(landing) INTO date_inv FROM travel t INNER JOIN Entradas e ON e.travel_id = t.id
WHERE warehouse_id_out = 13 AND landing <= v_date;
ELSE
SET date_inv = date_inv();
END IF;
UPDATE item i INNER JOIN (
SELECT * FROM (
SELECT c.Id_Article item_id, c.Id_Compra id
FROM Compres c INNER JOIN Entradas e USING(Id_Entrada)
INNER JOIN travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN date_inv AND v_date
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0
ORDER BY v_wh = t.warehouse_id DESC, t.landing DESC
) t
GROUP BY item_id
) t
ON i.id = t.item_id
SET i.buy_id = t.id;
CREATE INDEX buy USING HASH ON item (buy_id);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_buy_price` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_buy_price`(IN v_customer INT,IN date_ DATE,IN v_wh TINYINT)
BEGIN
ALTER TABLE item
ADD price DOUBLE,
ADD discount INT;
UPDATE item i
JOIN Compres b ON i.buy_id = b.Id_Compra
JOIN Clientes c ON c.Id_cliente = v_customer
SET i.price = CASE c.Descuento
WHEN 0 THEN b.PVP
WHEN 1 THEN b.Tarifa1
WHEN 2 THEN b.Tarifa2
WHEN 3 THEN b.Tarifa3
ELSE IF(c.Descuento BETWEEN 4 AND 100, b.Tarifa2, round(b.Tarifa3 * (200 - c.Descuento) / 100 ,2) )
END,
i.discount = IF(c.Descuento BETWEEN 4 AND 100, c.Descuento, 0);
UPDATE item i
INNER JOIN Clientes c ON c.Id_cliente = v_customer
JOIN v_price_fixed_group fp ON i.id = fp.item_id
SET i.price = CASE c.Descuento
WHEN 0 THEN fp.rate_0
WHEN 1 THEN fp.rate_1
WHEN 2 THEN fp.rate_2
WHEN 3 THEN fp.rate_3
ELSE fp.rate_3
END,
i.discount = 0
WHERE fp.warehouse_id IN (0,v_wh)
AND date_ BETWEEN fp.date_start AND fp.date_end;
UPDATE item i
JOIN Clientes c ON c.Id_cliente = v_customer
JOIN PreciosEspeciales p ON i.id = p.Id_Article AND p.Id_Cliente = v_customer
SET i.price = p.PrecioEspecial,
i.discount = 0;
UPDATE item i
JOIN Articles a ON a.Id_Article = i.id
JOIN Clientes c ON c.Id_cliente = v_customer
SET i.price = IF(a.`Min` AND i.price < a.PVP, a.PVP,i.price);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_cache_cleaner` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_cache_cleaner`()
BEGIN
DECLARE v_lifetime INT DEFAULT 80;
DECLARE v_expired DATETIME DEFAULT TIMESTAMPADD(SECOND, -v_lifetime, NOW());
IF (SELECT MAX(id) FROM`cache`) < 32000
THEN
UPDATE `cache` SET age = age + 1 WHERE stamp < v_expired ORDER BY age DESC;
DELETE FROM `cache` WHERE stamp < TIMESTAMPADD(SECOND, -40, v_expired);
IF ROW_COUNT() > 0
THEN
DELETE a
FROM cache_a a
LEFT JOIN `cache` c ON c.id = a.cache_id
WHERE c.id IS NULL;
END IF;
ELSE
TRUNCATE TABLE `cache`;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_catalog` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_catalog`(
v_wh INT
,v_date DATE
,v_customer INT
)
BEGIN
DECLARE v_cache SMALLINT;
CALL item_cache (v_cache, 'a', v_wh, v_date);
DROP TEMPORARY TABLE IF EXISTS item_catalog;
CREATE TEMPORARY TABLE item_catalog
(KEY (item_id))
ENGINE = MEMORY
SELECT
b.item_id
,b.available
,b.fixed
,IFNULL(p.PrecioEspecial,(
CASE c.Descuento
WHEN 0 THEN b.rate_0
WHEN 1 THEN b.rate_1
WHEN 2 THEN b.rate_2
WHEN 3 THEN b.rate_3
ELSE NULL
END
)) AS price
,be.S1 s1
,be.S2 s2
,0 discount
,CASE co.caja WHEN 0 THEN 1 WHEN 2 THEN co.packing ELSE co.grouping END AS grouping
FROM cache_a b
JOIN Clientes c
ON c.Id_cliente = v_customer
JOIN Articles a
ON a.Id_Article = b.item_id
JOIN Tipos t
ON t.tipo_id = a.tipo_id
JOIN reinos r
ON r.id = t.reino_id
JOIN Compres co
ON co.Id_Compra = b.buy_id
LEFT JOIN buy_edi be
ON be.id = co.buy_edi_id
LEFT JOIN PreciosEspeciales p
ON p.Id_Cliente = v_customer AND b.item_id = p.Id_Article
WHERE b.available > 0 AND b.cache_id = v_cache;
IF NOT v_customer = 3064
THEN
DELETE c
FROM item_catalog c
JOIN Articles ON item_id = Id_Article
WHERE tipo_id = 105;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_disp_virt` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_disp_virt`(v_wh SMALLINT, v_date DATETIME, id_single INT, v_cache INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS wh_father;
DROP TEMPORARY TABLE IF EXISTS wh_son;
DROP TEMPORARY TABLE IF EXISTS article_inventory;
CREATE TEMPORARY TABLE wh_father
(
wh SMALLINT,
INDEX i (wh)
)
ENGINE = MEMORY;
CREATE TEMPORARY TABLE wh_son
(
wh INT,
INDEX i (wh)
)
ENGINE = MEMORY;
INSERT INTO wh_father(wh) VALUES(v_wh);
INSERT INTO wh_son(wh) VALUES(v_wh);
IF @wh_son THEN
INSERT INTO wh_son(wh) VALUES(@wh_son);
END IF;
CALL item_travel_fixed(v_wh,v_date);
SET @@max_sp_recursion_depth = 10;
CALL item_disp_virt1 (v_wh, v_date, 0, id_single, v_cache);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_disp_virt1` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_disp_virt1`(v_wh SMALLINT, v_date DATETIME, direccion TINYINT, id_single INT, v_cache INT)
BEGIN
DECLARE wh_cursor,done TINYINT DEFAULT 0;
DECLARE v_shipment_aux DATETIME DEFAULT NULL;
DECLARE v_date_cur DATETIME DEFAULT CURDATE();
DECLARE v_inv DATETIME;
DECLARE v_camp DATETIME;
DECLARE b_fprice TINYINT;
DECLARE cur1 CURSOR FOR
SELECT son FROM warehouse_tree_bidi
WHERE father = v_wh AND son NOT IN (SELECT DISTINCT wh FROM wh_son);
DECLARE cur2 CURSOR FOR
SELECT father FROM warehouse_tree_bidi
WHERE son = v_wh AND father NOT IN (SELECT DISTINCT wh FROM wh_father);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
SELECT FechaInventario, TIMESTAMPADD(DAY, -campaign_life, campaign)
INTO v_inv, v_camp FROM tblContadores LIMIT 1;
CALL hedera.sql_query (sql_printf('DROP TEMPORARY TABLE IF EXISTS %t;',v_wh));
CALL hedera.sql_query (sql_printf('create temporary table %t
(
article_id INT PRIMARY KEY,
amount DOUBLE(8,2)
)ENGINE = MEMORY;'
,v_wh));
IF v_camp >= v_date_cur AND v_camp <= v_date THEN
SET v_date_cur = v_camp;
ELSE
OPEN cur1;
FETCH cur1 INTO wh_cursor;
WHILE !done DO
SELECT MIN(landing) INTO v_shipment_aux
FROM travel t
WHERE t.warehouse_id_out = v_wh
AND t.warehouse_id = wh_cursor
AND t.shipment >= v_date
AND NOT t.delivered
AND t.landing >= t.shipment;
INSERT INTO wh_son(wh) VALUES (v_wh);
CALL item_disp_virt1 (wh_cursor, v_shipment_aux, -1, id_single, v_cache);
CALL hedera.sql_query (sql_printf (
'INSERT INTO %t (article_id,amount)
SELECT item_id ,available FROM vn2008.tmp_item WHERE available < 0
ON DUPLICATE KEY UPDATE
amount = amount + VALUES(amount);'
,v_wh
));
FETCH cur1 INTO wh_cursor;
END WHILE;
CLOSE cur1;
SET v_shipment_aux = NULL;
IF direccion >= 0 THEN
SET done = 0;
OPEN cur2;
FETCH cur2 INTO wh_cursor;
WHILE !done DO
SELECT MAX(shipment) INTO v_shipment_aux FROM travel t
WHERE t.warehouse_id_out = wh_cursor
AND t.warehouse_id = v_wh
AND t.delivered = 0
AND t.shipment >= CURDATE()
AND t.landing <= v_date;
INSERT INTO wh_son(wh) VALUES (v_wh);
INSERT INTO wh_father(wh) VALUES (v_wh);
IF v_shipment_aux IS NOT NULL THEN
CALL item_disp_virt1(wh_cursor,v_shipment_aux,1, id_single, v_cache);
CALL hedera.sql_query (sql_printf('INSERT INTO %t (article_id,amount)
SELECT item_id ,available FROM vn2008.tmp_item WHERE available > 0
ON DUPLICATE KEY UPDATE
amount = amount + VALUES(amount);',v_wh));
ELSE
SELECT MIN(shipment) INTO v_shipment_aux FROM travel t
WHERE t.warehouse_id_out = wh_cursor
AND t.warehouse_id = v_wh
AND t.delivered = 0
AND t.shipment >= CURDATE()
AND t.landing >= v_date;
CALL item_disp_virt1(wh_cursor,v_shipment_aux,2, id_single, v_cache);
END IF;
FETCH cur2 INTO wh_cursor;
END WHILE;
END IF;
END IF;
CALL item_stock (v_wh, v_date,NULL);
CALL item_stock_avail (v_wh, v_date,NULL,direccion);
CALL hedera.sql_query (sql_printf('INSERT INTO vn2008.tmp_item ( item_id, available)
SELECT article_id, amount FROM %t
ON DUPLICATE KEY UPDATE
available = available + VALUES(available);',v_wh));
IF !direccion THEN
IF v_date = curdate() THEN
CALL item_stock_visible (v_wh,NULL);
END IF;
DELETE FROM cache_a WHERE cache_id = v_cache;
CALL hedera.sql_query (sql_printf (
'INSERT INTO vn2008.cache_a (cache_id, item_id, visible, available, virtual, future)
SELECT %v, item_id, visible, available, IFNULL(amount,0) virtual, future
FROM vn2008.tmp_item
LEFT JOIN %t ON item_id = article_id
ON DUPLICATE KEY UPDATE
visible = VALUES(visible),
available = VALUES(available),
virtual = VALUES(virtual),
future = VALUES(future);'
,v_cache
,v_wh
));
END IF;
CALL hedera.sql_query (sql_printf ('DROP TEMPORARY TABLE IF EXISTS %t;', v_wh));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_express` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_express`(IN intWH INT, IN datFEC DATE)
BEGIN
DECLARE datINV DATE;
SELECT FechaInventario INTO datINV FROM tblContadores LIMIT 1;
SELECT sub1.Id_Article, Visible, Tarifa2
FROM
(SELECT Id_Article, SUM(Cantidad) as Visible
FROM Compres C
JOIN Entradas E USING(Id_Entrada)
JOIN travel T ON T.id = E.travel_id
WHERE shipment >= datINV
AND landing <= datFEC
AND Redada = 0
AND warehouse_id = intWH
GROUP BY Id_Article) sub1
JOIN
(
SELECT * FROM
(
SELECT Id_Article, Tarifa2
FROM Compres C
JOIN Entradas E USING(Id_Entrada)
JOIN travel T ON T.id = E.travel_id
WHERE shipment >= datINV
AND landing <= datFEC
AND Redada = 0
AND Novincular = 0
AND warehouse_id = intWH
ORDER BY landing DESC) sub
GROUP BY Id_Article) sub2 USING(Id_Article);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_last_buy_` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_last_buy_`(v_wh SMALLINT, v_date DATE)
BEGIN
CALL cache.last_buy_refresh (FALSE);
DROP TEMPORARY TABLE IF EXISTS t_item_last_buy;
CREATE TEMPORARY TABLE t_item_last_buy
(PRIMARY KEY (item_id,warehouse_id))
ENGINE = MEMORY
SELECT item_id, buy_id, warehouse_id
FROM cache.last_buy
WHERE v_wh = warehouse_id OR v_wh IS NULL;
CALL item_last_buy_from_interval (v_wh, CURDATE(), v_date);
REPLACE INTO t_item_last_buy
SELECT item_id, buy_id, warehouse_id
FROM tmp.item_last_buy_from_interval
WHERE v_wh = warehouse_id OR v_wh IS NULL;
DROP TEMPORARY TABLE tmp.item_last_buy_from_interval;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_last_buy_from_interval` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_last_buy_from_interval`(v_wh SMALLINT, v_date_ini DATE, v_date_end DATE)
BEGIN
IF v_date_end IS NULL
THEN
SET v_date_end = v_date_ini;
END IF;
DROP TEMPORARY TABLE IF EXISTS tmp.item_last_buy_from_interval;
CREATE TEMPORARY TABLE tmp.item_last_buy_from_interval
ENGINE = MEMORY
SELECT c.Id_Article item_id, t.warehouse_id, multimax(t.landing, c.Id_Compra) buy_id, MAX(t.landing) landing
FROM Compres c
JOIN Entradas e USING (Id_Entrada)
JOIN travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN v_date_ini AND v_date_end
AND (v_wh IS NULL OR t.warehouse_id = v_wh)
AND c.Tarifa2 > 0
AND NOT c.Novincular
GROUP BY item_id, warehouse_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_new` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_new`()
BEGIN
CREATE TEMPORARY TABLE item
(
item_id INT UNSIGNED NOT NULL,
UNIQUE KEY USING HASH (item_id)
)
ENGINE = MEMORY;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_stock` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_stock`(v_wh SMALLINT, v_date DATETIME, v_item INT)
BEGIN
DECLARE n TINYINT;
DECLARE v_diff TIME;
DECLARE v_inv DATETIME;
DECLARE v_camp DATETIME;
DECLARE v_curdate DATETIME DEFAULT CURDATE();
SET v_date = TIMESTAMP(DATE(v_date), '00:00:00');
SELECT FechaInventario, TIMESTAMPADD(DAY, -campaign_life, campaign)
INTO v_inv, v_camp FROM tblContadores LIMIT 1;
DROP TEMPORARY TABLE IF EXISTS tmp_item;
CREATE TEMPORARY TABLE tmp_item
(UNIQUE INDEX i USING HASH (item_id))
ENGINE = MEMORY
SELECT item_id, SUM(amount) stock, SUM(amount) visible, SUM(amount) available FROM (
SELECT item_id, amount FROM item_out
WHERE dat >= v_curdate AND dat < v_date
AND warehouse_id = v_wh
AND (v_item IS NULL OR item_id = v_item)
UNION ALL
SELECT item_id, amount FROM item_entry_in
WHERE dat >= v_curdate AND dat < v_date
AND warehouse_id = v_wh
AND (v_item IS NULL OR item_id = v_item)
UNION ALL
SELECT item_id, amount FROM item_entry_out
WHERE dat >= v_curdate AND dat < v_date
AND warehouse_id = v_wh
AND (v_item IS NULL OR item_id = v_item)
) t
GROUP BY item_id HAVING stock != 0;
CALL `cache`.stock_refresh (FALSE);
INSERT INTO tmp_item (item_id,stock,visible,available)
SELECT item_id,amount,amount,amount FROM `cache`.stock
WHERE warehouse_id = v_wh AND (v_item IS NULL OR v_item = item_id)
ON DUPLICATE KEY UPDATE
stock = stock + VALUES(stock),
visible = visible + VALUES(visible),
available = available + VALUES(available);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_stock_avail` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_stock_avail`(IN v_wh TINYINT, IN v_date DATETIME, IN id_single INT,IN direccion TINYINT)
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE expr,expr1,expr2,expr3,expr4,expr5 TEXT;
DECLARE query TEXT;
DECLARE _son,_self TEXT;
DECLARE _auxshipment, _auxlanding,fut DATE;
DECLARE cur1 CURSOR FOR
SELECT shipment,landing FROM travel WHERE warehouse_id_out = v_wh AND shipment BETWEEN TIMESTAMPADD(day,1,v_date)
AND TIMESTAMPADD(day,15,v_date) AND warehouse_id = (SELECT son FROM warehouse_tree_bidi WHERE father = v_wh
LIMIT 1)
ORDER BY shipment;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
CALL item_travel (v_wh, v_date);
SET expr = sql_printf ('dat BETWEEN DATE(%v) AND DATE(%v)'
,TIMESTAMP(v_date, '00:00:00')
,TIMESTAMP(TIMESTAMPADD(DAY, 15, v_date), '23:59:59')
);
IF id_single IS NOT NULL THEN
SET expr = sql_printf('%s AND item_id = %v'
,expr
,id_single
);
END IF;
SET expr1 = sql_printf ('%s AND warehouse_id = %v '
,expr
,v_wh
);
SET expr2 = '';
SET _self = CONCAT(v_wh, 'virtual');
CALL hedera.sql_query (sql_printf('CREATE TEMPORARY TABLE IF NOT EXISTS vn2008.%t
(
item_id INT(11),
dat DATE,
amount DOUBLE(8,2),
PRIMARY KEY(item_id,dat)
)
ENGINE = MEMORY;',_self));
IF direccion >= 0 THEN
SET expr2 = sql_printf (' UNION ALL
SELECT item_id, dat, amount
FROM vn2008.%t WHERE %s'
,_self
,expr
);
END IF;
ALTER TABLE tmp_item ADD future DATE;
SET query = sql_printf (
'INSERT INTO tmp_item (item_id,available, future)
SELECT item_id, SUM(amount) AS available,landing as future FROM (
SELECT t.item_id, minacum(dt, amount, %v) amount,w.landing FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT item_id, dat, amount
FROM item_out WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_in WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_out WHERE %s
%s
) t
GROUP BY item_id, dt
) t
LEFT JOIN Articles a ON a.Id_Article = t.item_id
LEFT JOIN Origen o ON o.id = a.id_origen
LEFT JOIN item_travel w ON w.wh = o.warehouse_id
WHERE IFNULL(dt < w.landing OR Id_Article > 170000, TRUE)
GROUP BY t.item_id
) t
GROUP BY t.item_id HAVING available != 0
ON DUPLICATE KEY UPDATE
available = IFNULL(available,0) + VALUES(available)'
, DATE(v_date) + 0, expr1, expr1, expr1, expr2
);
CALL sql_query (query);
IF (direccion > 0) THEN
SELECT CONCAT(son,'virtual') A INTO _son FROM warehouse_tree_bidi WHERE father = v_wh LIMIT 1;
CALL hedera.sql_query (sql_printf('CREATE TEMPORARY TABLE IF NOT EXISTS vn2008.%t
(
item_id INT(11),
dat DATE,
amount DOUBLE(8,2),
PRIMARY KEY(item_id,dat)
)
ENGINE = MEMORY;',_son));
IF (direccion >= 2) THEN
CALL sql_query (query);
SET query = sql_printf (
'REPLACE vn2008.%t (item_id,dat,amount)
SELECT item_id,landing,available FROM tmp_item,travel
WHERE shipment = DATE(%v) AND warehouse_id_out = %v AND available > 0
AND warehouse_id = (SELECT son FROM warehouse_tree_bidi WHERE father = %v
LIMIT 1) GROUP BY warehouse_id
',_son,v_date,v_wh,v_wh);
CALL sql_query (query);
TRUNCATE TABLE tmp_item;
END IF;
OPEN cur1;
FETCH cur1 INTO _auxshipment,_auxlanding;
WHILE !done DO
SET expr4 = sql_printf ('dat BETWEEN %v AND %v'
,TIMESTAMP(DATE(_auxshipment), '00:00:00')
,TIMESTAMP(TIMESTAMPADD(DAY, 15, v_date), '23:59:59')
);
IF id_single IS NOT NULL THEN
SET expr4 = sql_printf('%s AND item_id = %v'
,expr4
,id_single
);
END IF;
SET expr5 = sql_printf ('%s AND warehouse_id = %v'
,expr4
,v_wh
);
SET query = sql_printf (
'INSERT INTO vn2008.%t (item_id,dat,amount)
SELECT item_id, %v, SUM(amount) AS available FROM (
SELECT t.item_id, minacum(dt, amount, %v) amount FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT item_id, dat, amount
FROM item_out WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_in WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_out WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM %t WHERE %s
) t
GROUP BY item_id, dt
) t
LEFT JOIN Articles a ON a.Id_Article = t.item_id
LEFT JOIN Origen o ON o.id = a.id_origen
LEFT JOIN item_travel w ON w.wh = o.warehouse_id
WHERE IFNULL(dt < w.landing OR Id_Article > 170000, TRUE)
GROUP BY t.item_id
) t GROUP BY t.item_id HAVING available > 0
ON DUPLICATE KEY UPDATE
amount = IFNULL(amount,0) + VALUES(amount)
',_son,DATE(_auxlanding)+0,DATE(_auxshipment)+0,expr5, expr5, expr5,_self,expr4);
CALL sql_query (query);
FETCH cur1 INTO _auxshipment,_auxlanding;
END WHILE;
CLOSE cur1;
END IF;
CALL sql_query (sql_printf('DROP TEMPORARY TABLE IF EXISTS %t;',_self));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_stock_avail_new` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_stock_avail_new`(IN v_wh TINYINT, IN v_date DATETIME, IN id_single INT,IN direccion TINYINT)
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE expr,expr1,expr2,expr3,expr4,expr5 TEXT;
DECLARE query TEXT;
DECLARE _son,_self TEXT;
DECLARE _auxshipment, _auxlanding,fut DATE;
DECLARE cur1 CURSOR FOR
SELECT shipment,landing FROM travel
WHERE warehouse_id_out = v_wh
AND shipment BETWEEN TIMESTAMPADD(day,1,v_date)
AND TIMESTAMPADD(day,15,v_date)
AND warehouse_id = (SELECT son FROM warehouse_tree_bidi WHERE father = v_wh LIMIT 1)
ORDER BY shipment;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
CALL item_travel (v_wh, v_date);
SET expr = sql_printf ('dat BETWEEN DATE(%v) AND DATE(%v)'
,TIMESTAMP(v_date, '00:00:00')
,TIMESTAMP(TIMESTAMPADD(DAY, 15, v_date), '23:59:59')
);
IF id_single IS NOT NULL
THEN
SET expr = sql_printf('%s AND item_id = %v'
,expr
,id_single
);
END IF;
SET expr1 = sql_printf ('%s AND warehouse_id = %v '
,expr
,v_wh
);
SET expr2 = '';
SET _self = CONCAT(v_wh, 'virtual');
CALL hedera.sql_query (sql_printf('CREATE TEMPORARY TABLE IF NOT EXISTS vn2008.%t
(
item_id INT(11),
dat DATE,
amount DOUBLE(8,2),
PRIMARY KEY(item_id,dat)
)
ENGINE = MEMORY',_self));
IF direccion >= 0
THEN
SET expr2 = sql_printf (' UNION ALL
SELECT item_id, dat, amount
FROM vn2008.%t WHERE %s'
,_self
,expr
);
END IF;
ALTER TABLE tmp_item ADD future DATE;
SET query = sql_printf (
'INSERT INTO tmp_item (item_id, available, future)
SELECT item_id, SUM(amount) AS available,landing as future FROM (
SELECT t.item_id, minacum(dt, amount, %v) amount,w.landing FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT item_id, dat, amount
FROM item_out WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_in WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_out WHERE %s
%s
) t
GROUP BY item_id, dt
) t
LEFT JOIN Articles a ON a.Id_Article = t.item_id
LEFT JOIN Origen o ON o.id = a.id_origen
LEFT JOIN item_travel w ON w.wh = o.warehouse_id
WHERE IFNULL(dt <= w.landing OR Id_Article > 170000, TRUE)
GROUP BY t.item_id
) t
GROUP BY t.item_id HAVING available != 0
ON DUPLICATE KEY UPDATE
available = IFNULL(available,0) + VALUES(available)'
,DATE(v_date)+0
,expr1
,expr1
,expr1
,expr2
);
CALL sql_query (query);
IF (direccion > 0)
THEN
SELECT CONCAT(son,'virtual') A INTO _son FROM warehouse_tree_bidi WHERE father = v_wh LIMIT 1;
CALL hedera.sql_query (sql_printf(
'CREATE TEMPORARY TABLE IF NOT EXISTS vn2008.%t
(
item_id INT(11),
dat DATE,
amount DOUBLE(8,2),
PRIMARY KEY(item_id,dat)
)
ENGINE = MEMORY;',
_son
));
IF (direccion >= 2)
THEN
CALL sql_query (query);
CALL sql_query (sql_printf (
'REPLACE vn2008.%t (item_id,dat,amount)
SELECT item_id, landing, available FROM tmp_item, travel
WHERE shipment = DATE(%v) AND warehouse_id_out = %v AND available > 0
AND warehouse_id = (SELECT son FROM warehouse_tree_bidi WHERE father = %v LIMIT 1)
GROUP BY warehouse_id'
,_son
,v_date
,v_wh
,v_wh
));
TRUNCATE TABLE tmp_item;
END IF;
OPEN cur1;
FETCH cur1 INTO _auxshipment,_auxlanding;
WHILE !done
DO
SET expr4 = sql_printf ('dat BETWEEN %v AND %v'
,TIMESTAMP(DATE(_auxshipment), '00:00:00')
,TIMESTAMP(TIMESTAMPADD(DAY, 15, v_date), '23:59:59')
);
IF id_single IS NOT NULL
THEN
SET expr4 = sql_printf('%s AND item_id = %v'
,expr4
,id_single
);
END IF;
SET expr5 = sql_printf ('%s AND warehouse_id = %v'
,expr4
,v_wh
);
CALL sql_query (sql_printf (
'INSERT INTO vn2008.%t (item_id,dat,amount)
SELECT item_id, %v, SUM(amount) AS available FROM (
SELECT t.item_id, minacum(dt, amount, %v) amount FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT item_id, dat, amount
FROM item_out WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_in WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM item_entry_out WHERE %s
UNION ALL
SELECT item_id, dat, amount
FROM %t WHERE %s
) t
GROUP BY item_id, dt
) t
LEFT JOIN Articles a ON a.Id_Article = t.item_id
LEFT JOIN Origen o ON o.id = a.id_origen
LEFT JOIN item_travel w ON w.wh = o.warehouse_id
WHERE IFNULL(dt < w.landing OR Id_Article > 170000, TRUE)
GROUP BY t.item_id
) t GROUP BY t.item_id HAVING available > 0
ON DUPLICATE KEY UPDATE
amount = IFNULL(amount,0) + VALUES(amount)'
,_son
,DATE(_auxlanding)+0
,DATE(_auxshipment)+0
,expr5
,expr5
,expr5
,_self
,expr4
));
FETCH cur1 INTO _auxshipment,_auxlanding;
END WHILE;
CLOSE cur1;
END IF;
CALL sql_query (sql_printf('DROP TEMPORARY TABLE IF EXISTS %t', _self));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_stock_visible` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_stock_visible`(v_wh SMALLINT, v_item INT)
BEGIN
DECLARE v_curdate DATETIME DEFAULT TIMESTAMP(CURDATE(), '00:00:00');
DECLARE v_tomorrow DATETIME DEFAULT TIMESTAMPADD(HOUR, 24, CURDATE());
INSERT INTO tmp_item (item_id, visible)
SELECT item_id, SUM(amount) amount FROM (
SELECT item_id, amount FROM item_out
WHERE dat >= v_curdate
AND warehouse_id = v_wh
AND (alertLevel > 1
OR
ok != FALSE
OR Reservado != FALSE )
UNION ALL
SELECT item_id, amount FROM item_entry_in
WHERE received != FALSE
AND dat >= v_curdate AND dat < v_tomorrow
AND warehouse_id = v_wh
AND (v_item IS NULL OR item_id = v_item)
UNION ALL
SELECT item_id, amount FROM item_entry_out
WHERE delivered != FALSE
AND dat >= v_curdate AND dat < v_tomorrow
AND warehouse_id = v_wh
AND (v_item IS NULL OR item_id = v_item)
) t
GROUP BY item_id
ON DUPLICATE KEY UPDATE
visible = IFNULL(stock,0) + VALUES(visible);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_travel` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_travel`(v_wh TINYINT, v_date DATETIME)
BEGIN
DECLARE v_travel INT;
DECLARE v_wh_out INT;
DECLARE v_shipment DATETIME;
DECLARE v_campaign DATETIME;
DECLARE v_date_start DATETIME;
DROP TEMPORARY TABLE IF EXISTS travel_top;
DROP TEMPORARY TABLE IF EXISTS item_travel;
CREATE TEMPORARY TABLE travel_top
(PRIMARY KEY (wh_in,wh_out,landing,shipment))
ENGINE = MEMORY
SELECT 0 id, v_wh wh_in, v_wh wh_out, FALSE ok, v_date landing, v_date shipment;
REPEAT
SET v_travel = NULL;
SELECT id, wh_out, shipment, landing
INTO v_travel, v_wh_out, v_shipment, v_date_start
FROM travel_top WHERE ok = FALSE LIMIT 1;
UPDATE travel_top SET ok = TRUE WHERE id = v_travel;
INSERT IGNORE INTO travel_top
SELECT id, v_wh, warehouse_id_out, FALSE, IF(v_travel, v_date_start, landing), shipment
FROM travel
WHERE warehouse_id = v_wh_out
AND IF(v_travel, landing <= v_shipment, landing >= v_shipment)
AND shipment >= CURDATE()
AND delivered = FALSE;
UNTIL v_travel IS NULL
END REPEAT;
DELETE FROM travel_top WHERE id = 0;
CREATE TEMPORARY TABLE item_travel
(KEY (wh))
ENGINE = MEMORY
SELECT * FROM (
SELECT wh_out wh, landing
FROM travel_top
WHERE wh_out <> v_wh
ORDER BY landing
) t
GROUP BY wh;
DROP TEMPORARY TABLE travel_top;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_travel_fixed` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_travel_fixed`(v_wh TINYINT, v_date DATETIME)
BEGIN
DECLARE v_travel INT;
DECLARE v_wh_out INT;
DECLARE v_shipment DATETIME;
DECLARE v_campaign DATETIME;
DECLARE v_date_start DATETIME;
DROP TEMPORARY TABLE IF EXISTS travel_top;
DROP TEMPORARY TABLE IF EXISTS item_travel_fixed;
CREATE TEMPORARY TABLE travel_top
(KEY (id))
ENGINE = MEMORY
SELECT 0 id, v_wh wh_out, v_date shipment;
REPEAT
SET v_travel = NULL;
SELECT t.id, wh_out, shipment
INTO v_travel, v_wh_out, v_shipment
FROM travel_top t
JOIN warehouse w ON w.id = wh_out AND fuente = 0
LIMIT 1;
INSERT INTO travel_top
SELECT t.id, warehouse_id_out, shipment
FROM travel t
WHERE warehouse_id = v_wh_out
AND landing <= v_shipment
AND shipment >= CURDATE()
AND NOT delivered;
DELETE t
FROM travel_top t
JOIN warehouse w ON w.id = wh_out
WHERE t.id = v_travel AND fuente = 0;
UNTIL v_travel IS NULL
END REPEAT;
SELECT TIMESTAMPADD(DAY, -campaign_life, campaign), campaign
INTO v_date_start, v_campaign FROM tblContadores;
CREATE TEMPORARY TABLE item_travel_fixed
(KEY (wh))
ENGINE = MEMORY
SELECT * FROM
(
SELECT wh_out wh
FROM travel_top
WHERE wh_out <> v_wh
) t
GROUP BY wh;
DROP TEMPORARY TABLE travel_top;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_travel_select` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_travel_select`(v_wh TINYINT, v_date DATETIME)
BEGIN
DECLARE v_travel INT;
DECLARE v_wh_out INT;
DECLARE v_shipment DATETIME;
DECLARE v_campaign DATETIME;
DECLARE v_date_start DATETIME;
DROP TEMPORARY TABLE IF EXISTS travel_top;
DROP TEMPORARY TABLE IF EXISTS item_travel;
CREATE TEMPORARY TABLE travel_top
(PRIMARY KEY (id))
ENGINE = MEMORY
SELECT 0 id, v_wh wh_in, v_wh wh_out, FALSE ok, v_date landing, v_date shipment;
REPEAT
SET v_travel = NULL;
SELECT id, wh_out, shipment, landing
INTO v_travel, v_wh_out, v_shipment, v_date_start
FROM travel_top WHERE ok = FALSE LIMIT 1;
UPDATE travel_top SET ok = TRUE WHERE id = v_travel;
INSERT IGNORE INTO travel_top
SELECT id, v_wh, warehouse_id_out, FALSE, IF(v_travel, v_date_start, landing), shipment
FROM travel
WHERE warehouse_id = v_wh_out
AND IF(v_travel, landing <= v_shipment, landing > v_shipment)
AND shipment >= CURDATE()
AND delivered = FALSE;
UNTIL v_travel IS NULL
END REPEAT;
DELETE FROM travel_top WHERE id = 0;
SELECT TIMESTAMPADD(DAY, -campaign_life, campaign), campaign
INTO v_date_start, v_campaign FROM tblContadores;
CREATE TEMPORARY TABLE item_travel
(KEY (wh))
ENGINE = MEMORY
SELECT * FROM (
SELECT wh_out wh, IF(
v_date BETWEEN v_date_start AND v_campaign
AND landing BETWEEN v_date_start AND v_campaign
,TIMESTAMPADD(DAY, 1, v_campaign)
,landing
) landing
FROM travel_top
WHERE wh_out <> v_wh
ORDER BY landing
) t
GROUP BY wh;
SELECT * FROM item_travel;
DROP TEMPORARY TABLE travel_top;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_travel_testing` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_travel_testing`(v_wh TINYINT, v_date DATETIME)
BEGIN
DECLARE v_travel INT;
DECLARE v_wh_out INT;
DECLARE v_shipment DATETIME;
DECLARE v_campaign DATETIME;
DECLARE v_date_start DATETIME;
DROP TEMPORARY TABLE IF EXISTS travel_top;
DROP TEMPORARY TABLE IF EXISTS item_travel;
drop temporary table if exists travels_list;
create temporary table travels_list
(id integer, shipment date, landing date, warehouse_id int, warehouse_id_out int);
CREATE TEMPORARY TABLE travel_top
ENGINE = MEMORY
SELECT 0 RODA, 0 ORDRE, 0 son_id, 0 id, v_wh wh_in, v_wh wh_out, FALSE ok, v_date landing, v_date shipment;
SET @rodaeta:= 0;
REPEAT
SET v_travel = -1;
SELECT id, wh_out, shipment, landing
INTO v_travel, v_wh_out, v_shipment, v_date_start
FROM travel_top WHERE ok = FALSE
LIMIT 1;
UPDATE travel_top SET ok = TRUE WHERE id = v_travel;
SET @ordre := 0;
INSERT INTO travel_top
SELECT -7 , @ordre:= @ordre + 1 , v_travel ,id, v_wh, warehouse_id_out, FALSE, IF(v_travel>0, v_date_start, landing), shipment
FROM travel
WHERE warehouse_id = v_wh_out
AND IF(v_travel>0, landing <= v_shipment, landing >= v_shipment)
AND shipment >= '2005-01-26' and shipment < '2005-02-28'
AND delivered = FALSE;
IF (SELECT Count(*) FROM travel_top WHERE RODA = -7) THEN
SET @rodaeta:= @rodaeta + 1;
update travel_top set RODA = @rodaeta where RODA = -7;
end if;
INSERT INTO travels_list
SELECT id, shipment, landing, warehouse_id, warehouse_id_out
FROM travel
WHERE warehouse_id = v_wh_out
AND IF(v_travel>0, landing <= v_shipment, landing >= v_shipment)
AND shipment >= '2005-01-26' and shipment < '2005-02-28'
AND delivered = FALSE;
UNTIL v_travel = -1 END REPEAT;
CREATE TEMPORARY TABLE item_travel
(KEY (wh))
ENGINE = MEMORY
SELECT * FROM (
SELECT wh_out wh, landing
FROM travel_top
WHERE wh_out <> v_wh
ORDER BY landing
) t
GROUP BY wh;
SELECT * FROM item_travel;
SELECT * FROM travel_top order by RODA, ORDRE;
DROP TEMPORARY TABLE travel_top;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ListaTicketsEncajados` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ListaTicketsEncajados`(IN intId_Trabajador int)
BEGIN
SELECT Agencia,Consignatario, ti.Id_Ticket, ts.worker Id_Trabajador,IFNULL(ncajas,0) AS ncajas,
IFNULL(nbultos,0) AS nbultos,IFNULL(notros,0) AS notros,code AS Estado
FROM Tickets ti
INNER JOIN Consignatarios ON ti.Id_Consigna = Consignatarios.Id_consigna
INNER JOIN Agencias ON ti.Id_Agencia = Agencias.Id_Agencia
LEFT JOIN (select Ticket_Id,count(*) as ncajas from expeditions where Id_Article=94 group by ticket_id) sub1 on ti.Id_Ticket=sub1.Ticket_Id
LEFT JOIN (select Ticket_Id,count(*) as nbultos from expeditions where Id_Article is null group by ticket_id) sub2 on ti.Id_Ticket=sub2.Ticket_Id
LEFT JOIN (select Ticket_Id,count(*) as notros from expeditions where Id_Article >0 group by ticket_id) sub3 on ti.Id_Ticket=sub3.Ticket_Id
INNER JOIN vn.ticketState ts ON ti.Id_ticket = ts.ticket
WHERE ti.Fecha=curdate() and
ts.worker=intId_Trabajador
group by ti.Id_Ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `malpagantes` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `malpagantes`()
BEGIN
set @cliente := 0;
set @saldo := 0;
Select Id_Cliente, Cliente from
Clientes
join
(select distinct Id_Cliente
from Facturas
where Fecha > '2015-01-01') cli using(Id_Cliente)
left join
(
select distinct Id_Cliente
from
(
select Fecha
, @saldo := IF(@cliente = Id_Cliente, @saldo + Importe, Importe) Saldo
, @cliente := Id_Cliente as Id_Cliente
from
(
select Id_Cliente, Fecha, Importe from
(
select Id_Cliente, -1 * Importe Importe, Fecha
from Facturas
union all
select Id_Cliente, Entregado, Fechacobro
from Recibos
) sub
order by Id_Cliente, Fecha
) sub2
) sub3
where Saldo > -1
and Fecha > '2015-01-01'
) sub4 using(Id_Cliente)
where sub4.Id_Cliente is null;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `mana_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `mana_list`(IN str VARCHAR(3))
BEGIN
DECLARE idT INT;
IF ASCII(str) between 48 and 57 THEN
SET idT = cast(str as signed);
ELSE
SELECT Id_Trabajador INTO idT
FROM Trabajadores
WHERE CodigoTrabajador = str;
END IF;
SELECT * FROM
(
SELECT Id_Ticket
, Alias
, t.Fecha as FechaTicket
, m.odbc_date as FechaAccion
, Id_Article
, CONCAT(IF(Id_Componente = 39, 'Auto: ',''),Concepte) Concepte
, Cantidad
, round(Valor,2) as Valor
, round(Cantidad * Valor,2) as MANA
FROM Movimientos_componentes mc
JOIN Movimientos m using(Id_Movimiento)
JOIN Tickets t using(Id_Ticket)
JOIN Consignatarios cs using(Id_Consigna)
JOIN Clientes c on c.Id_Cliente = cs.Id_Cliente
WHERE c.Id_Trabajador = idT
AND Id_Componente IN (39, 37)
and t.Fecha > TIMESTAMPADD(WEEK,-1,CURDATE())
UNION ALL
SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL
UNION ALL
SELECT c.Id_Cliente, Cliente, r.FechaCobro, r.odbc_date, NULL, 'cobro', NULL, NULL, - Entregado
FROM Recibos r
JOIN Clientes c using(Id_Cliente)
WHERE Id_Banco = 66
AND c.Id_Trabajador = idT
UNION ALL
SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL
UNION ALL
SELECT c.Id_Cliente, Cliente, g.Fecha, g.odbc_date, NULL, Comentario, NULL, NULL, g.Importe
FROM Greuges g
JOIN Clientes c using(Id_Cliente)
WHERE Greuges_type_id = 3
AND c.Id_Trabajador = idT
) t1
ORDER BY FechaAccion DESC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `mana_requery` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `mana_requery`()
BEGIN
DECLARE MyFechaDesde DATE;
SELECT max(dated) INTO MyFechaDesde
FROM bs.manaCustomer;
UPDATE bs.mana_spellers
LEFT JOIN
(
SELECT Id_Trabajador, sum(mana) as mana FROM
(
SELECT c.Id_Trabajador, Cantidad * Valor as mana
FROM Tickets t
JOIN Consignatarios cs using(Id_Consigna)
JOIN Clientes c on c.Id_Cliente = cs.Id_Cliente
JOIN Movimientos m using(Id_Ticket)
JOIN Movimientos_componentes mc using(Id_Movimiento)
WHERE Id_Componente IN (39, 37)
AND Fecha > MyFechaDesde
UNION ALL
SELECT c.Id_Trabajador, - Entregado
FROM Recibos r
JOIN Clientes c using(Id_Cliente)
WHERE Id_Banco = 66
AND Fechacobro > MyFechaDesde
UNION ALL
SELECT c.Id_Trabajador, g.Importe
FROM Greuges g
JOIN Clientes c using(Id_Cliente)
WHERE Greuges_type_id = 3
AND Fecha > MyFechaDesde
UNION ALL
SELECT c.Id_Trabajador, mana
FROM bs.manaCustomer mc
JOIN vn2008.Clientes c ON c.Id_Cliente = mc.Id_Cliente
WHERE dated = MyFechaDesde
) sub
GROUP BY Id_Trabajador
) m using(Id_Trabajador)
SET used = IFNULL(m.mana,0);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `massiveTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `massiveTicket`(
IN dateFrom DATE, IN dateTo DATE, IN customerId INT, OUT newTicketId INT)
BEGIN
DECLARE inventoryWarehouse INT DEFAULT 13;
DECLARE defaultCompany INT DEFAULT 442;
DECLARE defaultWorker INT DEFAULT 20;
CALL vn.ticketCreate ( customerId
, CURDATE()
, inventoryWarehouse
, defaultCompany
, NULL
, NULL
, NULL
, CURDATE()
, newTicketId);
INSERT INTO Movimientos( Id_Ticket
, Id_Article
, Concepte
, Preu
, Descuento
, Cantidad)
SELECT newTicketId
, Id_Article
, Concepte
, Preu
, Descuento
, Cantidad
FROM Movimientos m
JOIN Tickets t ON m.Id_Ticket = t.Id_Ticket
WHERE Id_Cliente = customerId
AND t.Fecha BETWEEN dateFROM AND DAYEND(dateTO);
SELECT newTicketId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `mensaje` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `mensaje`(IN idREM INT, IN idDES INT, IN strMSG LONGTEXT)
BEGIN
INSERT INTO Mensajes(Mensaje, Fecha, Remitente, Destinatario)
VALUES(strMSG, NOW(), idREM, idDES);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `monitoring_calls` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `monitoring_calls`(IN datFEC DATE)
BEGIN
SELECT Id_Trabajador, AVG(billsec) as Duracion, days.Fecha, Hora, SUM(Recibidas) as Entrantes, SUM(Emitidas) as Salientes
FROM
(
SELECT Id_Trabajador, billsec, 1 as Recibidas, NULL as Emitidas, date(calldate) as Fecha, hour(calldate) as Hora
FROM Trabajadores T
INNER JOIN cdr C ON C.dstchannel LIKE CONCAT('%', T.extension, '%')
LEFT JOIN v_phonebook A ON A.Telefono = C.src
WHERE calldate >= datFEC
UNION ALL
SELECT Id_Trabajador, billsec, NULL as Recibidas, 1 as Emitidas, date(calldate), hour(calldate)
FROM Trabajadores T
INNER JOIN cdr C ON C.src = T.extension
LEFT JOIN v_phonebook A ON A.Telefono = C.dst
WHERE calldate >= datFEC
) llamadas
INNER JOIN Permisos USING(Id_Trabajador)
INNER JOIN
(
SELECT DISTINCT Fecha FROM Tickets WHERE Fecha >= datFEC
) days USING(Fecha)
WHERE Id_Grupo = 6
GROUP BY Id_Trabajador, Fecha, Hora;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Movimiento_rechazo` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Movimiento_rechazo`(IN idMOV BIGINT)
BEGIN
DECLARE idC INT;
DECLARE newFEC DATE;
DECLARE intWarehouse INT;
DECLARE userNUM INT;
DECLARE intEmpresa INT;
DECLARE IdConsignatario INT;
DECLARE intIdAgencia INT;
DECLARE Id_NEWTICKET BIGINT;
DECLARE Id_NEWMOVIMIENTO BIGINT;
DECLARE datLanding DATE;
DECLARE v_start DATETIME;
DECLARE v_end DATETIME;
DECLARE intTicketActual INT;
DECLARE SYSTEM_WORKER INT DEFAULT 20;
SELECT Id_Trabajador INTO userNUM
FROM Trabajadores
WHERE user_id = account.userGetId();
IF userNUM IS NULL THEN
SET userNUM = 33;
end IF;
SELECT Id_Cliente
, Fecha
, warehouse_id
, empresa_id
, Id_Consigna
, Id_Agencia
, Landing
, Id_Ticket
INTO idC
, newFEC
, intWarehouse
, intEmpresa
, IdConsignatario
, intIdAgencia
, datLanding
, intTicketActual
FROM Tickets t
JOIN Movimientos m using(Id_Ticket)
WHERE Id_Movimiento = idMOV;
SET v_start = TIMESTAMP(newFEC);
SET v_end = TIMESTAMP(newFEC, '23:59:59');
SELECT Id_Ticket INTO Id_NEWTICKET
FROM vn2008.Tickets t
WHERE IdConsignatario = t.Id_Consigna
AND intWarehouse = t.warehouse_id
AND intIdAgencia = t.Id_Agencia
AND IFNULL(datLanding,-1) = IFNULL(t.Landing,-1)
AND t.Fecha BETWEEN v_start AND v_end
AND t.Factura IS NULL
AND t.Localizacion = 'RECHAZO'
AND t.PedidoImpreso = 0
AND t.Etiquetasemitidas = 0
AND vn2008.is_bionic(t.Id_Ticket)
AND t.Id_Cliente <> 1118
AND t.Id_Ticket <> intTicketActual
LIMIT 1;
IF Id_NEWTICKET IS NULL
THEN
Call vn.ticketCreate( idC
, newFEC
, intWarehouse
, intEmpresa
, IdConsignatario
, intIdAgencia
, NULL
, newFEC
, Id_NEWTICKET);
CALL bionic_calc_ticket(Id_NEWTICKET);
END IF;
INSERT INTO vncontrol.inter(Id_Ticket, Id_Trabajador, state_id)
SELECT Id_NEWTICKET, SYSTEM_WORKER, s.id
FROM vn2008.state s
WHERE s.code = 'FIXING';
UPDATE Tickets SET landing = datLanding WHERE Id_Ticket = Id_NEWTICKET;
INSERT INTO Movimientos(Id_Ticket, Id_Article, Concepte, Cantidad, Preu, Descuento)
SELECT Id_NEWTICKET, Id_Article, Concepte, Cantidad, Preu, Descuento
FROM Movimientos
WHERE Id_Movimiento = idMOV;
SELECT LAST_INSERT_ID() INTO Id_NEWMOVIMIENTO;
INSERT INTO Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT Id_NEWMOVIMIENTO, Id_Componente, Valor
FROM Movimientos_componentes
WHERE Id_Movimiento = idMOV;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `msg` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `msg`(IN memTXT VARCHAR(255), IN idREM INTEGER, idDES INTEGER)
BEGIN
DECLARE last_ID INTEGER;
DECLARE codDES CHAR(3);
SELECT CodigoTrabajador INTO codDES FROM Trabajadores WHERE Id_Trabajador = idDES;
INSERT INTO Mensajes(Mensaje,Fecha,Remitente,Destinatario)
VALUES(memTXT, NOW(),idREM, idDES);
SELECT LAST_INSERT_ID() INTO last_ID;
INSERT INTO Incidencias(Incidencia,Id_Trabajador,Destino,Fecha,Fecha_Mod)
VALUES (CONCAT('@@ ',last_ID),idREM,codDES,NOW(),NOW());
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_brother_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_brother_add`(IN strTABLE VARCHAR(45)
,IN strBROTHER_NEW VARCHAR(45)
,IN idBROTHER_OLD INT
)
BEGIN
DECLARE v_sql TEXT;
DECLARE myRight INT;
DROP TEMPORARY TABLE IF EXISTS aux;
CREATE TEMPORARY TABLE aux
SELECT 0 as rgt;
SET v_sql = sql_printf (
'
UPDATE aux SET rgt = (SELECT rgt FROM %t WHERE id = %v);
',
strTABLE,
idBROTHER_OLD);
CALL sql_query (v_sql);
SELECT rgt INTO myRight FROM aux;
DROP TEMPORARY TABLE IF EXISTS aux;
SET v_sql = sql_printf (
'
UPDATE %t SET rgt = rgt + 2 WHERE rgt > %v ORDER BY rgt DESC;
',
strTABLE, myRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET lft = lft + 2 WHERE lft > %v ORDER BY lft DESC;
',strTABLE, myRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
INSERT INTO %t(name, lft, rgt) VALUES(%v, %v + 1, %v + 2);
',strTABLE
,strBROTHER_NEW
,myRight
,myRight);
CALL sql_query (v_sql);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_child_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_child_add`(IN strTABLE VARCHAR(45)
,IN strCHILD VARCHAR(45)
,IN idFATHER INT
)
BEGIN
DECLARE v_sql TEXT;
DECLARE myLeft INT;
DROP TEMPORARY TABLE IF EXISTS aux;
CREATE TEMPORARY TABLE aux
SELECT 0 as lft;
SET v_sql = sql_printf (
'
UPDATE aux SET lft = (SELECT lft FROM %t WHERE id = %v);
',
strTABLE,
idFATHER);
CALL sql_query (v_sql);
SELECT lft INTO myLeft FROM aux;
DROP TEMPORARY TABLE IF EXISTS aux;
SET v_sql = sql_printf (
'
UPDATE %t SET rgt = rgt + 2 WHERE rgt > %v ORDER BY rgt DESC;
',
strTABLE, myLeft);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET lft = lft + 2 WHERE lft > %v ORDER BY lft DESC;
',strTABLE, myLeft);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
INSERT INTO %t(name, lft, rgt) VALUES(%v, %v + 1, %v + 2);
',strTABLE
,strCHILD
,myLeft
,myLeft);
CALL sql_query (v_sql);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_delete` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_delete`(IN strTABLE VARCHAR(45) ,IN idNODE INT)
BEGIN
DECLARE v_sql TEXT;
DECLARE myRight INT;
DECLARE myLeft INT;
DECLARE myWidth INT;
DROP TEMPORARY TABLE IF EXISTS aux;
CREATE TEMPORARY TABLE aux
SELECT 0 as rgt, 0 as lft, 0 as wdt;
SET v_sql = sql_printf (
'
UPDATE aux a JOIN %t t SET a.rgt = t.rgt, a.lft = t.lft, a.wdt = t.rgt - t.lft + 1
WHERE t.id = %v;
',
strTABLE,
idNODE);
CALL sql_query (v_sql);
SELECT rgt, lft, wdt INTO myRight, myLeft, myWidth FROM aux;
DROP TEMPORARY TABLE IF EXISTS aux;
SET v_sql = sql_printf (
'
DELETE FROM %t WHERE lft BETWEEN %v AND %v
',strTABLE
,myLeft
,myRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET rgt = rgt - %v WHERE rgt > %v ORDER BY rgt;
',strTABLE
,myWidth
,myRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET lft = lft - %v WHERE lft > %v ORDER BY lft;
',strTABLE
,myWidth
,myRight);
CALL sql_query (v_sql);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_leaves` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_leaves`(IN strTABLE VARCHAR(20), IN strTABLE_LINES VARCHAR(40), IN strNEST_ID VARCHAR(40), IN intGAP INTEGER, IN bolSHOW BOOLEAN)
BEGIN
DECLARE v_sql TEXT;
DROP TEMPORARY TABLE IF EXISTS tmp.nest;
CALL nest_tree(strTABLE, intGAP, FALSE);
ALTER TABLE tmp.nest
ADD leaves INT,
ADD time DATETIME;
SET v_sql = sql_printf (
'
update tmp.nest n
join vn2008.%t s using(id)
set n.time = s.odbc_date ;
', strTABLE
);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
update tmp.nest n
join
(
select %t as id, count(*) as leaves
from vn2008.%t
group by %t
) s using(id)
set n.leaves = s.leaves
;
', strNEST_ID
, strTABLE_LINES
, strNEST_ID
);
CALL sql_query (v_sql);
drop temporary table if exists tmp.nest2;
create temporary table tmp.nest2
select * from tmp.nest;
drop temporary table if exists tmp.nest3;
create temporary table tmp.nest3
select * from tmp.nest;
update tmp.nest
join
(
select n.id, sum(n2.leaves) leaves
from tmp.nest3 n
join tmp.nest2 n2 on n2.lft between n.lft and n.rgt
group by n.id
) sub on sub.id = nest.id
set nest.leaves = ifnull(sub.leaves,0);
drop temporary table tmp.nest2;
IF bolSHOW THEN
SELECT * FROM tmp.nest;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_move` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_move`(IN strTABLE VARCHAR(45) ,IN idNODE INT, IN idFATHER INT)
BEGIN
DECLARE v_sql TEXT;
DECLARE myRight INT;
DECLARE myLeft INT;
DECLARE myWidth INT;
DECLARE fatherRight INT;
DECLARE fatherLeft INT;
DECLARE gap INT;
DROP TEMPORARY TABLE IF EXISTS aux;
CREATE TEMPORARY TABLE aux
SELECT 0 as rgt, 0 as lft, 0 as wdt, 0 as frg, 0 as flf;
SET v_sql = sql_printf (
'
UPDATE aux a JOIN %t t SET a.wdt = t.rgt - t.lft +1
WHERE t.id = %v;
',
strTABLE,
idNODE);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE aux a JOIN %t t SET a.frg = t.rgt, a.flf = t.lft
WHERE t.id = %v;
',
strTABLE,
idFATHER);
CALL sql_query (v_sql);
SELECT wdt, frg, flf INTO myWidth, fatherRight, fatherLeft FROM aux;
SET v_sql = sql_printf (
'
UPDATE %t SET rgt = rgt + %v WHERE rgt >= %v ORDER BY rgt DESC;
',strTABLE
,myWidth
,fatherRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET lft = lft + %v WHERE lft >= %v ORDER BY lft DESC;
',strTABLE
,myWidth
,fatherRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE aux a JOIN %t t SET a.rgt = t.rgt, a.lft = t.lft
WHERE t.id = %v;
',
strTABLE,
idNODE);
CALL sql_query (v_sql);
SELECT lft, rgt, frg - lft INTO myLeft, myRight, gap FROM aux;
SET v_sql = sql_printf (
'
UPDATE %t SET lft = lft + %v WHERE lft BETWEEN %v AND %v ORDER BY lft DESC;
',strTABLE
,gap
,myLeft
,myRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET rgt = rgt + %v WHERE rgt BETWEEN %v AND %v ORDER BY rgt DESC;
',strTABLE
,gap
,myLeft
,myRight);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET lft = lft - %v WHERE lft > %v ORDER BY lft;
',strTABLE
,myWidth
,myLeft);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE %t SET rgt = rgt - %v WHERE rgt > %v ORDER BY rgt;
',strTABLE
,myWidth
,myRight);
CALL sql_query (v_sql);
DROP TEMPORARY TABLE IF EXISTS aux;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_query` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_query`(IN strTABLE VARCHAR(45))
BEGIN
DECLARE v_sql TEXT;
DECLARE v_max_depth INT;
DECLARE v_current_depth INT;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_depth;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_depth_aux;
SET v_sql = sql_printf (
'
CREATE TEMPORARY TABLE tmp.nest_depth
SELECT node.id node_id, COUNT(parent.id) - 1 as depth
FROM %t AS node,
%t AS parent
WHERE node.lft BETWEEN parent.lft AND parent.rgt
GROUP BY node.id
ORDER BY node.lft
;
',
strTABLE,
strTABLE
);
CALL sql_query (v_sql);
SELECT max(depth) FROM tmp.nest_depth INTO v_max_depth;
SET v_current_depth = 2;
CREATE TEMPORARY TABLE tmp.nest_depth_aux
SELECT * FROM tmp.nest_depth;
DROP TEMPORARY TABLE IF EXISTS tmp.nest;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_aux;
SET v_sql = sql_printf (
'
CREATE TEMPORARY TABLE tmp.nest
SELECT child.id nest_id
,child.lft
,child.rgt
,parent.id as ID0
,parent.name as PARENT0
,child.id as ID1
,child.name as PARENT1
FROM %t AS parent
JOIN tmp.nest_depth nd ON nd.node_id = parent.id AND nd.depth = 0,
%t AS child
JOIN tmp.nest_depth_aux ndc ON ndc.node_id = child.id AND ndc.depth = 1
WHERE child.lft BETWEEN parent.lft + 1 AND parent.rgt
ORDER BY parent.lft;
',
strTABLE,
strTABLE
);
CALL sql_query (v_sql);
CREATE TEMPORARY TABLE tmp.nest_aux
SELECT * FROM tmp.nest;
WHILE v_current_depth <= v_max_depth DO
DROP TEMPORARY TABLE IF EXISTS tmp.nest;
SET v_sql = sql_printf (
'
CREATE TEMPORARY TABLE tmp.nest
SELECT parent.*
,child.id as %v
,child.name as %v
,child.id as ID
FROM tmp.nest_aux AS parent
LEFT JOIN %t AS child ON child.lft BETWEEN parent.lft + 1 AND parent.rgt
LEFT JOIN tmp.nest_depth_aux ndc ON ndc.node_id = child.id
WHERE IFNULL(ndc.depth,%v) = %v
ORDER BY parent.lft;
'
,CONCAT('ID',v_current_depth)
,CONCAT('PARENT',v_current_depth)
,strTABLE
,v_current_depth
,v_current_depth
);
CALL sql_query (v_sql);
SET v_sql = sql_printf (
'
UPDATE tmp.nest
JOIN %t AS child ON child.id = nest.ID
SET nest.lft = child.lft, nest.rgt = child.rgt, nest_id = nest.ID'
,strTABLE
);
CALL sql_query (v_sql);
ALTER TABLE tmp.nest DROP COLUMN ID;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_aux;
CREATE TEMPORARY TABLE tmp.nest_aux
SELECT * FROM tmp.nest;
SET v_current_depth = v_current_depth + 1;
END WHILE;
SET v_current_depth = 0;
WHILE v_current_depth <= v_max_depth DO
SET @id = 0;
SET v_sql = sql_printf (
'
UPDATE tmp.nest_aux
SET %t = IF(@id = %t, NULL, %t),
ID0 = IF(@id := %t, ID0, ID0),
%t = IF(length(%t), %t,NULL)
'
,CONCAT('PARENT',v_current_depth)
,CONCAT('ID',v_current_depth)
,CONCAT('PARENT',v_current_depth)
,CONCAT('ID',v_current_depth)
,CONCAT('ID',v_current_depth)
,CONCAT('PARENT',v_current_depth)
,CONCAT('ID',v_current_depth)
);
CALL sql_query (v_sql);
SET v_current_depth = v_current_depth + 1;
END WHILE;
SELECT * FROM tmp.nest_aux;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_aux;
DROP TEMPORARY TABLE IF EXISTS tmp.nest;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_depth_aux;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_depth;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_sons_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_sons_list`(IN intID INT, IN strTABLE VARCHAR(45), IN bolSHOW BOOLEAN)
BEGIN
DECLARE v_sql TEXT;
DROP TEMPORARY TABLE IF EXISTS tmp.nest_sons;
SET v_sql = sql_printf (
'
CREATE TEMPORARY TABLE tmp.nest_sons
SELECT DISTINCT node.id node_id
FROM %t AS node
JOIN %t AS parent ON node.lft between parent.lft and parent.rgt
WHERE parent.id = %v
ORDER BY node.lft
;
',
strTABLE,
strTABLE,
intID
);
CALL sql_query (v_sql);
IF bolSHOW THEN
SELECT * FROM tmp.nest_sons;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nest_tree` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nest_tree`(IN strTABLE VARCHAR(20), IN intGAP INTEGER, IN bolSHOW BOOLEAN)
BEGIN
DECLARE v_sql TEXT;
DROP TEMPORARY TABLE IF EXISTS tmp.nest;
SET v_sql = sql_printf (
'
CREATE TEMPORARY TABLE tmp.nest
SELECT node.id
, CONCAT( REPEAT(REPEAT(" ",%v), COUNT(parent.id) - 1), node.name) AS name
, node.lft
, node.rgt
, COUNT(parent.id) - 1 as depth
, cast((node.rgt - node.lft - 1) / 2 as DECIMAL) as sons
FROM %t AS node,
%t AS parent
WHERE node.lft BETWEEN parent.lft AND parent.rgt
GROUP BY node.id
ORDER BY node.lft;
',
intGAP,
strTABLE,
strTABLE
);
CALL sql_query (v_sql);
IF bolSHOW THEN
SELECT * FROM tmp.nest;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `newItem` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `newItem`(IN vTicket INTEGER, IN vVolume INTEGER, IN vQuantity INTEGER)
BEGIN
DECLARE vLandingWarehouse INT;
DECLARE vLandingDate DATE;
DECLARE vShipmentDate DATE;
DECLARE vTravel INT;
DECLARE vEntry INT;
SELECT warehouse_id, Fecha, landing INTO vLandingWarehouse, vShipmentDate, vLandingDate FROM Tickets WHERE Id_Ticket = vTicket;
SELECT id, Id_Entrada INTO vTravel, vEntry
FROM travel t LEFT JOIN Entradas e ON t.id = e.travel_id
WHERE t.landing = vLandingDate AND t.shipment = vShipmentDate AND t.warehouse_id_out = vLandingWarehouse AND t.warehouse_id = vWarehouse
AND t.delivered = FALSE ;
IF NOT vTravel THEN
INSERT INTO travel (shipment, landing, warehouse_id, warehouse_id_out, agency_id)
VALUES (vShipmentDate, vLandingDate, vLandingWarehouse, vShipmentWarehouse, a);
SELECT LAST_INSERT_ID() INTO vTravel;
END IF;
IF NOT vEntry THEN
INSERT INTO Entradas (Id_Proveedor, travel_id)
VALUES (13, vTravel);
SELECT LAST_INSERT_ID() INTO vEntry;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `niching` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `niching`(IN i_ini INT, IN i_end INT
, IN i_bal INT, IN i_col INT )
BEGIN
DECLARE i INT(5);
DECLARE j INT(5);
DROP TEMPORARY TABLE IF EXISTS labels;
CREATE TEMPORARY TABLE `labels`
(`label` VARCHAR(15) NULL)
ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
WHILE i_ini <= i_end DO
SET i = i_bal;
WHILE i > 0 DO
SET j = i_col;
IF j = 0 THEN
INSERT INTO labels(label)
VALUES (CONCAT(i_ini,IF(i=0,' ',char(64 + i))));
ELSE
WHILE j > 0 DO
INSERT INTO labels(label)
VALUES (CONCAT(i_ini,char(64 + i), j));
SET j = j - 1;
END WHILE;
END IF;
SET i = i - 1;
END WHILE;
SET i_ini = i_ini + 1;
END WHILE;
SELECT CONCAT('*',label,'*') as label, label as id FROM labels;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nightly_tasks` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nightly_tasks`()
BEGIN
DECLARE AUX INT;
DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN
GET DIAGNOSTICS CONDITION 2 @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT;
SELECT CONCAT('ERROR ', IFNULL(@errno,0), ': ', ifnull(@text,'texto'));
INSERT INTO vn2008.mail (`to`,`subject`,`text`) VALUES ('jgallego@verdnatura.es', 'error nightly tasks' ,CONCAT('ERROR ', IFNULL(@errno,0), ': ', ifnull(@text,'texto')));
INSERT INTO vn2008.mail (`to`,`subject`,`text`) VALUES ('pako@verdnatura.es', 'error nightly tasks' ,CONCAT('ERROR ', IFNULL(@errno,0), ': ', ifnull(@text,'texto')));
END;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('arranca el event vn2008.nightly_tasks');
SELECT SLEEP(1) INTO AUX;
CALL vn2008.emailYesterdayPurchasesLauncher();
INSERT INTO vn2008.daily_task_log(consulta) VALUES('emailYesterdayPurchasesLauncher END');
SELECT SLEEP(1) INTO AUX;
CALL vn2008.inventory_refresh();
INSERT INTO vn2008.daily_task_log(consulta) VALUES('inventory refresh END');
SELECT SLEEP(1) INTO AUX;
CALL bi.last_buy_id_add;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('last buy id END');
SELECT SLEEP(1) INTO AUX;
CALL bi.defaulting(curdate());
INSERT INTO vn2008.daily_task_log(consulta) VALUES('defaulting END');
INSERT INTO vn2008.Colas(Id_Informe,Id_Trabajador) VALUES (11,57);
INSERT INTO vn2008.Colas(Id_Informe) VALUES (16);
SELECT SLEEP(1) INTO AUX;
CALL `bi`.`Ultima_Accion`;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('ultima accion END');
SELECT SLEEP(1) INTO AUX;
CALL `bi`.`facturacion_media_anual_update`();
INSERT INTO vn2008.daily_task_log(consulta) VALUES('facturacion media anual END');
SELECT SLEEP(1) INTO AUX;
CALL vn2008.Clientes_calidad;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('clientes calidad END');
SELECT SLEEP(1) INTO AUX;
CALL bi.rotacion_update;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('rotation update END');
SELECT SLEEP(1) INTO AUX;
CALL bi.rutas_m3_add;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('rutas_m3 END');
SELECT SLEEP(1) INTO AUX;
CALL vn2008.tarjetas_credito_0;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('tarjetas credito 0 END');
SELECT SLEEP(1) INTO AUX;
CALL bi.comparativa_add();
INSERT INTO vn2008.daily_task_log(consulta) VALUES('comparativa add END');
SELECT SLEEP(1) INTO AUX;
call vn2008.recobro_credito();
INSERT INTO vn2008.daily_task_log(consulta) VALUES('recobro_credito END');
SELECT SLEEP(1) INTO AUX;
CALL vn2008.accumulatorsReadingDateUpdate();
INSERT INTO vn2008.daily_task_log(consulta) VALUES('accumulatorsReadingDateUpdate END');
SELECT SLEEP(1) INTO AUX;
call vn2008.itemTagArrangedUpdate(0);
INSERT INTO vn2008.daily_task_log(consulta) VALUES('itemTagFormatUpdate END');
SELECT SLEEP(1) INTO AUX;
CALL vn.itemTagUpdatePriority(0);
INSERT INTO vn2008.daily_task_log(consulta) VALUES('articleTagUpdatePriority END');
SELECT SLEEP(1) INTO AUX;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('finalitza el event vn2008.nightly_tasks');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `notify_passport` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `notify_passport`(IN idA INT, IN idEti SMALLINT, IN idPacking SMALLINT, IN idCompra INT)
BEGIN
INSERT INTO vn2008.mail(`subject`,`text`,`to`)
SELECT 'Solicitar pasaporte',
CONCAT('Etiquetas: ',ifnull(idEti,0),', Packing: ',ifnull(idPacking,0),', Nombre: ',ifnull(a.Article,0),', buy_edi: ',ifnull(be.id,0),', Nombre botánico: ',
IFNULL(g.latin_genus_name,''),' ',IFNULL(s.latin_species_name,''),' , Productor: ',IFNULL(es.company_name,IFNULL(p.`name`,'')))
,'ekt@verdnatura.es'
FROM vn2008.Articles a
LEFT JOIN vn2008.Articles_botanical ab ON ab.Id_Article = a.Id_Article
LEFT JOIN edi.genus g ON g.genus_id = ab.genus_id
LEFT JOIN edi.specie s ON IFNULL(s.specie_id,ab.specie_id) = ab.specie_id
LEFT JOIN vn2008.producer p ON p.producer_id = a.producer_id
LEFT JOIN vn2008.Compres c ON c.Id_Compra = idCompra
LEFT JOIN vn2008.buy_edi be ON c.buy_edi_id = be.id
LEFT JOIN edi.supplier es ON es.supplier_id = be.pro
WHERE a.Id_Article = idA;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `pay` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `pay`(IN datFEC DATE
, IN idPROV INT
, IN dblIMPORTE DOUBLE
, IN idMONEDA INT
, IN dblDIVISA DOUBLE
, IN idCAJA INT
, IN idPAYMET INT
, IN dblGASTOS DOUBLE
, IN strCONCEPTO VARCHAR(40)
, IN idEMP INT)
BEGIN
INSERT INTO Cajas ( Concepto
, Serie
, Numero
, Salida
, Cajafecha
, Partida
, Id_Banco
, Id_Trabajador
,empresa_id
,conciliado)
SELECT CONCAT('n/pago a ', Proveedor)
, 'R'
, idPROV
, dblIMPORTE
, datFEC
, 1
, idCAJA
, 20
, idEMP
, 1
FROM Proveedores
WHERE Id_Proveedor = idPROV;
INSERT INTO pago(fecha
, id_proveedor
, importe
, id_moneda
, divisa
, id_banco
, pay_met_id
, g_bancarios
, concepte
, empresa_id)
VALUES(datFEC
, idPROV
, dblIMPORTE
, idMONEDA
, IF(dblDIVISA = 0, NULL, dblDIVISA)
, idCAJA
, idPAYMET
, dblGASTOS
, strCONCEPTO
, idEMP);
SELECT LAST_INSERT_ID() as pago_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `percentil` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `percentil`()
BEGIN
DECLARE max_range INT;
DROP TEMPORARY TABLE IF EXISTS previa;
CREATE TEMPORARY TABLE previa
SELECT @posicion:= @posicion +1 as Posicion, Id_Cliente, Total FROM (
SELECT Id_Cliente, Total FROM (
SELECT Id_Cliente, SUM(Importe) as Total
FROM Facturas
INNER JOIN Clientes USING(Id_Cliente)
INNER JOIN (SELECT @posicion := 0) sub_pos
WHERE invoice
AND YEAR(Fecha) = YEAR(CURDATE())
GROUP BY Id_Cliente) sub
ORDER BY Total
) sub2;
SELECT COUNT(*) INTO max_range FROM previa;
UPDATE Clientes SET percentil = 0;
UPDATE Clientes INNER JOIN previa USING(Id_Cliente)
SET Clientes.percentil = ROUND(Posicion *100 / max_range,0);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `portekk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `portekk`(IN intId_Ticket INT,IN intbultos INT, IN intId_Article INT)
BEGIN
DECLARE intId_Agencia INT;
DECLARE int_agency_id SMALLINT;
DECLARE int_province_id SMALLINT;
DECLARE bolCOD71 TINYINT(1);
DECLARE intPorte DOUBLE DEFAULT -1;
DECLARE dayofweek TINYINT(1) default 0;
DECLARE suplemento DOUBLE DEFAULT 9.41;
DECLARE strCodPostal VARCHAR(5);
DECLARE intWarehouse_id SMALLINT;
DECLARE dbldescuento DOUBLE DEFAULT 0;
DECLARE intVista TINYINT(1);
DECLARE dblvolumen DOUBLE;
DECLARE intPROVINCIA INT;
SET @porte := 0;
SELECT c.province_id, a.agency_id, t.Id_Agencia, cod71, Porte,c.CODPOSTAL,t.warehouse_id,c.province_id,cli.Descuento,IFNULL(ag.Vista,a.Vista), por_volumen
INTO intPROVINCIA, int_agency_id,intId_Agencia, bolCOD71,intPorte,strCodPostal,intWarehouse_id,int_province_id,dbldescuento,intVista,dblvolumen
FROM Tickets t
JOIN Consignatarios c USING(Id_Consigna)
JOIN Agencias a ON t.Id_Agencia = a.Id_Agencia
JOIN agency agn ON agn.agency_id = a.agency_id
JOIN Clientes cli on c.Id_Cliente=cli.Id_Cliente
LEFT JOIN agency_warehouse ag ON ag.agency_id = a.agency_id
WHERE Id_Ticket = intId_Ticket limit 1;
IF (intPorte >= 0 or dbldescuento BETWEEN 0 AND 1 ) THEN
IF intPorte or base_ticket(intId_Ticket) < 50 THEN
SELECT IFNULL(intPorte,10)/intbultos price;
ELSE
SELECT 0 price;
END IF;
ELSE
IF NOT dblvolumen THEN
IF bolCOD71 THEN
IF intVista = 2 AND intbultos BETWEEN 1 AND 2 THEN
SELECT IF(price * intbultos < 10 AND porte_minimo, 10 / intbultos, price) price FROM Agencias_zonas az
WHERE zona = 1 AND Id_Agencia = intId_Agencia AND az.warehouse_id = intWarehouse_id;
ELSE
IF intId_Agencia = 47 THEN
SELECT price price FROM Agencias_zonas az INNER JOIN viaxpress USING(zona)
WHERE Id_Agencia = 47 AND codigo_postal = strCodPostal AND az.warehouse_id = intWarehouse_id;
ELSE
CALL sql_query (sql_printf ('
SELECT price FROM Agencias_zonas az
WHERE Id_Agencia = %v AND %v = Id_Article AND az.warehouse_id = %v
AND zona = (SELECT zona FROM Agencias_province
WHERE warehouse_id = %v AND agency_id = %v and province_id = %v)'
,intId_Agencia,intId_Article,intWarehouse_id,intWarehouse_id,int_agency_id,int_province_id));
END IF;
END IF;
ELSE
SELECT 0 price;
END IF;
ELSE
CALL ticket_volumen(intId_Ticket);
SELECT MAX(Porte_total)/intbultos price FROM ticket_volumen;
DROP TEMPORARY TABLE IF EXISTS ticket_volumen;
END IF;
END IF;
SET @porte = price;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `PortesDesdeTicketkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `PortesDesdeTicketkk`( intTicket INTEGER)
BEGIN
DECLARE done BIT DEFAULT 0;
DECLARE v_date_ini,v_date_end DATE;
DROP TEMPORARY TABLE IF EXISTS portes;
IF (SELECT Descuento FROM Clientes c JOIN Tickets t ON t.Id_Cliente = c.Id_Cliente WHERE t.Id_Ticket = intTicket) BETWEEN 0 AND 1 THEN
SELECT TIMESTAMPADD(MONTH,-12,Fecha),Fecha INTO v_date_ini,v_date_end FROM Tickets WHERE Id_Ticket = intTicket LIMIT 1;
CREATE TEMPORARY TABLE portes (KEY (Id_Article)) ENGINE = MEMORY
SELECT Id_Article,round(SUM(Preu * (1 - (Descuento / 100)) * Cantidad)/ SUM(Cantidad),2) price, round(SUM(Preu * (1 - (Descuento / 100)) * Cantidad),2) importe,
round((SUM(Preu * (1 - (Descuento / 100)) * Cantidad) / SUM(Cantidad) - Tarifa2) * SUM(Cantidad),2) diferencia,Tarifa2,
v_date_end Fecha,SUM(Cantidad) Cantidad
FROM
(SELECT * FROM (
SELECT m.Id_Article, Tarifa2,m.Preu,m.Descuento,m.Cantidad,t.Fecha,t.warehouse_id,Id_Movimiento
FROM Compres c
JOIN Movimientos m ON m.Id_Article = c.Id_Article
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
JOIN Tickets t ON t.Id_Ticket = m.Id_Ticket
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
WHERE t.Id_Ticket = intTicket AND Novincular = FALSE AND Tarifa2 > 0
AND t.warehouse_id = tr.warehouse_id AND tr.landing BETWEEN v_date_ini AND v_date_end
AND reino_id <> 6 ORDER BY tr.landing DESC) t
GROUP BY t.Id_Movimiento) t
GROUP BY Id_Article, warehouse_id
UNION all
SELECT Id_Article,Preu * (1 - (Descuento / 100)) ,Preu * (1 - (Descuento / 100)) * Cantidad ,
Preu * (1 - (Descuento / 100)) * Cantidad ,0 ,v_date_end, Cantidad FROM Movimientos
WHERE Id_Ticket= intTicket AND Id_Article = 71;
UPDATE portes p JOIN price_fixed pf ON p.Id_Article = pf.item_id AND Fecha BETWEEN date_start AND date_end AND pf.rate_2
SET diferencia = (price - rate_2) * Cantidad,Tarifa2 = rate_2;
ELSE
CREATE TEMPORARY TABLE portes (KEY (Id_Article)) ENGINE = MEMORY
SELECT Id_Article,Preu * (1 - (Descuento / 100)) price,Preu * (1 - (Descuento / 100)) * Cantidad importe,
Preu * (1 - (Descuento / 100)) * Cantidad diferencia,0 Tarifa2, Cantidad FROM Movimientos
WHERE Id_Ticket= intTicket AND Id_Article = 71;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `precio` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `precio`( IN id_cli INT, id_art INT, id_wh INT )
BEGIN
DECLARE tarifa,descompte, packin,groupin,caj,minimo, id_compra INT DEFAULT 0;
DECLARE importe_min, importe,bonus FLOAT DEFAULT NULL;
SELECT PrecioEspecial INTO importe FROM PreciosEspeciales WHERE Id_Cliente = id_cli AND Id_Article = id_art;
IF importe IS NULL THEN
SELECT `Min`, PVP INTO minimo, importe_min FROM `Articles` WHERE Id_Article = id_art;
SELECT Descuento
INTO tarifa
FROM Clientes
WHERE Id_Cliente = id_cli;
SELECT CASE
WHEN tarifa =0 THEN IF(minimo AND IFNULL(fp.rate_0,C.PVP) < importe_min, importe_min, IFNULL(fp.rate_0,C.PVP))
WHEN tarifa =1 THEN IF(minimo AND IFNULL(fp.rate_1,C.Tarifa1) < importe_min, importe_min, IFNULL(fp.rate_1,C.Tarifa1))
WHEN tarifa =2 THEN IF(minimo AND IFNULL(fp.rate_2,C.Tarifa2) < importe_min, importe_min, IFNULL(fp.rate_2,C.Tarifa2))
WHEN tarifa =3 THEN IF(minimo AND IFNULL(fp.rate_3,C.Tarifa3) < importe_min, importe_min, IFNULL(fp.rate_3,C.Tarifa3))
WHEN tarifa BETWEEN 4 AND 100 THEN Tarifa1
WHEN tarifa >100 THEN IF(minimo AND IFNULL(fp.rate_3,C.Tarifa3) * ( ( 200 - tarifa ) /100 ) < importe_min, importe_min,IFNULL(fp.rate_3,C.Tarifa3) * ( ( 200 - tarifa ) /100 ))
END, IFNULL(fp.Packing,C.Packing) Packing, C.Id_Compra,IFNULL(fp.grouping,C.grouping) grouping,IFNULL(fp.caja,C.caja) caja,fp.bonus INTO importe, packin, id_compra,groupin,caj,bonus
FROM Compres C
INNER JOIN Entradas E ON E.Id_Entrada = C.Id_Entrada
INNER JOIN travel T ON T.id = E.travel_id
LEFT JOIN price_fixed fp ON fp.item_id = id_art AND CURDATE() BETWEEN fp.date_start AND fp.date_end AND fp.warehouse_id IN (0,id_wh)
WHERE Id_Article = id_art
AND C.Novincular = FALSE
AND T.landing BETWEEN date_inv() AND CURDATE( )
AND T.warehouse_id = id_wh
ORDER BY T.landing DESC
LIMIT 1;
IF tarifa BETWEEN 4 AND 100 THEN SET descompte = tarifa;
END IF;
IF minimo <> FALSE THEN
IF importe < importe_min THEN
SET importe = importe_min;
END IF;
END IF;
END IF;
SELECT importe, descompte, tarifa, packin, id_compra,groupin,caj,bonus
FROM DUAL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `preOrdenarRuta` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `preOrdenarRuta`(IN vRutaId INT)
BEGIN
UPDATE Tickets mt
JOIN (
SELECT tt.Id_Consigna, round(ifnull(avg(t.Prioridad),0),0) as Prioridad
from Tickets t
JOIN Tickets tt on tt.Id_Consigna = t.Id_Consigna
where t.Fecha > TIMESTAMPADD(YEAR,-1,CURDATE())
AND tt.Id_Ruta = vRutaId
GROUP BY Id_Consigna
) sub ON sub.Id_Consigna = mt.Id_Consigna
SET mt.Prioridad = sub.Prioridad
WHERE mt.Id_Ruta = vRutaId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `prepare_client_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `prepare_client_list`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.client_list;
CREATE TEMPORARY TABLE tmp.client_list
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT DISTINCT Id_Cliente
FROM tmp.ticket_list;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `prepare_ticket_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `prepare_ticket_list`(vStartingDate DATETIME, vEndingDate DATETIME)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.ticket_list;
CREATE TEMPORARY TABLE tmp.ticket_list
(PRIMARY KEY (Id_Ticket))
ENGINE = MEMORY
SELECT t.Id_Ticket, c.Id_Cliente
FROM Tickets t
LEFT JOIN vn.ticketState ts ON ts.ticket = t.Id_Ticket
JOIN Clientes c ON c.Id_Cliente = t.Id_Cliente
JOIN clientes_tipo ct ON ct.clientes_tipo_id = c.clientes_tipo_id
WHERE ct.code IN ('normal','handMaking')
AND (
Fecha BETWEEN util.today() AND vEndingDate
OR (
ts.alertLevel < 3
AND t.Fecha >= vStartingDate
AND t.Fecha < util.today()
)
);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `price_detail` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `price_detail`(IN idART INT, IN datLanding DATE)
BEGIN
CALL item_last_buy_(NULL,datLanding);
SELECT 'Ultimas compras',NULL as Entrada, NULL as Almacen, NULL as Tarifa3, NULL as Tarifa2
UNION ALL
SELECT NULL, Id_Entrada, w.name, Tarifa3, Tarifa2
FROM Compres c
JOIN t_item_last_buy b ON c.Id_Compra = b.buy_id
JOIN warehouse w on w.id = b.warehouse_id
WHERE b.item_id = idART
UNION all
SELECT 'Precios fijados',NULL, NULL as Almacen, NULL as Tarifa3, NULL as Tarifa2
UNION ALL
SELECT NULL, CONCAT('de ', date_start, ' a ',date_end) , w.name, rate_3,rate_2
FROM price_fixed
JOIN warehouse w on w.id = warehouse_id
WHERE item_id = idART
AND datLanding BETWEEN date_start AND date_end;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `proc_end` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = latin1 */ ;
/*!50003 SET character_set_results = latin1 */ ;
/*!50003 SET collation_connection = latin1_swedish_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `proc_end`()
BEGIN
UPDATE stat SET `end` = NOW()
WHERE id = (SELECT id FROM lastid);
DROP TEMPORARY TABLE IF EXISTS lastid;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `proc_start` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = latin1 */ ;
/*!50003 SET character_set_results = latin1 */ ;
/*!50003 SET collation_connection = latin1_swedish_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `proc_start`(IN v_proc_id INT)
BEGIN
INSERT INTO stat(proc_id) VALUES(v_proc_id);
DROP TEMPORARY TABLE IF EXISTS lastid;
CREATE TEMPORARY TABLE lastid
SELECT last_insert_id() id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `production_buffer_problems` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `production_buffer_problems`()
BEGIN
DECLARE vToday DATETIME;
DECLARE vTomorrowMidnight DATETIME ;
DECLARE vWarehouse INT;
DECLARE vDate DATE;
DECLARE vAvailableCache INT;
DECLARE vVisibleCache INT;
DECLARE vDone BOOL;
DECLARE vCursor CURSOR FOR
SELECT DISTINCT warehouse_id, DATE(Fecha)
FROM tmp.ticket_list tt
JOIN Tickets t on tt.Id_Ticket = t.Id_Ticket
AND DATE(t.Fecha) BETWEEN CURDATE() AND TIMESTAMPADD(DAY,1.9,CURDATE());
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
DROP TEMPORARY TABLE IF EXISTS tmp.buffer_problems;
CREATE TEMPORARY TABLE tmp.buffer_problems (
Id_Ticket INT(11),
problem VARCHAR(50),
INDEX (Id_Ticket)
)
ENGINE = MEMORY;
SET vToday = CURDATE();
SET vTomorrowMidnight = TIMESTAMP(TIMESTAMPADD(DAY, 1, CURDATE()), '23:59:59');
OPEN vCursor;
l: LOOP
SET vDone = FALSE;
FETCH vCursor INTO vWarehouse, vDate;
IF vDone THEN
LEAVE l;
END IF;
CALL cache.visible_refresh (vVisibleCache, FALSE, vWarehouse);
CALL cache.available_refresh (vAvailableCache, FALSE, vWarehouse, vDate);
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT tt.Id_Ticket, Article
FROM tmp.ticket_list tt
JOIN Tickets t on t.Id_Ticket = tt.Id_Ticket
LEFT JOIN vn2008.Movimientos M ON M.Id_Ticket = t.Id_Ticket
JOIN vn2008.Articles A ON A.Id_Article = M.Id_Article
JOIN vn2008.Tipos tp on tp.tipo_id = A.tipo_id
LEFT JOIN cache.visible v ON A.Id_Article = v.item_id AND v.calc_id = vVisibleCache
LEFT JOIN cache.available av ON av.item_id = A.Id_Article AND av.calc_id = vAvailableCache
WHERE date(t.Fecha) = vDate
AND reino_id NOT IN (8,6)
AND M.Cantidad > IFNULL(v.visible,0)
AND M.Cantidad > 0
AND IFNULL(av.available,0) < 0
AND M.OK = FALSE
AND NOT generic
AND vWarehouse = t.warehouse_id;
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT tt.Id_Ticket, CONCAT('RETRASO (', A.Id_Article, ') ', Article)
FROM tmp.ticket_list tt
JOIN Tickets t on t.Id_Ticket = tt.Id_Ticket
LEFT JOIN vn2008.Movimientos M ON M.Id_Ticket = t.Id_Ticket
JOIN vn2008.Articles A ON A.Id_Article = M.Id_Article
JOIN vn2008.Tipos tp on tp.tipo_id = A.tipo_id
LEFT JOIN cache.visible v ON A.Id_Article = v.item_id AND v.calc_id = vVisibleCache
LEFT JOIN (
SELECT Id_Article FROM Articles_nicho
WHERE DATE(modificationDate) = CURDATE() AND warehouse_id = vWarehouse
) nicho ON nicho.Id_Article = A.Id_Article
LEFT JOIN cache.available av ON av.item_id = A.Id_Article AND av.calc_id = vAvailableCache
WHERE IFNULL(av.available,0) >= 0
AND M.Cantidad > IFNULL(v.visible,0)
AND M.OK = FALSE
AND M.Reservado = FALSE
AND reino_id NOT IN (8,6)
AND date(t.Fecha) = vDate
AND NOT generic
AND CURDATE() = vDate
AND t.warehouse_id = vWarehouse
AND nicho.Id_Article IS NULL;
END LOOP;
CLOSE vCursor;
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT DISTINCT tt.Id_Ticket, 'COD 100'
FROM tmp.ticket_list tt
JOIN Movimientos m on m.Id_Ticket = tt.Id_Ticket
WHERE Id_Article = 100;
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT DISTINCT tt.Id_Ticket, 'CONGELADO'
FROM tmp.ticket_list tt
JOIN Tickets t on t.Id_Ticket = tt.Id_Ticket
JOIN Clientes c on c.Id_Cliente = t.Id_Cliente
WHERE c.Congelado;
CALL risk_vs_client_list(CURDATE());
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT DISTINCT tt.Id_Ticket, 'RIESGO'
FROM tmp.ticket_list tt
JOIN Tickets t on t.Id_Ticket = tt.Id_Ticket
JOIN Agencias a on t.Id_Agencia = a.Id_Agencia
JOIN tmp.risk r on r.Id_Cliente = t.Id_Cliente
JOIN Clientes c on c.Id_Cliente = t.Id_Cliente
WHERE r.risk > c.Credito + 10
AND Vista != 3;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `production_buffer_problemsOptimizado` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `production_buffer_problemsOptimizado`()
BEGIN
DECLARE vWarehouse INT;
DECLARE vDate DATE;
DECLARE vAvailableCache INT;
DECLARE vVisibleCache INT;
DECLARE vDone INT DEFAULT 0;
DECLARE vCursor CURSOR FOR
SELECT DISTINCT warehouse_id, date(Fecha)
FROM tmp.ticket_list tt
JOIN Tickets t on tt.Id_Ticket = t.Id_Ticket
AND DATE(t.Fecha) BETWEEN CURDATE() AND TIMESTAMPADD(DAY,1.9,CURDATE());
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = 1;
DROP TEMPORARY TABLE IF EXISTS tmp.buffer_problems;
CREATE TEMPORARY TABLE tmp.buffer_problems (
Id_Ticket INT(11),
problem VARCHAR(50),
INDEX (Id_Ticket)
)
ENGINE = MEMORY;
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT DISTINCT tt.Id_Ticket, 'CONGELADO'
FROM tmp.ticket_list tt
JOIN Clientes c on c.Id_Cliente = tt.Id_Cliente
WHERE c.Congelado;
DROP TEMPORARY TABLE IF EXISTS tmp.ticketListFiltered;
CREATE TEMPORARY TABLE tmp.ticketListFiltered
(PRIMARY KEY (Id_Ticket))
ENGINE = MEMORY
SELECT tt.Id_Ticket, c.Id_Cliente
FROM tmp.ticket_list tt
JOIN Clientes c on c.Id_Cliente = tt.Id_Cliente
WHERE c.Congelado = 0;
CALL risk_vs_client_list(CURDATE());
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT DISTINCT tt.Id_Ticket, 'RIESGO'
FROM tmp.ticketListFiltered tt
JOIN Tickets t on t.Id_Ticket = tt.Id_Ticket
JOIN Agencias a on t.Id_Agencia = a.Id_Agencia
JOIN tmp.risk r on r.Id_Cliente = t.Id_Cliente
JOIN Clientes c on c.Id_Cliente = t.Id_Cliente
WHERE r.risk > c.Credito + 10
AND Vista != 3;
DELETE tlf FROM tmp.ticketListFiltered tlf
JOIN tmp.buffer_problems bf ON tlf.Id_Ticket = bf.Id_Ticket;
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT DISTINCT tt.Id_Ticket, 'COD 100'
FROM tmp.ticket_list tt
JOIN Movimientos m on m.Id_Ticket = tt.Id_Ticket
WHERE Id_Article = 100;
DELETE tlf FROM tmp.ticketListFiltered tlf
JOIN tmp.buffer_problems bf ON tlf.Id_Ticket = bf.Id_Ticket;
OPEN vCursor;
WHILE NOT vDone
DO
FETCH vCursor INTO vWarehouse, vDate ;
CALL cache.visible_refresh(vVisibleCache,FALSE,vWarehouse);
CALL cache.available_refresh(vAvailableCache,FALSE,vWarehouse,vDate);
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT tt.Id_Ticket, Article
FROM tmp.ticket_list tt
JOIN Tickets t on t.Id_Ticket = tt.Id_Ticket
LEFT JOIN vn2008.Movimientos M ON M.Id_Ticket = t.Id_Ticket
JOIN vn2008.Articles A ON A.Id_Article = M.Id_Article
JOIN vn2008.Tipos tp on tp.tipo_id = A.tipo_id
LEFT JOIN cache.visible v ON A.Id_Article = v.item_id AND v.calc_id = vVisibleCache
LEFT JOIN cache.available av ON av.item_id = A.Id_Article AND av.calc_id = vAvailableCache
WHERE date(t.Fecha) = vDate
AND reino_id != 6
AND M.Cantidad > IFNULL(v.visible,0)
AND IFNULL(av.available,0) < 0
AND M.OK = FALSE
AND NOT generic
AND vWarehouse = t.warehouse_id;
DELETE tlf FROM tmp.ticketListFiltered tlf
JOIN tmp.buffer_problems bf ON tlf.Id_Ticket = bf.Id_Ticket;
INSERT INTO tmp.buffer_problems(Id_Ticket, problem)
SELECT tt.Id_Ticket, CONCAT('RETRASO ', Article)
FROM tmp.ticket_list tt
JOIN Tickets t on t.Id_Ticket = tt.Id_Ticket
LEFT JOIN vn2008.Movimientos M ON M.Id_Ticket = t.Id_Ticket
JOIN vn2008.Articles A ON A.Id_Article = M.Id_Article
JOIN vn2008.Tipos tp on tp.tipo_id = A.tipo_id
LEFT JOIN cache.visible v ON A.Id_Article = v.item_id AND v.calc_id = vVisibleCache
LEFT JOIN cache.available av ON av.item_id = A.Id_Article AND av.calc_id = vAvailableCache
WHERE IFNULL(av.available,0) >= 0
AND M.Cantidad > IFNULL(v.visible,0)
AND M.OK = FALSE
AND M.Reservado = FALSE
AND reino_id != 6
AND date(t.Fecha) = vDate
AND NOT generic
AND CURDATE() = vDate
AND t.warehouse_id = vWarehouse;
END WHILE;
CLOSE vCursor;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `production_buffer_set_priority` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `production_buffer_set_priority`()
BEGIN
DECLARE currentDayOfWeek INT;
SET currentDayOfWeek = weekday(curdate());
UPDATE tmp.production_buffer pb
LEFT JOIN
(
SELECT agency_id
, warehouse_id
, max_hour
FROM agency_hour ah
WHERE subtract_day < 225
AND week_day is null
AND province_id is null
) t on t.agency_id = pb.agency_id
and t.warehouse_id = pb.warehouse_id
SET pb.Hora = IF(pb.Hora is null or pb.Hora = 0 or pb.Hora = 24,IFNULL(t.max_hour,24), pb.Hora)
,pb.Departure =IFNULL(t.max_hour,0);
UPDATE tmp.production_buffer pb
JOIN
(
SELECT agency_id
, warehouse_id
, shipmentDay(week_day, subtract_day) as shipmentDay
, max_hour
FROM agency_hour ah
WHERE subtract_day < 225
AND agency_id is not null
AND week_day is not null
AND max_hour is not null
AND province_id is null
HAVING shipmentDay = currentDayOfWeek
) t on t.agency_id = pb.agency_id
and t.warehouse_id = pb.warehouse_id
SET pb.Hora = IF(pb.Hora is null or pb.Hora = 0 or pb.Hora = 24,t.max_hour, pb.Hora)
,pb.Departure = t.max_hour
;
UPDATE tmp.production_buffer pb
JOIN
(
SELECT agency_id
, warehouse_id
, shipmentDay(week_day, subtract_day) as shipmentDay
, max_hour
, province_id
FROM agency_hour ah
WHERE subtract_day < 225
AND agency_id is not null
AND week_day is not null
AND max_hour is not null
AND province_id is not null
HAVING shipmentDay = currentDayOfWeek
) t on t.agency_id = pb.agency_id
and t.warehouse_id = pb.warehouse_id
and t.province_id = pb.province_id
SET pb.Hora = IF(pb.Hora is null or pb.Hora = 0 or pb.Hora = 24,t.max_hour, pb.Hora)
,pb.Departure = t.max_hour
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `production_control_source` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `production_control_source`(vWarehouseId INT, vScopeDays TINYINT)
BEGIN
DECLARE vMidnight DATETIME DEFAULT TIMESTAMP(CURDATE(),'23:59:59');
DECLARE vEndingDate DATETIME DEFAULT TIMESTAMPADD(DAY,vScopeDays,vMidnight);
DECLARE SAFE_ALERT_LEVEL INT DEFAULT 3;
CALL prepare_ticket_list(TIMESTAMPADD(DAY,-1,CURDATE()), vEndingDate);
CALL prepare_client_list;
CALL production_buffer_problems;
DROP TEMPORARY TABLE IF EXISTS tmp.production_buffer;
CREATE TEMPORARY TABLE tmp.production_buffer
(PRIMARY KEY(Id_Ticket))
ENGINE = MEMORY
SELECT t.Id_Ticket
, t.Id_Cliente
, t.warehouse_id
, t.Alias
, t.Bultos
, HOUR(t.Fecha) as Hora
, HOUR(t.Fecha) as Departure
, t.Id_Ruta
, IF(a.Vista = 2,ap.zona,0) as zona
, CS.Consignatario
, CS.CODPOSTAL
, CS.POBLACION
, p.name PROVINCIA
, IF(a.Vista= 2, CONCAT('ZONA ',ap.zona), a.Agencia) Agencia
, a.agency_id
, 0 AS `lines`
, CAST( 0 AS DECIMAL(5,2)) AS m3
, 0 AS problems
, " " as problem
, IFNULL(tls.state,2) AS state
, w.Codigotrabajador
, DATE(t.Fecha) AS Fecha
, Averiguar_ComercialCliente_IdTicket(t.Id_Ticket) AS Comercial
, p.province_id
, tls.productionOrder as state_order
, ifnull(tls.alertLevel,0) alert_level
, t.boxed as palletized
FROM tmp.ticket_list tt
JOIN Tickets t on tt.Id_Ticket = t.Id_Ticket
JOIN Consignatarios CS on CS.Id_Consigna = t.Id_Consigna
JOIN province p on p.province_id = CS.province_id
JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
LEFT JOIN Agencias_province ap on ap.province_id = CS.province_id AND ap.warehouse_id = t.warehouse_id AND ap.agency_id = a.agency_id
LEFT JOIN vn.ticketState tls on tls.ticket = tt.Id_Ticket
LEFT JOIN Trabajadores w on w.Id_Trabajador = tls.worker
WHERE t.warehouse_id = vWarehouseId
AND a.Vista IN (1,2,3);
UPDATE tmp.production_buffer pb
JOIN (
SELECT m.Id_Ticket, COUNT(Id_Movimiento) as `lines`, cast( sum( m.Cantidad * r.cm3 / 1000000 ) as decimal(10,2)) as m3
FROM tmp.ticket_list tt
JOIN Movimientos m on tt.Id_Ticket = m.Id_Ticket
JOIN bi.rotacion r on m.Id_Article = r.Id_Article
WHERE r.warehouse_id = vWarehouseId
GROUP BY m.Id_Ticket
) m on m.Id_Ticket = pb.Id_Ticket
SET pb.`lines` = m.`lines`,
pb.m3 = m.m3;
DELETE FROM tmp.production_buffer
WHERE `lines`= 0;
ALTER TABLE tmp.production_buffer
ADD Cajas DOUBLE DEFAULT NULL;
UPDATE tmp.production_buffer pb
JOIN (
SELECT t.Id_Ticket, sum(floor(m.Cantidad / c.Packing) * bultoCubico) as Cajas
FROM tmp.ticket_list tt
JOIN Tickets t on tt.Id_Ticket = t.Id_Ticket
JOIN Movimientos m on m.Id_Ticket = t.Id_Ticket
JOIN cache.last_buy lb on lb.warehouse_id = t.warehouse_id AND lb.item_id = m.Id_Article
JOIN Compres c on c.Id_Compra = lb.buy_id
JOIN Cubos cb on cb.Id_Cubo = c.Id_Cubo
WHERE m.Cantidad > c.Packing
GROUP BY t.Id_Ticket
HAVING Cajas >= 1
) sub ON sub.Id_Ticket = pb.Id_Ticket
SET pb.Cajas = sub.Cajas;
ALTER TABLE tmp.production_buffer
ADD lineasArtificial INT DEFAULT NULL;
UPDATE tmp.production_buffer pb
JOIN (
SELECT tt.Id_Ticket, COUNT(m.Id_Movimiento) as Lineas
FROM tmp.ticket_list tt
JOIN Movimientos m ON m.Id_Ticket = tt.Id_Ticket
JOIN Articles a ON a.Id_Article = m.Id_Article
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
JOIN reinos r ON r.id = tp.reino_id
WHERE reino = 'Artificial'
GROUP BY tt.Id_Ticket
HAVING Lineas >= 1
) sub ON sub.Id_Ticket = pb.Id_Ticket
SET pb.lineasArtificial = sub.Lineas;
UPDATE tmp.production_buffer pb
JOIN (
SELECT Id_Ticket, COUNT(Id_Ticket) as problems, GROUP_CONCAT(problem) problem
FROM tmp.buffer_problems
GROUP BY Id_Ticket
) p on p.Id_Ticket = pb.Id_Ticket
SET pb.problems = p.problems,
pb.problem = p.problem;
CALL production_buffer_set_priority;
INSERT INTO tmp.production_buffer(
Fecha
, Id_Ticket
, Agencia
, Id_Cliente
, Consignatario
, state
, CodigoTrabajador
, m3
, `lines`
)
SELECT DISTINCT c.shipment AS Fecha
, c.Id_Entrada AS Id_Ticket
, warehouse.name
, c.Id_Proveedor
, c.ref AS Consignatario
, IF(BIT_OR(controlado.Id_Compra),6,IF(BIT_OR(preparado.Id_Compra),5,3)) AS state
, c.Id_Trabajador AS CodigoTrabajador
, round(sum(cm3) / 1000000,2) AS m3
, count(c.Id_Compra) as `lines`
FROM v_compres c
INNER JOIN warehouse ON c.warehouse_id = warehouse.id
LEFT JOIN Compres_ok preparado ON c.Id_Compra = preparado.Id_Compra AND preparado.valor = 1
LEFT JOIN Compres_ok controlado ON c.Id_Compra = controlado.Id_Compra AND controlado.valor = 2
WHERE warehouse_id_out = vWarehouseId AND IFNULL(c.Confirmada,FALSE) = FALSE
AND c.shipment >= CURDATE()
GROUP BY Id_Entrada;
CALL cache.departure_timing;
REPLACE tmp.production_buffer(
Fecha
, Id_Ticket
, Agencia
, Id_Cliente
, Consignatario
, state
, CodigoTrabajador
, alert_level
, warehouse_id
)
SELECT
DATE(t.Fecha) AS Fecha
, t.Id_Ticket
, a.Agencia
, t.Id_Cliente
, CS.Consignatario
, s.id as state
, w.Codigotrabajador
, ifnull(tls.alertLevel,0) alert_level
, vWarehouseId
FROM vn2008.Tickets t
JOIN vn2008.Consignatarios CS on CS.Id_Consigna = t.Id_Consigna
JOIN vn2008.Agencias a ON a.Id_Agencia = t.Id_Agencia
LEFT JOIN vn2008.warehouse_pickup wp ON wp.agency_id = a.Id_Agencia
LEFT JOIN vn.ticketState tls on tls.ticket = t.Id_Ticket
LEFT JOIN vn.state s ON s.id = tls.state
LEFT JOIN vn2008.Trabajadores w on w.Id_Trabajador = tls.worker
WHERE t.Fecha between TIMESTAMPADD(WEEK,-1,CURDATE()) AND dayend(TIMESTAMPADD(DAY,-1,CURDATE()))
AND wp.warehouse_id = vWarehouseId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `proveedores_extracto` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `proveedores_extracto`(IN idPROV INT, IN idMONEDA INT, IN idEMP INT)
BEGIN
SET @saldo_eur:= 0;
SET @saldo_div:= 0;
SELECT
*,
@saldo_eur:= round(@saldo_eur + IFNULL(Pago_Euros, 0) - IFNULL(Fac_Euros, 0) ,2 ) AS saldo_eur,
@saldo_div:= round(@saldo_div + IFNULL(Pago_Divisas, 0) - IFNULL(Fac_Divisas, 0) ,2 ) AS saldo_div
FROM
(SELECT
*
FROM
(SELECT
'R',
NULL as banco_id,
r.empresa_id,
r.serie,
r.id,
r.fecha,
CONCAT('S/Fra ', r.sref) sref,
if(r.moneda_id > 1,round(sum(divisa) / sum(cantidad),3),NULL) val_cambio,
CAST(sum(cantidad) as DECIMAL(10,2)) as Fac_Euros,
CAST(sum(divisa) as DECIMAL(10,2)) as Fac_Divisas,
NULL AS Pago_Euros,
NULL AS Pago_Divisas,
r.moneda_id,
r.contabilizada,
Moneda,
NULL as pago_sdc_id
FROM
recibida r
JOIN recibida_vencimiento rv on rv.recibida_id = r.id
JOIN Monedas m on m.Id_Moneda = r.moneda_id
WHERE
r.fecha > '2014-12-31'
AND r.proveedor_id = idPROV
AND idMONEDA IN (r.moneda_id, 0)
AND idEMP IN (r.empresa_id,0)
GROUP BY r.id
UNION ALL SELECT
'P',
p.id_banco,
p.empresa_id,
NULL,
p.id,
Fecha,
CONCAT(IFNULL(name, ''), IF(pre.concepto <> '', CONCAT(' : ', pre.concepto), '')),
if(p.id_moneda > 1, p.divisa / importe, NULL) tip_cambio,
NULL,
NULL,
p.importe,
p.divisa,
p.id_moneda,
IFNULL(conciliado, 0),
Moneda,
pago_sdc_id
FROM
pago p
LEFT JOIN Monedas ON Monedas.Id_Moneda = p.id_moneda
LEFT JOIN Bancos ON p.id_banco = Bancos.Id_banco
LEFT JOIN pay_met pm ON p.pay_met_id = pm.id
LEFT JOIN Pagares pre ON pre.pago_id = p.id
WHERE
Fecha > '2014-12-31'
AND p.Id_Proveedor = idPROV
AND idMONEDA IN (p.id_moneda,0)
AND idEMP IN (p.empresa_id,0)
) AS SUB
ORDER BY fecha) t;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `proveedores_extracto_vtos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `proveedores_extracto_vtos`(IN idPROV INT, IN idMONEDA INT, IN idEMP INT)
BEGIN
SET @saldo_eur:= 0;
SET @saldo_div:= 0;
SELECT
*,
@saldo_eur:= round(@saldo_eur + IFNULL(Pago_Euros, 0) - IFNULL(Fac_Euros, 0) ,2 ) AS saldo_eur,
@saldo_div:= round(@saldo_div + IFNULL(Pago_Divisas, 0) - IFNULL(Fac_Divisas, 0) ,2 ) AS saldo_div
FROM
(SELECT
*
FROM
(SELECT
'V',
NULL as banco_id,
r.empresa_id,
r.serie,
r.id,
rv.fecha,
CONCAT('S/Fra ', r.sref) sref,
if(r.moneda_id > 1,round(sum(divisa) / sum(cantidad),3),NULL) val_cambio,
CAST(sum(cantidad) as DECIMAL(10,2)) as Fac_Euros,
CAST(sum(divisa) as DECIMAL(10,2)) as Fac_Divisas,
NULL AS Pago_Euros,
NULL AS Pago_Divisas,
r.moneda_id,
r.contabilizada,
Moneda,
NULL as pago_sdc_id
FROM
recibida r
JOIN recibida_vencimiento rv on rv.recibida_id = r.id
JOIN Monedas m on m.Id_Moneda = r.moneda_id
WHERE
r.fecha > '2014-12-31'
AND r.proveedor_id = idPROV
AND idMONEDA IN (r.moneda_id, 0)
AND idEMP IN (r.empresa_id,0)
GROUP BY rv.id
UNION ALL SELECT
'P',
p.id_banco,
p.empresa_id,
NULL,
p.id,
Fecha,
CONCAT(IFNULL(name, ''), IF(pre.concepto <> '', CONCAT(' : ', pre.concepto), '')),
if(p.id_moneda > 1, p.divisa / importe, NULL) tip_cambio,
NULL,
NULL,
p.importe,
p.divisa,
p.id_moneda,
IFNULL(conciliado, 0),
Moneda,
pago_sdc_id
FROM
pago p
LEFT JOIN Monedas ON Monedas.Id_Moneda = p.id_moneda
LEFT JOIN Bancos ON p.id_banco = Bancos.Id_banco
LEFT JOIN pay_met pm ON p.pay_met_id = pm.id
LEFT JOIN Pagares pre ON pre.pago_id = p.id
WHERE
Fecha > '2014-12-31'
AND p.Id_Proveedor = idPROV
AND idMONEDA IN (p.id_moneda,0)
AND idEMP IN (p.empresa_id,0)
) AS SUB
ORDER BY fecha, id) t;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `proveedores_saldo` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `proveedores_saldo`(IN datFEC DATE)
BEGIN
SET datFEC = IF(datfec < CURDATE(), CURDATE(), datfec);
SELECT P.Id_Proveedor
, P.Proveedor
, P.empresa_id
, P.pay_met_id
, P.cuenta
, RED(IFNULL(sub_tot.Saldo,0) + IFNULL(sub_fut.Saldo,0) + IFNULL(sub_hoy.Saldo,0)) Total
, RED(IFNULL(sub_hoy.Saldo,0) + IFNULL(sub_fut.Saldo,0)) Inmediato
, RED(IFNULL(sub_hoy.Saldo,0)) Vencido
FROM
(SELECT Id_Proveedor, Proveedor, id as empresa_id, pay_met_id, P.cuenta FROM Proveedores P INNER JOIN empresa) P
LEFT JOIN
(
SELECT Id_Proveedor, empresa_id, SUM(Sald) as Saldo
FROM
(
SELECT RV.Fecha, SUM(-1* ROUND(IFNULL(cantidad,0) / IF(p.cuenta LIKE '___4______',rr.rate,1),2)) as Sald, proveedor_id as Id_Proveedor, empresa_id
FROM recibida_vencimiento RV
INNER JOIN recibida R ON RV.recibida_id = R.id
INNER JOIN Proveedores p ON p.Id_Proveedor = R.proveedor_id
INNER JOIN reference_rate rr ON rr.date=R.fecha
WHERE RV.fecha > datFEC
AND R.contabilizada
GROUP BY proveedor_id, empresa_id
UNION ALL
SELECT fecha, red(SUM(IFNULL(importe,0))), id_proveedor, empresa_id
FROM pago
WHERE fecha > datFEC
GROUP BY id_proveedor, empresa_id
) sub
GROUP BY Id_Proveedor, empresa_id
) sub_tot USING(Id_Proveedor, empresa_id)
LEFT JOIN
(
SELECT Id_Proveedor, empresa_id, SUM(Sald) as Saldo
FROM
(
SELECT RV.Fecha, SUM(-1* ROUND(IFNULL(cantidad,0)/ IF(p.cuenta LIKE '___4______',rr.rate,1),2)) as Sald, proveedor_id as Id_Proveedor, empresa_id
FROM recibida_vencimiento RV
INNER JOIN recibida R ON RV.recibida_id = R.id
INNER JOIN Proveedores p ON p.Id_Proveedor = R.proveedor_id
INNER JOIN reference_rate rr ON rr.date = R.fecha
WHERE RV.fecha BETWEEN CURDATE() AND datFEC
AND R.contabilizada
GROUP BY proveedor_id, empresa_id
UNION ALL
SELECT fecha, ROUND(SUM(IFNULL(importe,0)),2), id_proveedor, empresa_id
FROM pago
WHERE fecha BETWEEN CURDATE() AND datFEC
GROUP BY id_proveedor, empresa_id
) sub3
GROUP BY Id_Proveedor, empresa_id
) sub_fut USING(Id_Proveedor, empresa_id)
LEFT JOIN
(
SELECT Id_Proveedor, empresa_id, SUM(Sald) as Saldo
FROM
(
SELECT RV.Fecha, SUM(-1* ROUND(IFNULL(cantidad,0)/ IF(p.cuenta LIKE '___4______',rr.rate,1),2)) as Sald, proveedor_id as Id_Proveedor, empresa_id
FROM recibida_vencimiento RV
INNER JOIN recibida R ON RV.recibida_id = R.id
INNER JOIN Proveedores p ON p.Id_Proveedor = R.proveedor_id
INNER JOIN reference_rate rr ON rr.date = R.fecha
WHERE RV.fecha > '2014-12-31' AND RV.fecha < CURDATE()
AND R.contabilizada
GROUP BY proveedor_id, empresa_id
UNION ALL
SELECT fecha, red(SUM(IFNULL(importe,0))), id_proveedor, empresa_id
FROM pago
WHERE fecha > '2014-12-31' AND fecha < CURDATE()
GROUP BY id_proveedor, empresa_id
) sub5
GROUP BY Id_Proveedor, empresa_id
) sub_hoy USING(Id_Proveedor, empresa_id)
WHERE abs(sub_tot.Saldo) >0.2
OR ABS(sub_fut.Saldo) >0.2
OR ABS(sub_hoy.Saldo) >0.2
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `proveedores_saldos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `proveedores_saldos`()
BEGIN
DECLARE startingDate DATETIME DEFAULT TIMESTAMPADD(MONTH,-3,CURDATE());
DROP TEMPORARY TABLE IF EXISTS saldos_iniciales;
CREATE TEMPORARY TABLE saldos_iniciales
(proveedor_id INT NOT NULL
, empresa_id INT NOT NULL
, saldo_inicial double NOT NULL
, saldo_final DOUBLE NOT NULL
, moneda_id INT NOT NULL
, PRIMARY KEY(proveedor_id, empresa_id, moneda_id))
ENGINE = MEMORY;
INSERT INTO saldos_iniciales
SELECT id_proveedor, empresa_id, sum(importe * isBeforeStarting) as saldo_inicial,sum(importe) saldo_final, moneda_id
FROM (
SELECT
p.id_proveedor,
p.empresa_id,
if(p.id_moneda = 1, p.importe, p.divisa) as importe,
if( p.fecha < startingDate,1,0) isBeforeStarting,
p.id_moneda moneda_id
FROM pago p
WHERE p.fecha > '2014-12-31'
AND p.empresa_id = 442
AND p.id_proveedor <> 567
UNION ALL
SELECT
r.proveedor_id,
r.empresa_id,
- if(r.moneda_id = 1, rv.cantidad, rv.divisa) AS Total,
if(rv.fecha < startingDate,1,0) isBeforeStarting,
r.moneda_id
FROM
recibida r
INNER JOIN recibida_vencimiento rv ON r.id = rv.recibida_id
WHERE r.fecha > '2014-12-31'
AND r.contabilizada AND r.empresa_id = 442
AND r.proveedor_id <> 567
) sub
GROUP BY empresa_id, id_proveedor, moneda_id;
DROP TEMPORARY TABLE IF EXISTS vencimientos_pendientes;
CREATE TEMPORARY TABLE vencimientos_pendientes
(vencimiento_id INT, id INT auto_increment
,fecha DATE
,proveedor_id INT NOT NULL
,empresa_id INT NOT NULL
,importe DECIMAL(10,2) NOT NULL
,moneda_id INT NOT NULL
,pendiente DECIMAL(10,2) DEFAULT 0
,saldo DECIMAL(10,2) DEFAULT 0
,saldoFinal DECIMAL(10,2) DEFAULT 0
,isPago BOOLEAN
,conciliado BOOLEAN
,PRIMARY KEY(id),
INDEX(proveedor_id,empresa_id,moneda_id))
ENGINE = MEMORY;
INSERT INTO vencimientos_pendientes(vencimiento_id
, fecha
, proveedor_id
, empresa_id
, importe
, moneda_id
, isPago
, conciliado)
SELECT p.id,
p.fecha,
p.id_proveedor,
p.empresa_id,
if(p.id_moneda = 1, p.importe, p.divisa) as importe,
p.id_moneda,
TRUE isPago,
p.conciliado
FROM pago p
WHERE p.fecha >= startingDate AND p.empresa_id = 442
AND p.id_proveedor <> 567
UNION ALL
SELECT rv.id
, rv.fecha
, r.proveedor_id
, r.empresa_id
, -if(r.moneda_id = 1, rv.cantidad, rv.divisa) as importe
, r.moneda_id
, FALSE
, TRUE
FROM recibida r
LEFT JOIN saldos_iniciales si ON r.empresa_id = si.empresa_id AND r.proveedor_id = si.proveedor_id AND r.moneda_id = si.moneda_id
INNER JOIN recibida_vencimiento rv ON r.id = rv.recibida_id
WHERE rv.fecha >= startingDate AND IFNULL(saldo_final,TRUE) <> 0
and r.contabilizada AND r.empresa_id = 442
AND r.proveedor_id <> 567
ORDER BY id_proveedor, empresa_id, id_moneda, fecha, isPago DESC,id;
SET @saldo:= 0.0;
SET @prov := 0.0;
SET @emp := 0.0;
set @moneda := 0.0;
SET @pendiente := 0.0;
SET @day := CURDATE();
UPDATE vencimientos_pendientes vp LEFT JOIN saldos_iniciales si ON
vp.empresa_id = si.empresa_id AND vp.proveedor_id = si.proveedor_id AND vp.moneda_id = si.moneda_id
SET vp.saldo = @saldo:= (IF(@emp <> vp.empresa_id OR @prov <> vp.proveedor_id OR @moneda <> vp.moneda_id, IFNULL(si.saldo_inicial,0),@saldo) + vp.importe)
, vp.pendiente = @pendiente:= IF(@emp <> vp.empresa_id OR @prov <> vp.proveedor_id OR @moneda <> vp.moneda_id OR @day <> vp.fecha, vp.importe * (NOT isPago) , @pendiente + vp.importe)
, vp.empresa_id = @emp:= vp.empresa_id
, vp.proveedor_id = @prov:= vp.proveedor_id
, vp.moneda_id = @moneda:= vp.moneda_id
, vp.fecha = @day:= vp.fecha
, vp.saldo = @saldo
, vp.pendiente = @pendiente;
CREATE TEMPORARY TABLE rowsToDelete
ENGINE = MEMORY
SELECT fecha,proveedor_id,empresa_id,moneda_id
FROM vencimientos_pendientes
WHERE saldo < 0.5 AND saldo > -0.5;
DELETE vp.* FROM vencimientos_pendientes vp JOIN rowsToDelete rd
ON vp.fecha <= rd.fecha AND vp.proveedor_id = rd.proveedor_id AND vp.empresa_id = rd.empresa_id AND vp.moneda_id = rd.moneda_id
WHERE isPago = FALSE;
SELECT vp.vencimiento_id
, vp.fecha
, vp.proveedor_id
, vp.empresa_id
, vp.moneda_id
, vp.importe
, vp.pendiente
, vp.saldo
, p.pay_met_id
, vp.isPago
, vp.conciliado
, vp.saldoFinal
FROM vencimientos_pendientes vp
LEFT JOIN Proveedores p ON p.Id_Proveedor = vp.proveedor_id;
DROP TEMPORARY TABLE vencimientos_pendientes;
DROP TEMPORARY TABLE saldos_iniciales;
DROP TEMPORARY TABLE rowsToDelete;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `proveedores_saldoskk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `proveedores_saldoskk`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS proveedores_pendientes;
CREATE TEMPORARY TABLE proveedores_pendientes
( proveedor_id INT NOT NULL
, empresa_id INT NOT NULL
, saldo double NOT NULL
, moneda_id INT NOT NULL
, PRIMARY KEY(proveedor_id, empresa_id, moneda_id));
INSERT INTO proveedores_pendientes
SELECT id_proveedor, empresa_id, sum(importe) as saldo, id_moneda as moneda_id
FROM
(
SELECT
p.id_proveedor,
p.empresa_id,
- if(p.id_moneda = 1, p.importe, p.divisa) as importe,
p.id_moneda
FROM
pago p
WHERE
p.fecha > '2014-12-31'
UNION ALL
SELECT
r.proveedor_id,
r.empresa_id,
if(r.moneda_id = 1, rv.cantidad, rv.divisa) AS Total,
r.moneda_id
FROM
recibida r
INNER JOIN recibida_vencimiento rv ON r.id = rv.recibida_id
WHERE r.fecha > '2014-12-31' AND r.contabilizada
) sub
GROUP BY empresa_id, id_proveedor, moneda_id
having saldo > 0;
DROP TEMPORARY TABLE IF EXISTS vencimientos_pendientes_aux;
CREATE TEMPORARY TABLE vencimientos_pendientes_aux
(vencimiento_id INT, id INT auto_increment
,fecha DATE
,proveedor_id INT NOT NULL
,empresa_id INT NOT NULL
,importe double NOT NULL
,moneda_id INT NOT NULL
,pendiente DOUBLE DEFAULT 0
,PRIMARY KEY(id));
SET @imp:= 0;
INSERT INTO vencimientos_pendientes_aux(vencimiento_id
, fecha
, proveedor_id
, empresa_id
, importe
, moneda_id
, pendiente)
SELECT rv.id
, rv.fecha
, r.proveedor_id
, r.empresa_id
, @imp:= if(r.moneda_id = 1, rv.cantidad, rv.divisa) as importe
, r.moneda_id
, pp.saldo
FROM recibida r
INNER JOIN recibida_vencimiento rv ON r.id = rv.recibida_id
JOIN proveedores_pendientes pp ON pp.proveedor_id = r.proveedor_id AND pp.empresa_id = r.empresa_id AND pp.moneda_id = r.moneda_id
WHERE r.fecha > '2010-12-31'
and rv.fecha > TIMESTAMPADD(MONTH,-3,CURDATE())
and r.contabilizada;
DROP TEMPORARY TABLE IF EXISTS vencimientos_pendientes;
CREATE TEMPORARY TABLE vencimientos_pendientes
(vencimiento_id INT, id INT , id2 INT auto_increment
,fecha DATE
,proveedor_id INT NOT NULL
,empresa_id INT NOT NULL
,importe double NOT NULL
,moneda_id INT NOT NULL
,pendiente DOUBLE DEFAULT 0
,saldo DOUBLE
,PRIMARY KEY(id2));
INSERT INTO vencimientos_pendientes(vencimiento_id
, id
, fecha
, proveedor_id
, empresa_id
, importe
, moneda_id
, pendiente
, saldo)
SELECT vencimiento_id, id, fecha, proveedor_id, empresa_id, importe, moneda_id, 0, pp.saldo
FROM vencimientos_pendientes_aux vp
JOIN proveedores_pendientes pp USING(proveedor_id, empresa_id, moneda_id)
ORDER BY proveedor_id, empresa_id, moneda_id, fecha DESC, importe;
DROP TEMPORARY TABLE vencimientos_pendientes_aux;
SELECT proveedor_id, empresa_id, saldo, moneda_id, 0
INTO @prov, @emp, @saldo, @moneda, @pend
FROM vencimientos_pendientes WHERE id2 = 1;
UPDATE vencimientos_pendientes
SET saldo = @saldo:= IF(@emp <> empresa_id OR @prov <>proveedor_id OR @moneda <> moneda_id,saldo,@saldo)
, pendiente = @pend:= IF(saldo >= importe AND saldo > 0, importe, saldo)
, saldo = @saldo:= @saldo - @pend
, empresa_id = @emp:= empresa_id
, proveedor_id = @prov:= proveedor_id
, moneda_id = @moneda:= moneda_id;
SELECT vp.vencimiento_id
, vp.fecha
, vp.proveedor_id
, vp.empresa_id
, vp.moneda_id
, vp.importe
, vp.pendiente
, pp.saldo
FROM vencimientos_pendientes vp
JOIN proveedores_pendientes pp USING(proveedor_id, empresa_id, moneda_id)
WHERE pendiente > 0;
DROP TEMPORARY TABLE vencimientos_pendientes;
DROP TEMPORARY TABLE proveedores_pendientes;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `prueba_miguel` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `prueba_miguel`()
BEGIN
select 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `quadre_clientes` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `quadre_clientes`(IN datFEC DATETIME)
BEGIN
DECLARE datSTART DATE;
SET datFEC = TIMESTAMP(datFEC,'23:59:59');
SELECT FIRSTDAYOFYEAR(datFEC) INTO datSTART;
SELECT P2.Alias, C.Id_Cliente, C.Cuenta, Gestion, Contaplus, Gestion - Contaplus as Diferencia, empresa_id, Cliente
FROM Clientes C
JOIN pay_met pm ON pm.id = C.pay_met_id
JOIN
(
SELECT empresa_id, Id_Cliente, round(sum(Gestion),2) as Gestion, round(sum(Contaplus),2) as Contaplus
FROM
(
SELECT empresa_id, Id_Cliente, Gestion, 0 as Contaplus
FROM
(
SELECT empresa_id, Id_Cliente, -1 * Importe as Gestion
FROM Facturas
WHERE Fecha BETWEEN datSTART AND datFEC
UNION ALL
SELECT empresa_id, Id_Cliente, Entregado
FROM Recibos
WHERE Fechacobro BETWEEN datSTART AND datFEC
) G
WHERE empresa_id <> 965
UNION ALL
SELECT empresa_id, Id_Cliente, 0, round(nz(Eurohaber) - nz(Eurodebe),2) as Contaplus
FROM bi.XDiario_ALL XD
JOIN Clientes C ON C.Cuenta = XD.SUBCTA
WHERE Fecha BETWEEN datSTART AND datFEC
) sub1
GROUP BY empresa_id, Id_Cliente
) sub2 USING(Id_Cliente)
JOIN Proveedores P2 ON P2.Id_Proveedor = sub2.empresa_id
WHERE pm.deudaviva
HAVING ABS(Diferencia) > 0.05
ORDER BY Cliente;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `quadre_clientes_detalle` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `quadre_clientes_detalle`(IN idC INT, IN idE INT, IN datFEC DATETIME)
BEGIN
DECLARE datSTART DATE;
SET datSTART = FIRSTDAYOFYEAR(datFEC);
SET datFEC = TIMESTAMP(datFEC,'23:59:59');
DROP TEMPORARY TABLE IF EXISTS qFACTURAS;
CREATE TEMPORARY TABLE qFACTURAS
(Fecha DATETIME,
TPVcount INT,
Factura DECIMAL(10,2) SIGNED,
Recibo DECIMAL(10,2) SIGNED,
CPcount INT,
Debe DECIMAL(10,2) SIGNED,
Haber DECIMAL(10,2) SIGNED,
Control INT DEFAULT 0,
PRIMARY KEY(Fecha, TPVcount, Factura, Recibo, CPcount, Debe, Haber))
ENGINE = InnoDB
;
INSERT INTO qFACTURAS
SELECT Fecha, COUNT(*) as TPVcount, round(Importe,2) as Factura, 0 as Recibo, COUNT(*)as CPcount,round(Importe,2) as Debe, 0 as Haber, 1 as Control
FROM Facturas
WHERE Id_Cliente = idC AND empresa_id = idE AND Fecha BETWEEN datSTART AND datFEC
GROUP BY Fecha, round(Importe,2)
UNION ALL
SELECT Fechacobro as Fecha, COUNT(*) as TPVcount, 0 as Factura, round(Entregado,2) as Recibo,COUNT(*) as CPCount, 0 as Debe, round(Entregado,2) as Haber, 3 as Control
FROM Recibos
WHERE Id_Cliente = idC AND empresa_id = idE AND Fechacobro BETWEEN datSTART AND datFEC
GROUP BY Fechacobro, round(Entregado,2);
INSERT INTO qFACTURAS
SELECT *
FROM (
SELECT Fecha, COUNT(*) as TPVcount, round(Eurodebe,2) as Factura, round(Eurohaber,2) as Recibo, COUNT(*) as CPcount, round(Eurodebe,2) as Debe, round(Eurohaber,2) as Haber, 2 as Control
FROM bi.XDiario_ALL XD
JOIN Clientes C ON C.Cuenta = XD.SUBCTA
WHERE Id_Cliente = idC AND empresa_id = idE AND Fecha BETWEEN datSTART AND datFEC
AND (Eurodebe <> 0 OR Eurohaber <>0)
GROUP BY Fecha, round(Eurodebe,2), round(Eurohaber,2)
) sub
ON DUPLICATE KEY UPDATE Control = -1;
UPDATE qFACTURAS SET TPVcount = 0, Factura = 0, Recibo = 0 WHERE Control = 2;
UPDATE qFACTURAS SET CPcount = 0, Debe = 0, Haber = 0 WHERE Control IN (1,3);
SELECT *, @saldo := @saldo + TPVcount * (Factura + Recibo) - CPCount * ( Debe + Haber ) as Saldo
FROM qFACTURAS
JOIN (SELECT @saldo := 0) truqui ;
DROP TEMPORARY TABLE IF EXISTS qFACTURAS;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `quadre_proveedores` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `quadre_proveedores`(IN datFEC DATETIME)
BEGIN
DECLARE datSTART DATE;
SET datFEC = TIMESTAMP(datFEC,'23:59:59');
SELECT FIRSTDAYOFYEAR(datFEC) INTO datSTART;
SELECT P2.Alias, P.Id_Proveedor, P.Cuenta, Gestion, Contaplus, Gestion - Contaplus as Diferencia, empresa_id, P.Proveedor
FROM Proveedores P
JOIN
(
SELECT empresa_id, Id_Proveedor, round(sum(Gestion),2) as Gestion, round(sum(Contaplus),2) as Contaplus
FROM
(
SELECT empresa_id, proveedor_id as Id_Proveedor, Gestion, 0 as Contaplus
FROM
(
SELECT empresa_id, proveedor_id, -1 * sum(cantidad) as Gestion
FROM recibida_vencimiento rv
INNER JOIN recibida r ON r.id = rv.recibida_id
WHERE IFNULL(r.dateBooking,r.fecha) BETWEEN datSTART AND datFEC
AND r.contabilizada
GROUP BY r.id
UNION ALL
SELECT empresa_id, id_proveedor, importe
FROM pago
WHERE Fecha BETWEEN datSTART AND datFEC
AND conciliado
AND pay_met_id <> 18
) G
UNION ALL
SELECT empresa_id, Id_Proveedor, 0, round(nz(Eurodebe) - nz(Eurohaber),2) as Contaplus
FROM bi.XDiario_ALL XD
JOIN Proveedores P ON P.cuenta = XD.SUBCTA
WHERE Fecha BETWEEN datSTART AND datFEC
) sub1
GROUP BY empresa_id, Id_Proveedor
) sub2 USING(Id_Proveedor)
JOIN Proveedores P2 ON P2.Id_Proveedor = sub2.empresa_id
HAVING ABS(Diferencia) > 0.05
ORDER BY P.Proveedor;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `quadre_proveedores_detalle` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `quadre_proveedores_detalle`(IN idP INT, IN idE INT, IN datFEC DATETIME)
BEGIN
DECLARE datSTART DATE;
SET datFEC = TIMESTAMP(datFEC,'23:59:59');
SET datSTART = FIRSTDAYOFYEAR(datFEC);
DROP TEMPORARY TABLE IF EXISTS qFACTURAS;
CREATE TEMPORARY TABLE qFACTURAS
(Fecha DATE,
TPVcount INT,
Factura DECIMAL(10,2) SIGNED,
Recibo DECIMAL(10,2) SIGNED,
CPcount INT,
Debe DECIMAL(10,2) SIGNED,
Haber DECIMAL(10,2) SIGNED,
Control INT DEFAULT 0,
PRIMARY KEY(Fecha, TPVcount, Factura, Recibo, CPcount, Debe, Haber))
ENGINE = InnoDB
;
INSERT INTO qFACTURAS
SELECT Fecha, COUNT(*) as TPVcount, round(Importe,2) as Factura
, 0 as Recibo, COUNT(*)as CPcount,round(Importe,2) as Debe, 0 as Haber, 1 as Control
FROM (SELECT IFNULL(r.dateBooking,r.Fecha) as Fecha, sum(rv.cantidad) as Importe
FROM recibida_vencimiento rv
JOIN recibida r ON r.id = rv.recibida_id
WHERE proveedor_id = idP
AND empresa_id = idE
AND IFNULL(r.dateBooking,r.Fecha) BETWEEN datSTART AND datFEC
AND (r.contabilizada OR r.dateBooking)
GROUP BY r.id) F
GROUP BY Fecha, round(Importe,2)
UNION ALL
SELECT Fecha, COUNT(*) as TPVcount, 0 as Factura, round(importe,2) as Recibo,COUNT(*) as CPCount, 0 as Debe, round(importe,2) as Haber, 3 as Control
FROM pago
WHERE Id_Proveedor = idP AND empresa_id = idE AND Fecha BETWEEN datSTART AND datFEC
AND conciliado
GROUP BY Fecha, round(importe,2);
INSERT INTO qFACTURAS
SELECT *
FROM (
SELECT Fecha, COUNT(*) as TPVcount, round(Eurohaber,2) as Factura, round(Eurodebe,2) as Recibo, COUNT(*) as CPcount, round(Eurohaber,2) as Debe, round(Eurodebe,2) as Haber, 2 as Control
FROM bi.XDiario_ALL XD
JOIN Proveedores P ON P.cuenta = XD.SUBCTA
WHERE Id_Proveedor = idP AND empresa_id = idE AND Fecha BETWEEN datSTART AND datFEC
AND (Eurodebe <> 0 OR Eurohaber <>0)
GROUP BY Fecha, round(Eurohaber,2), round(Eurodebe,2)
) sub
ON DUPLICATE KEY UPDATE Control = -1;
DELETE FROM qFACTURAS WHERE Control = -1;
UPDATE qFACTURAS SET TPVcount = 0, Factura = 0, Recibo = 0 WHERE Control = 2;
UPDATE qFACTURAS SET CPcount = 0, Debe = 0, Haber = 0 WHERE Control IN (1,3);
SELECT *, @saldo := @saldo + TPVcount * (Factura + Recibo) - CPcount * (Debe + Haber) as Saldo
FROM qFACTURAS
JOIN (SELECT @saldo := 0) truqui ;
DROP TEMPORARY TABLE IF EXISTS qFACTURAS;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `quadre_proveedores_test` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `quadre_proveedores_test`(IN datFEC DATETIME)
BEGIN
DECLARE datSTART DATE;
SET datFEC = TIMESTAMP(datFEC,'23:59:59');
SELECT FIRSTDAYOFYEAR(datFEC) INTO datSTART;
SELECT P2.Alias, P.Id_Proveedor, P.Cuenta, Gestion, Contaplus, Gestion - Contaplus as Diferencia, empresa_id, P.Proveedor
FROM Proveedores P
JOIN
(
SELECT empresa_id, Id_Proveedor, round(sum(Gestion),2) as Gestion, round(sum(Contaplus),2) as Contaplus
FROM
(
SELECT empresa_id, proveedor_id as Id_Proveedor, Gestion, 0 as Contaplus
FROM
(
SELECT empresa_id, proveedor_id, -1 * sum(cantidad) as Gestion
FROM recibida_vencimiento rv
INNER JOIN recibida r ON r.id = rv.recibida_id
WHERE r.Fecha BETWEEN datSTART AND datFEC
AND r.contabilizada
GROUP BY r.id
UNION ALL
SELECT empresa_id, id_proveedor, importe
FROM pago
WHERE Fecha BETWEEN datSTART AND datFEC
AND conciliado
AND pay_met_id <> 18
) G
UNION ALL
SELECT empresa_id, Id_Proveedor, 0, round(nz(Eurodebe) - nz(Eurohaber),2) as Contaplus
FROM bi.XDiario_ALL XD
JOIN Proveedores P ON P.cuenta = XD.SUBCTA
WHERE Fecha BETWEEN datSTART AND datFEC
) sub1
GROUP BY empresa_id, Id_Proveedor
) sub2 USING(Id_Proveedor)
JOIN Proveedores P2 ON P2.Id_Proveedor = sub2.empresa_id
HAVING ABS(Diferencia) > 0.05
ORDER BY P.Proveedor;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `radar` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `radar`(IN today DATETIME, IN worker INTEGER, IN scopeDays SMALLINT)
BEGIN
DECLARE todayMidnight DATE DEFAULT TIMESTAMP(today,'23:59:59');
DECLARE yesterday DATETIME;
DECLARE maxDate DATETIME;
DECLARE datBUF DATETIME;
DECLARE warehouse INTEGER;
DECLARE done BIT DEFAULT 0;
DECLARE visible_calc INTEGER;
DECLARE available_calc INTEGER;
DECLARE dateStart DATE;
SET dateStart = TIMESTAMPADD(MONTH, -2, CURDATE());
SELECT TIMESTAMPADD(DAY, -1, today) INTO yesterday;
SELECT TIMESTAMP(TIMESTAMPADD(DAY, scopeDays, yesterday),'23:59:59') INTO maxDate;
CALL subordinate(worker,TRUE);
DROP TEMPORARY TABLE IF EXISTS ticketRange;
CREATE TEMPORARY TABLE ticketRange
SELECT T.Id_Ticket, T.Id_Cliente, C.Id_Trabajador
FROM Tickets T
LEFT JOIN vn.ticketState tls on tls.ticket = T.Id_Ticket
INNER JOIN Clientes C on C.Id_Cliente = T.Id_Cliente
INNER JOIN subordinate s1 ON C.Id_Trabajador = s1.Id_Trabajador
WHERE Fecha >= yesterday
AND Fecha <= maxDate AND T.Factura Is NULL
AND IFNULL(tls.alertLevel,0) < 3
UNION DISTINCT
SELECT Id_Ticket, s.Id_Cliente, s.Id_Trabajador
FROM sharingclient s
INNER JOIN Tickets T USING(Id_Cliente)
LEFT JOIN vn.ticketState tls on tls.ticket = T.Id_Ticket
INNER JOIN subordinate s2 ON s.Id_Trabajador = s2.Id_Trabajador
WHERE maxDate >= datSTART
AND datEND >= yesterday
AND date(Fecha) >= IF(yesterday > datSTART, yesterday, datSTART)
AND date(Fecha) <= IF(datEND > maxDate, maxDate, datEND)
AND IFNULL(tls.alertLevel,0) < 3
UNION DISTINCT
SELECT Id_Ticket, C.Id_Cliente, s.Id_Suplente
FROM Clientes C
INNER JOIN Tickets T USING(Id_Cliente)
LEFT JOIN vn.ticketState tls on tls.ticket = T.Id_Ticket
INNER JOIN sharingcart s ON s.Id_Trabajador = C.Id_Trabajador
INNER JOIN subordinate su on su.Id_Trabajador=Id_Suplente
WHERE maxDate >= datSTART
AND datEND >= yesterday
AND date(Fecha) >= IF(yesterday > datSTART, yesterday, datSTART)
AND date(Fecha) <= IF(datEND > maxDate, maxDate, datEND)
AND IFNULL(tls.alertLevel,0) < 3
UNION DISTINCT
SELECT Id_Ticket, C.Id_Cliente, C.Id_Trabajador
FROM Clientes C
INNER JOIN Tickets T USING(Id_Cliente)
LEFT JOIN vn.ticketState tls on tls.ticket = T.Id_Ticket
INNER JOIN workerTeamCollegues w ON w.collegueId = C.Id_Trabajador
WHERE Fecha >= yesterday
AND Fecha <= maxDate AND T.Factura Is NULL
AND IFNULL(tls.alertLevel,0) < 3
AND w.workerId = worker;
IF (SELECT COUNT(*) FROM ticketRange) THEN
DROP TEMPORARY TABLE IF EXISTS tmp.client_list;
CREATE TEMPORARY TABLE tmp.client_list
(INDEX (Id_Cliente))
ENGINE = MEMORY
SELECT DISTINCT Id_Cliente FROM ticketRange;
DROP TEMPORARY TABLE IF EXISTS cr5;
CREATE TEMPORARY TABLE cr5
(INDEX (Id_Cliente))
ENGINE = MEMORY
SELECT Id_Cliente FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
CREATE TEMPORARY TABLE `ticket_tmp`
ENGINE = MEMORY
SELECT t.Id_Ticket ticket_id FROM Tickets t
STRAIGHT_JOIN tmp.client_list c ON t.Id_Cliente = c.Id_Cliente
WHERE Fecha BETWEEN dateStart AND maxDate
AND Factura Is NULL;
CALL ticket_total();
DROP TEMPORARY TABLE IF EXISTS tt3;
CREATE TEMPORARY TABLE tt3
ENGINE = MEMORY
SELECT * FROM ticket_total tt
JOIN ticketRange tr ON tr.Id_Ticket = tt.ticket_id;
DROP TEMPORARY TABLE IF EXISTS Radartest;
CREATE TEMPORARY TABLE Radartest
SELECT IF(C.Id_Trabajador = worker, 1, 0) as Propio,
Credito,
Riesgo,
T.Id_Ticket,
T.warehouse_id as wh,
T.Fecha,
T.Alias,
REPEAT(' ',50) as problem,
T.Agencia Tipo,
T.workerId AS Id_Trabajador,
T.Solucion,
T.Localizacion,
IFNULL(state,'LIBRE') as Estado,
alertLevel,
alertCode,
Date(T.Fecha) as Fecha_Simple,
T.Importe,
C.Descuento,
C.calidad,
C.Id_Cliente,
p.`name` provincia
FROM Clientes C
INNER JOIN
(
SELECT T.* , A.Vista, A.Agencia, s.`name` as state, alertLevel, s.`code` AS alertCode, tt3.Id_Trabajador AS workerId,
tt3.total as Importe,
0 AS inacabable
FROM Tickets T
LEFT JOIN vn.ticketState ts on ts.ticket = T.Id_Ticket
LEFT JOIN vn2008.state s on s.id = ts.state
INNER JOIN tt3 ON tt3.ticket_id = T.Id_Ticket
INNER JOIN Agencias A ON A.Id_Agencia = T.Id_Agencia
GROUP BY T.Id_Ticket
) AS T ON T.Id_Cliente = C.Id_Cliente
LEFT JOIN Consignatarios co ON co.Id_Consigna = T.Id_Consigna
LEFT JOIN province p ON p.province_id = co.province_id
LEFT JOIN
(
SELECT TOTAL.Id_Cliente, ROUND(SUM(amount),2) as Riesgo FROM
(SELECT cl.Id_Cliente, amount FROM bi.customer_risk cr
INNER JOIN tmp.client_list cl ON cr.customer_id = cl.Id_Cliente
UNION ALL
SELECT t.Id_Cliente, tt.total FROM ticket_total tt
INNER JOIN Tickets t ON t.Id_Ticket = tt.ticket_id
INNER JOIN cr5 C ON C.Id_Cliente = t.Id_Cliente
WHERE t.Fecha BETWEEN dateStart AND maxDate
AND t.Factura is null
) as TOTAL GROUP BY TOTAL.Id_Cliente
) AS Peligros ON Peligros.Id_Cliente = C.Id_Cliente
;
set @cliente:= 0;
SET @riesgo := 0;
UPDATE Radartest SET Riesgo =
IF(@cliente <> @cliente:= Id_Cliente , - Importe + @riesgo:= - Riesgo + Importe , - Importe + @riesgo:= @riesgo + Importe)
order by Id_Cliente, Fecha_Simple DESC;
DROP TEMPORARY TABLE IF EXISTS tmp.ticket_list;
CREATE TEMPORARY TABLE tmp.ticket_list
SELECT Id_Ticket, Id_Cliente FROM Radartest;
CALL prepare_client_list();
CALL production_buffer_problems;
UPDATE Radartest r
JOIN (
SELECT Id_Ticket, GROUP_CONCAT(problem) problem
FROM tmp.buffer_problems
GROUP BY Id_Ticket
) p on p.Id_Ticket = r.Id_Ticket
SET r.problem = p.problem;
SELECT R.*, Riesgo + Credito as Risk , CodigoTrabajador
FROM Radartest R
INNER JOIN vn2008.Trabajadores trab on R.Id_Trabajador=trab.Id_Trabajador;
END IF;
DROP TEMPORARY TABLE IF EXISTS ticketRange;
DROP TABLE IF EXISTS subordinate;
DROP TEMPORARY TABLE IF EXISTS tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS cr5;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `radartest` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `radartest`(IN today DATETIME, IN worker INTEGER, IN scopeDays SMALLINT)
BEGIN
DECLARE todayMidnight DATE DEFAULT TIMESTAMP(today,'23:59:59');
DECLARE yesterday DATETIME;
DECLARE maxDate DATETIME;
DECLARE datBUF DATETIME;
DECLARE warehouse INTEGER;
DECLARE done BIT DEFAULT 0;
DECLARE visible_calc INTEGER;
DECLARE available_calc INTEGER;
DECLARE dateStart DATE;
SET dateStart = TIMESTAMPADD(MONTH, -2, CURDATE());
SELECT TIMESTAMPADD(DAY, -1, today) INTO yesterday;
SELECT TIMESTAMP(TIMESTAMPADD(DAY, scopeDays, yesterday),'23:59:59') INTO maxDate;
CALL subordinate(worker,TRUE);
DROP TEMPORARY TABLE IF EXISTS ticketRange;
CREATE TEMPORARY TABLE ticketRange
SELECT T.Id_Ticket, T.Id_Cliente, C.Id_Trabajador
FROM Tickets T
LEFT JOIN vn.ticketState tls on tls.ticket = T.Id_Ticket
INNER JOIN Clientes C on C.Id_Cliente = T.Id_Cliente
INNER JOIN subordinate s1 ON C.Id_Trabajador = s1.Id_Trabajador
WHERE Fecha >= yesterday
AND Fecha <= maxDate AND T.Factura Is NULL
AND IFNULL(tls.alertLevel,0) < 3
UNION DISTINCT
SELECT Id_Ticket, s.Id_Cliente, s.Id_Trabajador
FROM sharingclient s
INNER JOIN Tickets T USING(Id_Cliente)
LEFT JOIN vn.ticketState tls on tls.ticket = T.Id_Ticket
INNER JOIN subordinate s2 ON s.Id_Trabajador = s2.Id_Trabajador
WHERE maxDate >= datSTART
AND datEND >= yesterday
AND date(Fecha) >= IF(yesterday > datSTART, yesterday, datSTART)
AND date(Fecha) <= IF(datEND > maxDate, maxDate, datEND)
AND IFNULL(tls.alertLevel,0) < 3
UNION DISTINCT
SELECT Id_Ticket, C.Id_Cliente, s.Id_Suplente
FROM Clientes C
INNER JOIN Tickets T USING(Id_Cliente)
LEFT JOIN vn.ticketState tls on tls.ticket = T.Id_Ticket
INNER JOIN sharingcart s ON s.Id_Trabajador = C.Id_Trabajador
INNER JOIN subordinate su on su.Id_Trabajador=Id_Suplente
WHERE maxDate >= datSTART
AND datEND >= yesterday
AND date(Fecha) >= IF(yesterday > datSTART, yesterday, datSTART)
AND date(Fecha) <= IF(datEND > maxDate, maxDate, datEND)
AND IFNULL(tls.alertLevel,0) < 3;
IF (SELECT COUNT(*) FROM ticketRange) THEN
DROP TEMPORARY TABLE IF EXISTS tmp.client_list;
CREATE TEMPORARY TABLE tmp.client_list
(INDEX (Id_Cliente))
ENGINE = MEMORY
SELECT DISTINCT Id_Cliente FROM ticketRange;
DROP TEMPORARY TABLE IF EXISTS cr5;
CREATE TEMPORARY TABLE cr5
(INDEX (Id_Cliente))
ENGINE = MEMORY
SELECT Id_Cliente FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
CREATE TEMPORARY TABLE `ticket_tmp`
ENGINE = MEMORY
SELECT t.Id_Ticket ticket_id FROM Tickets t
STRAIGHT_JOIN tmp.client_list c ON t.Id_Cliente = c.Id_Cliente
WHERE Fecha BETWEEN dateStart AND maxDate
AND Factura Is NULL;
CALL ticket_total();
DROP TEMPORARY TABLE IF EXISTS tt3;
CREATE TEMPORARY TABLE tt3
ENGINE = MEMORY
SELECT * FROM ticket_total tt
JOIN ticketRange tr ON tr.Id_Ticket = tt.ticket_id;
DROP TEMPORARY TABLE IF EXISTS Radartest;
CREATE TEMPORARY TABLE Radartest
SELECT IF(C.Id_Trabajador = worker, 1, 0) as Propio,
Credito,
Riesgo,
T.Id_Ticket,
T.warehouse_id as wh,
T.Fecha,
T.Alias,
REPEAT(' ',50) as problem,
T.Agencia Tipo,
T.workerId AS Id_Trabajador,
T.Solucion,
T.Localizacion,
IFNULL(state,'LIBRE') as Estado,
alertLevel,
Date(T.Fecha) as Fecha_Simple,
T.Importe,
C.Descuento,
C.calidad,
C.Id_Cliente,
p.`name` provincia
FROM Clientes C
INNER JOIN
(
SELECT T.* , A.Vista, A.Agencia, s.`name` as state, alertLevel, tt3.Id_Trabajador AS workerId,
tt3.total as Importe,
0 AS inacabable
FROM Tickets T
LEFT JOIN vn.ticketState ts on ts.ticket = T.Id_Ticket
LEFT JOIN vn2008.state s on s.id = ts.state
INNER JOIN tt3 ON tt3.ticket_id = T.Id_Ticket
INNER JOIN Agencias A ON A.Id_Agencia = T.Id_Agencia
GROUP BY T.Id_Ticket
) AS T ON T.Id_Cliente = C.Id_Cliente
LEFT JOIN Consignatarios co ON co.Id_Consigna = T.Id_Consigna
LEFT JOIN province p ON p.province_id = co.province_id
LEFT JOIN
(
SELECT TOTAL.Id_Cliente, ROUND(SUM(amount),2) as Riesgo FROM
(SELECT cl.Id_Cliente, amount FROM bi.customer_risk cr
INNER JOIN tmp.client_list cl ON cr.customer_id = cl.Id_Cliente
UNION ALL
SELECT t.Id_Cliente, tt.total FROM ticket_total tt
INNER JOIN Tickets t ON t.Id_Ticket = tt.ticket_id
INNER JOIN cr5 C ON C.Id_Cliente = t.Id_Cliente
WHERE t.Fecha BETWEEN dateStart AND maxDate
AND t.Factura is null
) as TOTAL GROUP BY TOTAL.Id_Cliente
) AS Peligros ON Peligros.Id_Cliente = C.Id_Cliente
;
set @cliente:= 0;
SET @riesgo := 0;
UPDATE Radartest SET Riesgo =
IF(@cliente <> @cliente:= Id_Cliente , - Importe + @riesgo:= - Riesgo + Importe , - Importe + @riesgo:= @riesgo + Importe)
order by Id_Cliente, Fecha_Simple DESC;
DROP TEMPORARY TABLE IF EXISTS tmp.ticket_list;
CREATE TEMPORARY TABLE tmp.ticket_list
SELECT Id_Ticket, Id_Cliente FROM Radartest;
CALL prepare_client_list();
CALL production_buffer_problems;
UPDATE Radartest r
JOIN (
SELECT Id_Ticket, GROUP_CONCAT(problem) problem
FROM tmp.buffer_problems
GROUP BY Id_Ticket
) p on p.Id_Ticket = r.Id_Ticket
SET r.problem = p.problem;
SELECT R.*, Riesgo + Credito as Risk , CodigoTrabajador
FROM Radartest R
INNER JOIN vn2008.Trabajadores trab on R.Id_Trabajador=trab.Id_Trabajador;
END IF;
DROP TEMPORARY TABLE IF EXISTS ticketRange;
DROP TABLE IF EXISTS subordinate;
DROP TEMPORARY TABLE IF EXISTS tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS cr5;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `radar_lostcalls` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `radar_lostcalls`()
BEGIN
SELECT Averiguar_ComercialCliente(C.Id_Cliente, calldate) as Comercial, C.Cliente AS Cliente, A2.Telefono
, A.Nombre as Destino, t3.* FROM
( SELECT * FROM
(SELECT * FROM
( SELECT dstchannel, disposition, calldate,src,dst,1 as missed, TIMESTAMPADD(SECOND,duration,calldate) as hangupdate,
TIMESTAMPADD(SECOND, (-billsec),TIMESTAMPADD(SECOND,duration,calldate) ) as answerdate,
duration, billsec FROM
(SELECT * FROM
(SELECT * FROM cdr WHERE calldate > timestampadd(day, -4,curdate()) ORDER BY calldate DESC ) t
GROUP BY src
) cdr_sub
WHERE (dstchannel = '' or disposition <> 'ANSWERED' or lastapp = 'Playback') AND dstchannel <> 'killed'
AND src > 6000
AND calldate > TIMESTAMPADD(DAY,-4,CURDATE())
UNION ALL
SELECT dstchannel, disposition, calldate,dst, 0,0,calldate,calldate,0,0
FROM cdr
WHERE dst > 6000
AND calldate > TIMESTAMPADD(WEEK,-4,CURDATE())
) t
ORDER BY calldate DESC
) t2 GROUP BY src
HAVING missed
ORDER BY calldate DESC
) t3
LEFT JOIN v_Agenda2 A2 ON CAST(A2.Telefono AS SIGNED) = t3.src
LEFT JOIN v_Agenda2 A ON CAST(A.Telefono AS SIGNED) = t3.dst
LEFT JOIN Clientes C ON C.Id_Cliente = A2.Id AND A2.Tipo = 'C'
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `radar_negativos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `radar_negativos`(IN v_force BOOLEAN, IN intRANGE INT)
BEGIN
CALL `cache`.stock_refresh(v_force);
SET @aid = NULL;
call article_minacum(NULL,CURDATE(),intRANGE);
SELECT a.Id_Article, a.Article, sub.warehouse_id, p.`name` producer, a.Medida, a.Categoria
, w.name as Almacen, sum(IFNULL(amount,0)) as Negativo
FROM (SELECT item_id, warehouse_id, amount
FROM cache.stock
WHERE amount > 0
UNION ALL
SELECT article_id, warehouse_id, amount
FROM article_minacum
) sub
JOIN warehouse w on w.id = warehouse_id
JOIN Articles a on a.Id_Article = item_id
LEFT JOIN producer p on p.producer_id = a.producer_id
JOIN Tipos t on t.tipo_id = a.tipo_id
JOIN reinos r on r.id = t.reino_id
WHERE w.tpv
AND t.tipo_id NOT IN (61,101,100,99, 180, 7, 21)
AND r.display <> 0
AND a.Id_Article NOT IN (95,98)
GROUP BY item_id, warehouse_id
HAVING negativo < 0;
DROP TEMPORARY TABLE IF EXISTS article_minacum;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `recalculator` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `recalculator`(vTicketId INT)
BEGIN
DECLARE vWh INT;
DECLARE vDate DATE;
DECLARE vCustomerId INT;
DECLARE vServiFac INT;
SELECT warehouse_id, Fecha, Id_Cliente, IFNULL(Factura, 0) != 0 OR Etiquetasemitidas != 0
INTO vWh, vDate, vCustomerId, vServiFac
FROM Tickets
WHERE Id_Ticket = vTicketId;
IF NOT vServiFac
THEN
DROP TEMPORARY TABLE IF EXISTS item;
CREATE TEMPORARY TABLE item
(INDEX (id))
ENGINE = MEMORY
SELECT Id_Article id, Id_Movimiento
FROM Movimientos
WHERE Preciofijado = FALSE
AND Id_Ticket = vTicketId
AND (Id_Article < 82 OR Id_Article > 100);
CALL item_buy (vWh, vDate);
CALL item_buy_price (vCustomerId, vDate, vWh);
UPDATE Movimientos
JOIN item USING (Id_Movimiento)
SET Preu = price,
Descuento = discount;
SELECT * FROM item;
DROP TEMPORARY TABLE item;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `recalculator_plus` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `recalculator_plus`(vTicketId INT)
BEGIN
CALL recalculator (vTicketId);
CREATE TEMPORARY TABLE movement
ENGINE = MEMORY
SELECT Id_Movimiento, Id_Article, Preu, Descuento, Cantidad, ABS(Preciofijado) AS PrecioFijado
FROM Movimientos
WHERE Id_Ticket = vTicketId
AND Reservado = FALSE
AND Id_Article NOT BETWEEN 85 AND 100
AND Id_Movimiento NOT IN
(
SELECT Id_Movimiento FROM Movimientos
WHERE Id_Ticket = vTicketId
AND Reservado = FALSE
AND Id_Article NOT BETWEEN 71 AND 100
GROUP BY Id_Article, Preu, Descuento, ABS(PrecioFijado)
HAVING COUNT(*) = 1
UNION ALL
SELECT Id_Movimiento FROM movement_label
) FOR UPDATE;
CREATE TEMPORARY TABLE movement_u
ENGINE = MEMORY
SELECT Id_Movimiento, Id_Article, Preu, Descuento, PrecioFijado, SUM(Cantidad) amount
FROM movement
GROUP BY Id_Article, Preu, Descuento, PrecioFijado;
UPDATE Movimientos
JOIN movement_u u USING(Id_Movimiento)
JOIN Tickets T ON T.Id_Ticket = vTicketId
SET Cantidad = amount;
DELETE movement FROM movement JOIN movement_u USING (Id_Movimiento);
DELETE Movimientos FROM Movimientos JOIN movement USING (Id_Movimiento);
DROP TEMPORARY TABLE movement;
DROP TEMPORARY TABLE movement_u;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `recibida_select` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `recibida_select`(IN recibida INT)
BEGIN
DECLARE cta_proveed VARCHAR(10);
DECLARE cta_proveeda VARCHAR(10);
DECLARE v_num_recibida INT;
DECLARE dblRefRate,dblRefMin,dblRef DOUBLE;
DECLARE NEW_id,NEW_empresa_id,NEW_proveedor_id INT;
DECLARE NEW_serie VARCHAR(1);
DECLARE NEW_fecha DATE;
DECLARE NEW_num_recibida VARCHAR(10);
DECLARE NEW_sref VARCHAR(20);
SELECT id,empresa_id,proveedor_id,serie,fecha,num_recibida,sref
INTO NEW_id,NEW_empresa_id,NEW_proveedor_id, NEW_serie,NEW_fecha,NEW_num_recibida, NEW_sref
FROM recibida WHERE id = recibida;
SELECT rate INTO dblRefRate FROM reference_rate WHERE date = (SELECT MAX(date) FROM reference_rate
WHERE date <= (SELECT t.shipment FROM
recibida_entrada re
INNER JOIN Entradas e ON e.Id_Entrada = re.Id_Entrada
LEFT JOIN travel t ON t.id = e.travel_id
WHERE re.awb_recibida = recibida GROUP BY re.awb_recibida));
SELECT rate INTO dblRefMin FROM reference_min WHERE date=(SELECT MAX(date) FROM reference_min
WHERE date<=(SELECT t.shipment FROM
recibida_entrada re
INNER JOIN Entradas e ON e.Id_Entrada = re.Id_Entrada
LEFT JOIN travel t ON t.id = e.travel_id
WHERE re.awb_recibida = NEW_id GROUP BY re.awb_recibida));
SELECT IFNULL(MAX(r.num_recibida) + 1,1) INTO v_num_recibida FROM recibida r
WHERE r.serie LIKE NEW_serie
AND YEAR(r.fecha) = YEAR(NEW_fecha)
AND r.empresa_id = NEW_empresa_id GROUP BY r.empresa_id;
SET NEW_num_recibida = IFNULL(v_num_recibida,1);
SELECT REPLACE(cuenta,' ','') INTO cta_proveed FROM Proveedores WHERE Id_Proveedor=NEW_proveedor_id;
SELECT a,NEW_fecha,subcta,contra,concepto,eurodebe,eurohaber,baseeuro,NEW_serie,NEW_sref,iva,
(SELECT CONCAT(NEW_serie,'/', LPAD(v_num_recibida,5,'0'))),l340,LRECT349,TIPOOPE,AUXILIAR,NEW_empresa_id
FROM
(SELECT MAX(ASIEN) + 1 as a FROM XDiario) t
INNER JOIN
(
SELECT *,NEW_serie FROM
(SELECT CONCAT('s/fra',RIGHT(sref,8),':',LEFT(Proveedor, 10)) concepto FROM Proveedores
INNER JOIN recibida ON Id_Proveedor = proveedor_id WHERE id = NEW_id) t4
INNER JOIN(
SELECT subcta,'' contra,eurodebe,ROUND(SUM(eurohaber) + 0.0001,2) eurohaber,baseeuro,0 iva, l340,LRECT349,TIPOOPE,'' AUXILIAR
FROM (
SELECT cta_proveed subcta,
NULL eurodebe, ROUND((1+(iva/100)*(r.serie = 'R'))*SUM(bi),2) eurohaber, NULL baseeuro,ri.recibida_id, 0 l340,0 LRECT349,' ' TIPOOPE
FROM recibida r
INNER JOIN recibida_iva ri ON ri.recibida_id = r.id INNER JOIN iva_codigo ic ON ri.iva_id = ic.id
INNER JOIN Proveedores p ON p.Id_Proveedor=r.proveedor_id
INNER JOIN Proveedores p2 ON p2.Id_Proveedor = r.empresa_id
WHERE r.id = NEW_id GROUP BY iva) t
GROUP BY recibida_id
UNION ALL
SELECT ic.codigo,cta_proveed contra,
ROUND(iva/100*SUM(ri.bi) + 0.0001,2) eurodebe, NULL eurohaber,
ROUND(SUM(ri.bi),2) baseeuro,iva, 1 l340,(NOT ((p.pais_id <> p2.pais_id) AND pa.CEE < 2)) LRECT349,TIPOOPE,
IF(pa2.CEE < 2 AND ri2.gastos_id IS NULL,'','*') AUXILIAR
FROM recibida r
INNER JOIN recibida_iva ri ON ri.recibida_id = r.id
LEFT JOIN recibida_iva ri2 ON ri2.recibida_id = r.id AND ri2.gastos_id LIKE '4751______'
INNER JOIN iva_codigo ic ON ri.iva_id = ic.id
INNER JOIN iva_tipo it ON ic.iva_tipo_id = it.id
INNER JOIN Gastos g ON ri.gastos_id = g.Id_Gasto AND g.iva_tipo_id = ic.iva_tipo_id
INNER JOIN Proveedores p ON p.Id_Proveedor=r.proveedor_id
INNER JOIN Paises pa ON p.pais_id = pa.Id
INNER JOIN Proveedores p2 ON p2.Id_Proveedor = r.empresa_id
INNER JOIN Paises pa2 ON p2.pais_id = pa2.Id
WHERE r.id = NEW_id AND g.conbase AND link GROUP BY iva
UNION ALL
SELECT ic2.codigo,cta_proveed contra,
NULL eurodebe, ROUND(ic2.iva/100*SUM(bi) + 0.0001,2) eurohaber,
ROUND(SUM(bi),2) baseeuro,ic2.iva, 1 l340,0 LRECT349,TIPOOPE,'*' AUXILIAR
FROM recibida r
INNER JOIN recibida_iva ri ON ri.recibida_id = r.id
INNER JOIN iva_codigo ic ON ri.iva_id = ic.id
INNER JOIN iva_codigo ic2 ON ic2.link = ic.link AND ic.id <> ic2.id
INNER JOIN iva_tipo it ON ic.iva_tipo_id = it.id
WHERE r.id = NEW_id AND ic2.link GROUP BY ic2.iva
UNION ALL
SELECT if(gastos_id LIKE '4751______',LPAD(RIGHT(cta_proveed ,4),10,gastos_id),gastos_id),cta_proveed ,
if(gastos_id LIKE '4751______',NULL,ABS(ROUND(SUM(bi),2))) ,
if(gastos_id LIKE '4751______',ABS(ROUND(SUM(bi),2)),NULL) ,
NULL ,0, 0 l340,0 LRECT349,' ' TIPOOPE,'' AUXILIAR
FROM recibida r
INNER JOIN recibida_iva ri ON ri.recibida_id = r.id
INNER JOIN Proveedores p ON p.Id_Proveedor=r.proveedor_id
WHERE r.id = NEW_id AND gastos_id <> 5660000002 GROUP BY gastos_id
) t2
UNION ALL
SELECT CONCAT('COMPRA s/fra ',sref,':',LEFT(p.Proveedor, 10)) concepto ,gastos_id,cuenta,
ROUND(SUM(bi)/IF(r.serie='W',dblRefRate,1)* (re.percentage / 100),2),NULL ,IF( @a:=@a+1 ,NULL,NULL) ,0, 0 l340,0 LRECT349,' ' TIPOOPE,'' AUXILIAR,r.serie
FROM recibida_entrada re
INNER JOIN recibida_iva ri ON re.recibida_id = ri.recibida_id
INNER JOIN recibida r ON r.id = ri.recibida_id
INNER JOIN Proveedores p ON p.Id_Proveedor = r.proveedor_id
INNER JOIN Entradas e ON e.Id_Entrada = re.Id_Entrada
LEFT JOIN travel t ON t.id = e.travel_id
INNER JOIN (SELECT @a:=0,@cont:=1,@total:=0,@base:=2) t1
WHERE re.awb_recibida = NEW_id AND re.percentage GROUP BY r.id
UNION ALL
SELECT CONCAT('COMPRA s/fra ',sref,':',LEFT(p.Proveedor, 10)) concepto ,p.cuenta subcta,gastos_id,
NULL eurodebe, ROUND((1+(iva/100)*(r.serie = 'R'))*SUM(bi)/IF(r.serie='W',dblRefRate,1)* (re.percentage / 100),2) eurohaber,
NULL baseeuro,0 iva, 0 l340,0 LRECT349,' ' TIPOOPE,'' AUXILIAR,r.serie
FROM recibida_entrada re
INNER JOIN recibida_iva ri ON re.recibida_id = ri.recibida_id
INNER JOIN recibida r ON r.id = ri.recibida_id
INNER JOIN iva_codigo ic ON ri.iva_id = ic.id
INNER JOIN Proveedores p ON Id_Proveedor = r.proveedor_id
INNER JOIN Proveedores p2 ON p2.Id_Proveedor = r.empresa_id
WHERE re.awb_recibida = NEW_id AND re.percentage GROUP BY r.id
UNION ALL
SELECT CONCAT('ADQUI. INTRA FRA ',sref),ic.codigo,p.cuenta contra,
ROUND(iva/100*SUM(ri.importe) + 0.0001,2) eurodebe, NULL eurohaber,
ROUND(SUM(ri.importe),2) baseeuro,iva, 1 l340,1 LRECT349,TIPOOPE,'' AUXILIAR,r.serie
FROM awb_recibida ar
JOIN awb a ON ar.awb_id = a.id
JOIN iva_codigo ic ON a.iva_id = ic.id
JOIN iva_tipo it ON ic.iva_tipo_id = it.id
JOIN Proveedores p ON a.transitario_id = p.Id_Proveedor
JOIN recibida_intrastat ri ON ri.recibida_id = ar.recibida_id
JOIN recibida r ON r.id = ri.recibida_id
JOIN Proveedores p2 ON p2.Id_Proveedor = r.empresa_id
WHERE ar.recibida_id = NEW_id AND (p.pais_id <> p2.pais_id)
GROUP BY iva
UNION ALL
SELECT CONCAT('ADQUI. INTRA FRA ',sref),ic2.codigo,p.cuenta contra,
NULL eurodebe, ROUND(ic2.iva/100*SUM(ri.importe) + 0.0001,2) eurohaber,
ROUND(SUM(ri.importe),2) baseeuro,ic2.iva, 1 l340,0 LRECT349, TIPOOPE,'' AUXILIAR,r.serie
FROM awb_recibida ar
JOIN awb a ON ar.awb_id = a.id
JOIN iva_codigo ic ON a.iva_id = ic.id
JOIN iva_codigo ic2 ON ic2.link = ic.link AND ic.id <> ic2.id
JOIN iva_tipo it ON ic.iva_tipo_id = it.id
JOIN Proveedores p ON a.transitario_id = p.Id_Proveedor
JOIN recibida_intrastat ri ON ri.recibida_id = ar.recibida_id
JOIN recibida r ON r.id = ar.recibida_id
JOIN Proveedores p1 ON p1.Id_Proveedor = r.proveedor_id
JOIN Proveedores p2 ON p2.Id_Proveedor = r.empresa_id
WHERE ar.recibida_id = NEW_id AND (p.pais_id <> p2.pais_id) GROUP BY ic2.iva
UNION ALL
SELECT concepto,subcta,Cuenta,
IF (NOT ((ppais_id <> p2pais_id) AND CEE < 2),
(IF(@cont<@a,
eurodebe,
ROUND(bi-@total,2)
))
,NULL)eurodebe,eurohaber,baseeuro,iva,
IF(@total:=@total+eurodebe ,0,0) l340,0 LRECT349,
IF(@cont:=@cont+1,'','') TIPOOPE,'*' AUXILIAR,serie FROM (
SELECT CONCAT('COMPRA FRA ',p.Proveedor) concepto,ic.codigo subcta,p.Cuenta,ic.iva,
red(sum(costefijo * Cantidad / sub1.costetotal * sub2.importe)*0.21) eurodebe,NULL eurohaber,
ROUND(sum(costefijo * Cantidad / sub1.costetotal * sub2.importe),2) baseeuro,ri.bi,r.serie,pa.CEE,p.pais_id ppais_id,p2.pais_id p2pais_id
FROM awb_recibida ar
JOIN recibida_entrada re ON ar.recibida_id = re.awb_recibida
JOIN Compres c ON c.Id_Entrada = re.Id_Entrada
INNER JOIN Articles a ON a.Id_Article = c.Id_Article
INNER JOIN (
SELECT a.Codintrastat, sum(c.costefijo * c.Cantidad) as costetotal
FROM Compres c
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN recibida_entrada re ON re.Id_Entrada = c.Id_Entrada
JOIN awb_recibida ar ON ar.recibida_id = re.awb_recibida
JOIN awb aw ON ar.awb_id = aw.id
WHERE ar.recibida_id = NEW_id AND re.percentage
GROUP BY a.Codintrastat
) sub1 USING(Codintrastat)
INNER JOIN (
SELECT Codintrastat,ri.importe
FROM recibida_intrastat ri
WHERE ri.recibida_id = NEW_id
) sub2 USING(Codintrastat)
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN Proveedores p ON p.Id_Proveedor = e.Id_Proveedor
JOIN Paises pa ON p.pais_id = pa.Id
JOIN recibida_iva ri ON ri.recibida_id = re.awb_recibida
JOIN recibida_iva ri2 ON ri2.recibida_id = re.recibida_id
JOIN iva_codigo ic ON ic.id = ri2.iva_id
JOIN recibida r ON r.id = re.recibida_id
JOIN Proveedores p2 ON p2.Id_Proveedor = r.empresa_id
WHERE re.awb_recibida = NEW_id AND re.percentage AND IF(cta_proveed like '___0______',ri.gastos_id = 5660000002,TRUE)
GROUP BY p.Id_Proveedor
) t3)t4;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `recibida_select2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `recibida_select2`(IN recibida INT)
BEGIN
DECLARE cta_proveed VARCHAR(10);
DECLARE cta_proveeda VARCHAR(10);
DECLARE v_num_recibida INT;
DECLARE dblRefRate,dblRefMin,dblRef DOUBLE;
DECLARE NEW_id,NEW_empresa_id,NEW_proveedor_id INT;
DECLARE NEW_serie VARCHAR(1);
DECLARE NEW_fecha DATE;
DECLARE NEW_num_recibida VARCHAR(10);
DECLARE NEW_sref VARCHAR(20);
SELECT id,empresa_id,proveedor_id,serie,fecha,num_recibida,sref
INTO NEW_id,NEW_empresa_id,NEW_proveedor_id, NEW_serie,NEW_fecha,NEW_num_recibida, NEW_sref
FROM recibida WHERE id = recibida;
SELECT rate INTO dblRefRate FROM reference_rate WHERE date = (SELECT MAX(date) FROM reference_rate
WHERE date <= (SELECT t.shipment FROM
recibida_entrada re
INNER JOIN Entradas e ON e.Id_Entrada = re.Id_Entrada
LEFT JOIN travel t ON t.id = e.travel_id
WHERE re.awb_recibida = recibida GROUP BY re.awb_recibida));
SELECT rate INTO dblRefMin FROM reference_min WHERE date=(SELECT MAX(date) FROM reference_min
WHERE date<=(SELECT t.shipment FROM
recibida_entrada re
INNER JOIN Entradas e ON e.Id_Entrada = re.Id_Entrada
LEFT JOIN travel t ON t.id = e.travel_id
WHERE re.awb_recibida = NEW_id GROUP BY re.awb_recibida));
SELECT IFNULL(MAX(r.num_recibida) + 1,1) INTO v_num_recibida FROM recibida r
WHERE r.serie LIKE NEW_serie
AND YEAR(r.fecha) = YEAR(NEW_fecha)
AND r.empresa_id = NEW_empresa_id GROUP BY r.empresa_id;
SET NEW_num_recibida = IFNULL(v_num_recibida,1);
SELECT REPLACE(cuenta,' ','') INTO cta_proveed FROM Proveedores WHERE Id_Proveedor=NEW_proveedor_id;
SELECT CONCAT('COMPRA FRA ',p.Proveedor) concepto,ic.codigo subcta,p.Cuenta,ic.iva,
red(sum(costefijo * Cantidad / sub1.costetotal * sub2.importe)*0.21) eurodebe,NULL eurohaber,
ROUND(sum(costefijo * Cantidad / sub1.costetotal * sub2.importe),2) baseeuro,ri.bi,r.serie,pa.CEE,p.pais_id ppais_id,p2.pais_id p2pais_id
FROM awb_recibida ar
left JOIN recibida_entrada re ON ar.recibida_id = re.awb_recibida
left JOIN Compres c ON c.Id_Entrada = re.Id_Entrada
left JOIN Articles a ON a.Id_Article = c.Id_Article
left JOIN (
SELECT a.Codintrastat, sum(c.costefijo * c.Cantidad) as costetotal
FROM Compres c
left JOIN Articles a ON a.Id_Article = c.Id_Article
left JOIN recibida_entrada re ON re.Id_Entrada = c.Id_Entrada
left JOIN awb_recibida ar ON ar.recibida_id = re.awb_recibida
left JOIN awb aw ON ar.awb_id = aw.id
WHERE ar.recibida_id = NEW_id AND re.percentage
GROUP BY a.Codintrastat
) sub1 USING(Codintrastat)
left JOIN (
SELECT Codintrastat,ri.importe
FROM recibida_intrastat ri
WHERE ri.recibida_id = NEW_id
) sub2 USING(Codintrastat)
left JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
left JOIN Proveedores p ON p.Id_Proveedor = e.Id_Proveedor
left JOIN Paises pa ON p.pais_id = pa.Id
left JOIN recibida_iva ri ON ri.recibida_id = re.awb_recibida
left JOIN recibida_iva ri2 ON ri2.recibida_id = re.recibida_id
left JOIN iva_codigo ic ON ic.id = ri2.iva_id
left JOIN recibida r ON r.id = re.recibida_id
left JOIN Proveedores p2 ON p2.Id_Proveedor = r.empresa_id
WHERE re.awb_recibida = NEW_id AND re.percentage AND IF(cta_proveed like '___0______',ri.gastos_id = 5660000002,TRUE)
GROUP BY p.Id_Proveedor;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `recobro_credito` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `recobro_credito`()
BEGIN
INSERT INTO vn2008.daily_task_log(consulta) VALUES('recobro_credito');
DROP TEMPORARY TABLE IF EXISTS clientes_credit;
CREATE TEMPORARY TABLE clientes_credit
SELECT Id_Cliente, if (Credito > Recobro ,Credito - Recobro,0) as newCredit
from
(
SELECT r.Id_Cliente, r.amount as Recobro, timestampadd(DAY, period, UltimaFecha) as Deadline, sub2.amount as Credito
FROM vn2008.recovery r
join
(
select Id_Cliente, amount , odbc_date as UltimaFecha
from
(
select * from credit
order by odbc_date desc
) sub
group by Id_Cliente
) sub2 using(Id_Cliente)
where dend is null or dend >= curdate()
group by Id_Cliente
having Deadline <= curdate()
) sub3
where Credito > 0;
UPDATE Clientes
JOIN
clientes_credit using(Id_Cliente)
SET Clientes.Credito = newCredit;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `reinvoice` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `reinvoice`(Id_Factura VARCHAR(15))
BEGIN
DECLARE date_invoice DATE;
DECLARE customer_id INTEGER;
DECLARE serie CHAR(1);
DECLARE bi DOUBLE;
DECLARE bi_diff DOUBLE;
DECLARE base_max DOUBLE;
DECLARE day_vec INT;
DECLARE bi_r DOUBLE DEFAULT 0;
DECLARE bi_g DOUBLE DEFAULT 0;
DECLARE bi_n DOUBLE DEFAULT 0;
DECLARE iva_r DOUBLE DEFAULT 0;
DECLARE iva_g DOUBLE DEFAULT 0;
DECLARE re_r DOUBLE DEFAULT 0;
DECLARE re_g DOUBLE DEFAULT 0;
DECLARE dblImporte DOUBLE DEFAULT 0;
DECLARE intpais_id TINYINT DEFAULT 1;
DECLARE intFac INTEGER;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
DROP TEMPORARY TABLE IF EXISTS `iva_base`;
CREATE TEMPORARY TABLE `iva_base`
(
`id` VARCHAR(3) NOT NULL,
`base` DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (`id`)
)
ENGINE = MEMORY;
DROP TEMPORARY TABLE IF EXISTS `ticket_invoice`;
CREATE TEMPORARY TABLE `ticket_invoice`
(
`ticket_id` INT NOT NULL,
PRIMARY KEY (`ticket_id`)
)
ENGINE = MEMORY;
START TRANSACTION;
SELECT pais_id,Fecha,f.Id_Factura,Id_Cliente INTO intpais_id,date_invoice,Id_Factura,customer_id FROM Proveedores p
JOIN Facturas f ON p.Id_Proveedor = f.empresa_id
WHERE f.Id_Factura = Id_Factura;
INSERT INTO ticket_invoice (ticket_id) SELECT Id_Ticket FROM Tickets t
WHERE Factura = Id_Factura;
IF (SELECT COUNT(*) FROM ticket_invoice) > 0
THEN
INSERT INTO iva_base (id) SELECT tipoiva FROM tblIVA;
UPDATE iva_base
INNER JOIN
(SELECT tipo, SUM(base) base
FROM
(SELECT t.tipo, red(m.Cantidad * m.Preu * (100 - Descuento) / 100) AS base
FROM
Movimientos m
INNER JOIN ticket_invoice ti ON m.Id_Ticket = ti.ticket_id
INNER JOIN (SELECT t.tipo, Id_Article
FROM
(SELECT
date, iva_codigo_id, ic.tipo, iva_group_id
FROM
iva_group_codigo gi
INNER JOIN iva_codigo ic ON gi.iva_codigo_id = ic.id
INNER JOIN iva_tipo itp ON itp.id = ic.iva_tipo_id
WHERE
date <= date_invoice
AND Id_Pais = intpais_id
ORDER BY date DESC) t
INNER JOIN Articles USING (iva_group_id)
GROUP BY Id_Article) t USING (Id_Article)) sub
GROUP BY tipo) iva_movement ON iva_base.id = iva_movement.tipo
SET
iva_base.base = iva_movement.base;
IF (serie = 'H' OR serie = 'V' OR serie = 'E' OR serie = 'X') THEN
SELECT SUM(base) into dblImporte from iva_base;
ELSE
SET bi_r = (SELECT base FROM iva_base WHERE id = 'R');
SET bi_g = (SELECT base FROM iva_base WHERE id = 'G');
SET bi_n = (SELECT base FROM iva_base WHERE id = '0');
SET iva_r = red(bi_r * (SELECT iva FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'R' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
SET iva_g = red(bi_g * (SELECT iva FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'G' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
IF (SELECT IF(RE = 0, FALSE, TRUE) FROM Clientes WHERE Clientes.Id_cliente = customer_id)
THEN
SET re_r = red(bi_r * (SELECT recargo FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'R' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
SET re_g = red(bi_g * (SELECT recargo FROM iva_codigo INNER JOIN iva_tipo it ON it.id = iva_tipo_id
WHERE tipo = 'G' AND Id_Pais = intpais_id AND Fecha <= date_invoice and iva ORDER BY fecha DESC, recargo DESC LIMIT 1) / 100 );
END IF;
SET dblImporte = bi_r + bi_g + bi_n + iva_r + iva_g + re_r + re_g ;
END IF;
END IF;
IF (SELECT SUM(base) FROM iva_base) != 0
THEN
UPDATE Facturas
SET
BI7 = bi_r,
BI16 = bi_g,
IVA7 = iva_r,
IVA16 = iva_g,
RE1 = re_r,
RE4 = re_g,
Importe = dblImporte
WHERE Facturas.Id_Factura = Id_Factura;
END IF;
DROP TEMPORARY TABLE `iva_base`;
DROP TEMPORARY TABLE `ticket_invoice`;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `resumen_produccion` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `resumen_produccion`(IN datSTART DATE, IN datEND DATE)
BEGIN
DECLARE datENDFIN DATETIME;
DECLARE datSTART_LY DATETIME;
DECLARE datEND_LY DATETIME;
SET datENDFIN = DAYEND(datEND);
SET datSTART_LY = TIMESTAMPADD(YEAR,-1,datSTART);
SET datSTART_LY = TIMESTAMPADD(DAY,-1,datSTART_LY);
SET datEND_LY = TIMESTAMPADD(YEAR,-1,datEND);
SET datEND_LY = TIMESTAMPADD(DAY,-1,datEND_LY);
DROP TEMPORARY TABLE IF EXISTS tblRESUMEN;
CREATE TEMPORARY TABLE tblRESUMEN
(Agencia VARCHAR(30),
Vista INT(2),
Dia DATE,
Tickets INT(4),
unidades INT(11),
m3 INT(6),
bultos INT(6),
linea INT(11),
almacen VARCHAR(25),
importe DOUBLE,
año INT
);
INSERT INTO tblRESUMEN
select Agencia, Vista, Dia, count(Id_Ticket) as Tickets, sum(unidades) as unidades, sum(Volumen) / 1000000 as m3
, sum(Bul1) as bultos, sum(lineas) as linea, almacen, SUM(importe) as importe, año
from
(
select Agencia, Vista, date(Fecha) as Dia, sum(Cantidad) as unidades , sum(Cantidad * cm3) as Volumen
,sum(IF (M.Id_Article IN (71,68,83,79, 85,89,91,92,93), Cantidad, 0)) as Bul1
, Id_Ticket, count(*) as lineas, IFNULL(T.Bultos,0) as Bul2, w.name as almacen, SUM(Cantidad * Preu * (100 - M.Descuento) / 100) importe, year(T.Fecha) as año
from Movimientos M
inner join Tickets T USING(Id_Ticket)
join warehouse w on T.warehouse_id = w.id
join bi.rotacion r on r.Id_Article = M.Id_Article and r.warehouse_id = T.warehouse_id
inner join Clientes C USING(Id_Cliente)
inner join Articles A on A.Id_Article = M.Id_Article
inner join Tipos TP USING(tipo_id)
join reinos re on re.id = TP.reino_id
inner join Agencias USING(Id_Agencia)
where (Fecha BETWEEN datSTART AND datENDFIN or Fecha BETWEEN datSTART_LY AND datEND_LY)
and re.display <> 0
and (invoice or Id_Cliente = 31) and C.Id_Cliente NOT IN (2066,2067,2068)
group by Id_Ticket) sub
group by Agencia, Vista, Dia, almacen, año
;
SET lc_time_names = 'es_ES';
SELECT *,
CASE Vista
WHEN 1 THEN 'Agencias'
WHEN 2 THEN 'Rutas'
WHEN 3 THEN 'Mercado'
ELSE 'Otras'
END as Sector
,dayname(Dia) as Nombre_Dia
, week
, year
FROM tblRESUMEN
JOIN time t on t.date = Dia;
DROP TEMPORARY TABLE IF EXISTS tblRESUMEN;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `risk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `risk`(v_date DATE, v_customer INT)
BEGIN
DECLARE v_date_start DATETIME DEFAULT TIMESTAMPADD(MONTH, -33, CURDATE());
DECLARE v_date_end DATETIME;
SET v_date = IFNULL(v_date, CURDATE());
SET v_date_end = TIMESTAMP(v_date, '23:59:59');
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
CREATE TEMPORARY TABLE ticket_tmp
ENGINE = MEMORY
SELECT Id_Ticket ticket_id FROM Tickets t
WHERE (v_customer IS NULL OR Id_Cliente = v_customer)
AND t.Factura IS NULL
AND t.Fecha BETWEEN v_date_start AND v_date_end;
CALL ticket_total();
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
CREATE TEMPORARY TABLE tmp.risk
ENGINE = MEMORY
SELECT Id_Cliente, SUM(amount) risk
FROM Clientes c
JOIN (
SELECT customer_id, SUM(amount) amount
FROM bi.customer_risk
WHERE (v_customer IS NULL OR customer_id = v_customer)
GROUP BY customer_id
UNION ALL
SELECT Id_Cliente, SUM(Entregado)
FROM Recibos
WHERE (v_customer IS NULL OR Id_Cliente = v_customer)
AND Fechacobro > v_date_end
GROUP BY Id_Cliente
UNION ALL
SELECT t.Id_Cliente, SUM(total)
FROM ticket_total tt
JOIN Tickets t ON tt.ticket_id = t.Id_Ticket
GROUP BY t.Id_Cliente
UNION ALL
SELECT t.customer_id, CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction t
WHERE (v_customer IS NULL OR t.customer_id = v_customer)
AND t.receipt_id IS NULL
AND t.status = 'ok'
GROUP BY t.customer_id
) t ON c.Id_Cliente = t.customer_id
WHERE c.activo != FALSE
GROUP BY c.Id_Cliente;
DROP TEMPORARY TABLE
ticket_total,
ticket_tmp;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `risk_vs_client_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `risk_vs_client_list`(maxRiskDate DATE)
BEGIN
DECLARE startingDate DATETIME DEFAULT TIMESTAMPADD(DAY, - DAYOFMONTH(CURDATE()) - 5, CURDATE());
DECLARE endingDate DATETIME;
DECLARE MAX_RISK_ALLOWED INT DEFAULT 200;
SET maxRiskDate = IFNULL(maxRiskDate, CURDATE());
SET endingDate = TIMESTAMP(maxRiskDate, '23:59:59');
DROP TEMPORARY TABLE IF EXISTS tmp.client_list_2;
CREATE TEMPORARY TABLE tmp.client_list_2
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS tmp.client_list_3;
CREATE TEMPORARY TABLE tmp.client_list_3
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS tmp.tickets_sin_facturar;
CREATE TEMPORARY TABLE tmp.tickets_sin_facturar
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT t.Id_Cliente, floor(IF(VIES, 1, 1.1) * sum(Cantidad * Preu * (100 - Descuento) / 100)) as total
FROM Movimientos m
JOIN Tickets t on m.Id_Ticket = t.Id_Ticket
JOIN tmp.client_list c on c.Id_Cliente = t.Id_Cliente
JOIN vn.client cl ON cl.id = t.Id_Cliente
WHERE Factura IS NULL
AND Fecha BETWEEN startingDate AND endingDate
GROUP BY t.Id_Cliente;
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
CREATE TEMPORARY TABLE tmp.risk
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT Id_Cliente, SUM(amount) risk, sum(saldo) saldo
FROM Clientes c
JOIN (
SELECT customer_id, SUM(amount) amount,SUM(amount) saldo
FROM bi.customer_risk
JOIN tmp.client_list on Id_Cliente = customer_id
GROUP BY customer_id
UNION ALL
SELECT Id_Cliente, SUM(Entregado),SUM(Entregado)
FROM Recibos
JOIN tmp.client_list_2 using(Id_Cliente)
WHERE Fechacobro > endingDate
GROUP BY Id_Cliente
UNION ALL
SELECT Id_Cliente, total,0
FROM tmp.tickets_sin_facturar
UNION ALL
SELECT t.customer_id, CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2)), CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction t
JOIN tmp.client_list_3 on Id_Cliente = customer_id
WHERE t.receipt_id IS NULL
AND t.status = 'ok'
GROUP BY t.customer_id
) t ON c.Id_Cliente = t.customer_id
WHERE c.activo != FALSE
GROUP BY c.Id_Cliente;
DELETE r.*
FROM tmp.risk r
JOIN vn2008.Clientes c on c.Id_Cliente = r.Id_Cliente
JOIN vn2008.pay_met pm on pm.id = c.pay_met_id
WHERE IFNULL(r.saldo,0) < 10
AND r.risk <= MAX_RISK_ALLOWED
AND pm.`name` = 'TARJETA';
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `risk_vs_client_listbeta` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `risk_vs_client_listbeta`(maxRiskDate DATE)
BEGIN
DECLARE startingDate DATETIME DEFAULT TIMESTAMPADD(DAY, - DAYOFMONTH(CURDATE()) - 5, CURDATE());
DECLARE endingDate DATETIME;
DECLARE MAX_RISK_ALLOWED INT DEFAULT 200;
SET maxRiskDate = IFNULL(maxRiskDate, CURDATE());
SET endingDate = TIMESTAMP(maxRiskDate, '23:59:59');
DROP TEMPORARY TABLE IF EXISTS tmp.client_list_2;
CREATE TEMPORARY TABLE tmp.client_list_2
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
select 1;
DROP TEMPORARY TABLE IF EXISTS tmp.client_list_3;
CREATE TEMPORARY TABLE tmp.client_list_3
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
select 2;
DROP TEMPORARY TABLE IF EXISTS tmp.tickets_sin_facturar;
CREATE TEMPORARY TABLE tmp.tickets_sin_facturar
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT t.Id_Cliente, Cantidad as total
FROM Movimientos m
JOIN Tickets t on m.Id_Ticket = t.Id_Ticket
JOIN tmp.client_list c on c.Id_Cliente = t.Id_Cliente
WHERE Factura IS NULL
AND Fecha BETWEEN startingDate AND endingDate
GROUP BY t.Id_Cliente;
select 3;
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
CREATE TEMPORARY TABLE tmp.risk
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT Id_Cliente, SUM(amount) risk, sum(saldo) saldo
FROM Clientes c
JOIN (
SELECT customer_id, SUM(amount) amount,SUM(amount) saldo
FROM bi.customer_risk
JOIN tmp.client_list on Id_Cliente = customer_id
GROUP BY customer_id
UNION ALL
SELECT Id_Cliente, SUM(Entregado),SUM(Entregado)
FROM Recibos
JOIN tmp.client_list_2 using(Id_Cliente)
WHERE Fechacobro > endingDate
GROUP BY Id_Cliente
UNION ALL
SELECT Id_Cliente, total,0
FROM tmp.tickets_sin_facturar
UNION ALL
SELECT t.customer_id, CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2)), CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction t
JOIN tmp.client_list_3 on Id_Cliente = customer_id
WHERE t.receipt_id IS NULL
AND t.status = 'ok'
GROUP BY t.customer_id
) t ON c.Id_Cliente = t.customer_id
WHERE c.activo != FALSE
GROUP BY c.Id_Cliente;
select 4;
DELETE r.*
FROM tmp.risk r
JOIN vn2008.Clientes c on c.Id_Cliente = r.Id_Cliente
JOIN vn2008.pay_met pm on pm.id = c.pay_met_id
WHERE IFNULL(r.saldo,0) < 10
AND r.risk <= MAX_RISK_ALLOWED
AND pm.`name` = 'TARJETA';
select 5;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Rutas_Graph` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Rutas_Graph`()
BEGIN
DECLARE datSTART DATE DEFAULT TIMESTAMPADD(DAY,-3,CURDATE());
DECLARE datEND DATE;
SET datEND = vn2008.dayend(timestampadd(day,3,CURDATE()));
CALL item_last_buy_(NULL,datSTART);
Select cast(sum(Cantidad * vn2008.cm3_unidad(buy_id)) / 1000000 as DECIMAL(5,1)) as m3, Agencia, w.name as Almacen, date(R.Fecha) as Fecha_Ruta
from vn2008.Rutas R
JOIN vn2008.Agencias a on a.Id_Agencia = R.Id_Agencia
join vn2008.Tickets t using(Id_Ruta)
JOIN vn2008.warehouse w on w.id = t.warehouse_id
join vn2008.Movimientos m using(Id_Ticket)
JOIN cache.last_buy b ON m.Id_Article = b.item_id AND t.warehouse_id = b.warehouse_id
where R.Fecha between datSTART and datEND
group by Agencia, Almacen, Fecha_Ruta
UNION ALL
Select cast(sum(Cantidad * vn2008.cm3_unidad(buy_id)) / 1000000 as decimal(5,1)) as m3 ,Agencia, w.name as Almacen, timestampadd(day,1,t.Fecha) Fecha
from vn2008.Tickets t
join warehouse w on w.id = warehouse_id
join Agencias a using(Id_Agencia)
join vn2008.Movimientos m using(Id_Ticket)
JOIN cache.last_buy b ON m.Id_Article = b.item_id AND t.warehouse_id = b.warehouse_id
LEFT JOIN warehouse_pickup wp ON wp.agency_id = t.Id_Agencia and wp.warehouse_id = t.warehouse_id
JOIN warehouse_pickup is_rec ON is_rec.agency_id = t.Id_Agencia
where t.Fecha between TIMESTAMPADD(DAY,-1,datSTART) and TIMESTAMPADD(DAY,-1,datEND)
AND wp.agency_id IS NULL
group by Agencia, Almacen, Fecha
UNION ALL
Select cast(sum(Cantidad * vn2008.cm3_unidad(Id_Compra)) / 1000000 as decimal(5,1)) as m3 ,a.Agencia, w.name as Almacen,
timestampadd(day,1,t.shipment) Fecha
from Compres c JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel t ON t.id = e.travel_id
JOIN Agencias a on a.Id_Agencia = t.agency_id
JOIN warehouse w on w.id = t.warehouse_id_out
JOIN warehouse_pickup wp ON wp.warehouse_id = t.warehouse_id_out
where t.shipment between TIMESTAMPADD(DAY,-1,datSTART) and TIMESTAMPADD(DAY,-1,datEND)
group by a.Agencia, Almacen, Fecha;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `saldos_bancos` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `saldos_bancos`()
BEGIN
declare datEND DATE;
SET datEND = CURDATE() + INTERVAL 2 MONTH;
drop table if exists bi.saldos_bancos;
create table bi.saldos_bancos
select Semana, Mes, Año, Entrada
, Salida
, @saldo := IF(@banco = Id_Banco and @emp = empresa_id, @saldo,0) + ifnull(Entrada,0)-ifnull(Salida,0) as Saldo
, @banco := Id_Banco as Id_Banco
, @emp := empresa_id as empresa_id
, 'NUL' as Empresa
from
(
select * from
(
select t.week as Semana, t.year as Año, t.month as Mes, b.Id_Banco, sum(Entrada) as Entrada, sum(Salida) as Salida, @banco := 0, @saldo := 0, @emp := 0, e.id as empresa_id
from time t
join Bancos b on b.entity_id = 1
join empresa e on e.id IN (791,442)
left join
(
Select Id_Banco, Entrada, Salida, Cajafecha,empresa_id
from Cajas
where Cajafecha >= '2015-01-01'
and Serie = 'MB'
union all
Select Id_Banco, NULL, importe, greatest(fecha,TIMESTAMPADD(DAY,1,CURDATE())),empresa_id
from pago
where conciliado = FALSE
union all
Select Id_Banco, Entregado, NULL, greatest(Fechacobro,TIMESTAMPADD(DAY,1,CURDATE())),empresa_id
from Recibos
where Fechacobro between CURDATE() and datEND
union all
Select IFNULL(Id_Banco,9999), Importe, NULL, Fecha,empresa_id
from Saldos_Prevision
where Fecha between CURDATE() and datEND
) sub2 on t.date = sub2.Cajafecha and b.Id_Banco = sub2.Id_Banco and e.id = sub2.empresa_id
where t.date between '2015-01-01' and datEND
and b.cash != 1
group by b.Id_Banco, e.id, t.year, t.week
) sub3
order by Id_Banco, empresa_id, Año, Mes, Semana
) sub
;
update bi.saldos_bancos s
join empresa e on e.id = s.empresa_id
set s.Empresa = abbreviation;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `saldos_bancos_pordia` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `saldos_bancos_pordia`()
BEGIN
declare datEND DATE;
SET datEND = CURDATE() + INTERVAL 2 MONTH;
drop table if exists bi.saldos_bancos_pordia;
create table bi.saldos_bancos_pordia
select Fecha, Entrada
, Salida
, @saldo := IF(@banco = Id_Banco and @emp = empresa_id, @saldo,0) + ifnull(Entrada,0)-ifnull(Salida,0) as Saldo
, @banco := Id_Banco as Id_Banco
, @emp := empresa_id as empresa_id
, 'NUL' as Empresa
, Año, Mes, Dia
from
(
select * from
(
select t.day as Dia, t.month as Mes,t.year as Año, t.date as Fecha, b.Id_Banco, sum(Entrada) as Entrada, sum(Salida) as Salida, @banco := 0, @saldo := 0, @emp := 0, e.id as empresa_id
from time t
join Bancos b on b.entity_id = 1
join empresa e on e.id IN (791,442)
left join
(
Select Id_Banco, Entrada, Salida, Cajafecha,empresa_id
from Cajas
where Cajafecha >= '2015-01-01'
and Serie = 'MB'
union all
Select Id_Banco, NULL, importe, greatest(fecha,TIMESTAMPADD(DAY,1,CURDATE())),empresa_id
from pago
where conciliado = FALSE
union all
Select Id_Banco, Entregado, NULL, greatest(Fechacobro,TIMESTAMPADD(DAY,1,CURDATE())),empresa_id
from Recibos
where conciliado = FALSE
union all
Select IFNULL(Id_Banco,9999), Importe, NULL, Fecha,empresa_id
from Saldos_Prevision
where Fecha between CURDATE() and datEND
) sub2 on t.date = sub2.Cajafecha and b.Id_Banco = sub2.Id_Banco and e.id = sub2.empresa_id
where t.date between '2015-01-01' and datEND
and b.cash != 1
group by b.Id_Banco, e.id, t.date
) sub3
order by Id_Banco, empresa_id, Fecha
) sub
;
update bi.saldos_bancos_pordia s
join empresa e on e.id = s.empresa_id
set s.Empresa = abbreviation;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `scan_rutas_view` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `scan_rutas_view`()
BEGIN
select Fecha, Id_Ruta, Matricula, sub.m3, CodigoTrabajador, Agencia, Bultos, w.name as Almacen
from
(
select r.Fecha, Id_Ruta, r.Id_Trabajador, r.Id_Agencia, Id_Vehiculo, sum(m3) m3, sum(Bultos) Bultos, warehouse_id
from Rutas r
join Tickets t using(Id_Ruta)
where r.Fecha >= timestampadd(day,-3,curdate())
group by Id_Ruta, warehouse_id
union all
select ifnull(landing,Fecha), dayofmonth(Fecha) * 100000 + Id_Agencia ruta , count(*) as m3, Id_Agencia, null, null, sum(Bultos), warehouse_id
from Tickets
where Id_Ruta is null
and Fecha between timestampadd(day,-3,curdate()) and dayend(curdate())
group by ruta, warehouse_id
) sub
left join Vehiculos using(Id_Vehiculo)
left join Agencias using(Id_Agencia)
left join Trabajadores using(Id_Trabajador)
left join warehouse w on w.id = sub.warehouse_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `sendTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `sendTicket`(vDate DATE)
BEGIN
IF vDate IS NULL THEN
SET vDate = AYER();
END IF;
INSERT INTO mail (`to`, `reply_to`, subject,text)
SELECT IFNULL(c.`e-mail`,CONCAT(u.name,'@verdnatura.es')),
CONCAT(u.name,'@verdnatura.es'),
CONCAT('Albaran ',Id_Ticket),
CONCAT('Estimado cliente:
Aquí tiene el enlace a su albarán.
https://www.verdnatura.es/#!form=ecomerce/ticket&ticket=',Id_Ticket,
'
Estamos en periodo de pruebas para este nuevo método. En el caso de que tenga problemas para acceder a su albarán, responda a este correo explicando los detalles.
Estamos trabajando para mejorar el acceso a sus documentos.Le agradecemos su colaboración.
Reciba un muy cordial saludo,
',tr.nombre, ' ', tr.apellidos,'
',u.name,'@verdnatura.es
Dpto. Comercial')
FROM Tickets t
JOIN Clientes c USING(Id_Cliente)
JOIN Trabajadores tr ON tr.Id_Trabajador = c.Id_Trabajador
JOIN account.user u ON tr.user_id = u.id
WHERE vDate = DATE(t.Fecha);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `splitAnthuriums2016` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `splitAnthuriums2016`()
BEGIN
DECLARE vStartingDate DATETIME DEFAULT '2016-10-18';
DECLARE vEndingDate DATETIME DEFAULT '2016-10-31 23:59:00';
DECLARE vMyTicket INT;
DECLARE vNewTicket INT;
DECLARE SILLA_PCA INT DEFAULT 44;
DECLARE done INT DEFAULT 0;
DECLARE rs CURSOR FOR
SELECT DISTINCT Id_Ticket
FROM Movimientos m
JOIN Tickets t using(Id_Ticket)
JOIN Articles a using(Id_Article)
JOIN Tipos tp using(tipo_id)
WHERE t.Fecha between vStartingDate and vEndingDate
AND warehouse_id = 1
AND
(
Id_Tipo = 'ANT'
OR
( Id_Article = 100
AND
Concepte LIKE 'ANT%')
);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN rs;
FETCH rs INTO vMyTicket;
WHILE NOT done DO
INSERT INTO Tickets(Id_Cliente
, warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing)
SELECT Id_Cliente
, SILLA_PCA as warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing
FROM Tickets
WHERE Id_Ticket = vMyTicket;
SELECT LAST_INSERT_ID() INTO vNewTicket;
UPDATE Movimientos m
JOIN Articles a using(Id_Article)
JOIN Tipos tp using(tipo_id)
SET Id_Ticket = vNewTicket
WHERE Id_Ticket = vMyTicket
AND (
Id_Tipo = 'ANT'
OR
( m.Id_Article = 100
AND
Concepte LIKE 'ANT%')
);
FETCH rs INTO vMyTicket;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `splitHeliconias2016` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `splitHeliconias2016`()
BEGIN
DECLARE vStartingDate DATETIME DEFAULT '2016-10-18';
DECLARE vEndingDate DATETIME DEFAULT '2016-10-31 23:59:00';
DECLARE vMyTicket INT;
DECLARE vNewTicket INT;
DECLARE SILLA_PCA INT DEFAULT 44;
DECLARE done INT DEFAULT 0;
DECLARE rs CURSOR FOR
SELECT DISTINCT Id_Ticket
FROM Movimientos m
JOIN Compres c ON Id_Entrada IN (100461, 100929) AND c.Id_Article = m.Id_Article
JOIN Tickets t using(Id_Ticket)
WHERE t.Fecha between vStartingDate and vEndingDate
AND warehouse_id = 1;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN rs;
FETCH rs INTO vMyTicket;
WHILE NOT done DO
INSERT INTO Tickets(Id_Cliente
, warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing)
SELECT Id_Cliente
, SILLA_PCA as warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing
FROM Tickets
WHERE Id_Ticket = vMyTicket;
SELECT LAST_INSERT_ID() INTO vNewTicket;
UPDATE Movimientos m
JOIN Compres c ON Id_Entrada IN (100461, 100929) AND c.Id_Article = m.Id_Article
SET Id_Ticket = vNewTicket
WHERE Id_Ticket = vMyTicket
;
FETCH rs INTO vMyTicket;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `splitOrquideas2016` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `splitOrquideas2016`()
BEGIN
DECLARE vStartingDate DATETIME DEFAULT '2016-10-18';
DECLARE vEndingDate DATETIME DEFAULT '2016-10-31 23:59:00';
DECLARE vMyTicket INT;
DECLARE vNewTicket INT;
DECLARE SILLA_PCA INT DEFAULT 44;
DECLARE done INT DEFAULT 0;
DECLARE rs CURSOR FOR
SELECT DISTINCT Id_Ticket
FROM Movimientos m
JOIN Tickets t using(Id_Ticket)
JOIN Articles a using(Id_Article)
JOIN Tipos tp using(tipo_id)
WHERE t.Fecha between vStartingDate and vEndingDate
AND warehouse_id = 1
AND
(
Id_Tipo = 'CYM'
OR
Id_Tipo = 'ORQ'
OR
( Id_Article = 100
AND
Concepte LIKE 'CYM%')
);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN rs;
FETCH rs INTO vMyTicket;
WHILE NOT done DO
INSERT INTO Tickets(Id_Cliente
, warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing)
SELECT Id_Cliente
, SILLA_PCA as warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing
FROM Tickets
WHERE Id_Ticket = vMyTicket;
SELECT LAST_INSERT_ID() INTO vNewTicket;
UPDATE Movimientos m
JOIN Articles a using(Id_Article)
JOIN Tipos tp using(tipo_id)
SET Id_Ticket = vNewTicket
WHERE Id_Ticket = vMyTicket
AND (
Id_Tipo = 'CYM'
OR
Id_Tipo = 'ORQ'
OR
( Id_Article = 100
AND
Concepte LIKE 'CYM%')
);
FETCH rs INTO vMyTicket;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `splitRamos2016` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `splitRamos2016`()
BEGIN
DECLARE vStartingDate DATETIME DEFAULT '2016-10-21';
DECLARE vEndingDate DATETIME DEFAULT '2016-10-31 23:59:00';
DECLARE vMyTicket INT;
DECLARE vNewTicket INT;
DECLARE SILLA_PCA INT DEFAULT 44;
DECLARE done INT DEFAULT 0;
DECLARE vLinesNotToChange INT;
DECLARE rs CURSOR FOR
SELECT DISTINCT Id_Ticket
FROM Movimientos m
JOIN
(
SELECT DISTINCT Id_Article
FROM Compres c
JOIN Entradas e on c.Id_Entrada = e.Id_Entrada
JOIN travel tr on tr.id = travel_id
WHERE landing between vStartingDate and vEndingDate
AND warehouse_id = 44
AND Id_Proveedor = 850
) c on c.Id_Article = m.Id_Article
JOIN Tickets t using(Id_Ticket)
WHERE t.Fecha between vStartingDate and vEndingDate
AND warehouse_id = 1
;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN rs;
FETCH rs INTO vMyTicket;
WHILE NOT done DO
SELECT COUNT(*)
INTO vLinesNotToChange
FROM Movimientos m
LEFT JOIN
(
SELECT DISTINCT Id_Article
FROM Compres c
JOIN Entradas e on c.Id_Entrada = e.Id_Entrada
JOIN travel tr on tr.id = travel_id
WHERE landing between vStartingDate and vEndingDate
AND warehouse_id = 44
AND Id_Proveedor = 850
) c on c.Id_Article = m.Id_Article
WHERE Id_Ticket = vMyTicket
AND c.Id_Article IS NULL;
IF vLinesNotToChange THEN
INSERT INTO Tickets(Id_Cliente
, warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing)
SELECT Id_Cliente
, SILLA_PCA as warehouse_id
, Fecha
, Alias
, Id_Consigna
, Id_Trabajador
, Id_Ruta
, empresa_id
, Id_Agencia
, landing
FROM Tickets
WHERE Id_Ticket = vMyTicket;
SELECT LAST_INSERT_ID() INTO vNewTicket;
UPDATE Movimientos m
JOIN
(
SELECT DISTINCT Id_Article
FROM Compres c
JOIN Entradas e on c.Id_Entrada = e.Id_Entrada
JOIN travel tr on tr.id = travel_id
WHERE landing between vStartingDate and vEndingDate
AND warehouse_id = 44
AND Id_Proveedor = 850
) c on c.Id_Article = m.Id_Article
SET Id_Ticket = vNewTicket
WHERE Id_Ticket = vMyTicket;
ELSE
UPDATE Tickets
SET warehouse_id = 44
WHERE Id_Ticket = vMyTicket;
END IF;
FETCH rs INTO vMyTicket;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `sql_query` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = latin1 */ ;
/*!50003 SET character_set_results = latin1 */ ;
/*!50003 SET collation_connection = latin1_swedish_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `sql_query`(IN v_sql TEXT)
BEGIN
SET @v_sql = v_sql;
PREPARE stmt FROM @v_sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `subordinate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `subordinate`( IN idWORKER INTEGER,IN CasoBase BOOL)
BEGIN
DECLARE auxWorker INT;
DECLARE vCompanyId INT;
SELECT empresa_id
INTO vCompanyId
FROM Trabajadores
WHERE Id_Trabajador = idWORKER;
IF vCompanyId = 1381 THEN
DROP TABLE IF EXISTS subordinate;
CREATE TABLE subordinate
(INDEX (Id_Trabajador)) ENGINE = MEMORY
SELECT Id_Trabajador,TRUE visited,0 boss
FROM Trabajadores
WHERE empresa_id = vCompanyId;
ELSE
IF CasoBase THEN
SET @@max_sp_recursion_depth = 5 ;
DROP TABLE IF EXISTS subordinate;
CREATE TABLE subordinate
(INDEX (Id_Trabajador)) ENGINE = MEMORY
SELECT idWORKER Id_Trabajador,TRUE visited,0 boss;
END IF;
INSERT INTO subordinate
SELECT Id_Trabajador,0,idWORKER FROM Trabajadores WHERE boss = idWORKER;
IF (SELECT COUNT(*) FROM subordinate WHERE visited = 0 AND idWORKER = boss LIMIT 1) > 0 THEN
SELECT Id_Trabajador into auxWorker FROM subordinate WHERE visited = 0 AND idWORKER = boss LIMIT 1;
REPEAT
CALL subordinate(auxWorker,FALSE);
UPDATE subordinate SET visited = TRUE WHERE Id_Trabajador = auxWorker;
SET auxWorker = 0;
SELECT Id_Trabajador into auxWorker FROM subordinate WHERE visited = 0 AND idWORKER = boss LIMIT 1;
UNTIL auxWorker = 0
END REPEAT;
END IF;
END IF;
IF idWorker = 2 THEN
INSERT INTO subordinate(Id_Trabajador,visited,boss) VALUES (2,TRUE,2);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `subordinate2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `subordinate2`( IN idWORKER INTEGER,IN CasoBase BOOL)
BEGIN
DECLARE auxWorker INT;
DECLARE vCompanyId INT;
SELECT empresa_id
INTO vCompanyId
FROM Trabajadores
WHERE Id_Trabajador = idWORKER;
IF vCompanyId = 1381 THEN
DROP TABLE IF EXISTS subordinate;
CREATE TABLE subordinate
(INDEX (Id_Trabajador)) ENGINE = MEMORY
SELECT Id_Trabajador,TRUE visited,0 boss
FROM Trabajadores
WHERE empresa_id = vCompanyId;
ELSE
IF CasoBase THEN
SET @@max_sp_recursion_depth = 5 ;
DROP TABLE IF EXISTS subordinate;
CREATE TABLE subordinate
(INDEX (Id_Trabajador)) ENGINE = MEMORY
SELECT idWORKER Id_Trabajador,TRUE visited,0 boss;
END IF;
INSERT INTO subordinate
SELECT Id_Trabajador,0,idWORKER FROM Trabajadores WHERE boss = idWORKER;
IF (SELECT COUNT(*) FROM subordinate WHERE visited = 0 AND idWORKER = boss LIMIT 1) > 0 THEN
SELECT Id_Trabajador into auxWorker FROM subordinate WHERE visited = 0 AND idWORKER = boss LIMIT 1;
REPEAT
CALL subordinate(auxWorker,FALSE);
UPDATE subordinate SET visited = TRUE WHERE Id_Trabajador = auxWorker;
SET auxWorker = 0;
SELECT Id_Trabajador into auxWorker FROM subordinate WHERE visited = 0 AND idWORKER = boss LIMIT 1;
UNTIL auxWorker = 0
END REPEAT;
END IF;
END IF;
IF idWorker = 2 THEN
INSERT INTO subordinate(Id_Trabajador) VALUES (2);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `suppliersDebt` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `suppliersDebt`()
BEGIN
SELECT abbreviation as Empresa, Proveedor, Euros, empresa_id, proveedor_id
FROM
(
SELECT empresa_id, proveedor_id, cast(sum(Euros) AS DECIMAL(10,2)) as Euros
FROM
(
SELECT empresa_id, proveedor_id, -1 * cantidad as Euros
FROM recibida_vencimiento rv
INNER JOIN recibida r ON r.id = rv.recibida_id
WHERE r.fecha > '2014-12-31'
UNION ALL
SELECT empresa_id, id_proveedor, importe
FROM pago
WHERE fecha > '2014-12-31'
) sub
GROUP BY empresa_id, proveedor_id
) sub2
JOIN Proveedores p ON p.Id_Proveedor = sub2.proveedor_id
JOIN empresa e ON e.id = sub2.empresa_id
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `tarjetas_credito_0` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `tarjetas_credito_0`()
BEGIN
DECLARE MyMaxID INT;
SELECT MAX(id) FROM credit INTO MyMaxID;
UPDATE Clientes
SET Credito = 0
WHERE pay_met_id = 5
;
UPDATE credit
SET Id_Trabajador = 20
WHERE id > MyMaxID;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `tickets_in_a_week` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `tickets_in_a_week`(IN intWEEK INT(2), IN intYEAR INT(4), IN idART INT(11), IN intWH INT(2))
BEGIN
DECLARE period INT(6) DEFAULT intYEAR * 100 + intWEEK;
DECLARE datINI DATE;
DECLARE datFIN DATE;
SELECT MIN(`date`) INTO datINI FROM vn2008.`time` t WHERE t.period = period;
SELECT TIMESTAMP(MAX(`date`),'23:59:59') INTO datFIN FROM vn2008.`time` t WHERE t.period = period;
SELECT T.Fecha,
T.Id_Ticket,
M.Cantidad,
M.Id_Article,
T.Alias,
M.PrecioFijado,
M.Preu,
M.Id_Movimiento,
T.warehouse_id,
W.name,
ticket_state(Factura, PedidoImpreso, Etiquetasemitidas, blocked) as Estado,
M.Descuento
FROM Movimientos M
INNER JOIN Tickets T using(Id_Ticket)
LEFT JOIN warehouse W ON W.id = T.warehouse_id
WHERE M.Id_Article = idART AND T.Fecha BETWEEN datINI and datFIN
AND IF(intWH = 0, W.comisionantes, intWH =T.warehouse_id)
ORDER BY T.Fecha, T.Id_Ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `tickets_in_a_week_by_type` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `tickets_in_a_week_by_type`(IN intWEEK INT(2), IN intYEAR INT(4), IN idART INT(11), IN intWH INT(2))
BEGIN
DECLARE intTIPO INT;
DECLARE period INT(6) DEFAULT intYEAR * 100 + intWEEK;
DECLARE datINI DATE;
DECLARE datFIN DATE;
SELECT tipo_id INTO intTIPO FROM Articles WHERE Id_Article = idART;
SELECT MIN(`date`) INTO datINI FROM vn2008.`time` t WHERE t.period = period;
SELECT TIMESTAMP(MAX(`date`),'23:59:59') INTO datFIN FROM vn2008.`time` t WHERE t.period = period;
SELECT T.Fecha,
T.Id_Ticket,
M.Cantidad,
M.Id_Article,
T.Alias,
M.PrecioFijado,
M.Preu,
M.Id_Movimiento,
T.warehouse_id,
W.name,
ticket_state(Factura, PedidoImpreso, Etiquetasemitidas, blocked) as Estado,
M.Descuento
FROM Movimientos M
JOIN Articles A using(Id_Article)
INNER JOIN Tickets T ON M.Id_Ticket = T.Id_Ticket
LEFT JOIN warehouse W ON W.id = T.warehouse_id
WHERE A.tipo_id = intTIPO
AND T.Fecha between datINI and datFIN
AND IF(intWH = 0, W.comisionantes, intWH =T.warehouse_id)
ORDER BY T.Fecha, T.Id_Ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `tickets_week_joined` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `tickets_week_joined`(IN intWEEK INT(2), IN intYEAR INT(4), IN idART INT(11), IN intWhJoined INT(2))
BEGIN
DECLARE datSTART date;
DECLARE datEND date;
SET datSTART = TIMESTAMPADD(YEAR,intYEAR,'0000-01-01');
SET datSTART = TIMESTAMPADD(WEEK, intWEEK-1,datSTART);
SET datSTART = TIMESTAMPADD(DAY,-1 * WEEKDAY(datSTART),datSTART);
SET datEND = TIMESTAMPADD(DAY,7,datSTART);
SELECT T.Fecha,
T.Id_Ticket,
M.Cantidad,
M.Id_Article,
T.Alias,
M.PrecioFijado,
M.Preu,
M.Id_Movimiento,
T.warehouse_id,
wa.alias `name`,
ticket_state(Factura, PedidoImpreso, Etiquetasemitidas, blocked) as Estado,
M.Descuento
FROM Movimientos M
JOIN Tickets T ON M.Id_Ticket = T.Id_Ticket
JOIN warehouse_joined wj ON wj.warehouse_id = T.warehouse_id
JOIN warehouse_alias wa ON wa.warehouse_alias_id = wj.warehouse_alias_id
WHERE M.Id_Article = idART
AND T.Fecha between datSTART and datEND
AND intWhJoined IN (0,wj.warehouse_alias_id)
ORDER BY T.Fecha, T.Id_Ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `tickets_week_type_joined` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `tickets_week_type_joined`(IN intWEEK INT(2), IN intYEAR INT(4), IN idART INT(11), IN intWhJoined INT(2))
BEGIN
DECLARE intTIPO INT;
DECLARE datSTART date;
DECLARE datEND date;
SELECT tipo_id INTO intTIPO FROM Articles WHERE Id_Article = idART;
SET datSTART = TIMESTAMPADD(YEAR,intYEAR,'0000-01-01');
SET datSTART = TIMESTAMPADD(WEEK, intWEEK-1,datSTART);
SET datSTART = TIMESTAMPADD(DAY,-1 * WEEKDAY(datSTART),datSTART);
SET datEND = TIMESTAMPADD(DAY,7,datSTART);
SELECT T.Fecha,
T.Id_Ticket,
M.Cantidad,
M.Id_Article,
T.Alias,
M.PrecioFijado,
M.Preu,
M.Id_Movimiento,
T.warehouse_id,
wa.alias `name`,
ticket_state(Factura, PedidoImpreso, Etiquetasemitidas, blocked) as Estado,
M.Descuento
FROM Movimientos M
JOIN Articles A using(Id_Article)
INNER JOIN Tickets T ON M.Id_Ticket = T.Id_Ticket
JOIN warehouse_joined wj ON wj.warehouse_id = T.warehouse_id
JOIN warehouse_alias wa ON wa.warehouse_alias_id = wj.warehouse_alias_id
WHERE A.tipo_id = intTIPO
AND T.Fecha between datSTART and datEND
AND intWhJoined IN (0,wj.warehouse_alias_id)
ORDER BY T.Fecha, T.Id_Ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_canarias` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_canarias`(IN v_entrada BIGINT, IN v_ticket BIGINT)
BEGIN
set @w := 1;
set @tr := 0;
set @e := v_entrada;
set @t := v_ticket;
select id, IF(warehouse_id_out = 13, @w, warehouse_id_out) into @tr, @w from travel join Entradas on id = travel_id where Id_Entrada = @e;
update travel tr join Entradas e on tr.id = e.travel_id set warehouse_id_out = 13 where Id_Entrada = @e and warehouse_id_out <> 13;
update Tickets set warehouse_id = @w where Id_Ticket = @t;
REPLACE order_Tickets(order_id, Id_Ticket) VALUES(48,@t);
delete mc.* from Movimientos_componentes mc join Movimientos m using(Id_Movimiento) where Id_Ticket = @t;
insert into Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
select Id_Movimiento, 28, nz(Costefijo)
from Movimientos m
join Compres c on Id_Entrada = @e and c.Id_Article = m.Id_Article
where Id_Ticket = @t
on DUPLICATE KEY UPDATE Valor = nz(Costefijo) ;
insert into Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
select Id_Movimiento, 29, Preu - nz(Costefijo)
from Movimientos m
join Compres c on Id_Entrada = @e and c.Id_Article = m.Id_Article
where Id_Ticket = @t
on DUPLICATE KEY UPDATE Valor = Preu - nz(Costefijo) ;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_componentes` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_componentes`(IN idTICKET BIGINT)
BEGIN
SET @a:=0;
SELECT IF(@a = Id_Movimiento, NULL, Concepte) as Concepte
,IF(@a = Id_Movimiento, NULL, Cantidad) as Cantidad
,IF(@a = Id_Movimiento, NULL, Id_Article) as Id_Article
, @a:= Id_Movimiento as IdM
, Id_Article as IdA
, Componente
, Valor
, Importe
, base
, margen
FROM
(
SELECT m.Id_Movimiento
, m.Concepte
, tc.Componente
, m.Cantidad
, mc.Valor
, round(m.Cantidad * mc.Valor,3) as Importe
, Id_Article
, base
, margen
FROM vn2008.Movimientos m
JOIN vn2008.Movimientos_componentes mc using(Id_Movimiento)
INNER JOIN bi.tarifa_componentes tc ON mc.Id_Componente = tc.Id_Componente
INNER JOIN bi.tarifa_componentes_series tcs using(tarifa_componentes_series_id)
WHERE m.Id_Ticket = idTICKET
ORDER BY Id_Movimiento
) sub;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Ticket_from_Entry` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Ticket_from_Entry`(IN IdEntrada INT(11), IN IdCliente INT(6), IN IdEmpresa INT(4), IN buying_quote DOUBLE, IN Ratio DOUBLE)
BEGIN
DECLARE idTICKET INT(11);
INSERT INTO Tickets(Id_Cliente, warehouse_id, Fecha, Alias, Id_Agencia, Id_Consigna, Id_Trabajador, empresa_id, Etiquetasemitidas, Localizacion)
SELECT IdCliente, 13, shipment, Consignatario, TR.agency_id, Id_Consigna, 20, IdEmpresa, TRUE, IdEntrada
FROM Entradas E
JOIN travel TR ON TR.id = E.travel_id
JOIN (SELECT Consignatario, Id_Consigna FROM Consignatarios WHERE Id_Cliente = IdCliente AND Predeterminada LIMIT 1) Consigna
WHERE Id_Entrada = IdEntrada;
SELECT LAST_INSERT_ID() INTO idTICKET;
INSERT INTO Movimientos(Id_Ticket, Id_Article, Concepte, Cantidad, Preu, PrecioFijado)
SELECT idTICKET, Id_Article, Article, round(Cantidad * IF(Cantidad > round(1+ (1/buying_quote),0),buying_quote,1), 0), ROUND(Costefijo * Ratio,2), TRUE
FROM Compres c
JOIN Articles a using(Id_Article)
JOIN Tipos t on t.tipo_id = a.tipo_id
JOIN reinos r on r.id = t.reino_id
WHERE Id_Entrada = idEntrada
AND r.display <> 0
AND Cantidad * buying_quote > 1;
SELECT idTICKET;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Ticket_from_Entry_cursor` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Ticket_from_Entry_cursor`(IN IdEmpresa INt(4), IN IdCliente INT(5), IN buying_quote DOUBLE, IN Ratio DOUBLE)
BEGIN
DECLARE done BIT DEFAULT 0;
DECLARE IdEntrada INT(10);
DECLARE cursor_entradas CURSOR FOR
SELECT Id_Entrada
FROM Entradas E
JOIN travel TR ON TR.id = E.travel_id
WHERE shipment BETWEEN '2013-04-01' AND '2013-04-30'
AND warehouse_id = 17
and warehouse_id_out = 1;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN cursor_entradas;
REPEAT
FETCH cursor_entradas INTO IdEntrada;
CALL Ticket_from_Entry(IdEntrada, IdCliente, IdEmpresa, buying_quote, Ratio);
UNTIL done END REPEAT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_iva` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_iva`(billing_date DATE)
BEGIN
DECLARE clean CONDITION FOR SQLSTATE 'HY000';
DECLARE CONTINUE HANDLER FOR clean
BEGIN
DROP TEMPORARY TABLE IF EXISTS iva_group;
DROP TEMPORARY TABLE IF EXISTS iva_tax;
END;
SIGNAL clean;
DROP TEMPORARY TABLE IF EXISTS ticket_iva;
SET billing_date = IFNULL(billing_date, CURDATE());
CREATE TEMPORARY TABLE iva_group
(INDEX idx USING HASH (Id_Pais, iva_group_id))
ENGINE = MEMORY
SELECT * FROM (
SELECT Id_Pais, iva_group_id, c.tipo
FROM iva_group_codigo g
JOIN iva_codigo c ON g.iva_codigo_id = c.id
JOIN iva_tipo t ON t.id = c.iva_tipo_id
WHERE date <= billing_date
ORDER BY date DESC
) t
GROUP BY Id_Pais, iva_group_id;
CREATE TEMPORARY TABLE iva_tax
(INDEX idx USING HASH (Id_Pais, tipo))
ENGINE = MEMORY
SELECT * FROM (
SELECT Id_Pais, tipo, iva * 0.01 AS iva, recargo * 0.01 AS re
FROM iva_codigo
JOIN iva_tipo t ON t.id = iva_tipo_id
WHERE Fecha <= billing_date
ORDER BY fecha DESC, recargo DESC
) t
GROUP BY Id_Pais, tipo;
CREATE TEMPORARY TABLE ticket_iva
(INDEX idx USING HASH (ticket_id))
ENGINE = MEMORY
SELECT ticket_id, b.tipo, bi, IF(has_iva, red(bi * iva), 0) iva, IF(has_re, red(bi * i.re), 0) re
FROM (
SELECT ticket_id, g.Id_Pais, g.tipo
,SUM(red(m.Cantidad * m.Preu * (100 - m.Descuento) / 100)) AS bi
,NOT(VIES AND p.pais_id <> c.Id_Pais) AS has_iva
,RE != FALSE AS has_re
FROM ticket_tmp i
JOIN Tickets t ON t.Id_ticket = i.ticket_id
JOIN Clientes c ON c.Id_Cliente = t.Id_Cliente
JOIN Proveedores p ON p.Id_Proveedor = t.empresa_id
JOIN Movimientos m ON m.Id_Ticket = i.ticket_id
JOIN Articles a USING(Id_Article)
JOIN iva_group g ON g.Id_Pais = p.pais_id AND g.iva_group_id = a.iva_group_id
GROUP BY ticket_id, tipo
) b
JOIN iva_tax i ON i.Id_Pais = b.Id_Pais AND i.tipo = b.tipo;
SIGNAL clean;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_locator` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_locator`(IN date_ DATETIME,IN wh_ INT, IN days TINYINT)
BEGIN
DECLARE DATEFEC DATE DEFAULT CURDATE();
DECLARE v_date_start DATETIME DEFAULT TIMESTAMPADD(MONTH, -2, CURDATE());
DECLARE v_date_end DATETIME DEFAULT TIMESTAMP(DATEFEC,'23:59:59');
DECLARE v_date_future DATETIME DEFAULT TIMESTAMPADD(DAY,days,v_date_end);
DROP TEMPORARY TABLE IF EXISTS `Locator`;
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
CREATE TEMPORARY TABLE `ticket_tmp`
ENGINE = MEMORY
SELECT Id_Ticket ticket_id FROM Tickets t
WHERE t.Factura IS NULL
AND t.Fecha BETWEEN v_date_start AND v_date_future;
CALL ticket_total();
DROP TEMPORARY TABLE IF EXISTS ticket_total2;
CREATE TEMPORARY TABLE `ticket_total2`
ENGINE = MEMORY
SELECT t.*,s.`order` state_order
FROM ticket_total t
LEFT JOIN Tickets t1 ON t1.Id_Ticket = t.ticket_id
LEFT JOIN Tickets_state ts ON ts.Id_Ticket = t1.Id_Ticket
LEFT JOIN vncontrol.inter i ON ts.inter_id = i.inter_id
LEFT JOIN state s ON s.id = i.state_id
LEFT JOIN expeditions e ON e.ticket_id = t.ticket_id
LEFT JOIN Agencias a ON a.Id_Agencia = t1.Id_Agencia
LEFT JOIN agency ag ON ag.agency_id = a.agency_id
LEFT JOIN agency_warehouse aw ON aw.agency_id = a.agency_id AND aw.warehouse_id = wh_
LEFT JOIN warehouse w_out on w_out.id = t1.warehouse_id
LEFT JOIN warehouse w ON w.id = wh_
LEFT JOIN warehouse_pickup wp on wp.agency_id = t1.Id_Agencia and wp.warehouse_id = wh_
WHERE IFNULL(aw.Vista,a.Vista) > 0
AND ((t1.Anotadoencaja = FALSE
AND t1.Etiquetasemitidas = FALSE
AND e.ticket_id IS NULL
AND t1.warehouse_id = wh_
AND IFNULL(s.alert_level,0) <= 3
)
OR (ts.state_name = 'Pte Recogida'
AND wp.warehouse_id IS NOT NULL));
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
CREATE TEMPORARY TABLE tmp.risk
SELECT Id_Cliente, SUM(amount) risk
FROM Clientes c
JOIN (
SELECT customer_id, SUM(amount) amount
FROM bi.customer_risk
GROUP BY customer_id
UNION ALL
SELECT Id_Cliente, SUM(Entregado)
FROM Recibos
WHERE Fechacobro > v_date_end
GROUP BY Id_Cliente
UNION ALL
SELECT t.Id_Cliente, SUM(total)
FROM ticket_total tt
JOIN Tickets t ON tt.ticket_id = t.Id_Ticket
WHERE t.Fecha <= v_date_end
GROUP BY t.Id_Cliente
UNION ALL
SELECT t.customer_id, CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction t
WHERE t.receipt_id IS NULL
AND t.status = 'ok'
GROUP BY t.customer_id
) t ON c.Id_Cliente = t.customer_id
WHERE c.activo != FALSE
GROUP BY c.Id_Cliente;
CREATE TEMPORARY TABLE `Locator`
ENGINE = MEMORY
SELECT Congelado, Credito, risk Riesgo, Greuge, T.*,IFNULL(state_name,'libre') AS Estado,
Codigotrabajador, DATE(T.Fecha) AS Fecha_Simple, Averiguar_ComercialCliente_IdTicket(T.Id_Ticket) AS Comercial,C.calidad,UCASE(LEFT(w_out.`name`,5)) w_out
FROM Clientes C
INNER JOIN
(
SELECT
t.Id_Ticket, t.Id_Cliente, t.warehouse_id, t.Fecha, t.Alias,
NULL Notas, t.Factura, t.factura_id, t.Anotadoencaja, t.Id_Consigna, t.Id_Trabajador,
t.Observaciones, t.Firmado, t.Etiquetasemitidas, t.PedidoImpreso, t.Bultos, t.Localizacion,
t.Hora, t.odbc_date, t.blocked, t.Solucion, t.Id_Ruta, t.Prioridad, t.priority,
t.empresa_id, t.Id_Agencia,
CS.Consignatario, IFNULL(aw.Vista,a.Vista) Vista,a.Agencia, DATEFEC AS Hora_MAX ,
SUM(IF(Movimientos.OK = 0, 1, 0)) AS `lines`,
tt.total AS Importe,
IF(reino_id IN (5, 1), 0,tt.total) AS Plantas,
0 AS inacabable,state_order,
CS.CODPOSTAL, CS.POBLACION, p.name PROVINCIA, a.Vista VistaTicket,p.zone
FROM Tickets t
JOIN ticket_total2 tt ON tt.ticket_id = t.Id_Ticket
INNER JOIN Consignatarios CS USING(Id_Consigna)
LEFT JOIN province p USING(province_id)
LEFT JOIN Movimientos USING(Id_Ticket)
LEFT JOIN Articles on Movimientos.Id_Article = Articles.Id_Article
LEFT JOIN Tipos using(tipo_id)
LEFT JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
LEFT JOIN agency ag ON ag.agency_id = a.agency_id
LEFT JOIN agency_warehouse aw ON aw.agency_id = a.agency_id AND aw.warehouse_id = wh_
GROUP BY t.Id_Ticket
) T USING(Id_Cliente)
LEFT JOIN Tickets_state ts ON ts.Id_Ticket = T.Id_Ticket
LEFT JOIN Trabajadores Tb ON Tb.Id_Trabajador = T.Id_Trabajador
LEFT JOIN tmp.risk as Peligros USING(Id_Cliente)
JOIN warehouse w_out on w_out.id = T.warehouse_id
LEFT JOIN
(
SELECT Id_Cliente, SUM(Importe) AS Greuge FROM Greuges
GROUP BY Id_Cliente
) AS Agravios USING(Id_Cliente);
ALTER TABLE `Locator` ADD PRIMARY KEY(Id_Ticket);
UPDATE `Locator` JOIN
(
SELECT d.Id_Ticket from Tickets_dits d
JOIN Tickets t using(Id_Ticket)
LEFT JOIN Agencias a using(Id_Agencia)
LEFT JOIN expeditions e on e.ticket_id = d.Id_Ticket
WHERE Fecha BETWEEN CURDATE() AND TIMESTAMP(curdate(),'23:59:59')
AND idaccion_dits = 18 AND ticket_id is null
AND t.warehouse_id = 1
AND NOT Etiquetasemitidas
AND d.ODBC_DATE < TIMESTAMPADD(HOUR,-2, now())
AND Vista in (1,2)) sub using(Id_Ticket)
SET Observaciones = CONCAT('F5 PERDIDO ',IFNULL(Observaciones,''));
UPDATE `Locator`
JOIN Movimientos using(Id_Ticket)
SET Observaciones = 'CODIGO 100'
WHERE Id_Article = 100;
INSERT INTO `Locator`(Fecha_Simple, Id_Ticket, Agencia, Id_Cliente, Alias, PedidoImpreso, CodigoTrabajador, Fecha, Estado, Consignatario, Vista, PROVINCIA,Riesgo)
SELECT DISTINCT v_compres.shipment AS Fecha_Simple, v_compres.Id_Entrada AS Id_Ticket, warehouse.name, v_compres.Id_Proveedor,
v_compres.ref AS Alias, v_compres.Pedida AS PedidoImpreso, v_compres.Id_Trabajador AS CodigoTrabajador, v_compres.shipment AS Fecha, 0 AS problem, v_compres.ref AS Consignatario, 1, 'TRASLADO',0
FROM v_compres
INNER JOIN warehouse ON v_compres.warehouse_id = warehouse.id
WHERE warehouse_id_out = wh_ AND v_compres.Confirmada = False
AND v_compres.shipment >= date_;
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
DROP TEMPORARY TABLE IF EXISTS ticket_total;
DROP TEMPORARY TABLE IF EXISTS ticket_total2;
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_locatorbeta` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_locatorbeta`(IN date_ DATETIME,IN wh_ INT, IN days TINYINT)
BEGIN
DECLARE DATEFEC DATE DEFAULT CURDATE();
DECLARE v_date_start DATETIME DEFAULT TIMESTAMPADD(MONTH, -2, CURDATE());
DECLARE v_date_end DATETIME DEFAULT TIMESTAMP(DATEFEC,'23:59:59');
DECLARE v_date_future DATETIME DEFAULT TIMESTAMPADD(DAY,days,v_date_end);
DROP TEMPORARY TABLE IF EXISTS `Locator`;
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
CREATE TEMPORARY TABLE `ticket_tmp`
ENGINE = MEMORY
SELECT Id_Ticket ticket_id FROM Tickets t
WHERE t.Factura IS NULL
AND t.Fecha BETWEEN v_date_start AND v_date_future;
CALL ticket_total();
SELECT t.* FROM ticket_total t
LEFT JOIN Tickets t1 ON t1.Id_Ticket = t.ticket_id
LEFT JOIN Tickets_state ts ON ts.Id_Ticket = t1.Id_Ticket
LEFT JOIN vncontrol.inter i ON ts.inter_id = i.inter_id
LEFT JOIN state s ON s.id = i.state_id
LEFT JOIN expeditions e ON e.ticket_id = t.ticket_id
LEFT JOIN Agencias a ON a.Id_Agencia = t1.Id_Agencia
LEFT JOIN agency ag ON ag.agency_id = a.agency_id
LEFT JOIN agency_warehouse aw ON aw.agency_id = a.agency_id AND aw.warehouse_id = wh_
LEFT JOIN warehouse w_out on w_out.id = t1.warehouse_id
LEFT JOIN warehouse w ON w.id = wh_
LEFT JOIN warehouse_pickup wp on wp.agency_id = t1.Id_Agencia and wp.warehouse_id = wh_
WHERE t1.Fecha BETWEEN TIMESTAMPADD(DAY,-5,DATE(date_)) AND TIMESTAMPADD(DAY,days,DATE(date_))
AND IFNULL(aw.Vista,a.Vista) > 0
AND ((t1.Anotadoencaja = FALSE
AND t1.Etiquetasemitidas = FALSE
AND e.ticket_id IS NULL));
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
DROP TEMPORARY TABLE IF EXISTS ticket_total;
DROP TEMPORARY TABLE IF EXISTS ticket_total2;
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_locator_experimental` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_locator_experimental`(IN date_ DATETIME,IN wh_ INT, IN days TINYINT)
BEGIN
DECLARE DATEFEC DATE DEFAULT CURDATE();
DECLARE v_date_start DATETIME DEFAULT TIMESTAMPADD(MONTH, -2, CURDATE());
DECLARE v_date_end DATETIME DEFAULT TIMESTAMP(DATEFEC,'23:59:59');
DECLARE v_date_future DATETIME DEFAULT TIMESTAMPADD(DAY,days,v_date_end);
DECLARE timeSTART DATETIME DEFAULT NOW();
SELECT timeSTART, 'ARRANCA';
DROP TEMPORARY TABLE IF EXISTS `Locator`;
DROP TEMPORARY TABLE IF EXISTS ticket_total;
CREATE TEMPORARY TABLE ticket_total
(INDEX idx USING HASH (ticket_id))
ENGINE = MEMORY
SELECT m.Id_Ticket as ticket_id, red(SUM(Cantidad * Preu * (100 - Descuento)/100)) AS total
FROM Movimientos m
JOIN Tickets t using(Id_Ticket)
WHERE t.Factura IS NULL
AND t.Fecha BETWEEN v_date_start AND v_date_future
GROUP BY ticket_id;
SELECT TIMEDIFF(NOW(), timeSTART), 'TICKET_TOTAL';
DROP TEMPORARY TABLE IF EXISTS ticket_total2;
CREATE TEMPORARY TABLE `ticket_total2`
ENGINE = MEMORY
SELECT t.* FROM ticket_total t
LEFT JOIN Tickets t1 ON t1.Id_Ticket = t.ticket_id
LEFT JOIN expeditions e ON e.ticket_id = t.ticket_id
LEFT JOIN Agencias a ON a.Id_Agencia = t1.Id_Agencia
LEFT JOIN agency ag ON ag.agency_id = a.agency_id
LEFT JOIN agency_warehouse aw ON aw.agency_id = a.agency_id AND aw.warehouse_id = wh_
WHERE t1.Fecha BETWEEN TIMESTAMPADD(DAY,-5,DATE(date_)) AND TIMESTAMPADD(DAY,days,DATE(date_))
AND t1.Anotadoencaja = FALSE
AND t1.Etiquetasemitidas = FALSE
AND e.ticket_id IS NULL
AND IFNULL(aw.Vista,a.Vista) > 0
AND t1.warehouse_id = wh_;
SELECT TIMEDIFF(NOW(), timeSTART), 'TICKET_TOTAL2';
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
CREATE TEMPORARY TABLE tmp.risk
SELECT Id_Cliente, SUM(amount) risk
FROM Clientes c
JOIN (
SELECT customer_id, SUM(amount) amount
FROM bi.customer_risk
GROUP BY customer_id
UNION ALL
SELECT Id_Cliente, SUM(Entregado)
FROM Recibos
WHERE Fechacobro > v_date_end
GROUP BY Id_Cliente
UNION ALL
SELECT t.Id_Cliente, SUM(total)
FROM ticket_total tt
JOIN Tickets t ON tt.ticket_id = t.Id_Ticket
WHERE t.Fecha <= v_date_end
GROUP BY t.Id_Cliente
UNION ALL
SELECT t.customer_id, CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction t
WHERE t.receipt_id IS NULL
AND t.status = 'ok'
GROUP BY t.customer_id
) t ON c.Id_Cliente = t.customer_id
WHERE c.activo != FALSE
GROUP BY c.Id_Cliente;
SELECT TIMEDIFF(NOW(), timeSTART), 'RISK';
CREATE TEMPORARY TABLE `Locator`
ENGINE = MEMORY
SELECT Congelado, Credito, risk Riesgo, Greuge, T.*,ticket_state(T.factura_id, T.PedidoImpreso, T.Etiquetasemitidas, T.Blocked) AS Estado,
Codigotrabajador, DATE(T.Fecha) AS Fecha_Simple, Averiguar_ComercialCliente_IdTicket(T.Id_Ticket) AS Comercial,C.calidad
FROM Clientes C
INNER JOIN
(
SELECT
t.Id_Ticket, t.Id_Cliente, t.warehouse_id, t.Fecha, t.Alias,
NULL Notas, t.Factura, t.factura_id, t.Anotadoencaja, t.Id_Consigna, t.Id_Trabajador,
t.Observaciones, t.Firmado, t.Etiquetasemitidas, t.PedidoImpreso, t.Bultos, t.Localizacion,
t.Hora, t.odbc_date, t.blocked, t.Solucion, t.Id_Ruta, t.Prioridad, t.priority,
t.empresa_id, t.Id_Agencia,
CS.Consignatario, IFNULL(aw.Vista,a.Vista) Vista,a.Agencia, DATEFEC AS Hora_MAX ,
SUM(IF(Movimientos.OK = 0, 1, 0)) AS `lines`,
tt.total AS Importe,
IF(reino_id IN (5, 1), 0,tt.total) AS Plantas,
0 AS inacabable,
CS.CODPOSTAL, CS.POBLACION, p.name PROVINCIA, a.Vista VistaTicket,p.zone
FROM Tickets t
JOIN ticket_total2 tt ON tt.ticket_id = t.Id_Ticket
INNER JOIN Consignatarios CS USING(Id_Consigna)
LEFT JOIN province p USING(province_id)
LEFT JOIN Movimientos USING(Id_Ticket)
LEFT JOIN Articles on Movimientos.Id_Article = Articles.Id_Article
LEFT JOIN Tipos using(tipo_id)
LEFT JOIN Agencias a ON a.Id_Agencia = t.Id_Agencia
LEFT JOIN agency ag ON ag.agency_id = a.agency_id
LEFT JOIN agency_warehouse aw ON aw.agency_id = a.agency_id AND aw.warehouse_id = wh_
GROUP BY t.Id_Ticket
) T USING(Id_Cliente)
LEFT JOIN Trabajadores Tb ON Tb.Id_Trabajador = T.Id_Trabajador
LEFT JOIN tmp.risk as Peligros USING(Id_Cliente)
LEFT JOIN
(
SELECT Id_Cliente, SUM(Importe) AS Greuge FROM Greuges
GROUP BY Id_Cliente
) AS Agravios USING(Id_Cliente);
SELECT TIMEDIFF(NOW(), timeSTART), 'LOCATOR';
ALTER TABLE `Locator` ADD PRIMARY KEY(Id_Ticket);
SELECT TIMEDIFF(NOW(), timeSTART), 'LOCATOR INDEX';
UPDATE `Locator` JOIN
(
SELECT d.Id_Ticket from Tickets_dits d
JOIN Tickets t using(Id_Ticket)
LEFT JOIN Agencias a using(Id_Agencia)
LEFT JOIN expeditions e on e.ticket_id = d.Id_Ticket
WHERE Fecha BETWEEN CURDATE() AND TIMESTAMP(curdate(),'23:59:59')
AND idaccion_dits = 18 AND ticket_id is null
AND t.warehouse_id = 1
AND NOT Etiquetasemitidas
AND d.ODBC_DATE < TIMESTAMPADD(HOUR,-2, now())
AND Vista in (1,2)) sub using(Id_Ticket)
SET Observaciones = CONCAT('F5 PERDIDO ',IFNULL(Observaciones,''));
SELECT TIMEDIFF(NOW(), timeSTART), 'UPDATE';
INSERT INTO `Locator`(Fecha_Simple, Id_Ticket, Agencia, Id_Cliente, Alias, PedidoImpreso, CodigoTrabajador, Fecha, Estado, Consignatario, Vista, PROVINCIA,Riesgo)
SELECT DISTINCT v_compres.shipment AS Fecha_Simple, v_compres.Id_Entrada AS Id_Ticket, warehouse.name, v_compres.Id_Proveedor,
v_compres.ref AS Alias, v_compres.Pedida AS PedidoImpreso, v_compres.Id_Trabajador AS CodigoTrabajador, v_compres.shipment AS Fecha, 0 AS problem, v_compres.ref AS Consignatario, 1, 'TRASLADO',0
FROM v_compres
INNER JOIN warehouse ON v_compres.warehouse_id = warehouse.id
WHERE warehouse_id_out = wh_ AND v_compres.Confirmada = False
AND v_compres.shipment >= date_;
SELECT TIMEDIFF(NOW(), timeSTART), 'ENTRADAS';
INSERT INTO `Locator`(Fecha_Simple
, Id_Ticket
, Agencia
, Id_Cliente
, Alias
, PedidoImpreso
, CodigoTrabajador
, Fecha
, Estado
, Consignatario
, Vista
, PROVINCIA
, Riesgo
, Comercial
,calidad
,Bultos)
SELECT date(t.Fecha)
, t.Id_Ticket
, a.Agencia
, t.Id_Cliente
, t.Alias
, t.PedidoImpreso
, UCASE(LEFT(w_out.name,5)) as CodigoTrabajador
, t.Fecha
, 0 as Estado
, t.Alias
,3
, w.name
, NULL
,Averiguar_ComercialCliente_IdTicket(t.Id_Ticket) AS Comercial
,c.calidad
,t.Bultos
FROM Tickets t
JOIN Clientes c using(Id_Cliente)
JOIN warehouse w_out on w_out.id = t.warehouse_id
JOIN warehouse w ON w.id = wh_
JOIN Agencias a using(Id_Agencia)
JOIN warehouse_pickup wp on wp.agency_id = t.Id_Agencia and wp.warehouse_id = wh_
JOIN
(select Id_Ticket, state_id from
(
select Id_Ticket, odbc_date, state_id
from vncontrol.inter
where odbc_date >= timestampadd(day,-3,curdate())
order by odbc_date desc, state_id desc
) sub
group by Id_Ticket
having state_id = 15
) sub2 using(Id_Ticket);
SELECT TIMEDIFF(NOW(), timeSTART), 'PTE RECOGIDA';
DROP TEMPORARY TABLE IF EXISTS ticket_tmp;
DROP TEMPORARY TABLE IF EXISTS ticket_total;
DROP TEMPORARY TABLE IF EXISTS ticket_total2;
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_new` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_new`(
IN idC INT
, IN newFEC DATE
, IN idWH INT
, IN idUSER INT
, IN idEMP INT
, IN idCON INT
, IN intTIPO INT
, IN idRUTA INT
, IN datLANDING DATE
, OUT newTICKET INT)
BEGIN
DECLARE boolaux TINYINT;
SET boolaux = If(IdC = 200 Or IdC = 400 Or intTIPO = 23, True, False);
INSERT INTO Tickets (
Id_Cliente,
Fecha,
Id_Consigna,
Id_Trabajador,
Id_Agencia,
Alias,
Etiquetasemitidas,
Firmado,
warehouse_id,
Id_Ruta,
empresa_id,
landing)
SELECT
IdC,
newFEC,
Id_Consigna,
idUSER,
IF(intTIPO,intTIPO,Id_Agencia),
consignatario,
boolaux,
boolaux,
idWH,
IF(idRUTA,idRuta,NULL),
idEMP,
datLANDING
FROM Consignatarios c
INNER JOIN Agencias a USING(Id_Agencia)
WHERE IF(IdCON, Id_Consigna = IdCON, Predeterminada != 0)
AND Id_Cliente = idC
LIMIT 1;
SELECT LAST_INSERT_ID() INTO newTICKET;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_new_complet` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_new_complet`(
IN idC INT
, IN newFEC DATE
, IN idWH INT
, IN idUSER INT
, IN idEMP INT
, IN idCON INT
, IN intTIPO INT
, IN idRUTA INT
, OUT newTICKET INT)
BEGIN
DECLARE boolaux TINYINT;
SET boolaux = If(IdC = 200 Or IdC = 400 Or intTIPO = 23, True, False);
INSERT INTO Tickets (
Id_Cliente,
Fecha,
Id_Consigna,
Id_Trabajador,
Id_Agencia,
Alias,
Etiquetasemitidas,
Firmado,
warehouse_id,
Id_Ruta,
empresa_id)
SELECT
IdC,
newFEC,
Id_Consigna,
idUSER,
IF(intTIPO,intTIPO,Id_Agencia),
consignatario,
boolaux,
boolaux,
idWH,
IF(idRUTA,idRuta,NULL),
idEMP
FROM Consignatarios c
INNER JOIN Agencias a USING(Id_Agencia)
WHERE IF(IdCON, Id_Consigna = IdCON, Predeterminada != 0)
AND Id_Cliente = idC
LIMIT 1;
SELECT LAST_INSERT_ID() INTO newTICKET;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_portes_cobrados` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_portes_cobrados`(IN idTICKET BIGINT)
BEGIN
SELECT m.Id_Article, m.Concepte, m.Cantidad, mc.Valor, round(m.Cantidad * mc.Valor,2) as Porte
FROM vn2008.Movimientos m
JOIN vn2008.Movimientos_componentes mc using(Id_Movimiento)
INNER JOIN bi.tarifa_componentes tc ON mc.Id_Componente = tc.Id_Componente
WHERE m.Id_Ticket = idTICKET
AND tc.tarifa_componentes_series_id = 6;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_portes_estimados` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_portes_estimados`(IN vTicketId BIGINT)
BEGIN
SELECT
TICKET_FREIGHT(vTicketId) AS Porte_Volumen,
SUM(CAST(es.shipping_charge AS DECIMAL (10 , 2 ))) AS Porte_Bultos,
IFNULL(is_volumetric,0) AS is_volumetric
FROM
vn2008.v_expeditions_shipping_charge2 es
JOIN
vn2008.Tickets t on es.Id_Ticket = t.Id_Ticket
LEFT JOIN
vn2008.Rutas r on r.Id_Ruta = t.Id_Ruta
LEFT JOIN
vn2008.Agencias a on a.Id_Agencia = r.Id_Agencia
WHERE
es.Id_Ticket = vTicketId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_total` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_total`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS ticket_total;
CALL ticket_iva (NULL);
CREATE TEMPORARY TABLE ticket_total
(INDEX idx USING HASH (ticket_id))
ENGINE = MEMORY
SELECT ticket_id, red(SUM(bi + iva + re)) AS total
FROM ticket_iva GROUP BY ticket_id;
DROP TEMPORARY TABLE ticket_iva;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_volumen` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_volumen`(IN idT INT)
BEGIN
DECLARE intWh INTEGER;
DECLARE datFecha DATE;
DROP TEMPORARY TABLE IF EXISTS ticket_volumen;
SELECT warehouse_id, Fecha INTO intWh,datFecha FROM Tickets WHERE Id_Ticket = idT;
CALL item_last_buy_(intWh,datFecha);
CREATE TEMPORARY TABLE IF NOT EXISTS ticket_volumen ENGINE MEMORY
SELECT Id_Article,Cantidad, Concepte, VolUd as m3_uni, Volumen as m3, @m3:= @m3 + ifnull(Volumen,0) as m3_total
FROM
(
SELECT round(cm3(Id_Compra)/1000000/Packing,3) as VolUd ,M.Cantidad,round(M.Cantidad * cm3(Id_Compra)/1000000/Packing,3) as Volumen,
M.Id_Article, Concepte, @m3:= 0, @vol:=0, Id_Agencia
FROM Movimientos M
JOIN t_item_last_buy b on M.Id_Article = b.item_id
JOIN Compres C ON C.Id_Compra = b.buy_id
JOIN Tickets T on T.Id_Ticket = M.Id_Ticket
WHERE M.Id_Ticket = idT
) sub
JOIN Agencias a using(Id_Agencia);
DROP TEMPORARY TABLE t_item_last_buy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `top_seller` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `top_seller`()
BEGIN
drop table if exists top_sellers_min;
create temporary table top_sellers_min ENGINE = MEMORY
select a.Id_Article , tip.reino_id as Reino, count(m.Id_Article) as contados
from Movimientos m
inner join Tickets t
on m.Id_Ticket = t.Id_Ticket
inner join Articles a
on a.Id_Article = m.Id_Article
inner join Tipos tip
on a.tipo_id = tip.tipo_id
inner join reinos r
on r.id = tip.reino_id
where t.Fecha between timestampadd(day,-7,curdate()) and curdate()
group by m.Id_Article;
drop table if exists top_seller;
create temporary table top_seller ENGINE = MEMORY
select a.Article, tmp.Id_Article , a.Foto as foto, a.tipo_id as Id_Tipo,
tmp.Reino, r.reino as ReinoNombre, tip.Tipo as Tipo, tmp.contados
from top_sellers_min tmp
inner join Articles a
on a.Id_Article = tmp.Id_Article
inner join Tipos tip
on a.tipo_id = tip.tipo_id
inner join reinos r
on r.id = tmp.Reino
where tmp.Reino = 1
order by contados desc
limit 5;
insert into top_seller
select
a.Article, tmp.Id_Article , a.Foto as foto, a.tipo_id as Id_Tipo,
tmp.Reino, r.reino as ReinoNombre, tip.Tipo as Tipo, tmp.contados
from top_sellers_min tmp
inner join Articles a
on a.Id_Article = tmp.Id_Article
inner join Tipos tip
on a.tipo_id = tip.tipo_id
inner join reinos r
on r.id = tmp.Reino
where tmp.Reino = 2
order by contados desc
limit 5;
insert into top_seller
select
a.Article, tmp.Id_Article , a.Foto as foto, a.tipo_id as Id_Tipo,
tmp.Reino, r.reino as ReinoNombre, tip.Tipo as Tipo, tmp.contados
from top_sellers_min tmp
inner join Articles a
on a.Id_Article = tmp.Id_Article
inner join Tipos tip
on a.tipo_id = tip.tipo_id
inner join reinos r
on r.id = tmp.Reino
where tmp.Reino = 3
order by contados desc
limit 5;
insert into top_seller
select
a.Article, tmp.Id_Article , a.Foto as foto, a.tipo_id as Id_Tipo,
tmp.Reino, r.reino as ReinoNombre, tip.Tipo as Tipo, tmp.contados
from top_sellers_min tmp
inner join Articles a
on a.Id_Article = tmp.Id_Article
inner join Tipos tip
on a.tipo_id = tip.tipo_id
inner join reinos r
on r.id = tmp.Reino
where tmp.Reino = 4
order by contados desc
limit 5;
insert into top_seller
select
a.Article, tmp.Id_Article , a.Foto as foto, a.tipo_id as Id_Tipo,
tmp.Reino, r.reino as ReinoNombre, tip.Tipo as Tipo, tmp.contados
from top_sellers_min tmp
inner join Articles a
on a.Id_Article = tmp.Id_Article
inner join Tipos tip
on a.tipo_id = tip.tipo_id
inner join reinos r
on r.id = tmp.Reino
where tmp.Reino = 5
order by contados desc
limit 5;
insert into top_seller
select
a.Article, tmp.Id_Article , a.Foto as foto, a.tipo_id as Id_Tipo,
tmp.Reino, r.reino as ReinoNombre, tip.Tipo as Tipo, tmp.contados
from top_sellers_min tmp
inner join Articles a
on a.Id_Article = tmp.Id_Article
inner join Tipos tip
on a.tipo_id = tip.tipo_id
inner join reinos r
on r.id = tmp.Reino
where tmp.Reino = 7
order by contados desc
limit 5;
drop table if exists top_sellers_min;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Trabuque` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Trabuque`(IN intIDTICKET BIGINT, IN dblINCREMENTO DOUBLE )
BEGIN
DECLARE dblBASE_INICIAL DOUBLE DEFAULT 0;
DECLARE dblBASE_FINAL DOUBLE DEFAULT 0;
DECLARE dblAUMENTO DOUBLE DEFAULT 1;
SELECT SUM(Cantidad * Preu * (100 - Descuento) / 100)
INTO dblBASE_INICIAL
FROM Movimientos
WHERE Id_Ticket = intIDTICKET;
SET dblBASE_FINAL = dblBASE_INICIAL;
DELETE FROM Movimientos WHERE Cantidad = 0 AND Id_Ticket = intIDTICKET;
IF dblINCREMENTO < 0 THEN
WHILE (dblBASE_FINAL > dblBASE_INICIAL + dblINCREMENTO) or (dblAUMENTO < 0 ) DO
SET dblAUMENTO = dblAUMENTO - 0.01;
SELECT SUM(IF(@cantidad:= ROUND(dblAUMENTO * Cantidad),@cantidad,1) * Preu * (100 - Descuento) / 100)
INTO dblBASE_FINAL
FROM Movimientos
WHERE Id_Ticket = intIDTICKET;
END WHILE;
ELSE
WHILE dblBASE_FINAL < dblBASE_INICIAL + dblINCREMENTO DO
SET dblAUMENTO = dblAUMENTO + 0.01;
SELECT SUM(IF(@cantidad:= ROUND(dblAUMENTO * Cantidad),@cantidad,1) * Preu * (100 - Descuento) / 100)
INTO dblBASE_FINAL
FROM Movimientos
WHERE Id_Ticket = intIDTICKET;
END WHILE;
END IF;
UPDATE Movimientos
SET Cantidad = IF(@cantidad:= ROUND(dblAUMENTO * Cantidad),@cantidad,1)
WHERE Id_Ticket = intIDTICKET;
SELECT tipoiva
, ROUND(SUM(Cantidad * Preu * (100 - Descuento) / 100),2) as Base
, ROUND(ROUND(SUM(Cantidad * Preu * (100 - Descuento) / 100),2) * iva / 100,2) as Cuota
FROM Movimientos M
INNER JOIN Articles A USING(Id_Article)
INNER JOIN tblIVA USING(tipoiva)
WHERE Id_Ticket = intIDTICKET
GROUP BY tipoiva;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `traslado` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `traslado`(IN i_entrada INTEGER)
BEGIN
DECLARE dateShipment DATE;
DECLARE dateLanding DATE;
DECLARE warehouseShipment INTEGER;
DECLARE warehouseLanding INTEGER;
DECLARE v_calc_available INTEGER;
DECLARE v_calc_visible INTEGER;
SELECT shipment, landing, warehouse_id_out, warehouse_id
INTO dateShipment, dateLanding, warehouseShipment, warehouseLanding
FROM travel t JOIN Entradas e ON t.id = e.travel_id
WHERE Id_Entrada = i_entrada;
CALL buy_tarifas_table(i_entrada);
DROP TEMPORARY TABLE IF EXISTS buy_edi_temp;
CREATE TEMPORARY TABLE buy_edi_temp
(KEY (Id_Article)) ENGINE = MEMORY
SELECT *
FROM (SELECT c.Id_Article, c.Id_Compra
FROM Compres c INNER JOIN Entradas e USING(Id_Entrada)
INNER JOIN travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN date_inv() AND dateShipment
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0
ORDER BY (warehouseShipment = t.warehouse_id) DESC, t.landing DESC) t
GROUP BY Id_Article;
IF dateShipment >= CURDATE() THEN
CALL availableTraslate(warehouseShipment, dateShipment,NULL);
CALL `cache`.visible_refresh(v_calc_visible,TRUE,warehouseShipment);
DROP TEMPORARY TABLE IF EXISTS tmp_item;
CREATE TEMPORARY TABLE tmp_item (UNIQUE INDEX i USING HASH (item_id)) ENGINE = MEMORY
SELECT item_id, visible,0 available FROM `cache`.visible WHERE calc_id = v_calc_visible;
INSERT INTO tmp_item(item_id, available)
SELECT a.item_id, a.available FROM availableTraslate a
ON DUPLICATE KEY UPDATE available = a.available;
ELSE
CALL item_stock(warehouseShipment, dateShipment,NULL);
END IF;
DROP TEMPORARY TABLE IF EXISTS Traslados;
CREATE TEMPORARY TABLE Traslados ENGINE MEMORY
SELECT tp.Id_Tipo AS Tipo,
tp.reino_id,
ar.tipo_id,
ar.Id_Article AS article_id,
ar.Article,
ar.Medida,
ar.Categoria,
ar.Color,
Origen.abreviatura as Origen,
CE.Cantidad,
ar.Tallos,
CAST(AIM.visible AS DECIMAL(10,0)) as vis1,
CAST(AIM.available AS DECIMAL(10,0)) as dis1,
0 as vis2,
0 as dis2,
IFNULL(CE.grouping,C.grouping) as grouping,
IFNULL(CE.Packing,C.Packing) as Packing,
IFNULL(CE.caja,C.caja) as caja,
IFNULL(C.Productor, P2.Alias) AS Productor,
C.Id_Cubo,
1 Tinta,
CE.Id_Compra,
CE.Etiquetas,
C.buy_edi_id,
tp.Id_Trabajador,
CB.Volumen,
CB.x, CB.y, CB.z,
IFNULL(C.Costefijo,0) Costefijo,
IFNULL(C.Comisionfija,0) Comisionfija,
IFNULL(C.Portefijo,0) Portefijo,
A.m3,
E.comision,
CB.Retornable,
IFNULL(CEB.Valor,CB.Valor) Valor,
t3, t2, tp.promo,
C.grouping groupingOrigin,
C.Packing PackingOrigin,
C.Id_Compra CompraOrigin
FROM Articles ar
LEFT JOIN tmp_item AIM ON AIM.item_id = ar.Id_Article
LEFT JOIN Tipos tp ON tp.tipo_id = ar.tipo_id
LEFT JOIN Origen ON Origen.id = ar.id_origen
LEFT JOIN buy_edi_temp lb ON lb.Id_Article = ar.Id_Article
LEFT JOIN Compres C ON C.Id_Compra = lb.Id_Compra
LEFT JOIN Cubos CB ON CB.Id_Cubo = C.Id_Cubo
LEFT JOIN Entradas E2 ON E2.Id_Entrada = C.Id_Entrada
LEFT JOIN Proveedores P2 ON P2.Id_Proveedor = E2.Id_Proveedor
LEFT JOIN Entradas E ON E.Id_Entrada = i_entrada
LEFT JOIN travel TR ON TR.id = E.travel_id
LEFT JOIN Agencias A ON A.Id_Agencia = TR.agency_id
LEFT JOIN Compres CE ON CE.Id_Article = ar.Id_Article AND CE.Id_Entrada = i_entrada
LEFT JOIN Cubos CEB ON CEB.Id_Cubo = CE.Id_Cubo
LEFT JOIN tblTARIFAS ON TRUE
WHERE tp.reino_id <> 6 AND tp.reino_id <> 8
AND E.Redada = FALSE;
CREATE INDEX tindex USING HASH ON Traslados (article_id);
IF dateShipment >= CURDATE() THEN
CALL cache.visible_refresh(v_calc_visible, TRUE, warehouseLanding);
CALL availableTraslate(warehouseLanding, dateLanding,warehouseShipment);
UPDATE Traslados t
LEFT JOIN availableTraslate a ON t.article_id = a.item_id
LEFT JOIN `cache`.visible v ON v.calc_id = v_calc_visible AND t.article_id = v.item_id
SET vis2 = v.visible, dis2 = a.available;
END IF;
SELECT t.*,
Cantidad - MOD(Cantidad , grouping) as Subcantidad,
MOD(Cantidad , grouping) as Soll,
(IF(Volumen > 0,Volumen,x * y * IF(z = 0, Medida + 10, z))) / Packing as cm3,
Costefijo + Comisionfija + Portefijo AS Cost,
@porte := ROUND((IF(Volumen > 0,Volumen,x * y * IF(z = 0, Medida + 10, z))) * m3 / 1000000 / Packing ,3) AS Porte,
@comision := ROUND((Costefijo + Comisionfija + Portefijo) * comision / 100 ,3) AS Comision,
@embalaje := IF(Retornable != 0, 0,ROUND(Valor / Packing,3)) AS Embalaje,
@coste := IFNULL((Costefijo + Comisionfija + Portefijo),0) + IFNULL(@embalaje,0) + IFNULL(@porte,0) + IFNULL(@comision,0) AS Coste,
@t3 := ROUND(@coste / ( (100 - t3 - t.promo)/100),2) AS Tarifa3,
ROUND(@t3 * (1 + ((t2 - t3)/100)),2) AS Tarifa2,
0 selected
FROM Traslados t
WHERE vis1 <> 0 OR dis1 <> 0 OR vis2 <> 0 OR dis2 <> 0
ORDER BY tipo_id, Article, Medida, Categoria, Origen;
DROP TEMPORARY TABLE IF EXISTS Traslados;
DROP TEMPORARY TABLE IF EXISTS tmp_item;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `trasladoBeta` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `trasladoBeta`(IN i_entrada INTEGER)
BEGIN
DECLARE dateShipment DATE;
DECLARE dateLanding DATE;
DECLARE warehouseShipment INTEGER;
DECLARE warehouseLanding INTEGER;
DECLARE v_calc_available INTEGER;
DECLARE v_calc_visible INTEGER;
SELECT shipment, landing, warehouse_id_out, warehouse_id
INTO dateShipment, dateLanding, warehouseShipment, warehouseLanding
FROM travel t JOIN Entradas e ON t.id = e.travel_id
WHERE Id_Entrada = i_entrada;
CALL buy_tarifas_table(i_entrada);
DROP TEMPORARY TABLE IF EXISTS buy_edi_temp;
CREATE TEMPORARY TABLE buy_edi_temp
(KEY (Id_Article)) ENGINE = MEMORY
SELECT * FROM (SELECT c.Id_Article, c.Id_Compra
FROM Compres c INNER JOIN Entradas e USING(Id_Entrada)
INNER JOIN travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN date_inv() AND dateShipment
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0
ORDER BY (warehouseShipment = t.warehouse_id) DESC, t.landing DESC) t
GROUP BY Id_Article;
IF dateShipment >= CURDATE() THEN
CALL availableTraslate(warehouseShipment, dateShipment,NULL);
CALL `cache`.visible_refresh(v_calc_visible,TRUE,warehouseShipment);
DROP TEMPORARY TABLE IF EXISTS tmp_item;
CREATE TEMPORARY TABLE tmp_item (UNIQUE INDEX i USING HASH (item_id)) ENGINE = MEMORY
SELECT item_id, visible,0 available FROM `cache`.visible WHERE calc_id = v_calc_visible;
INSERT INTO tmp_item(item_id, available)
SELECT a.item_id, a.available FROM availableTraslate a
ON DUPLICATE KEY UPDATE available = a.available;
ELSE
CALL item_stock(warehouseShipment, dateShipment,NULL);
END IF;
DROP TEMPORARY TABLE IF EXISTS Traslados;
CREATE TEMPORARY TABLE Traslados ENGINE MEMORY
SELECT TP.Id_Tipo AS Tipo,
TP.reino_id,
ar.tipo_id,
ar.Id_Article AS article_id,
ar.Article,
ar.Medida,
ar.Categoria,
ar.Color,
Origen.abreviatura as Origen,
CE.Cantidad,
ar.Tallos,
CAST(AIM.visible AS DECIMAL(10,0)) as vis1,
CAST(AIM.available AS DECIMAL(10,0)) as dis1,
0 as vis2,
0 as dis2,
IFNULL(CE.grouping,C.grouping) as grouping,
IFNULL(CE.Packing,C.Packing) as Packing,
IFNULL(CE.caja,C.caja) as caja,
IFNULL(C.Productor, P2.Alias) AS Productor,
C.Id_Cubo,
1 Tinta,
CE.Id_Compra,
CE.Etiquetas,
C.buy_edi_id,
TP.Id_Trabajador,
CB.Volumen,
CB.x, CB.y, CB.z,
IFNULL(C.Costefijo,0) Costefijo,
IFNULL(C.Comisionfija,0) Comisionfija,
IFNULL(C.Portefijo,0) Portefijo,
A.m3,
E.comision,
CB.Retornable,
IFNULL(CEB.Valor,CB.Valor) Valor,
t3, t2, TP.promo
FROM Articles ar
LEFT JOIN tmp_item AIM ON AIM.item_id = ar.Id_Article
LEFT JOIN Tipos TP USING(tipo_id)
LEFT JOIN Origen ON Origen.id = ar.id_origen
LEFT JOIN buy_edi_temp lb ON lb.Id_Article = ar.Id_Article
LEFT JOIN Compres C ON C.Id_Compra = lb.Id_Compra
LEFT JOIN Cubos CB ON CB.Id_Cubo = C.Id_Cubo
LEFT JOIN Entradas E2 ON E2.Id_Entrada = C.Id_Entrada
LEFT JOIN Proveedores P2 ON P2.Id_Proveedor = E2.Id_Proveedor
LEFT JOIN Entradas E ON E.Id_Entrada = i_entrada
LEFT JOIN travel TR ON TR.id = E.travel_id
LEFT JOIN Agencias A ON A.Id_Agencia = TR.agency_id
LEFT JOIN Compres CE ON CE.Id_Article = ar.Id_Article AND CE.Id_Entrada = i_entrada
LEFT JOIN Cubos CEB ON CEB.Id_Cubo = CE.Id_Cubo
LEFT JOIN tblTARIFAS ON TRUE
WHERE TP.reino_id <> 6 AND TP.reino_id <> 8
AND E.Redada = FALSE;
CREATE INDEX tindex USING HASH ON Traslados (article_id);
IF dateShipment >= CURDATE() THEN
CALL cache.visible_refresh(v_calc_visible, TRUE, warehouseLanding);
SELECT warehouseLanding, dateLanding,warehouseShipment;
CALL availableTraslateTesting(warehouseLanding, dateLanding,warehouseShipment);
SELECT * FROM availableTraslate;
UPDATE Traslados t
LEFT JOIN availableTraslate a ON t.article_id = a.item_id
LEFT JOIN `cache`.visible v ON v.calc_id = v_calc_visible AND t.article_id = v.item_id
SET vis2 = v.visible, dis2 = a.available;
END IF;
SELECT t.*,
Cantidad - MOD(Cantidad , grouping) as Subcantidad,
MOD(Cantidad , grouping) as Soll,
(IF(Volumen > 0,Volumen,x * y * IF(z = 0, Medida + 10, z))) / Packing as cm3,
Costefijo + Comisionfija + Portefijo AS Cost,
@porte := ROUND((IF(Volumen > 0,Volumen,x * y * IF(z = 0, Medida + 10, z))) * m3 / 1000000 / Packing ,3) AS Porte,
@comision := ROUND((Costefijo + Comisionfija + Portefijo) * comision / 100 ,3) AS Comision,
@embalaje := IF(Retornable != 0, 0,ROUND(Valor / Packing,3)) AS Embalaje,
@coste := IFNULL((Costefijo + Comisionfija + Portefijo),0) + IFNULL(@embalaje,0) + IFNULL(@porte,0) + IFNULL(@comision,0) AS Coste,
@t3 := ROUND(@coste / ( (100 - t3 - t.promo)/100),2) AS Tarifa3,
ROUND(@t3 * (1 + ((t2 - t3)/100)),2) AS Tarifa2,
0 selected
FROM Traslados t
WHERE vis1 <> 0 OR dis1 <> 0 OR vis2 <> 0 OR dis2 <> 0
ORDER BY tipo_id, Article, Medida, Categoria, Origen;
DROP TEMPORARY TABLE IF EXISTS Traslados;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `trasladoTesting` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `trasladoTesting`(IN i_entrada INTEGER)
BEGIN
DECLARE dateShipment DATE;
DECLARE dateLanding DATE;
DECLARE warehouseShipment INTEGER;
DECLARE warehouseLanding INTEGER;
DECLARE v_calc_available INTEGER;
DECLARE v_calc_visible INTEGER;
SELECT shipment, landing, warehouse_id_out, warehouse_id
INTO dateShipment, dateLanding, warehouseShipment, warehouseLanding
FROM travel t JOIN Entradas e ON t.id = e.travel_id
WHERE Id_Entrada = i_entrada;
CALL buy_tarifas_table(i_entrada);
DROP TEMPORARY TABLE IF EXISTS buy_edi_temp;
CREATE TEMPORARY TABLE buy_edi_temp
(KEY (Id_Article)) ENGINE = MEMORY
SELECT * FROM (SELECT c.Id_Article, c.Id_Compra
FROM Compres c INNER JOIN Entradas e USING(Id_Entrada)
INNER JOIN travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN date_inv() AND dateShipment
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0
ORDER BY (warehouseShipment = t.warehouse_id) DESC, t.landing DESC) t
GROUP BY Id_Article;
IF dateShipment >= CURDATE() THEN
CALL `cache`.available_refresh(v_calc_available, TRUE, warehouseShipment, dateShipment);
CALL `cache`.visible_refresh(v_calc_visible,TRUE,warehouseShipment);
DROP TEMPORARY TABLE IF EXISTS tmp_item;
CREATE TEMPORARY TABLE tmp_item (UNIQUE INDEX i USING HASH (item_id)) ENGINE = MEMORY
SELECT item_id, visible,0 available FROM `cache`.visible WHERE calc_id = v_calc_visible;
INSERT INTO tmp_item(item_id, available)
SELECT a.item_id, a.available FROM `cache`.available a WHERE a.calc_id = v_calc_available
ON DUPLICATE KEY UPDATE available = a.available;
ELSE
CALL item_stock(warehouseShipment, dateShipment,NULL);
END IF;
DROP TEMPORARY TABLE IF EXISTS Traslados;
CREATE TEMPORARY TABLE Traslados ENGINE MEMORY
SELECT TP.Id_Tipo AS Tipo,
TP.reino_id,
ar.tipo_id,
ar.Id_Article AS article_id,
ar.Article,
ar.Medida,
ar.Categoria,
ar.Color,
Origen.abreviatura as Origen,
CE.Cantidad,
ar.Tallos,
CAST(AIM.visible AS DECIMAL(10,0)) as vis1,
CAST(AIM.available AS DECIMAL(10,0)) as dis1,
0 as vis2,
0 as dis2,
IFNULL(CE.grouping,C.grouping) as grouping,
IFNULL(CE.Packing,C.Packing) as Packing,
IFNULL(CE.caja,C.caja) as caja,
IFNULL(C.Productor, P2.Alias) AS Productor,
C.Id_Cubo,
1 Tinta,
CE.Id_Compra,
CE.Etiquetas,
C.buy_edi_id,
TP.Id_Trabajador,
CB.Volumen,
CB.x, CB.y, CB.z,
IFNULL(C.Costefijo,0) Costefijo,
IFNULL(C.Comisionfija,0) Comisionfija,
IFNULL(C.Portefijo,0) Portefijo,
A.m3,
E.comision,
CB.Retornable,
IFNULL(CEB.Valor,CB.Valor) Valor,
t3, t2, TP.promo
FROM Articles ar
LEFT JOIN tmp_item AIM ON AIM.item_id = ar.Id_Article
LEFT JOIN Tipos TP USING(tipo_id)
LEFT JOIN Origen ON Origen.id = ar.id_origen
LEFT JOIN buy_edi_temp lb ON lb.Id_Article = ar.Id_Article
LEFT JOIN Compres C ON C.Id_Compra = lb.Id_Compra
LEFT JOIN Cubos CB ON CB.Id_Cubo = C.Id_Cubo
LEFT JOIN Entradas E2 ON E2.Id_Entrada = C.Id_Entrada
LEFT JOIN Proveedores P2 ON P2.Id_Proveedor = E2.Id_Proveedor
LEFT JOIN Entradas E ON E.Id_Entrada = i_entrada
LEFT JOIN travel TR ON TR.id = E.travel_id
LEFT JOIN Agencias A ON A.Id_Agencia = TR.agency_id
LEFT JOIN Compres CE ON CE.Id_Article = ar.Id_Article AND CE.Id_Entrada = i_entrada
LEFT JOIN Cubos CEB ON CEB.Id_Cubo = CE.Id_Cubo
LEFT JOIN tblTARIFAS ON TRUE
WHERE TP.reino_id <> 6 AND TP.reino_id <> 8
AND E.Redada = FALSE;
CREATE INDEX tindex USING HASH ON Traslados (article_id);
IF dateShipment >= CURDATE() THEN
CALL cache.visible_refresh(v_calc_visible, TRUE, warehouseLanding);
CALL availableTraslate(warehouseLanding, dateLanding,warehouseShipment);
UPDATE Traslados t
LEFT JOIN availableTraslate a ON t.article_id = a.item_id
LEFT JOIN `cache`.visible v ON v.calc_id = v_calc_visible AND t.article_id = v.item_id
SET vis2 = v.visible, dis2 = a.available;
END IF;
SELECT t.*,
Cantidad - MOD(Cantidad , grouping) as Subcantidad,
MOD(Cantidad , grouping) as Soll,
(IF(Volumen > 0,Volumen,x * y * IF(z = 0, Medida + 10, z))) / Packing as cm3,
Costefijo + Comisionfija + Portefijo AS Cost,
@porte := ROUND((IF(Volumen > 0,Volumen,x * y * IF(z = 0, Medida + 10, z))) * m3 / 1000000 / Packing ,3) AS Porte,
@comision := ROUND((Costefijo + Comisionfija + Portefijo) * comision / 100 ,3) AS Comision,
@embalaje := IF(Retornable != 0, 0,ROUND(Valor / Packing,3)) AS Embalaje,
@coste := IFNULL((Costefijo + Comisionfija + Portefijo),0) + IFNULL(@embalaje,0) + IFNULL(@porte,0) + IFNULL(@comision,0) AS Coste,
@t3 := ROUND(@coste / ( (100 - t3 - t.promo)/100),2) AS Tarifa3,
ROUND(@t3 * (1 + ((t2 - t3)/100)),2) AS Tarifa2,
0 selected
FROM Traslados t
WHERE vis1 <> 0 OR dis1 <> 0 OR vis2 <> 0 OR dis2 <> 0
ORDER BY tipo_id, Article, Medida, Categoria, Origen;
DROP TEMPORARY TABLE IF EXISTS Traslados;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `traslado_label` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `traslado_label`(IN intArticle INTEGER,IN i_entrada_FV INTEGER, IN i_entrada_PCA INTEGER)
BEGIN
DECLARE intEntrada INTEGER;
DECLARE i_FV INTEGER;
SELECT FV INTO i_FV
FROM Articles a
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
WHERE a.Id_Article = intArticle;
SET intEntrada = IF(i_FV, i_entrada_FV,i_entrada_PCA);
SET intEntrada = IF(intEntrada = 0, i_entrada_PCA + i_entrada_FV, intEntrada);
IF intEntrada > 0 THEN
CALL buy_tarifas_table(intEntrada);
INSERT INTO Compres (Id_Article, Etiquetas, Cantidad, Id_Entrada, Id_Cubo, Packing,grouping,caja,
Costefijo, Portefijo, Embalajefijo, Comisionfija, novincular,buy_edi_id)
SELECT
land.Id_Article,
land.Etiquetas - IFNULL(ship.Etiquetas,0) - (IFNULL(Ventas,0) / land.Packing),
land.Cantidad - IFNULL(ship.Cantidad,0) - IFNULL(Ventas,0),
intEntrada,
land.Id_Cubo,
land.Packing,
land.grouping,
land.caja,
@cost := ROUND(IFNULL(land.Costefijo, 0) + IFNULL(land.Comisionfija, 0) + IFNULL(land.Portefijo, 0),
3) Costefij,
@porte := ROUND((@cm3:= cm3_2(land.Id_Cubo, land.Id_Article)) * a.m3 / 1000000 / land.Packing,
3) Porte,
land.EmbalajeFijo AS Embalaje,
@comision := ROUND(land.Costefijo * e2.comision / 100, 3) Comision,
land.novincular,land.buy_edi_id
FROM (
select c_land.Id_Cubo,c_land.Packing,c_land.grouping,c_land.Costefijo,c_land.Comisionfija,c_land.Portefijo,c_land.caja,SUM(c_land.Etiquetas) Etiquetas,c_land.EmbalajeFijo,
c_land.novincular,c_land.buy_edi_id,c_land.Id_Article,SUM(c_land.Cantidad) Cantidad
from
Compres c_land
JOIN
Entradas e_land ON c_land.Id_Entrada = e_land.Id_Entrada AND c_land.Id_Article = intArticle
JOIN
travel t_land ON t_land.id = e_land.travel_id
JOIN
Cubos cu ON cu.Id_Cubo = c_land.Id_Cubo
WHERE
(t_land.warehouse_id = 7 AND t_land.landing = CURDATE())
) land
LEFT JOIN
(SELECT SUM(c_ship.Etiquetas) Etiquetas,c_ship.Packing,SUM(c_ship.Cantidad) Cantidad
FROM Compres c_ship
LEFT JOIN Entradas e_ship ON c_ship.Id_Entrada = e_ship.Id_Entrada AND c_ship.Id_Article = intArticle
LEFT JOIN travel t_ship ON t_ship.id = e_ship.travel_id
WHERE t_ship.warehouse_id_out = 7 AND t_ship.shipment = CURDATE()
) ship ON TRUE
JOIN Entradas e2 ON e2.Id_Entrada = intEntrada
JOIN travel t ON t.id = e2.travel_id
JOIN Agencias a ON t.agency_id = a.Id_Agencia
LEFT JOIN
(SELECT sum(Cantidad) as Ventas
FROM Movimientos m
JOIN Tickets t on t.Id_Ticket = m.Id_Ticket
WHERE t.Fecha = CURDATE() AND m.Id_Article = intArticle AND t.warehouse_id = 7) v on true
GROUP BY land.Id_Article;
CALL buy_tarifas(LAST_INSERT_ID());
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `traslado_label_2` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `traslado_label_2`(IN i_compra INTEGER,IN i_entrada_FV INTEGER, IN i_entrada_PCA INTEGER, i_cantidad INTEGER)
BEGIN
DECLARE idARTICLE INT;
SELECT Id_Article INTO idARTICLE FROM Compres WHERE Id_Compra = i_compra;
call traslado_label_3(idARTICLE,i_entrada_FV,i_entrada_PCA);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `traslado_label_3` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `traslado_label_3`(IN intArticle INTEGER,IN i_entrada_FV INTEGER, IN i_entrada_PCA INTEGER)
BEGIN
DECLARE intEntrada INTEGER;
DECLARE i_FV INTEGER;
SELECT FV INTO i_FV
FROM Articles a
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
WHERE a.Id_Article = intArticle;
SET intEntrada = IF(i_FV, i_entrada_FV,i_entrada_PCA);
SET intEntrada = IF(intEntrada = 0, i_entrada_PCA + i_entrada_FV, intEntrada);
IF intEntrada > 0 THEN
CALL buy_tarifas_table(intEntrada);
INSERT INTO Compres (Id_Article, Etiquetas, Cantidad, Id_Entrada, Id_Cubo, Packing,grouping,caja,
Costefijo, Portefijo, Embalajefijo, Comisionfija, novincular,buy_edi_id)
SELECT
land.Id_Article,
land.Etiquetas - IFNULL(ship.Etiquetas,0) - (IFNULL(Ventas,0) / land.Packing),
land.Cantidad - IFNULL(ship.Cantidad,0) - IFNULL(Ventas,0),
intEntrada,
land.Id_Cubo,
land.Packing,
land.grouping,
land.caja,
@cost := ROUND(IFNULL(land.Costefijo, 0) + IFNULL(land.Comisionfija, 0) + IFNULL(land.Portefijo, 0),
3) Costefij,
@porte := ROUND((@cm3:= cm3_2(land.Id_Cubo, land.Id_Article)) * a.m3 / 1000000 / land.Packing,
3) Porte,
land.EmbalajeFijo AS Embalaje,
@comision := ROUND(land.Costefijo * e2.comision / 100, 3) Comision,
land.novincular,land.buy_edi_id
FROM (
select c_land.Id_Cubo,c_land.Packing,c_land.grouping,c_land.Costefijo,c_land.Comisionfija,c_land.Portefijo,c_land.caja,SUM(c_land.Etiquetas) Etiquetas,c_land.EmbalajeFijo,
c_land.novincular,c_land.buy_edi_id,c_land.Id_Article,SUM(c_land.Cantidad) Cantidad
from
Compres c_land
JOIN
Entradas e_land ON c_land.Id_Entrada = e_land.Id_Entrada AND c_land.Id_Article = intArticle
JOIN
travel t_land ON t_land.id = e_land.travel_id
JOIN
Cubos cu ON cu.Id_Cubo = c_land.Id_Cubo
WHERE
(t_land.warehouse_id = 7 AND t_land.landing = CURDATE())
) land
LEFT JOIN
(SELECT SUM(c_ship.Etiquetas) Etiquetas,c_ship.Packing,SUM(c_ship.Cantidad) Cantidad
FROM Compres c_ship
LEFT JOIN Entradas e_ship ON c_ship.Id_Entrada = e_ship.Id_Entrada AND c_ship.Id_Article = intArticle
LEFT JOIN travel t_ship ON t_ship.id = e_ship.travel_id
WHERE t_ship.warehouse_id_out = 7 AND t_ship.shipment = CURDATE()
) ship ON TRUE
JOIN Entradas e2 ON e2.Id_Entrada = intEntrada
JOIN travel t ON t.id = e2.travel_id
JOIN Agencias a ON t.agency_id = a.Id_Agencia
LEFT JOIN
(SELECT sum(Cantidad) as Ventas
FROM Movimientos m
JOIN Tickets t on t.Id_Ticket = m.Id_Ticket
WHERE t.Fecha = CURDATE() AND m.Id_Article = intArticle AND t.warehouse_id = 7) v on true
GROUP BY land.Id_Article;
CALL buy_tarifas(LAST_INSERT_ID());
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `traslado_ticket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `traslado_ticket`(IN i_entrada INTEGER, IN i_ticket INTEGER)
BEGIN
DECLARE intWarehouse INT;
DECLARE datTicket DATE;
SELECT warehouse_id, Fecha INTO intWarehouse,datTicket FROM Tickets WHERE Id_Ticket = i_ticket;
CALL buy_tarifas_table(i_entrada);
CALL item_last_buy_(intWarehouse,datTicket);
INSERT INTO Compres( Id_Article,
Cantidad,
Novincular,
Id_Entrada,
Id_Cubo,
Packing,
grouping,
caja,
Portefijo,
Comisionfija,
Embalajefijo,
Costefijo,
Productor,
Tarifa2,
Tarifa3
)
SELECT M.Id_Article,
IF(T.Id_Cliente IN (1625, 1118, 400), -1, 1) * M.Cantidad,
IF(T.Id_Cliente IN (1625, 1118, 400), TRUE, FALSE),
i_entrada,
IFNULL(C.Id_Cubo,'--'),
C.Packing,
C.grouping,
C.caja,
@pf := ROUND(@cm3:=cm3_2(IFNULL(C.Id_Cubo,'--'), b.item_id) * AG.m3 / 1000000 / C.Packing ,3) AS Porte,
@cf := IFNULL(ROUND(C.Costefijo * E.comision / 100 ,3),0) AS Comision,
@ef := ROUND(IF(CB.Retornable = FALSE,CB.Valor/ C.Packing,0) ,3) AS Embalaje,
@cost := ROUND(IFNULL(C.Costefijo,0) + @cf + @ef + @pf,3),
C.Productor,
@t3 := ROUND(@cost / ((100 - TC.t3)/100),2) Tarifa3,
@t2 := IF(@cost / ((100 - TC.t2)/100) <= @t3,@t3+0.01,@cost / ((100 - TC.t2)/100)) Tarifa2
FROM Movimientos M
LEFT JOIN Tickets T USING(Id_Ticket)
LEFT JOIN t_item_last_buy b ON M.Id_Article = b.item_id AND T.warehouse_id = b.warehouse_id
LEFT JOIN Compres C ON C.Id_Compra = b.buy_id
LEFT JOIN Cubos CB ON CB.Id_Cubo = C.Id_Cubo
LEFT JOIN Entradas E ON E.Id_Entrada = i_entrada
LEFT JOIN travel TR ON TR.id = E.travel_id
LEFT JOIN Agencias AG ON AG.Id_Agencia = TR.agency_id
LEFT JOIN Proveedores P ON P.Id_Proveedor = E.Id_Proveedor
JOIN tblTARIFAS TC
LEFT JOIN tblContadores ON TRUE
JOIN (SELECT m3 as ZEL_PORT FROM Agencias WHERE Id_Agencia = 618) Z
WHERE M.Id_Ticket = i_ticket;
DROP TEMPORARY TABLE t_item_last_buy;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `travelDetail` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `travelDetail`()
BEGIN
DECLARE vGap VARCHAR(10) DEFAULT ' ';
DECLARE vDateFrom DATE DEFAULT TIMESTAMPADD(WEEK,-1,CURDATE());
SELECT * FROM
(
SELECT
1 as IsTravel,
tr.id as travel,
NULL as Entrada,
ag.Agencia,
tr.ref,
tr.shipment,
wo.name as OrigenCajas,
tr.landing,
w.name as Destino,
NULL as Etiquetas,
NULL as Notas_Eva,
kg,
cast(sum(tp.density * c.Etiquetas * IF(cb.Volumen, cb.Volumen, cb.X * cb.Y * cb.Z) / 1000000 ) as DECIMAL(10,0)) as loadedKg,
NULL as loadPriority,
NULL as awb
FROM travel tr
JOIN Entradas e ON e.travel_id = tr.id
JOIN Compres c ON c.Id_Entrada = e.Id_Entrada
JOIN Cubos cb ON cb.Id_Cubo = c.Id_Cubo
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
JOIN warehouse w ON w.id = tr.warehouse_id
JOIN warehouse wo ON wo.id = tr.warehouse_id_out
JOIN Agencias ag ON ag.Id_Agencia = tr.agency_id
WHERE tr.landing >= vDateFrom
GROUP BY tr.id
UNION ALL
SELECT
0 as IsTravel,
e.travel_id as travel,
e.Id_Entrada,
CONCAT(vGap,p.Proveedor),
e.Referencia,
tr.shipment,
wo.name as OrigenCajas,
tr.landing,
w.name as Destino,
sum(Etiquetas) as Etiquetas,
e.Notas_Eva,
NULL as kg,
cast(sum(tp.density * c.Etiquetas * IF(cb.Volumen, cb.Volumen, cb.X * cb.Y * cb.Z) / 1000000 ) as DECIMAL(10,0)) as loadedkg,
loadPriority,
CAST(awb.codigo AS DECIMAL(11,0)) as awb
FROM Entradas e
LEFT JOIN recibida_entrada re ON re.Id_Entrada = e.Id_Entrada
LEFT JOIN awb_recibida ar ON ar.recibida_id = re.awb_recibida
LEFT JOIN awb ON awb.id = ar.awb_id
JOIN Compres c ON c.Id_Entrada = e.Id_Entrada
JOIN Cubos cb ON cb.Id_Cubo = c.Id_Cubo
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN Tipos tp ON tp.tipo_id = a.tipo_id
JOIN Proveedores p ON p.Id_Proveedor = e.Id_Proveedor
JOIN travel tr ON tr.id = e.travel_id
JOIN warehouse w ON w.id = tr.warehouse_id
JOIN warehouse wo ON wo.id = tr.warehouse_id_out
WHERE tr.landing >= vDateFrom
GROUP BY e.Id_Entrada
) sub
ORDER BY landing, travel, IsTravel DESC, (loadPriority > 0) DESC,loadPriority, Agencia, Notas_Eva ;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `travel_tree` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `travel_tree`(vDate DATE, vAddress INT, vAgency INT)
BEGIN
DECLARE vDone BOOL;
DECLARE vWh SMALLINT;
DECLARE vCur CURSOR FOR
SELECT w.id warehouse_id
FROM warehouse w
WHERE reserve;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
DROP TEMPORARY TABLE IF EXISTS travel_tree;
CREATE TEMPORARY TABLE travel_tree
(
warehouse_id TINYINT NOT NULL PRIMARY KEY,
Fecha_envio DATE NOT NULL,
Fecha_recepcion DATE NOT NULL
)
ENGINE = MEMORY;
OPEN vCur;
l: LOOP
SET vDone = FALSE;
FETCH vCur INTO vWh;
IF vDone THEN
LEAVE l;
END IF;
INSERT INTO travel_tree (warehouse_id, Fecha_envio, Fecha_recepcion)
SELECT vWh, shipping, vDate FROM (
SELECT TIMESTAMPADD(DAY, -ah.subtract_day, vDate) shipping, ah.max_hour
FROM agency_hour ah
LEFT JOIN Consignatarios c ON c.Id_Consigna = vAddress
WHERE ah.warehouse_id = vWh
AND (week_day = WEEKDAY(vDate)
OR week_day IS NULL)
AND (ah.agency_id = vAgency
OR ah.agency_id IS NULL)
AND (ah.province_id = c.province_id
OR ah.province_id IS NULL
OR vAddress IS NULL)
ORDER BY (
(ah.week_day IS NOT NULL) +
(ah.agency_id IS NOT NULL) +
((ah.province_id IS NOT NULL) * 3)
) DESC
LIMIT 1
) t
WHERE shipping >= CURDATE()
AND IF(shipping = CURDATE(), max_hour > HOUR(NOW()), TRUE);
END LOOP;
CLOSE vCur;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `travel_tree_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `travel_tree_list`(vAddress INT, vDate DATE)
BEGIN
DECLARE vAgency INT;
DECLARE vDone BOOL DEFAULT FALSE;
DECLARE vCur CURSOR FOR
SELECT DISTINCT agency_id
FROM agency
JOIN agency_hour USING(agency_id);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
DROP TEMPORARY TABLE IF EXISTS agency_list;
CREATE TEMPORARY TABLE agency_list (
Id_Agencia INT NOT NULL,
Agencia VARCHAR(20),
description VARCHAR(45),
Vista VARCHAR(45),
shipment DATE,
Descripcion VARCHAR(45),
PRIMARY KEY(Id_Agencia)
)
ENGINE = MEMORY;
OPEN vCur;
FETCH vCur INTO vAgency;
WHILE NOT vDone
DO
CALL travel_tree (vDate, vAddress, vAgency);
INSERT INTO agency_list
SELECT a.Id_Agencia, a.Agencia, a.description,
a.Vista, t.Fecha_Envio, w.name as Descripcion
FROM Agencias a
JOIN travel_tree t
JOIN warehouse w on w.id = t.warehouse_id
WHERE agency_id = vAgency
AND a.web
ON DUPLICATE KEY UPDATE
Descripcion = CONCAT(Descripcion, ', ', w.name);
FETCH vCur INTO vAgency;
END WHILE;
CLOSE vCur;
SELECT * FROM agency_list;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `travel_tree_shipment` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `travel_tree_shipment`(v_date DATE, v_consigna INT, v_agency INT, v_warehouse INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS travel_tree_shipment;
CREATE TEMPORARY TABLE travel_tree_shipment
ENGINE = MEMORY
SELECT v_warehouse warehouse_id, v_envio landing FROM (
SELECT * FROM (
SELECT v_warehouse, TIMESTAMPADD(DAY, subtract_day, v_date) v_envio, subtract_day, ah.max_hour
FROM agency_hour ah
LEFT JOIN Consignatarios c ON c.Id_Consigna = v_consigna
WHERE (week_day = weekday(TIMESTAMPADD(DAY, subtract_day, v_date)) OR week_day IS NULL)
AND (ah.agency_id = v_agency OR ah.agency_id IS NULL)
AND ah.warehouse_id = v_warehouse
AND (ah.province_id = c.province_id OR ah.province_id IS NULL OR v_consigna IS NULL)
ORDER BY (
(ah.week_day IS NOT NULL) +
(ah.agency_id IS NOT NULL) +
((ah.province_id IS NOT NULL)*3)
) DESC
) t
LIMIT 1
) t
WHERE IF(v_date = CURDATE(), max_hour > HOUR(NOW()), TRUE) AND subtract_day < 225;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `turnoClon` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `turnoClon`(IN vWeek INT, IN vYear INT)
BEGIN
DECLARE done BIT DEFAULT 0;
DECLARE myEntrada INT;
DECLARE myWeekday INT;
DECLARE myLanding DATE;
DECLARE myShipment DATE;
DECLARE myDateDiff INT;
DECLARE myTravel INT;
DECLARE myNuevaEntrada INT;
DECLARE myWH_IN INT;
DECLARE myWH_OUT INT;
DECLARE rs CURSOR FOR
SELECT Id_Entrada, weekDay FROM Entradas_turno;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
IF vWeek = 0 THEN
SET vWeek = WEEK(TIMESTAMPADD(WEEK,1,CURDATE()));
SET vYear = YEAR(TIMESTAMPADD(WEEK,1,CURDATE()));
END IF;
OPEN rs;
FETCH rs INTO myEntrada, myWeekday;
WHILE NOT done DO
SELECT DATEDIFF(landing,shipment), warehouse_id, warehouse_id_out INTO myDateDiff, myWH_IN, myWH_OUT
FROM travel t
JOIN Entradas e on e.travel_id = t.id
WHERE Id_Entrada = myEntrada;
SELECT date, TIMESTAMPADD(DAY, - myDateDiff, date)
INTO myLanding , myShipment
FROM time
WHERE year = vYear AND week = vWeek
AND WEEKDAY(date) = myWeekday;
SELECT t.id INTO myTravel
FROM travel t
WHERE shipment = myShipment
AND landing = myLanding
AND warehouse_id = myWH_IN
AND warehouse_id_out = myWH_OUT
LIMIT 1;
IF IFNULL(myTravel,0) = 0 THEN
INSERT INTO travel(shipment, shipment_hour, landing,landing_hour, warehouse_id, warehouse_id_out,agency_id, ref)
SELECT myShipment, shipment_hour, myLanding ,landing_hour, warehouse_id, warehouse_id_out,agency_id, ref
FROM travel t
JOIN Entradas e on e.travel_id = t.id
WHERE Id_Entrada = myEntrada;
SELECT LAST_INSERT_ID() INTO myTravel;
END IF;
INSERT INTO Entradas(Id_Proveedor,Referencia, Notas, Id_Moneda, empresa_id, travel_id)
SELECT Id_Proveedor, Referencia, Notas, Id_Moneda, empresa_id, myTravel
FROM Entradas
WHERE Id_Entrada = myEntrada;
SELECT LAST_INSERT_ID() INTO myNuevaEntrada;
INSERT INTO Compres(Id_Entrada, Id_Article, Cantidad, Costefijo, Portefijo, Embalajefijo, Novincular, Comisionfija, Etiquetas, Packing
,grouping, caja, Nicho, Id_Cubo, Tarifa1,Tarifa2,Tarifa3, PVP, Productor)
SELECT myNuevaEntrada, Id_Article, Cantidad, Costefijo, Portefijo, Embalajefijo, Novincular, Comisionfija, Etiquetas, Packing
,grouping, caja, Nicho, Id_Cubo, Tarifa1,Tarifa2,Tarifa3, PVP, Productor
FROM Compres
WHERE Id_Entrada = myEntrada;
FETCH rs INTO myEntrada, myWeekday;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `turn_calculartiempomedio` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `turn_calculartiempomedio`()
BEGIN
DECLARE strTiempoAprox NVARCHAR(255);
SELECT
CASE WHEN @min>45 THEN concat(@hora:=@hora+1,' horas ')
WHEN @hora >0 THEN concat(@hora,' horas ')
WHEN @min>=0 and @min<15 THEN '15 Minutos'
WHEN @min<30 THEN '30 Minutos'
WHEN @min<45 THEN '45 Minutos'
ELSE '' and @hora=@hora+1 END AS tiempoaprox
INTO strTiempoAprox
FROM (
select min(sub1.adate) as adate,max(sub1.bdate) as bdate,
@hora:=ROUND((TIMESTAMPDIFF(HOUR,min(sub1.adate),max(sub1.bdate)) /10),0),
@min:=ROUND((TIMESTAMPDIFF(MINUTE,min(sub1.adate),max(sub1.bdate)) mod 60)/10,0)
from (
select a.odbc_date as adate,b.odbc_date as bdate
from turn a
INNER JOIN turn b on a.number=(b.number-1)
WHERE TIMESTAMPDIFF(HOUR,b.odbc_date,a.odbc_date)<1
ORDER BY a.odbc_date DESC,b.odbc_date DESC
LIMIT 10) sub1) sub2;
SELECT strTiempoAprox as TiempoAprox;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ubicator` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ubicator`(IN i_wh TINYINT, IN d_fecha DATE,IN filtro VARCHAR(255))
BEGIN
DECLARE date_inv DATE;
DROP TEMPORARY TABLE IF EXISTS stock_actual;
DROP TEMPORARY TABLE IF EXISTS vn2008.tmp_ubicator_stock;
SELECT FechaInventario INTO date_inv
FROM tblContadores LIMIT 1;
CREATE TEMPORARY TABLE stock_actual
SELECT Id_Article article_id,SUM(Cantidad) amount FROM (
SELECT Id_Article,Cantidad
FROM Compres c
JOIN Entradas e USING(Id_Entrada)
JOIN travel t ON t.id = e.travel_id
WHERE landing BETWEEN date_inv AND d_fecha
AND warehouse_id = i_wh AND NOT Redada
UNION ALL
SELECT Id_Article,-Cantidad
FROM Compres c
JOIN Entradas e USING(Id_Entrada)
JOIN travel t ON t.id = e.travel_id
WHERE shipment BETWEEN date_inv AND CURDATE()
AND warehouse_id_out = i_wh AND NOT Redada AND delivered
UNION ALL
SELECT Id_Article, -Cantidad
FROM Movimientos m
JOIN Tickets t USING(Id_Ticket)
WHERE Fecha BETWEEN date_inv AND CURDATE()
AND warehouse_id = i_wh AND Etiquetasemitidas
) t GROUP BY article_id;
CALL hedera.sql_query (sql_printf('
CREATE TEMPORARY TABLE IF NOT EXISTS vn2008.tmp_ubicator_stock AS
SELECT A.Id_Article,A.Article, T.Id_Cubo,IF(Z > 0,Z,0) as z,x,y,
CEIL(S.Suma/T.packing) as etiquetas,A.Medida,A.Nicho
FROM vn2008.Articles A
INNER JOIN
(SELECT article_id, amount as SUMA
FROM vn2008.stock_actual
WHERE amount > 0
) as S ON S.article_id = A.Id_Article
LEFT JOIN (
SELECT * FROM (
SELECT c.Id_Article item_id, c.Id_Compra id, c.Id_Cubo,c.packing
FROM vn2008.Compres c INNER JOIN vn2008.Entradas e USING(Id_Entrada)
INNER JOIN vn2008.travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN vn2008.date_inv() AND %v
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0 AND Id_Cubo IS NOT NULL
ORDER BY 1 = t.warehouse_id DESC, t.landing DESC
) t1 GROUP BY item_id
) as T ON T.item_id = A.Id_Article
LEFT JOIN vn2008.Cubos C USING(Id_Cubo)
WHERE %s AND CEIL(S.Suma/T.packing) > 0',d_fecha,filtro));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ubicator_calcularhuecosvacios` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ubicator_calcularhuecosvacios`(int_H int,int_X int,int_Y int,int_Z int,intId_Estanterias int,intId_Baldas int,contId_Estanterias int)
BEGIN
DECLARE intnumcubostotal,intnumcubosocup SMALLINT DEFAULT 0;
DECLARE posX,posY,posZ,intId_Article,x_cubo,y_cubo INT DEFAULT 0;
DECLARE strId_Cubo VARCHAR(10);
DECLARE strArticle,strmodelo VARCHAR(50) DEFAULT '---';
DECLARE intContador INT DEFAULT 1;
SELECT COUNT(*) INTO intnumcubosocup FROM Ubicator_Cajas
WHERE W=int_X and D=int_Y and Id_Estanterias=intId_Estanterias and Id_Baldas=intId_Baldas and NumEstanterias=contId_Estanterias;
SELECT W,D,H,Id_Cubo,Id_Article,modelo,Article,x,y
INTO posX,posY,posZ,strId_Cubo,intId_Article,strmodelo,strArticle,x_cubo,y_cubo
FROM Ubicator_Cajas
WHERE W=int_X and D=int_Y and Id_Estanterias=intId_Estanterias and Id_Baldas=intId_Baldas and NumEstanterias=contId_Estanterias
ORDER BY H DESC LIMIT 1;
WHILE (int_Z*intContador0) DO
SET posZ=posZ+int_Z;
INSERT INTO Ubicator_Cajas (Id_Estanterias,Id_Baldas,modelo,W ,D,H ,Id_Cubo,X,Y,Z,Medida,Id_Article,Article,numEstanterias)
VALUES (intId_Estanterias,intId_Baldas,strmodelo,posX,posY,posZ,strId_Cubo,x_cubo,y_cubo,int_Z,null,intId_Article,'',contId_Estanterias);
SET intnumcubosocup=intnumcubosocup+1;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ubicator_ordenacion` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ubicator_ordenacion`(date DATE,boolORDALFA TINYINT(1), intWAREHOUSE INT,strFILTRO NVARCHAR(255), boolESAPILABLE TINYINT(1),boolESABIERTO TINYINT(1),intCmNichoExtra SMALLINT,inEstanteria SMALLINT,strOrdenacion varchar(255))
BEGIN
DECLARE intPOSX,intPOSY,intPOSZ,intSUMAH,intCMNICHO_EXTRA INT DEFAULT 0;
DECLARE intId_Estanterias,intW,intD,intId_Baldas,intH,intEtiquetas,
intX,intY,intZ,ReturnX,ReturnY,ReturnZ,Cantidad,intId_Baldas_aux INT DEFAULT 0;
DECLARE strId_Cubo VARCHAR(10) DEFAULT '---';
DECLARE intId_Article,Id_Article_aux,alturabalda,intZ_aux INT DEFAULT 0;
DECLARE contId_Estanterias INT DEFAULT 1;
DECLARE strmodelo VARCHAR(255) DEFAULT '---';
DECLARE done BIT DEFAULT 0;
DECLARE strArticle VARCHAR(50);
DECLARE boolCabeCaja,boolPasarZ,boolPasarX,boolNoNextRecord,fin BOOLEAN DEFAULT FALSE;
DECLARE intMedida,intX_ant,intY_ant,IntZ_ant INT(10) DEFAULT 0;
DECLARE cursor_estanterias CURSOR FOR SELECT Id_Estanterias,w,d,modelo,Id_Baldas,h FROM Estanterias
INNER JOIN Baldas USING (Id_Estanterias) WHERE Id_Estanterias=inEstanteria ORDER BY Id_Estanterias,Id_Baldas;
DECLARE cursor_ubicator CURSOR FOR SELECT Id_Cubo,Etiquetas,Id_Article,X,Y,Z,Article,Medida FROM ubicator_stock;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
DROP TEMPORARY TABLE IF EXISTS Ubicator_Cajas;
CREATE TEMPORARY TABLE IF NOT EXISTS Ubicator_Cajas(Id_Estanterias INT,Id_Baldas SMALLINT,modelo varchar(255),
W SMALLINT,D SMALLINT,H SMALLINT,Id_Cubo VARCHAR(10),X SMALLINT,Y SMALLINT,Z SMALLINT,Medida SMALLINT,
Id_Article INT(11),Article varchar(50),NumEstanterias SMALLINT,NumEtiquetas INT,POSX INT (11),POSY INT(11),
POSZ INT(11),Id_Article_aux int(11));
DROP TEMPORARY TABLE IF EXISTS Ubicator_CajasNoCaben;
CREATE TEMPORARY TABLE IF NOT EXISTS Ubicator_CajasNoCaben (Id_Cubo VARCHAR(10),Id_Estanteria SMALLINT);
CALL ubicator (intWAREHOUSE,date,strFILTRO);
DROP TEMPORARY TABLE IF EXISTS ubicator_stock;
SET @SQL=CONCAT('CREATE TEMPORARY TABLE IF NOT EXISTS ubicator_stock SELECT Id_Cubo,Etiquetas,Id_Article,X,Y,IF(Z=0,Medida,Z) Z,Article,Medida,IF(LOWER(Article) like "%mix%",1,0) AS MIX FROM tmp_ubicator_stock
ORDER BY MIX,',strOrdenacion);
PREPARE stmt1 FROM @SQL;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
OPEN cursor_estanterias;
OPEN cursor_ubicator;
REPEAT
FETCH cursor_estanterias INTO intId_Estanterias,intW,intD,strmodelo,intId_Baldas,intH;
IF (done) THEN
CLOSE cursor_estanterias;
SET done=FALSE;
OPEN cursor_estanterias;
SET contId_Estanterias=contId_Estanterias+1;
FETCH cursor_estanterias INTO intId_Estanterias,intW,intD,strmodelo,intId_Baldas,intH;
END IF;
SELECT CASE WHEN (SUM(H)>=0) THEN SUM(H) ELSE 0 END As suma INTO intSUMAH
FROM Baldas WHERE Id_Estanterias=intId_Estanterias and Baldas.Id_Baldas>intId_Baldas;
SELECT H INTO alturabalda
FROM Baldas WHERE Id_Estanterias=intId_Estanterias and Baldas.Id_Baldas=intId_Baldas;
SET intPOSX=0,intPOSY=0,intPOSZ=0,intId_Baldas_aux=0;
ITERACION:WHILE NOT done DO
IF (NOT boolNoNextRecord) THEN
FETCH cursor_ubicator INTO strId_Cubo,intEtiquetas,intId_Article,intX,intY,intZ,strArticle,intMedida;
IF (DONE) THEN
LEAVE ITERACION;
END IF;
SELECT Id_Cubo,Etiquetas,Id_Article,X,Y,Z,Article,Medida FROM ubicator_stock ORDER BY Id_Article;
SET Cantidad=0;
END IF;
SELECT ubicator_cabecaja(intX,intY,intZ,intW,intD,intH) INTO boolCabeCaja;
IF (NOT boolCabeCaja) THEN
INSERT INTO Ubicator_CajasNoCaben (Id_Cubo,Id_Estanteria) VALUES (strId_Cubo,intId_Estanterias);
SET Id_Article_aux=intId_Article,boolNoNextRecord=FALSE;
ITERATE ITERACION;
END IF;
SET boolPasarX=FALSE,boolPasarZ=FALSE;
REPEAT
SET Cantidad=Cantidad+1;
IF (intId_Baldas_aux<>intId_Baldas) THEN
SET intId_Baldas_aux=intId_Baldas;
SET intPOSX=0,intPOSY=0,intPOSZ=0;
END IF;
IF (boolESAPILABLE AND intPOSZ>0 AND intZ>0) THEN
IF (boolESABIERTO) THEN
IF (intId_Article=Id_Article_aux) THEN
SET boolPasarX=FALSE,boolPasarZ=TRUE;
SET intPOSX=intPOSX-intX;
ELSE
SET boolPasarX=TRUE,boolPasarZ=TRUE;
SET intPOSY=intY,intPOSZ=intZ;
SET Id_Article_aux=intId_Article;
SET intPOSX=intPOSX+intCmNichoExtra;
END IF;
ELSE
IF ((intZ=intZ_ant) AND (intY=intY_ant) AND (intX=intX_ant)) THEN
SET intPOSX=intPOSX-intX;
SET boolPasarX=FALSE,boolPasarZ=FALSE;
ELSE
CALL ubicator_calcularhuecosvacios (alturabalda,ReturnX,ReturnY,intZ_aux,intId_Estanterias,intId_Baldas,contId_Estanterias);
SET intPOSY=intY,intPOSZ=intZ;
SET boolPasarX=TRUE,boolPasarZ=TRUE;
SET intPOSX=intPOSX+intCmNichoExtra;
END IF;
END IF;
ELSE
IF (NOT boolESAPILABLE AND boolESABIERTO) THEN
SET boolPasarX=FALSE,boolPasarZ=FALSE;
SET intPOSZ=0;
IF (intId_Article<>Id_Article_aux and Id_Article_aux<>0) THEN
SET intPOSY=0;
END IF;
ELSE
SET boolPasarX=TRUE,boolPasarZ=TRUE;
SET intPOSY=intY,intPOSZ=intZ;
END IF;
IF (intPOSX>0) THEN
SET intPOSX=intPOSX+intCmNichoExtra;
END IF;
END IF;
Condicional:loop
IF (NOT boolPasarX) THEN
IF (NOT boolPasarZ) THEN
IF (intD-intPOSY>intY) THEN
SET intPOSY=intPOSY+intY;
IF (intPOSX>0) and (intId_Article=Id_Article_aux) THEN
IF (intPOSX-intX-intCmNichoExtra<0) THEN
SET intPOSX=0,boolNoNextRecord=TRUE,Cantidad=Cantidad-1;
LEAVE ITERACION;
END IF;
SET intPOSX=intPOSX-intX-intCmNichoExtra;
END IF;
ELSE
SET intPOSY=intY;
END IF;
END IF;
IF (intH-intPOSZ>intZ) THEN
SET intPOSZ=intPOSZ+intZ;
ELSE
IF (intD-intPOSY>intY) THEN
SET boolPasarZ=FALSE,boolPasarX=FALSE,intPOSZ=intZ;
ITERATE Condicional;
END IF;
SET intPOSZ=intZ;
SET intPOSY=intY;
SET intPOSX=intPOSX+intX+intCmNichoExtra;
END IF;
END IF;
IF (intW-intPOSX>intX) THEN
SET intPOSX=intPOSX+intX;
ELSE
SET intPOSX=0,boolNoNextRecord=TRUE,Cantidad=Cantidad-1;
LEAVE ITERACION;
END IF;
LEAVE Condicional;
END loop Condicional;
SET ReturnX=intPOSX-intX;
SET ReturnZ=intSUMAH+intPOSZ-intZ;
SET ReturnY=intPOSY-intY;
SET boolPasarZ=FALSE,boolPasarX=FALSE;
INSERT INTO Ubicator_Cajas (Id_Estanterias,Id_Baldas,modelo,W ,D,H ,Id_Cubo,X,Y,Z,Medida,Id_Article,Article,NumEstanterias,
NumEtiquetas,POSX,POSY,POSZ,Id_Article_aux)
VALUES (intId_Estanterias,intId_Baldas,strmodelo,ReturnX ,ReturnY,ReturnZ ,strId_Cubo,intX,intY,intZ,intMedida,intId_Article,strArticle,contId_Estanterias,
intEtiquetas,intPOSX,intPOSY,intPOSZ,Id_Article_aux);
SET Id_Article_aux=intId_Article,intZ_aux=intZ,boolNoNextRecord=FALSE;
SET intZ_ant=intZ,intY_ant=intY,intX_ant=intX;
UNTIL Cantidad=intEtiquetas END REPEAT;
END WHILE ITERACION;
IF (done) THEN
SET fin=TRUE;
END IF;
UNTIL fin END REPEAT;
CLOSE cursor_ubicator;
CLOSE cursor_estanterias;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ubicator_ordenacion_distrib` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ubicator_ordenacion_distrib`(date DATE,boolORDALFA TINYINT(1), intWAREHOUSE INT,strFILTRO NVARCHAR(255), boolESAPILABLE TINYINT(1),boolESABIERTO TINYINT(1),intCmNichoExtra SMALLINT,inEstant_distrib SMALLINT)
BEGIN
DECLARE intPOSX,intPOSY,intPOSZ,intSUMAH,intCMNICHO_EXTRA INT DEFAULT 0;
DECLARE intId_Estanterias,intW,intD,intId_Baldas,intH,intEtiquetas,
intX,intY,intZ,ReturnX,ReturnY,ReturnZ,Cantidad,intId_Baldas_aux INT DEFAULT 0;
DECLARE strId_Cubo VARCHAR(10) DEFAULT '---';
DECLARE intId_Article,Id_Article_aux,alturabalda,intZ_aux INT DEFAULT 0;
DECLARE contId_Estanterias INT DEFAULT 0;
DECLARE strmodelo VARCHAR(255) DEFAULT '---';
DECLARE done BIT DEFAULT 0;
DECLARE strArticle VARCHAR(50);
DECLARE boolCabeCaja,boolPasarZ,boolPasarX,boolNoNextRecord,fin BOOLEAN DEFAULT FALSE;
DECLARE intMedida,intX_ant,intY_ant,IntZ_ant ,intposinicial,intposfinal,auxintId_Estanterias,auxintposinicial,auxintposfinal,intnumdistrib,nestanterias INT(11) DEFAULT 0;
DECLARE cursor_estanterias CURSOR FOR SELECT Id_Estanterias,w,d,modelo,Id_Baldas,h,posinicial,posfinal FROM Estanterias
INNER JOIN Baldas USING (Id_Estanterias)
INNER JOIN Estanterias_distri using (Id_Estanterias)
WHERE IdEstanterias_distri=inEstant_distrib
AND posinicial>auxintposinicial
ORDER BY posinicial;
DECLARE cursor_ubicator CURSOR FOR SELECT Id_Cubo,Etiquetas,Id_Article,X,Y,Z,Article,Medida FROM ubicator_stock;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
DROP TEMPORARY TABLE IF EXISTS Ubicator_Cajas;
CREATE TEMPORARY TABLE IF NOT EXISTS Ubicator_Cajas (Id_Estanterias INT,Id_Baldas SMALLINT,modelo varchar(255),
W SMALLINT,D SMALLINT,H SMALLINT,Id_Cubo VARCHAR(10),X SMALLINT,Y SMALLINT,Z SMALLINT,Medida SMALLINT,Id_Article INT(11),Article varchar(50),NumEstanterias SMALLINT);
DROP TEMPORARY TABLE IF EXISTS Ubicator_CajasNoCaben;
CREATE TEMPORARY TABLE IF NOT EXISTS Ubicator_CajasNoCaben (Id_Cubo VARCHAR(10),Id_Estanteria SMALLINT);
CALL ubicator (intWAREHOUSE,date,strFILTRO);
DROP TEMPORARY TABLE IF EXISTS ubicator_stock;
IF (boolORDALFA) THEN
CREATE TEMPORARY TABLE IF NOT EXISTS ubicator_stock SELECT Id_Cubo,Etiquetas,Id_Article,X,Y,Z,Article,Medida FROM tmp_ubicator_stock
ORDER BY Article,Medida;
ELSE
CREATE TEMPORARY TABLE IF NOT EXISTS ubicator_stock SELECT Id_Cubo,Etiquetas,Id_Article,X,Y,Z,Article,Medida FROM tmp_ubicator_stock
ORDER BY Id_Article;
END IF;
OPEN cursor_estanterias;
OPEN cursor_ubicator;
SET contId_Estanterias=0;
REPEAT
FETCH cursor_estanterias INTO intId_Estanterias,intW,intD,strmodelo,intId_Baldas,intH,intposinicial,intposfinal;
IF (contId_Estanterias=0) THEN
SET contId_Estanterias=1;
SET auxintId_Estanterias=intId_Estanterias;
SELECT (intposfinal-intposinicial+1)*Id_Baldas into auxintposfinal from Baldas where Id_Estanterias=intId_Estanterias order by Id_Baldas DESC limit 1;
END IF;
IF (done) THEN
SELECT DISTINCT posinicial-1 INTO auxintposinicial
FROM Estanterias_distri
WHERE Id_Estanterias=auxintId_Estanterias;
CLOSE cursor_estanterias;
OPEN cursor_estanterias;
FETCH cursor_estanterias INTO intId_Estanterias,intW,intD,strmodelo,intId_Baldas,intH,intposinicial,intposfinal;
END IF;
IF (auxintId_Estanterias<>IFNULL(intId_Estanterias,auxintId_Estanterias)) THEN
SET done=TRUE;
END IF;
SET intnumdistrib=intnumdistrib+1;
IF (done) THEN
IF (intnumdistrib=0) THEN SUM(H) ELSE 0 END As suma INTO intSUMAH
FROM Baldas WHERE Id_Estanterias=intId_Estanterias and Baldas.Id_Baldas>intId_Baldas;
SELECT H INTO alturabalda
FROM Baldas WHERE Id_Estanterias=intId_Estanterias and Baldas.Id_Baldas=intId_Baldas;
SET intPOSX=0,intPOSY=0,intPOSZ=0,intId_Baldas_aux=0;
ITERACION:WHILE NOT done DO
IF (NOT boolNoNextRecord) THEN
FETCH cursor_ubicator INTO strId_Cubo,intEtiquetas,intId_Article,intX,intY,intZ,strArticle,intMedida;
IF (DONE) THEN
LEAVE ITERACION;
END IF;
SELECT Id_Cubo,Etiquetas,Id_Article,X,Y,Z,Article,Medida FROM ubicator_stock ORDER BY Id_Article;
SET Cantidad=0;
END IF;
SELECT ubicator_cabecaja(intX,intY,intZ,intW,intD,intH) INTO boolCabeCaja;
IF (NOT boolCabeCaja) THEN
INSERT INTO Ubicator_CajasNoCaben (Id_Cubo,Id_Estanteria) VALUES (strId_Cubo,intId_Estanterias);
SET Id_Article_aux=intId_Article,boolNoNextRecord=FALSE;
ITERATE ITERACION;
END IF;
SET boolPasarX=FALSE,boolPasarZ=FALSE;
REPEAT
SET Cantidad=Cantidad+1;
IF (intId_Baldas_aux<>intId_Baldas) THEN
SET intId_Baldas_aux=intId_Baldas;
SET intPOSX=0,intPOSY=0,intPOSZ=0;
END IF;
IF (boolESAPILABLE AND intPOSZ>0 AND intZ>0) THEN
IF (boolESABIERTO) THEN
IF (intId_Article=Id_Article_aux) THEN
SET boolPasarX=FALSE,boolPasarZ=TRUE;
SET intPOSX=intPOSX-intX;
ELSE
SET boolPasarX=TRUE,boolPasarZ=TRUE;
SET intPOSY=intY,intPOSZ=intZ;
SET Id_Article_aux=intId_Article;
SET intPOSX=intPOSX+intCmNichoExtra;
END IF;
ELSE
IF ((intZ=intZ_ant) AND (intY=intY_ant) AND (intX=intX_ant)) THEN
SET intPOSX=intPOSX-intX;
SET boolPasarX=FALSE,boolPasarZ=FALSE;
ELSE
CALL ubicator_calcularhuecosvacios (alturabalda,ReturnX,ReturnY,intZ_aux,intId_Estanterias,intId_Baldas,contId_Estanterias);
SET intPOSY=intY,intPOSZ=intZ;
SET boolPasarX=TRUE,boolPasarZ=TRUE;
SET intPOSX=intPOSX+intCmNichoExtra;
END IF;
END IF;
ELSE
IF (NOT boolESAPILABLE AND boolESABIERTO) THEN
SET boolPasarX=FALSE,boolPasarZ=FALSE;
SET intPOSZ=0;
ELSE
SET boolPasarX=TRUE,boolPasarZ=TRUE;
SET intPOSY=intY,intPOSZ=intZ;
END IF;
IF (intPOSX>0) THEN
SET intPOSX=intPOSX+intCmNichoExtra;
END IF;
END IF;
Condicional:loop
IF (NOT boolPasarX) THEN
IF (NOT boolPasarZ) THEN
IF (intD-intPOSY>intY) THEN
SET intPOSY=intPOSY+intY;
ELSE
SET intPOSY=intY;
END IF;
END IF;
IF (intH-intPOSZ>intZ) THEN
SET intPOSZ=intPOSZ+intZ;
ELSE
IF (intD-intPOSY>intY) THEN
SET boolPasarZ=FALSE,boolPasarX=FALSE,intPOSZ=intZ;
ITERATE Condicional;
END IF;
SET intPOSZ=intZ;
SET intPOSY=intY, intPOSX=intPOSX+intX+intCmNichoExtra;
END IF;
END IF;
IF (intW-intPOSX>intX) THEN
SET intPOSX=intPOSX+intX;
ELSE
SET intPOSX=0,boolNoNextRecord=TRUE,Cantidad=Cantidad-1;
LEAVE ITERACION;
END IF;
LEAVE Condicional;
END loop Condicional;
SET ReturnX=intPOSX-intX;
SET ReturnZ=intSUMAH+intPOSZ-intZ;
SET ReturnY=intPOSY-intY;
SET boolPasarZ=FALSE,boolPasarX=FALSE;
INSERT INTO Ubicator_Cajas (Id_Estanterias,Id_Baldas,modelo,W ,D,H ,Id_Cubo,X,Y,Z,Medida,Id_Article,Article,NumEstanterias)
VALUES (intId_Estanterias,intId_Baldas,strmodelo,ReturnX ,ReturnY,ReturnZ ,strId_Cubo,intX,intY,intZ,intMedida,intId_Article,strArticle,contId_Estanterias);
SET Id_Article_aux=intId_Article,intZ_aux=intZ,boolNoNextRecord=FALSE;
SET intZ_ant=intZ,intY_ant=intY,intX_ant=intX;
UNTIL Cantidad=intEtiquetas END REPEAT;
END WHILE ITERACION;
IF (done) THEN
SET fin=TRUE;
END IF;
UNTIL fin END REPEAT;
CLOSE cursor_ubicator;
CLOSE cursor_estanterias;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ubicator_test` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ubicator_test`(IN i_wh TINYINT, IN d_fecha DATE,IN filtro VARCHAR(255))
BEGIN
DECLARE date_inv DATE;
DROP TEMPORARY TABLE IF EXISTS stock_actual;
DROP TEMPORARY TABLE IF EXISTS vn2008.tmp_ubicator_stock;
SELECT FechaInventario INTO date_inv
FROM tblContadores LIMIT 1;
CREATE TEMPORARY TABLE stock_actual
SELECT Id_Article article_id,SUM(Cantidad) amount FROM (
SELECT Id_Article,Cantidad
FROM Compres c
JOIN Entradas e USING(Id_Entrada)
JOIN travel t ON t.id = e.travel_id
WHERE landing BETWEEN date_inv AND d_fecha
AND warehouse_id = i_wh AND NOT Redada
UNION ALL
SELECT Id_Article,-Cantidad
FROM Compres c
JOIN Entradas e USING(Id_Entrada)
JOIN travel t ON t.id = e.travel_id
WHERE shipment BETWEEN date_inv AND timestampadd(DAY,-1,d_fecha)
AND warehouse_id_out = i_wh AND NOT Redada
UNION ALL
SELECT Id_Article, -Cantidad
FROM Movimientos m
JOIN Tickets t USING(Id_Ticket)
WHERE Fecha BETWEEN date_inv AND timestampadd(DAY,-1,d_fecha)
AND warehouse_id = i_wh
) t GROUP BY article_id;
CALL hedera.sql_query (sql_printf('
CREATE TEMPORARY TABLE IF NOT EXISTS vn2008.tmp_ubicator_stock AS
SELECT A.Id_Article,A.Article, T.Id_Cubo,IF(Z > 0,Z,0) as z,x,y,
CEIL(S.Suma/T.grouping) as etiquetas,A.Medida,A.Nicho
FROM vn2008.Articles A
INNER JOIN
(SELECT article_id, amount as SUMA
FROM vn2008.stock_actual
WHERE amount > 0
) as S ON S.article_id = A.Id_Article
LEFT JOIN (
SELECT * FROM (
SELECT c.Id_Article item_id, c.Id_Compra id, c.Id_Cubo,c.grouping
FROM vn2008.Compres c INNER JOIN vn2008.Entradas e USING(Id_Entrada)
INNER JOIN vn2008.travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN vn2008.date_inv() AND CURDATE()
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0 AND Id_Cubo IS NOT NULL
ORDER BY 1 = t.warehouse_id DESC, t.landing DESC
) t1 GROUP BY item_id
) as T ON T.item_id = A.Id_Article
LEFT JOIN vn2008.Cubos C USING(Id_Cubo)
WHERE %s AND CEIL(S.Suma/T.grouping) > 0',filtro));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `unary_delete` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `unary_delete`(v_node INT, v_delete bool)
BEGIN
DECLARE v_parent INT;
SELECT parent
INTO v_parent
FROM unary
WHERE id = v_node;
IF(v_delete = FALSE) THEN
UPDATE unary
SET parent = v_parent
WHERE parent = v_node;
END IF;
DELETE FROM unary
WHERE id = v_node;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `unary_insert` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `unary_insert`(OUT v_unary INT, v_parent INT)
BEGIN
INSERT INTO unary(parent) VALUES(v_parent);
SELECT last_insert_id() INTO v_unary;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `unary_leaves` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `unary_leaves`(v_top INT)
BEGIN
DECLARE v_count INT;
DECLARE v_parent INT;
DECLARE v_depth INT DEFAULT 0;
DROP TEMPORARY TABLE IF EXISTS tmp.tree;
CREATE TEMPORARY TABLE tmp.tree
(INDEX (id))
ENGINE = MEMORY
SELECT v_top id, v_parent parent, v_depth depth;
DROP TEMPORARY TABLE IF EXISTS tmp.parent;
CREATE TEMPORARY TABLE tmp.parent
ENGINE = MEMORY
SELECT v_top id;
l: LOOP
SET v_depth = v_depth + 1;
DROP TEMPORARY TABLE IF EXISTS tmp.child;
CREATE TEMPORARY TABLE tmp.child
ENGINE = MEMORY
SELECT c.`id`, c.parent
FROM `unary` c
JOIN tmp.parent p ON c.`parent` = p.id;
DROP TEMPORARY TABLE tmp.parent;
CREATE TEMPORARY TABLE tmp.parent
ENGINE = MEMORY
SELECT c.id, c.parent
FROM tmp.child c
LEFT JOIN tmp.tree t ON t.id = c.id
WHERE t.id IS NULL;
INSERT INTO tmp.tree
SELECT id, parent, v_depth FROM tmp.parent;
SELECT COUNT(*) INTO v_count
FROM tmp.parent;
IF v_count = 0 THEN
LEAVE l;
END IF;
END LOOP;
DROP TEMPORARY TABLE
tmp.parent,
tmp.child;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `unary_scan_ident` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `unary_scan_ident`(v_top INT, v_space INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.tree_ident;
CALL tree_leaves(v_top);
CREATE TEMPORARY TABLE tmp.tree_ident
ENGINE = MEMORY
SELECT t.id,
CONCAT( REPEAT(REPEAT(" ",v_space), t.depth), sp.name) AS name
FROM tmp.tree t
INNER JOIN unary_scan sp
ON t.id = sp.id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `unary_scan_insert` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `unary_scan_insert`(v_name VARCHAR(45), v_parent INT, v_type VARCHAR(45))
BEGIN
DECLARE v_unary INT;
CALL unary_insert(v_unary, v_parent);
INSERT INTO unary_scan(name, unary_id, type) VALUES(v_name, v_unary, v_type);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `unary_tops` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `unary_tops`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.tree;
CREATE TEMPORARY TABLE tmp.tree
ENGINE = MEMORY
SELECT s.`unary_id` AS id, s.name, s.odbc_date, s.type
FROM `unary_scan` s
INNER JOIN `unary` u ON s.unary_id = u.id
WHERE u.parent IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `unary_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `unary_update`(v_node INT, v_new_parent INT, v_move bool)
BEGIN
DECLARE v_parent INT;
SELECT parent
INTO v_parent
FROM unary
WHERE id = v_node;
IF(v_move = TRUE) THEN
UPDATE unary
SET parent = v_parent
WHERE parent = v_node;
END IF;
UPDATE unary
SET parent = v_new_parent
WHERE id = v_node;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `valor_faltas` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `valor_faltas`(IN intReino_id INT,IN dateDesde DATE,IN dateHasta DATE,IN wh INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS item;
CREATE TEMPORARY TABLE item
SELECT Id_Article id,Id_Movimiento,Cantidad,Id_Tipo,Fecha
FROM Tickets t
JOIN Movimientos m USING (Id_Ticket)
JOIN Articles a USING (Id_Article)
JOIN Tipos tip USING (tipo_id)
WHERE
Id_Cliente = 400
AND Fecha BETWEEN dateDesde AND dateHasta
AND reino_id = 4;
CREATE INDEX pk USING HASH ON item (id);
CALL item_buy (wh, dateHasta);
CALL item_buy_price (1240,dateDesde,wh);
SELECT *,Cantidad * price as total FROM item;
DROP TEMPORARY TABLE item;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `verdecora` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `verdecora`(vDelivered DATE)
BEGIN
DECLARE vConsigna INT DEFAULT 21025;
DECLARE vAgencia INT DEFAULT 639;
DROP TEMPORARY TABLE IF EXISTS tmp.bionic_calc;
CREATE TEMPORARY TABLE tmp.bionic_calc
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT Id_Article AS item_id
FROM Articles
JOIN Tipos using(tipo_id)
WHERE reino_id IN (1,5)
AND Id_Article < 170000;
CALL vn2008.bionic_calc(vDelivered, vConsigna, vAgencia);
SELECT
bi.item_id AS 'Ref_VN',
iv.codin,
NULL as Recomendado,
bi.available as Disponible,
CASE c.caja
WHEN 0 THEN 1
WHEN 1 THEN c.grouping
WHEN 2 THEN c.packing
END AS 'Venta x',
c.Packing AS 'Uds/Caja',
bl.min_price as Precio,
REPLACE(bi.item,'_','') AS 'Artículo',
ita.tag1 as Caracter1,
ita.val1 as Valor1,
ita.tag2 as Caracter2,
ita.val2 as Valor2,
ita.tag3 as Caracter3,
ita.val3 as Valor3,
ita.tag4 as Caracter4,
ita.val4 as Valor4,
ita.tag5 as Caracter5,
ita.val5 as Valor5,
ita.tag6 as Caracter6,
ita.val6 as valor6
FROM tmp.bionic_item bi
JOIN vn.itemTagArranged ita ON ita.itemFk = bi.item_id
JOIN bi.Last_buy_id lb ON lb.Id_Article = bi.item_id
JOIN vn2008.Compres c ON c.Id_Compra = lb.Id_Compra
JOIN (
SELECT MIN(price) min_price, item_id
FROM tmp.bionic_price
GROUP BY item_id
) bl ON bl.item_id = bi.item_id
LEFT JOIN vn.itemVerdecora iv ON iv.itemFk = bi.item_id
WHERE lb.warehouse_id = 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `vips_in_a_week` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `vips_in_a_week`(IN strCONDITION varchar(512))
BEGIN
call sql_query( CONCAT('SELECT C.Id_Cliente, C.Cliente, RED(SUM((M.Cantidad * M.Preu) * 100 - M.Descuento) / 100) as Importe
FROM Clientes C INNER JOIN Tickets T ON T.Id_Cliente = C.Id_Cliente
INNER JOIN Movimientos M ON M.Id_Ticket = T.Id_Ticket
INNER JOIN Articles A ON A.Id_Article = M.Id_Article
JOIN Tipos TP ON A.tipo_id = TP.tipo_id
INNER JOIN Trabajadores TR ON TR.Id_Trabajador = TP.Id_Trabajador
WHERE ',
strCONDITION,
' GROUP BY Id_Cliente
HAVING Importe > 0
ORDER BY Importe DESC
')
);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `vips_in_a_week_by_client` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `vips_in_a_week_by_client`(IN strCONDITION varchar(512))
BEGIN
call sql_query( CONCAT('SELECT M.Id_Article, A.Article, A.Medida, A.Color, A.Categoria,
SUM(M.Cantidad) Cantidad, M.Preu, M.Descuento,
RED(SUM(M.Cantidad) * M.Preu * (100 - M.Descuento) / 100) as Importe
FROM Clientes C INNER JOIN Tickets T ON T.Id_Cliente = C.Id_Cliente
INNER JOIN Movimientos M ON M.Id_Ticket = T.Id_Ticket
INNER JOIN Articles A ON A.Id_Article = M.Id_Article
JOIN Tipos TP ON A.tipo_id = TP.tipo_id
INNER JOIN Trabajadores TR ON TR.Id_Trabajador = TP.Id_Trabajador
WHERE ',
strCONDITION,
' GROUP BY M.Id_Article, A.Article, A.Medida, A.Color, A.Categoria, M.Preu, M.Descuento '
)
);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `volumetricoReparto` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `volumetricoReparto`( IN IdTicket INT(11), OUT atot DOUBLE )
BEGIN
DECLARE ticket INT(11);
DECLARE rutaid INT(11);
DECLARE art INT(11);
DECLARE ax, ay, az, atot double;
DECLARE CUR1 CURSOR FOR SELECT a.Id_Article FROM vn2008.Movimientos m, vn2008.Articles a
WHERE m.Id_Ticket = IdTicket AND m.Id_Article = a.Id_Article ;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET @atot = 0;
set @atot = 0;
OPEN CUR1;
REPEAT
FETCH CUR1 INTO art ;
SELECT x, y, z into ax,ay,az
FROM vn2008.Cubos cu, vn2008.Compres co
WHERE cu.Id_Cubo = co.Id_Cubo AND Id_Compra =
(SELECT max(Id_Compra) FROM vn2008.Compres c
WHERE c.Id_Article = @art);
set @atot = @atot +((@ax * @ay * @az)* 1,10);
UNTIL done END REPEAT;
CLOSE CUR1;
select 'hola ',@atot;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `weekly_sales_new` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `weekly_sales_new`(v_wh SMALLINT, v_date_ini DATETIME, v_date_end DATETIME)
BEGIN
IF v_date_end IS NULL THEN
SET v_date_end = v_date_ini;
END IF;
SET v_date_end = TIMESTAMPADD(DAY, 1, v_date_end);
CREATE TEMPORARY TABLE weekly_ticket
(INDEX idx USING HASH (Id_Ticket))
ENGINE = MEMORY
SELECT Id_Ticket, to_weeks (DATE(Fecha)) week, warehouse_id
FROM Tickets t
JOIN warehouse w ON w.id = t.warehouse_id
WHERE Fecha >= v_date_ini AND Fecha < v_date_end
AND Id_Cliente NOT IN (400, 200)
AND NOT w.fuente
AND v_wh IN (t.warehouse_id, 0);
CREATE TEMPORARY TABLE weekly_sales
ENGINE = MEMORY
SELECT week, warehouse_id, a.Id_Article item_id, SUM(Cantidad) AS amount,
SUM(Cantidad * Preu * (100 - Descuento) / 100) AS price
FROM Movimientos m
JOIN weekly_ticket t USING (Id_Ticket)
JOIN Articles a USING (Id_Article)
INNER JOIN Tipos USING (tipo_id)
WHERE reino_id != 6
GROUP BY week, warehouse_id, item_id;
DROP TEMPORARY TABLE weekly_ticket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `XDiario_Quadrator` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `XDiario_Quadrator`()
BEGIN
UPDATE XDiario
SET EURODEBE = ROUND(EURODEBE,2),
EUROHABER = ROUND(EUROHABER,2)
WHERE NOT enlazado;
UPDATE XDiario XD
INNER JOIN
(
SELECT XD.id, SUBCTA, Quadre FROM XDiario XD
INNER JOIN (
SELECT ASIEN, SUM(IFNULL(ROUND(Eurodebe,2),0))- SUM(IFNULL(ROUND(EUROHABER,2),0)) as Quadre
FROM XDiario
WHERE enlazado = FALSE
GROUP BY ASIEN
HAVING Quadre != 0
) sub USING(ASIEN)
WHERE SUBCTA > '5999999999'
GROUP BY ASIEN
) sub2 USING(id)
SET Eurohaber = IF(IFNULL(Eurohaber,0) = 0, Eurohaber, Eurohaber + Quadre),
Eurodebe = IF(IFNULL(Eurodebe,0) = 0, Eurodebe, Eurodebe - Quadre);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `__camiones` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `__camiones`(vWarehouse INT, vDate DATE)
BEGIN
CALL inventario_multiple_reservas(vDate, 7, 4848);
CALL article_multiple_buy(vDate, 7);
SELECT Temperatura
,ROUND(SUM(Etiquetas * cm3_2(Id_Cubo, Id_Article))) AS cm3
,ROUND(SUM(IF(scanned,Etiquetas,0) * cm3_2(Id_Cubo, Id_Article))) AS cm3s
,ROUND(SUM(Vida * cm3_2(Id_Cubo, Id_Article))) AS cm3e
FROM (
SELECT t.Temperatura, c.Etiquetas, c.Id_Cubo, c.Id_Article, b.scanned, c.Vida
FROM Compres c
LEFT JOIN buy_edi b ON b.id = c.buy_edi_id
JOIN Articles a ON a.Id_Article = c.Id_Article
JOIN Tipos t ON t.tipo_id = a.tipo_id
JOIN Entradas e ON e.Id_Entrada = c.Id_Entrada
JOIN travel tr ON tr.id = e.travel_id
WHERE tr.warehouse_id = vWarehouse
AND tr.landing = vDate
UNION ALL
SELECT t.Temperatura, @e:= ai.visible/c.packing, c.Id_Cubo, ai.article_id, @e, @e
FROM article_inventory ai
JOIN Compres c ON c.Id_Compra = ai.buy_id
JOIN Articles a ON a.Id_Article = ai.article_id
JOIN Tipos t ON t.tipo_id = a.tipo_id
WHERE avalaible > 0
) sub
GROUP BY Temperatura;
DROP TEMPORARY TABLE article_inventory;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `__sql_signal` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `__sql_signal`(v_code CHAR(35))
BEGIN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = v_code;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Current Database: `bi`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `bi` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `bi`;
--
-- Table structure for table `Equalizator`
--
DROP TABLE IF EXISTS `Equalizator`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Equalizator` (
`Vista` int(11) NOT NULL,
`Pedido` int(11) DEFAULT NULL,
`Impreso` int(11) DEFAULT NULL,
`Encajado` int(11) DEFAULT NULL,
PRIMARY KEY (`Vista`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Greuge_Evolution`
--
DROP TABLE IF EXISTS `Greuge_Evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Greuge_Evolution` (
`Id_Cliente` int(11) NOT NULL,
`Fecha` date NOT NULL,
`Greuge` decimal(10,2) NOT NULL DEFAULT '0.00',
`Ventas` decimal(10,2) NOT NULL DEFAULT '0.00',
`Fosil` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT 'greuge fósil, correspondiente a los clientes muertos',
`Recobro` decimal(10,2) NOT NULL DEFAULT '0.00',
PRIMARY KEY (`Id_Cliente`,`Fecha`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacenamos la evolucion del greuge de los ultimos dias ';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Greuge_comercial_recobro`
--
DROP TABLE IF EXISTS `Greuge_comercial_recobro`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Greuge_comercial_recobro` (
`Id_Trabajador` int(11) NOT NULL,
`recobro` decimal(10,2) NOT NULL DEFAULT '0.00',
`peso_cartera` decimal(10,2) NOT NULL DEFAULT '0.00',
PRIMARY KEY (`Id_Trabajador`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Greuges_comercial_detail`
--
DROP TABLE IF EXISTS `Greuges_comercial_detail`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Greuges_comercial_detail` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`Id_Trabajador` int(10) unsigned NOT NULL,
`Comentario` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`Importe` decimal(10,2) NOT NULL,
`Fecha` datetime DEFAULT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=FIXED;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Last_buy_id`
--
DROP TABLE IF EXISTS `Last_buy_id`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Last_buy_id` (
`Id_Article` int(11) NOT NULL DEFAULT '90',
`Id_Compra` int(11) NOT NULL DEFAULT '0',
`warehouse_id` smallint(6) unsigned NOT NULL,
PRIMARY KEY (`warehouse_id`,`Id_Article`),
UNIQUE KEY `Id_Compra_UNIQUE` (`Id_Compra`),
CONSTRAINT `Id_CompraFK` FOREIGN KEY (`Id_Compra`) REFERENCES `vn2008`.`Compres` (`Id_Compra`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Last_buy_idBackUp`
--
DROP TABLE IF EXISTS `Last_buy_idBackUp`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Last_buy_idBackUp` (
`Id_Article` int(11) NOT NULL DEFAULT '90',
`Id_Compra` int(11) NOT NULL DEFAULT '0',
`warehouse_id` smallint(6) unsigned NOT NULL,
PRIMARY KEY (`Id_Article`,`warehouse_id`),
UNIQUE KEY `Id_Compra_UNIQUE` (`Id_Compra`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Radar`
--
DROP TABLE IF EXISTS `Radar`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Radar` (
`Propio` int(1) NOT NULL DEFAULT '0',
`Credito` double NOT NULL DEFAULT '0',
`Riesgo` double(19,2) DEFAULT NULL,
`Greuge` double DEFAULT NULL,
`Id_Ticket` int(11) NOT NULL DEFAULT '0',
`wh` smallint(6) unsigned NOT NULL DEFAULT '1',
`Fecha` datetime NOT NULL,
`Alias` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Vista` int(11) DEFAULT '0',
`Tipo` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'RECOGIDA',
`Id_Trabajador` int(11) DEFAULT '20',
`Solucion` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL,
`Localizacion` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`Estado` varchar(15) CHARACTER SET utf8 DEFAULT NULL,
`Fecha_Simple` date DEFAULT NULL,
`Id_Comercial` int(11) DEFAULT '20',
`Risk` double NOT NULL DEFAULT '0',
`Rojo` bigint(21) DEFAULT '0',
`Naranja` bigint(21) DEFAULT '0',
`Amarillo` bigint(21) DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Ticket_Portes`
--
DROP TABLE IF EXISTS `Ticket_Portes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Ticket_Portes` (
`Id_Ticket` int(11) NOT NULL,
`rate` tinyint(4) NOT NULL COMMENT 'Tarifa',
`real_amount` double NOT NULL COMMENT 'Cantidad pactada con la agencia',
`payed_amount` double NOT NULL COMMENT 'Cantidad reflejada en el Ticket',
PRIMARY KEY (`Id_Ticket`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `VelocityKK`
--
DROP TABLE IF EXISTS `VelocityKK`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `VelocityKK` (
`tipo_id` int(11) NOT NULL,
`Fecha` datetime NOT NULL,
`Disponible` int(11) DEFAULT NULL,
`Visible` int(11) DEFAULT NULL,
`velocity_id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`velocity_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `XDiario_ALL`
--
DROP TABLE IF EXISTS `XDiario_ALL`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `XDiario_ALL` (
`empresa_id` int(5) NOT NULL,
`SUBCTA` varchar(11) COLLATE utf8_unicode_ci NOT NULL,
`Eurodebe` double DEFAULT NULL,
`Eurohaber` double DEFAULT NULL,
`Fecha` date DEFAULT NULL,
`FECHA_EX` date DEFAULT NULL,
KEY `Cuenta` (`SUBCTA`),
KEY `empresa` (`empresa_id`),
KEY `Fecha` (`Fecha`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `analisis_grafico_simple`
--
DROP TABLE IF EXISTS `analisis_grafico_simple`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_grafico_simple` (
`Año` smallint(5) unsigned NOT NULL,
`Semana` tinyint(3) unsigned NOT NULL,
`Importe` double DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `analisis_grafico_ventas`
--
DROP TABLE IF EXISTS `analisis_grafico_ventas`;
/*!50001 DROP VIEW IF EXISTS `analisis_grafico_ventas`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `analisis_grafico_ventas` AS SELECT
1 AS `Año`,
1 AS `Semana`,
1 AS `Importe`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `analisis_ventas`
--
DROP TABLE IF EXISTS `analisis_ventas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas` (
`Familia` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`Reino` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`Comercial` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`Comprador` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`Provincia` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`almacen` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`Año` smallint(5) unsigned NOT NULL,
`Mes` tinyint(3) unsigned NOT NULL,
`Semana` tinyint(3) unsigned NOT NULL,
`Vista` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`Importe` double NOT NULL,
KEY `Año` (`Año`,`Semana`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `analisis_ventas_almacen_evolution`
--
DROP TABLE IF EXISTS `analisis_ventas_almacen_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas_almacen_evolution` (
`Semana` int(11) NOT NULL,
`Almacen` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`Ventas` int(11) NOT NULL,
`Año` int(11) NOT NULL,
`Periodo` int(11) NOT NULL,
KEY `Almacen` (`Almacen`,`Periodo`),
KEY `Periodo` (`Periodo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `analisis_ventas_comprador_evolution`
--
DROP TABLE IF EXISTS `analisis_ventas_comprador_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas_comprador_evolution` (
`semana` int(11) NOT NULL,
`comprador` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`ventas` int(11) NOT NULL,
`año` int(11) NOT NULL,
`periodo` int(11) NOT NULL,
UNIQUE KEY `comprador` (`comprador`,`periodo`),
KEY `periodo` (`periodo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `analisis_ventas_familia_evolution`
--
DROP TABLE IF EXISTS `analisis_ventas_familia_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas_familia_evolution` (
`semana` int(11) NOT NULL,
`familia` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`ventas` int(11) NOT NULL,
`año` int(11) NOT NULL,
`periodo` int(11) NOT NULL,
KEY `familia` (`familia`,`periodo`),
KEY `periodo` (`periodo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `analisis_ventas_provincia_evolution`
--
DROP TABLE IF EXISTS `analisis_ventas_provincia_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas_provincia_evolution` (
`semana` int(11) NOT NULL,
`provincia` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`ventas` int(11) NOT NULL,
`año` int(11) NOT NULL,
`periodo` int(11) NOT NULL,
UNIQUE KEY `provincia` (`provincia`,`periodo`),
KEY `periodo` (`periodo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `analisis_ventas_reino_evolution`
--
DROP TABLE IF EXISTS `analisis_ventas_reino_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas_reino_evolution` (
`semana` int(11) NOT NULL,
`reino` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`ventas` int(11) NOT NULL,
`año` int(11) NOT NULL,
`periodo` int(11) NOT NULL,
UNIQUE KEY `reino` (`reino`,`periodo`),
KEY `periodo` (`periodo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `analisis_ventas_simple`
--
DROP TABLE IF EXISTS `analisis_ventas_simple`;
/*!50001 DROP VIEW IF EXISTS `analisis_ventas_simple`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `analisis_ventas_simple` AS SELECT
1 AS `Año`,
1 AS `Semana`,
1 AS `Importe`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `analisis_ventas_vendedor_evolution`
--
DROP TABLE IF EXISTS `analisis_ventas_vendedor_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas_vendedor_evolution` (
`semana` int(11) NOT NULL,
`vendedor` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`ventas` int(11) NOT NULL,
`año` int(11) NOT NULL,
`periodo` int(11) NOT NULL,
UNIQUE KEY `vendedor` (`vendedor`,`periodo`),
KEY `periodo` (`periodo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `analisis_ventas_vista_evolution`
--
DROP TABLE IF EXISTS `analisis_ventas_vista_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `analisis_ventas_vista_evolution` (
`semana` int(11) NOT NULL,
`vista` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`ventas` int(11) NOT NULL,
`año` int(11) NOT NULL,
`periodo` int(11) NOT NULL,
UNIQUE KEY `vista` (`vista`,`periodo`),
KEY `periodo` (`periodo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `calidad_detalle`
--
DROP TABLE IF EXISTS `calidad_detalle`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `calidad_detalle` (
`Id_Cliente` int(11) NOT NULL,
`calidad_parametros_id` int(2) NOT NULL,
`valor` int(3) DEFAULT NULL,
PRIMARY KEY (`Id_Cliente`,`calidad_parametros_id`),
KEY `calidad_parametros_detalle_idx` (`calidad_parametros_id`),
CONSTRAINT `calidad_parametros_detalle` FOREIGN KEY (`calidad_parametros_id`) REFERENCES `calidad_parametros` (`calidad_parametros_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `calidad_parametros`
--
DROP TABLE IF EXISTS `calidad_parametros`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `calidad_parametros` (
`calidad_parametros_id` int(2) NOT NULL,
`descripcion` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`calidad_parametros_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `claims_ratio`
--
DROP TABLE IF EXISTS `claims_ratio`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `claims_ratio` (
`Id_Cliente` int(11) NOT NULL DEFAULT '0',
`Consumo` decimal(10,2) DEFAULT NULL,
`Reclamaciones` decimal(10,2) DEFAULT NULL,
`Ratio` decimal(5,2) DEFAULT NULL,
`recobro` decimal(5,2) DEFAULT NULL,
`inflacion` decimal(5,2) NOT NULL DEFAULT '1.00',
PRIMARY KEY (`Id_Cliente`),
CONSTRAINT `claims_ratio_ibfk_1` FOREIGN KEY (`Id_Cliente`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `comparativa_clientes`
--
DROP TABLE IF EXISTS `comparativa_clientes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `comparativa_clientes` (
`Fecha` date NOT NULL DEFAULT '0000-00-00',
`Id_Cliente` int(11) NOT NULL DEFAULT '0',
`Propietario` int(11) DEFAULT NULL,
`titular` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`suplente` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
`trabajador` int(11) DEFAULT NULL,
`actual` double DEFAULT NULL,
`pasado` double DEFAULT NULL,
`concepto` varchar(10) CHARACTER SET utf8 NOT NULL DEFAULT '',
KEY `cc_data_indez` (`Fecha`),
KEY `cc_Id_Cliente_index` (`Id_Cliente`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `customerDebtInventory`
--
DROP TABLE IF EXISTS `customerDebtInventory`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `customerDebtInventory` (
`Id_Cliente` int(11) NOT NULL,
`Debt` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT 'CREATE TABLE bi.customerDebtInventory\n\nSELECT Id_Cliente, sum(Euros) as Debt\n\nFROM \n(\nSELECT Id_Cliente, Entregado as Euros\n\nFROM Recibos \n\nWHERE Fechacobro < ''2017-01-01\n''\nUNION ALL\n\nSELECT Id_Cliente, - Importe \nFROM Facturas\nWHERE Fecha < ''2017-01-01''\n) sub \nGROUP BY Id_Cliente',
PRIMARY KEY (`Id_Cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `customerRiskOverdue`
--
DROP TABLE IF EXISTS `customerRiskOverdue`;
/*!50001 DROP VIEW IF EXISTS `customerRiskOverdue`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `customerRiskOverdue` AS SELECT
1 AS `customer_id`,
1 AS `amount`,
1 AS `company_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `customer_risk`
--
DROP TABLE IF EXISTS `customer_risk`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `customer_risk` (
`customer_id` int(11) NOT NULL DEFAULT '0',
`company_id` smallint(6) unsigned NOT NULL DEFAULT '0',
`amount` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`customer_id`,`company_id`),
KEY `company_id` (`company_id`),
CONSTRAINT `customer_risk_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `customer_risk_ibfk_2` FOREIGN KEY (`company_id`) REFERENCES `vn2008`.`empresa` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Saldo de apertura < 2015-01-01';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `daily_task_log`
--
DROP TABLE IF EXISTS `daily_task_log`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `daily_task_log` (
`state` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='No he encontrado el lugar en el que vicente almacena la hora en que se ejecutan las daily tasks, asi que he hecho esta tabla, a eliminar cuando se considere oportuno';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `defaulters`
--
DROP TABLE IF EXISTS `defaulters`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `defaulters` (
`client` int(11) NOT NULL,
`date` date NOT NULL,
`amount` double NOT NULL DEFAULT '0',
`defaulterSince` date DEFAULT NULL,
`hasChanged` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`client`,`date`),
KEY `client` (`client`),
KEY `date` (`date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `defaulting`
--
DROP TABLE IF EXISTS `defaulting`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `defaulting` (
`date` date NOT NULL,
`amount` double NOT NULL,
PRIMARY KEY (`date`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `f_tvc`
--
DROP TABLE IF EXISTS `f_tvc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `f_tvc` (
`Id_Ticket` int(11) NOT NULL,
PRIMARY KEY (`Id_Ticket`),
CONSTRAINT `id_ticket_to_comisionantes` FOREIGN KEY (`Id_Ticket`) REFERENCES `vn2008`.`Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacenamos la lista de tickets para agilizar la consulta. Corresponde a los clientes REAL y en los almacenes COMISIONANTES';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `facturacion_media_anual`
--
DROP TABLE IF EXISTS `facturacion_media_anual`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `facturacion_media_anual` (
`Id_Cliente` int(11) NOT NULL,
`Consumo` double(17,0) DEFAULT NULL,
PRIMARY KEY (`Id_Cliente`),
CONSTRAINT `fmaId_Cliente` FOREIGN KEY (`Id_Cliente`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `last_Id_Cubo`
--
DROP TABLE IF EXISTS `last_Id_Cubo`;
/*!50001 DROP VIEW IF EXISTS `last_Id_Cubo`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `last_Id_Cubo` AS SELECT
1 AS `Id_Compra`,
1 AS `Id_Article`,
1 AS `warehouse_id`,
1 AS `Id_Cubo`,
1 AS `Packing`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `lastaction`
--
DROP TABLE IF EXISTS `lastaction`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `lastaction` (
`Id_Cliente` int(11) unsigned NOT NULL,
`Cliente` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`Ultima_accion` date DEFAULT NULL,
`Comercial` varchar(3) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`Id_Cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `live_counter`
--
DROP TABLE IF EXISTS `live_counter`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `live_counter` (
`odbc_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`amount` double NOT NULL,
PRIMARY KEY (`odbc_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mana_inventory_kk`
--
DROP TABLE IF EXISTS `mana_inventory_kk`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mana_inventory_kk` (
`Id_Trabajador` int(11) NOT NULL,
`mana` double NOT NULL DEFAULT '0',
`dated` date NOT NULL,
PRIMARY KEY (`Id_Trabajador`,`dated`),
CONSTRAINT `fk_trabajador_mana_inventory` FOREIGN KEY (`Id_Trabajador`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `movimientos_log`
--
DROP TABLE IF EXISTS `movimientos_log`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `movimientos_log` (
`idmovimientos_log` int(11) NOT NULL AUTO_INCREMENT,
`Id_Movimiento` int(11) NOT NULL,
`odbc_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`Id_Trabajador` int(11) NOT NULL,
`field_name` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL,
`new_value` double DEFAULT NULL,
PRIMARY KEY (`idmovimientos_log`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `partitioning_information`
--
DROP TABLE IF EXISTS `partitioning_information`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `partitioning_information` (
`schema_name` varchar(10) CHARACTER SET utf8 NOT NULL,
`table_name` varchar(20) CHARACTER SET utf8 NOT NULL,
`date_field` varchar(20) CHARACTER SET utf8 DEFAULT NULL,
`table_depending` varchar(15) CHARACTER SET utf8 DEFAULT NULL,
`execution_order` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`schema_name`,`table_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `primer_pedido`
--
DROP TABLE IF EXISTS `primer_pedido`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `primer_pedido` (
`Id_Cliente` int(11) NOT NULL,
`Id_Ticket` int(11) NOT NULL,
`month` tinyint(1) NOT NULL,
`year` smallint(2) NOT NULL,
`total` decimal(10,2) NOT NULL DEFAULT '0.00',
PRIMARY KEY (`Id_Cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `rotacion`
--
DROP TABLE IF EXISTS `rotacion`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `rotacion` (
`Id_Article` int(11) NOT NULL,
`warehouse_id` smallint(6) unsigned NOT NULL,
`total` int(10) NOT NULL DEFAULT '0',
`rotacion` decimal(10,4) NOT NULL DEFAULT '0.0000',
`cm3` int(11) NOT NULL DEFAULT '0',
`almacenaje` decimal(10,4) NOT NULL DEFAULT '0.0000',
`manipulacion` decimal(10,4) NOT NULL DEFAULT '0.0000',
`auxiliar` decimal(10,4) NOT NULL DEFAULT '0.0000',
`mermas` decimal(10,4) NOT NULL DEFAULT '0.0000',
PRIMARY KEY (`Id_Article`,`warehouse_id`),
KEY `id_article_rotacion_idx` (`Id_Article`),
KEY `warehouse_id_rotacion_idx` (`warehouse_id`),
CONSTRAINT `id_article_rotaci` FOREIGN KEY (`Id_Article`) REFERENCES `vn2008`.`Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `warehouse_id_rotaci` FOREIGN KEY (`warehouse_id`) REFERENCES `vn2008`.`warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacena los valores de rotacion en los ultimos 365 dias';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `saldos_bancos`
--
DROP TABLE IF EXISTS `saldos_bancos`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `saldos_bancos` (
`Semana` int(2) NOT NULL,
`Mes` int(2) NOT NULL,
`Año` int(4) NOT NULL,
`Entrada` double DEFAULT NULL,
`Salida` decimal(32,2) DEFAULT NULL,
`Saldo` double DEFAULT NULL,
`Id_Banco` int(11) NOT NULL DEFAULT '0',
`empresa_id` int(5) unsigned NOT NULL DEFAULT '0',
`Empresa` varchar(3) CHARACTER SET utf8 NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `saldos_bancos_pordia`
--
DROP TABLE IF EXISTS `saldos_bancos_pordia`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `saldos_bancos_pordia` (
`Fecha` date NOT NULL,
`Entrada` double DEFAULT NULL,
`Salida` decimal(32,2) DEFAULT NULL,
`Saldo` double DEFAULT NULL,
`Id_Banco` int(11) NOT NULL DEFAULT '0',
`empresa_id` int(5) unsigned NOT NULL DEFAULT '0',
`Empresa` varchar(3) CHARACTER SET utf8 NOT NULL DEFAULT '',
`Año` int(4) NOT NULL,
`Mes` int(2) NOT NULL,
`Dia` int(2) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sales`
--
DROP TABLE IF EXISTS `sales`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sales` (
`Id_Trabajador` int(10) unsigned NOT NULL,
`year` int(10) unsigned NOT NULL,
`month` int(10) unsigned NOT NULL,
`weight` int(11) NOT NULL DEFAULT '0',
`boss_aid` int(10) NOT NULL DEFAULT '0',
`boss_id` int(10) NOT NULL DEFAULT '0',
`comision` int(11) DEFAULT NULL,
PRIMARY KEY (`Id_Trabajador`,`year`,`month`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tarifa_componentes`
--
DROP TABLE IF EXISTS `tarifa_componentes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tarifa_componentes` (
`Id_Componente` int(11) NOT NULL AUTO_INCREMENT,
`Componente` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`tarifa_componentes_series_id` int(11) NOT NULL,
`tarifa_class` smallint(6) DEFAULT NULL,
`tax` double DEFAULT NULL,
`is_renewable` tinyint(2) NOT NULL DEFAULT '1',
PRIMARY KEY (`Id_Componente`),
KEY `series_componentes_idx` (`tarifa_componentes_series_id`),
KEY `comp` (`tarifa_class`),
CONSTRAINT `serie_componente` FOREIGN KEY (`tarifa_componentes_series_id`) REFERENCES `tarifa_componentes_series` (`tarifa_componentes_series_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tarifa_componentes_series`
--
DROP TABLE IF EXISTS `tarifa_componentes_series`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tarifa_componentes_series` (
`tarifa_componentes_series_id` int(11) NOT NULL AUTO_INCREMENT,
`Serie` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`base` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'Marca aquellas series que se utilizan para calcular el precio base de las ventas, a efectos estadisticos',
`margen` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`tarifa_componentes_series_id`),
UNIQUE KEY `Serie_UNIQUE` (`Serie`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Permite organizar de forma ordenada los distintos componentes';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tarifa_premisas`
--
DROP TABLE IF EXISTS `tarifa_premisas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tarifa_premisas` (
`Id_Premisa` int(11) NOT NULL AUTO_INCREMENT,
`premisa` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`Id_Premisa`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tarifa_warehouse`
--
DROP TABLE IF EXISTS `tarifa_warehouse`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tarifa_warehouse` (
`Id_Tarifa_Warehouse` int(11) NOT NULL AUTO_INCREMENT,
`warehouse_id` int(11) NOT NULL,
`Id_Premisa` int(11) NOT NULL,
`Valor` double NOT NULL,
PRIMARY KEY (`Id_Tarifa_Warehouse`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacena los valores de gasto por almacen';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `v_clientes_jerarquia`
--
DROP TABLE IF EXISTS `v_clientes_jerarquia`;
/*!50001 DROP VIEW IF EXISTS `v_clientes_jerarquia`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_clientes_jerarquia` AS SELECT
1 AS `Id_Cliente`,
1 AS `Cliente`,
1 AS `Comercial`,
1 AS `Jefe`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `v_ventas_contables`
--
DROP TABLE IF EXISTS `v_ventas_contables`;
/*!50001 DROP VIEW IF EXISTS `v_ventas_contables`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_ventas_contables` AS SELECT
1 AS `year`,
1 AS `month`,
1 AS `importe`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `variablesKK`
--
DROP TABLE IF EXISTS `variablesKK`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `variablesKK` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`variable` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`value` double DEFAULT NULL,
`date` datetime DEFAULT NULL,
`text` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'bi'
--
--
-- Dumping routines for database 'bi'
--
/*!50003 DROP FUNCTION IF EXISTS `nz` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `nz`(dblCANTIDAD DOUBLE) RETURNS double
BEGIN
DECLARE dblRESULT DOUBLE;
SET dblRESULT = IFNULL(dblCANTIDAD,0);
RETURN dblRESULT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `analisis_ventas_evolution_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `analisis_ventas_evolution_add`()
BEGIN
DECLARE vPreviousPeriod INT;
DECLARE vCurrentPeriod INT;
DECLARE vLastPeriod INT;
DECLARE vMinPeriod INT DEFAULT 201400;
DECLARE vMaxPeriod INT DEFAULT vn2008.vnperiod(CURDATE());
DECLARE vYear INT;
DECLARE vWeek INT;
SET vCurrentPeriod = IFNULL(vLastPeriod, vMinPeriod);
WHILE vCurrentPeriod < vMaxPeriod
DO
SELECT MAX(Periodo) INTO vPreviousPeriod
FROM bi.analisis_ventas_almacen_evolution
WHERE Periodo < vMaxPeriod;
SELECT MIN(period) INTO vCurrentPeriod
FROM vn2008.time
WHERE period > vPreviousPeriod;
SET vYear = FLOOR(vCurrentPeriod / 100);
SET vWeek = vCurrentPeriod - (vYear * 100);
DELETE FROM bi.analisis_ventas_almacen_evolution
WHERE Periodo = vCurrentPeriod;
REPLACE bi.analisis_ventas_almacen_evolution(Almacen, Ventas, Semana,Año, Periodo)
SELECT Almacen, sum(Ventas) AS Ventas, vWeek, vYear, vCurrentPeriod
FROM (
SELECT almacen, sum(Importe) AS Ventas
FROM bi.analisis_ventas
WHERE vYear = Año
AND vWeek = Semana
GROUP BY almacen
UNION ALL
SELECT almacen, - sum(Importe) AS Ventas
FROM bi.analisis_ventas
WHERE vYear - 1 = Año
AND vWeek = Semana
GROUP BY almacen
UNION ALL
SELECT Almacen, Ventas
FROM bi.analisis_ventas_almacen_evolution
WHERE Periodo = vPreviousPeriod
) sub
GROUP BY Almacen;
END WHILE;
SET vCurrentPeriod = vMinPeriod;
WHILE vCurrentPeriod < vMaxPeriod
DO
SELECT MAX(periodo) INTO vPreviousPeriod
FROM bi.analisis_ventas_reino_evolution
WHERE periodo < vMaxPeriod;
SELECT MIN(period) INTO vCurrentPeriod
FROM vn2008.time
WHERE period > vPreviousPeriod;
SET vYear = FLOOR(vCurrentPeriod / 100);
SET vWeek = vCurrentPeriod - (vYear * 100);
DELETE FROM bi.analisis_ventas_reino_evolution
WHERE Periodo = vCurrentPeriod;
REPLACE bi.analisis_ventas_reino_evolution(reino, ventas, semana,año, periodo)
SELECT reino, sum(ventas) AS ventas, vWeek, vYear, vCurrentPeriod
FROM (
SELECT Reino, sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear = Año
AND vWeek = Semana
GROUP BY Reino
UNION ALL
SELECT Reino, - sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear - 1 = Año
AND vWeek = Semana
GROUP BY Reino
UNION ALL
SELECT reino, ventas
FROM bi.analisis_ventas_reino_evolution
WHERE Periodo = vPreviousPeriod
) sub
GROUP BY reino;
END WHILE;
SET vCurrentPeriod = vMinPeriod;
WHILE vCurrentPeriod < vMaxPeriod
DO
SELECT MAX(periodo) INTO vPreviousPeriod
FROM bi.analisis_ventas_familia_evolution
WHERE periodo < vMaxPeriod;
SELECT MIN(period) INTO vCurrentPeriod
FROM vn2008.time
WHERE period > vPreviousPeriod;
SET vYear = FLOOR(vCurrentPeriod / 100);
SET vWeek = vCurrentPeriod - (vYear * 100);
DELETE FROM bi.analisis_ventas_familia_evolution
WHERE Periodo = vCurrentPeriod;
REPLACE bi.analisis_ventas_familia_evolution(familia, ventas, semana,año, periodo)
SELECT Familia, sum(ventas) AS ventas, vWeek, vYear, vCurrentPeriod
FROM (
SELECT Familia, sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear = Año
AND vWeek = Semana
GROUP BY familia
UNION ALL
SELECT Familia, - sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear - 1 = Año
AND vWeek = Semana
GROUP BY familia
UNION ALL
SELECT familia, ventas
FROM bi.analisis_ventas_familia_evolution
WHERE Periodo = vPreviousPeriod
) sub
GROUP BY Familia;
END WHILE;
SET vCurrentPeriod = vMinPeriod;
WHILE vCurrentPeriod < vMaxPeriod
DO
SELECT MAX(periodo) INTO vPreviousPeriod
FROM bi.analisis_ventas_provincia_evolution
WHERE periodo < vMaxPeriod;
SELECT MIN(period) INTO vCurrentPeriod
FROM vn2008.time
WHERE period > vPreviousPeriod;
SET vYear = FLOOR(vCurrentPeriod / 100);
SET vWeek = vCurrentPeriod - (vYear * 100);
DELETE FROM bi.analisis_ventas_provincia_evolution
WHERE Periodo = vCurrentPeriod;
REPLACE bi.analisis_ventas_provincia_evolution(provincia, ventas, semana,año, periodo)
SELECT Provincia, sum(ventas) AS ventas, vWeek, vYear, vCurrentPeriod
FROM (
SELECT Provincia, sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear = Año
AND vWeek = Semana
GROUP BY Provincia
UNION ALL
SELECT Provincia, - sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear - 1 = Año
AND vWeek = Semana
GROUP BY Provincia
UNION ALL
SELECT provincia, ventas
FROM bi.analisis_ventas_provincia_evolution
WHERE Periodo = vPreviousPeriod
) sub
GROUP BY Provincia;
END WHILE;
SET vCurrentPeriod = vMinPeriod;
WHILE vCurrentPeriod < vMaxPeriod
DO
SELECT MAX(periodo) INTO vPreviousPeriod
FROM bi.analisis_ventas_vista_evolution
WHERE periodo < vMaxPeriod;
SELECT MIN(period) INTO vCurrentPeriod
FROM vn2008.time
WHERE period > vPreviousPeriod;
SET vYear = FLOOR(vCurrentPeriod / 100);
SET vWeek = vCurrentPeriod - (vYear * 100);
DELETE FROM bi.analisis_ventas_vista_evolution
WHERE Periodo = vCurrentPeriod;
REPLACE bi.analisis_ventas_vista_evolution(vista, ventas, semana,año, periodo)
SELECT vista, sum(ventas) AS ventas, vWeek, vYear, vCurrentPeriod
FROM (
SELECT Vista, sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear = Año
AND vWeek = Semana
GROUP BY Vista
UNION ALL
SELECT Vista, - sum(Importe) AS ventas
FROM bi.analisis_ventas
WHERE vYear - 1 = Año
AND vWeek = Semana
GROUP BY Vista
UNION ALL
SELECT vista, ventas
FROM bi.analisis_ventas_vista_evolution
WHERE Periodo = vPreviousPeriod
) sub
GROUP BY Vista;
END WHILE;
SET vCurrentPeriod = vMinPeriod;
WHILE vCurrentPeriod < vMaxPeriod
DO
SELECT MAX(periodo) INTO vPreviousPeriod
FROM bi.analisis_ventas_vendedor_evolution
WHERE periodo < vMaxPeriod;
SELECT MIN(period) INTO vCurrentPeriod
FROM vn2008.time
WHERE period > vPreviousPeriod;
SET vYear = FLOOR(vCurrentPeriod / 100);
SET vWeek = vCurrentPeriod - (vYear * 100);
DELETE FROM bi.analisis_ventas_vendedor_evolution
WHERE Periodo = vCurrentPeriod;
REPLACE bi.analisis_ventas_vendedor_evolution(vendedor, ventas, semana,año, periodo)
SELECT Comercial AS vendedor, sum(ventas) AS ventas, vWeek, vYear, vCurrentPeriod
FROM (
SELECT Comercial, sum(Importe) AS ventas
from bi.analisis_ventas
WHERE vYear = Año
AND vWeek = Semana
GROUP BY Comercial
UNION ALL
SELECT Comercial, - sum(Importe) AS ventas
from bi.analisis_ventas
WHERE vYear - 1 = Año
AND vWeek = Semana
GROUP BY Comercial
UNION ALL
SELECT vendedor, ventas
FROM bi.analisis_ventas_vendedor_evolution
WHERE Periodo = vPreviousPeriod
) sub
GROUP BY vendedor;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `analisis_ventas_simple` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `analisis_ventas_simple`()
BEGIN
TRUNCATE bi.analisis_grafico_simple;
INSERT INTO bi.analisis_grafico_simple SELECT * FROM bi.analisis_grafico_ventas;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `analisis_ventas_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `analisis_ventas_update`()
BEGIN
DECLARE vLastMonth DATE;
SET vLastMonth = util.firstDayOfMonth(TIMESTAMPADD(MONTH, -1, CURDATE()));
DELETE FROM bi.analisis_ventas
WHERE Año > YEAR(vLastMonth)
OR (Año = YEAR(vLastMonth) AND Mes >= MONTH(vLastMonth));
INSERT INTO bi.analisis_ventas
SELECT
`tp`.`Tipo` AS `Familia`,
`r`.`reino` AS `Reino`,
`tr`.`CodigoTrabajador` AS `Comercial`,
`tr2`.`CodigoTrabajador` AS `Comprador`,
`p`.`name` AS `Provincia`,
`w`.`name` AS `almacen`,
`time`.`year` AS `Año`,
`time`.`month` AS `Mes`,
`time`.`week` AS `Semana`,
`v`.`vista` AS `Vista`,
`bt`.`importe` AS `Importe`
FROM
(((((((((`bs`.`ventas` `bt`
LEFT JOIN `vn2008`.`Tipos` `tp` ON ((`tp`.`tipo_id` = `bt`.`tipo_id`)))
LEFT JOIN `vn2008`.`reinos` `r` ON ((`r`.`id` = `tp`.`reino_id`)))
LEFT JOIN `vn2008`.`Clientes` c on c.Id_Cliente = bt.Id_Cliente
LEFT JOIN `vn2008`.`Trabajadores` `tr` ON ((`tr`.`Id_Trabajador` = `c`.`Id_Trabajador`)))
LEFT JOIN `vn2008`.`Trabajadores` `tr2` ON ((`tr2`.`Id_Trabajador` = `tp`.`Id_Trabajador`)))
JOIN vn2008.time on time.date = bt.fecha
JOIN vn2008.Movimientos m on m.Id_Movimiento = bt.Id_Movimiento
LEFT JOIN `vn2008`.`Tickets` `t` ON ((`t`.`Id_Ticket` = `m`.`Id_Ticket`)))
JOIN vn2008.Agencias a on a.Id_Agencia = t.Id_Agencia
LEFT JOIN `vn2008`.`Vistas` `v` ON ((`v`.`vista_id` = `a`.`Vista`)))
LEFT JOIN `vn2008`.`Consignatarios` `cs` ON ((`cs`.`Id_Consigna` = `t`.`Id_Consigna`)))
LEFT JOIN `vn2008`.`province` `p` ON ((`p`.`province_id` = `cs`.`province_id`)))
LEFT JOIN `vn2008`.`warehouse` `w` ON ((`w`.`id` = `t`.`warehouse_id`)))
WHERE bt.fecha >= vLastMonth AND r.mercancia;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `call_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `call_add`()
BEGIN
DECLARE datSTART DATETIME DEFAULT '2012-03-01' ;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('bi.call_add');
SELECT MAX(Fecha) INTO datSTART FROM `call`;
DELETE FROM `call` WHERE Fecha = datSTART;
INSERT INTO bi.`call`(CodTrabajadorCartera,CodTrabajadorTelefono,dur_in,dur_out,Fecha,`year`,`month`,`week`,`hour`,phone)
SELECT vn2008.Averiguar_ComercialCliente(pb.Id_Cliente,Fecha) CodTrabajadorCartera,ll.CodigoTrabajador, dur_in,
dur_out, ll.Fecha,YEAR(ll.Fecha) `year`, MONTH(ll.Fecha) `month`,WEEK(ll.Fecha,7) `week`, Hora,phone
FROM
(
SELECT Id_Trabajador,CodigoTrabajador, IFNULL(billsec,0) dur_in, 0 dur_out, 1 as Recibidas, NULL as Emitidas, calldate as Fecha,
hour(calldate) as Hora,src as phone
FROM vn2008.Trabajadores T
INNER JOIN vn2008.cdr C ON C.dstchannel LIKE CONCAT('%', T.extension, '%')
WHERE calldate >= datSTART AND LENGTH(C.src) >=9 AND disposition = 'ANSWERED' AND duration
UNION ALL
SELECT Id_Trabajador,CodigoTrabajador,0 dur_in, IFNULL(billsec,0) dur_out, NULL as Recibidas, 1 as Emitidas, date(calldate), hour(calldate),dst
FROM vn2008.Trabajadores T
INNER JOIN vn2008.cdr C ON C.src = T.extension
WHERE calldate >= datSTART AND LENGTH(C.dst) >=9 AND disposition = 'ANSWERED' AND duration
) ll
INNER JOIN vn2008.Permisos USING(Id_Trabajador)
LEFT JOIN vn2008.v_phonebook pb ON pb.Telefono = ll.phone
WHERE Id_Grupo = 6;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `claim_ratio_routine` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `claim_ratio_routine`()
BEGIN
DECLARE vMonthToRefund INT DEFAULT 4;
INSERT INTO vn2008.daily_task_log(consulta)
VALUES('bi.claim_ratio_routine START');
INSERT INTO vn2008.Greuges(Fecha, Id_Cliente, Comentario, Importe, Id_Ticket)
SELECT Fecha, Id_Cliente, Concat('COD11 : ',Concepte), - round(Cantidad *
Preu * (100 - Descuento) / 100 ,2) AS Importe, t.Id_Ticket
FROM vn2008.Tickets t
JOIN vn2008.Movimientos m ON m.Id_Ticket = t.Id_Ticket
WHERE Id_Article = 11
AND Concepte NOT LIKE '$%'
AND Fecha > '2014-01-01'
HAVING nz(Importe) <> 0;
DELETE mc.*
FROM vn2008.Movimientos_componentes mc
JOIN vn2008.Movimientos m ON m.Id_Movimiento = mc.Id_Movimiento
JOIN vn2008.Tickets t ON t.Id_Ticket = m.Id_Ticket
WHERE m.Id_Article = 11
AND m.Concepte NOT LIKE '$%'
AND t.Fecha > '2017-01-01';
INSERT INTO vn2008.Movimientos_componentes(Id_Movimiento, Id_Componente, Valor)
SELECT m.Id_Movimiento, 34, round(m.Preu * (100 - m.Descuento)/100,4)
FROM vn2008.Movimientos m
JOIN vn2008.Tickets t ON t.Id_Ticket = m.Id_Ticket
WHERE m.Id_Article = 11
AND m.Concepte NOT LIKE '$%'
AND t.Fecha > '2017-01-01';
UPDATE vn2008.Movimientos m
JOIN vn2008.Tickets t ON t.Id_Ticket = m.Id_Ticket
SET Concepte = CONCAT('$ ',Concepte)
WHERE Id_Article = 11
AND Concepte NOT LIKE '$%'
AND Fecha > '2014-01-01';
INSERT INTO vn2008.Greuges(Fecha, Id_Cliente, Comentario,
Importe, Greuges_type_id,Id_Ticket)
SELECT cm.Fecha
, cm.Id_Cliente
, concat('Claim ',cm.id,' : ', m.Concepte)
,round( -1 * ((sensib -1)/4) * Cantidad *
Preu * (100 - Descuento) / 100, 2) AS Reclamaciones
, 4
, m.Id_Ticket
FROM vn2008.Movimientos m
JOIN vn2008.cl_act ca USING(Id_Movimiento)
JOIN vn2008.cl_main cm ON cm.id = ca.cl_main_id
WHERE ca.cl_sol_id NOT IN (1,5)
AND ca.greuge = 0
AND cm.cl_est_id = 3;
INSERT INTO vn2008.Greuges(Fecha, Id_Cliente, Comentario,
Importe , Greuges_type_id,Id_Ticket)
SELECT cm.Fecha
, cm.Id_Cliente
, concat('Claim_mana ',cm.id,' : ', m.Concepte)
,round( ((sensib -1)/4) * Cantidad * Preu * (100 - Descuento) / 100, 2)
AS Reclamaciones
,3
,m.Id_Ticket
FROM vn2008.Movimientos m
JOIN vn2008.cl_act ca USING(Id_Movimiento)
JOIN vn2008.cl_main cm ON cm.id = ca.cl_main_id
WHERE ca.cl_sol_id NOT IN (1,5)
AND ca.greuge = 0
AND cm.cl_est_id = 3
AND cm.mana;
UPDATE vn2008.cl_act ca
JOIN vn2008.cl_main cm ON cm.id = ca.cl_main_id
SET greuge = 1
WHERE ca.cl_sol_id NOT IN (1,5)
AND ca.greuge = 0
AND cm.cl_est_id = 3;
DROP TEMPORARY TABLE IF EXISTS tmp.ticket_list;
CREATE TEMPORARY TABLE tmp.ticket_list
(PRIMARY KEY (Id_Ticket))
SELECT DISTINCT t.Id_Ticket
FROM vn2008.Movimientos_componentes mc
JOIN vn2008.Movimientos m ON mc.Id_Movimiento = m.Id_Movimiento
JOIN vn2008.Tickets t ON t.Id_Ticket = m.Id_Ticket
JOIN vn2008.Tickets_state ts ON ts.Id_Ticket = t.Id_Ticket
JOIN vncontrol.inter i ON i.inter_id = ts.inter_id
JOIN vn2008.state s ON s.id = i.state_id
WHERE mc.Id_Componente = 17
AND mc.greuge = 0
AND t.Fecha >= '2016-10-01'
AND t.Fecha < CURDATE()
AND t.warehouse_id <> 41
AND s.alert_level >= 3;
DELETE g.*
FROM vn2008.Greuges g
JOIN tmp.ticket_list t ON g.Id_Ticket = t.Id_Ticket
WHERE Greuges_type_id = 2;
INSERT INTO vn2008.Greuges (Id_Cliente,Comentario,Importe,Fecha,
Greuges_type_id, Id_Ticket)
SELECT Id_Cliente
,concat('recobro ', m.Id_Ticket), - round(SUM(mc.Valor*Cantidad),2)
AS dif
,date(t.Fecha)
, 2
,tt.Id_Ticket
FROM vn2008.Movimientos m
JOIN vn2008.Tickets t ON t.Id_Ticket = m.Id_Ticket
JOIN tmp.ticket_list tt ON tt.Id_Ticket = t.Id_Ticket
JOIN vn2008.Movimientos_componentes mc
ON mc.Id_Movimiento = m.Id_Movimiento AND mc.Id_Componente = 17
GROUP BY t.Id_Ticket
HAVING ABS(dif) > 1;
UPDATE vn2008.Movimientos_componentes mc
JOIN vn2008.Movimientos m ON m.Id_Movimiento = mc.Id_Movimiento
JOIN tmp.ticket_list tt ON tt.Id_Ticket = m.Id_Ticket
SET greuge = 1
WHERE Id_Componente = 17;
DELETE FROM bi.claims_ratio;
REPLACE bi.claims_ratio(Id_Cliente, Consumo, Reclamaciones, Ratio, recobro)
SELECT fm.Id_Cliente, 12 * fm.Consumo, Reclamaciones,
round(Reclamaciones / (12*fm.Consumo),4) AS Ratio, 0
FROM bi.facturacion_media_anual fm
LEFT JOIN(
SELECT cm.Id_Cliente, round(sum(-1 * ((sensib -1)/4) *
Cantidad * Preu * (100 - Descuento) / 100))
AS Reclamaciones
FROM vn2008.Movimientos m
JOIN vn2008.cl_act ca
ON ca.Id_Movimiento = m.Id_Movimiento
JOIN vn2008.cl_main cm ON cm.id = ca.cl_main_id
WHERE ca.cl_sol_id NOT IN (1,5)
AND cm.cl_est_id = 3
AND cm.Fecha >= TIMESTAMPADD(YEAR, -1, CURDATE())
GROUP BY cm.Id_Cliente
) claims ON claims.Id_Cliente = fm.Id_Cliente;
UPDATE bi.claims_ratio cr
JOIN (
SELECT Id_Cliente, nz(SUM(Importe)) AS Greuge
FROM vn2008.Greuges
WHERE Fecha <= CURDATE()
GROUP BY Id_Cliente
) g ON g.Id_Cliente = cr.Id_Cliente
SET recobro = GREATEST(0,round(nz(Greuge) /
(nz(Consumo) * vMonthToRefund / 12 ) ,3));
INSERT INTO vn2008.daily_task_log(consulta)
VALUES('bi.claim_ratio_routine END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clean` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean`()
BEGIN
DECLARE vDateShort DATETIME;
DECLARE vDateLong DATETIME;
SET vDateShort = TIMESTAMPADD(MONTH, -2, CURDATE());
SET vDateLong = TIMESTAMPADD(MONTH, -18,CURDATE());
INSERT INTO bi.daily_task_log(state) VALUES('clean START');
DELETE FROM bi.comparativa_clientes WHERE Fecha < vDateLong;
DELETE FROM bi.Greuge_Evolution WHERE Fecha < vDateShort AND weekday(Fecha) != 1;
INSERT INTO bi.daily_task_log(state) VALUES('clean END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clean_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean_launcher`()
BEGIN
call vn2008.clean(0);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparativa_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparativa_add`()
BEGIN
DECLARE lastCOMP INT;
SELECT MAX(Periodo) INTO lastCOMP FROM vn2008.Comparativa;
IF lastCOMP < vn2008.vnperiod(CURDATE())- 3 AND vn2008.vnweek(CURDATE()) > 3 THEN
REPLACE vn2008.Comparativa(Periodo, Id_Article, warehouse_id, Cantidad,price)
SELECT vn2008.vnperiod(T.Fecha) AS Periodo
, Id_Article
, warehouse_id
, SUM(Cantidad) AS Total
, SUM(Cantidad * Preu * (100 - Descuento) / 100) precio
FROM vn2008.Movimientos M
JOIN vn2008.Tickets T USING (Id_Ticket)
JOIN vn2008.Articles A USING (Id_Article)
LEFT JOIN vn2008.Tipos ti ON ti.tipo_id = A.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = ti.reino_id
WHERE T.Fecha BETWEEN TIMESTAMPADD(DAY,-60,CURDATE()) AND TIMESTAMPADD(DAY,-30,CURDATE())
AND T.Id_Cliente NOT IN(400,200)
AND display <> 0 AND warehouse_id NOT IN (0,13)
GROUP BY Id_Article, Periodo, warehouse_id;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `comparativa_add_manual` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comparativa_add_manual`(IN dat_START DATE, IN dat_END DATE)
BEGIN
DECLARE datINI DATETIME;
DECLARE datFIN DATETIME;
SELECT MIN(`date`) INTO datINI FROM vn2008.`time` WHERE period = vn2008.vnperiod(dat_START);
SELECT TIMESTAMP(MAX(`date`),'23:59:59') INTO datFIN FROM vn2008.`time` WHERE period = vn2008.vnperiod(dat_END);
DELETE FROM vn2008.Comparativa WHERE Periodo BETWEEN vn2008.vnperiod(dat_START) and vn2008.vnperiod(dat_END);
REPLACE vn2008.Comparativa(Periodo, Id_Article, warehouse_id, Cantidad,price)
SELECT tm.period AS Periodo
, M.Id_Article
, t.warehouse_id
, SUM(Cantidad) AS Total
, sum(v.importe) AS precio
FROM vn2008.Movimientos M
JOIN vn2008.Tickets t on t.Id_Ticket = M.Id_Ticket
JOIN bs.ventas v on v.Id_Movimiento = M.Id_Movimiento
JOIN vn2008.time tm on tm.date = v.fecha
JOIN vn2008.Tipos tp on v.tipo_id = tp.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
WHERE v.fecha BETWEEN datINI and datFIN
AND r.display <> 0 AND t.warehouse_id NOT IN (0,13)
GROUP BY Id_Article, Periodo, t.warehouse_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `customer_risk_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `customer_risk_update`(v_customer INT, v_company INT, v_amount DECIMAL(10,2))
BEGIN
IF v_amount IS NOT NULL
THEN
INSERT INTO bi.customer_risk
SET
customer_id = v_customer,
company_id = v_company,
amount = v_amount
ON DUPLICATE KEY UPDATE
amount = amount + VALUES(amount);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `defaultersFromDate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `defaultersFromDate`(IN vDate DATE)
BEGIN
SELECT t1.*, c.Cliente, w.workerCode, c.pay_met_id,c.Vencimiento
FROM (
select * from(
select today.client, today.amount todayAmount, yesterday.amount yesterdayAmount, round(yesterday.amount - today.amount,2) as difference, defaulterSince
from
(select client, amount, defaulterSince
from defaulters
where date = vDate and hasChanged) today
join
(select client, amount
from defaulters
where date = TIMESTAMPADD(DAY,-1,vDate)) yesterday using(client)
having today.amount > 0 and difference <> 0
) newDefaulters
)t1 left join vn2008.Clientes c ON t1.client = c.Id_Cliente
left join vn.worker w ON w.id = c.Id_Trabajador;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `defaulting` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `defaulting`(IN vDate DATE)
BEGIN
DECLARE vDone BOOLEAN;
DECLARE vClient INT;
DECLARE vAmount INT;
DECLARE vDateInvoice DATE;
DECLARE vAmountInvoice DECIMAL(10,2);
DECLARE vDueDay INT;
DECLARE vGraceDays INT;
DECLARE defaulters CURSOR FOR
SELECT client, amount, Vencimiento, graceDays FROM bi.defaulters d
JOIN vn2008.Clientes c ON c.Id_Cliente = d.client
JOIN vn2008.pay_met pm ON pm.id = c.pay_met_id
WHERE hasChanged AND date = vDate;
DECLARE invoices CURSOR FOR
SELECT Fecha, importe FROM vn2008.Facturas f
WHERE f.Fecha >= '2016-01-01' AND f.Id_Cliente = vClient ORDER BY f.Fecha DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('defaulting');
DELETE FROM bi.defaulters WHERE date = vDate;
INSERT INTO bi.defaulters(client, date, amount)
SELECT customer_id, vDate, FLOOR(SUM(amount)) AS amount
FROM bi.customerRiskOverdue
GROUP BY customer_id;
UPDATE bi.defaulters d
JOIN (
SELECT * FROM(
SELECT client, amount , defaulterSince FROM bi.defaulters
WHERE date <= TIMESTAMPADD(DAY,-1, vDate)
ORDER BY date DESC) t GROUP BY client
) yesterday using(client)
SET d.hasChanged = IF(d.amount <> yesterday.amount, 1, 0),
d.defaulterSince = yesterday.defaulterSince
WHERE d.date = vDate ;
OPEN defaulters;
defaulters: LOOP
SET vDone = FALSE;
SET vAmount = 0;
FETCH defaulters INTO vClient,vAmount, vDueDay, vGraceDays;
IF vDone THEN
LEAVE defaulters;
END IF;
OPEN invoices;
invoices:LOOP
FETCH invoices INTO vDateInvoice, vAmountInvoice;
IF vDone THEN
LEAVE invoices;
END IF;
IF TIMESTAMPADD(DAY, vGraceDays, vn2008.paymentday(vDateInvoice, vDueDay)) <= vDate THEN
SET vAmount = vAmount - vAmountInvoice;
IF vAmount <= 0 THEN
UPDATE defaulters SET defaulterSince = vn2008.paymentday(vDateInvoice, vDueDay)
WHERE client = vClient and date = vDate;
SET vAmount = 0;
LEAVE invoices;
END IF;
END IF;
END LOOP;
CLOSE invoices;
END LOOP;
CLOSE defaulters;
DELETE FROM bi.defaulting WHERE date = vDate;
INSERT INTO bi.defaulting(date, amount)
SELECT vDate, SUM(amount)
FROM bi.defaulters
WHERE date = vDate and amount > 0;
CALL vn.clientFreeze();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `defaultingkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `defaultingkk`(IN vDate DATE)
BEGIN
DECLARE done BIT DEFAULT 0;
DECLARE vClient INT;
DECLARE vAmount INT;
DECLARE vDateInvoice DATE;
DECLARE vAmountInvoice DECIMAL(10,2);
DECLARE vDueDay INT;
DECLARE vGraceDays INT;
DECLARE defaulters CURSOR FOR
SELECT client, amount, Vencimiento, graceDays FROM bi.defaulters d
JOIN vn2008.Clientes c ON c.Id_Cliente = d.client
JOIN vn2008.pay_met pm ON pm.id = c.pay_met_id
WHERE hasChanged AND date = vDate;
DECLARE invoices CURSOR FOR
SELECT Fecha, importe FROM vn2008.Facturas f
WHERE f.Fecha >= '2016-01-01' AND f.Id_Cliente = vClient ORDER BY f.Fecha DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('defaulting');
DELETE FROM bi.defaulters WHERE date = vDate;
INSERT INTO bi.defaulters(client, date, amount)
SELECT customer_id, vDate, FLOOR(SUM(amount)) AS amount
FROM bi.customerRiskOverdue
GROUP BY customer_id;
UPDATE bi.defaulters d
JOIN (
SELECT client, amount , defaulterSince FROM bi.defaulters
WHERE date = TIMESTAMPADD(DAY,-1, vDate)
GROUP BY client
) yesterday using(client)
SET d.hasChanged = IF(d.amount <> yesterday.amount, 1, 0),
d.defaulterSince = yesterday.defaulterSince
WHERE d.date = vDate ;
OPEN defaulters;
defaulters: BEGIN
REPEAT
FETCH defaulters INTO vClient,vAmount, vDueDay, vGraceDays;
OPEN invoices;
invoices:BEGIN
REPEAT
FETCH invoices INTO vDateInvoice, vAmountInvoice;
IF TIMESTAMPADD(DAY, vGraceDays, vn2008.paymentday(vDateInvoice, vDueDay)) <= vDate THEN
SET vAmount = vAmount - vAmountInvoice;
IF vAmount < 0 THEN
UPDATE defaulters SET defaulterSince = vn2008.paymentday(vDateInvoice, vDueDay)
WHERE client = vClient and date = vDate;
SET vAmount = 0;
LEAVE invoices;
END IF;
END IF;
UNTIL done END REPEAT;
END invoices;
CLOSE invoices;
UNTIL done OR vClient IS NULL END REPEAT;
END defaulters;
CLOSE defaulters;
DELETE FROM bi.defaulting WHERE date = vDate;
INSERT INTO bi.defaulting(date, amount)
SELECT vDate, SUM(amount)
FROM bi.defaulters
WHERE date = vDate and amount > 0;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `defaulting_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `defaulting_launcher`()
BEGIN
CALL bi.defaulting(curdate());
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `equaliza` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `equaliza`(IN wh_id INT)
BEGIN
DECLARE datEQ DATETIME;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `facturacion_media_anual_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `facturacion_media_anual_update`()
BEGIN
INSERT INTO vn2008.daily_task_log(consulta) VALUES('bi.facturacion_media_anual_update');
TRUNCATE TABLE bi.facturacion_media_anual;
REPLACE bi.facturacion_media_anual(Id_Cliente, Consumo)
select Id_Cliente, avg(Consumo)
from (
Select Id_Cliente, YEAR(fecha) year, MONTH(fecha) month, sum(importe) as Consumo
from bs.ventas
where fecha >= TIMESTAMPADD(YEAR,-1,CURDATE())
group by Id_Cliente, year, month
) vol
group by Id_Cliente;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `greuge_dif_porte_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `greuge_dif_porte_add`()
BEGIN
DECLARE datSTART DATETIME DEFAULT TIMESTAMPADD(DAY,-10,CURDATE());
DECLARE datEND DATETIME DEFAULT TIMESTAMPADD(DAY,-1,CURDATE());
DROP TEMPORARY TABLE IF EXISTS tmp.dp;
CREATE TEMPORARY TABLE tmp.dp
(PRIMARY KEY (Id_Ticket))
SELECT
t.Id_Ticket,
SUM(az.price * IF(
e.EsBulto = 71
AND ISNULL(e.Id_Article)
AND a.Vista = 2,
0.75,
1
)
) AS teorico,
00000.00 as practico,
00000.00 as greuge
FROM
vn2008.Tickets t
JOIN vn2008.Clientes cli ON cli.Id_cliente = t.Id_Cliente
LEFT JOIN vn2008.expeditions e ON e.ticket_id = t.Id_Ticket
JOIN vn2008.Consignatarios c ON c.Id_Consigna = t.Id_Consigna
JOIN vn2008.Agencias a ON a.Id_Agencia = t.Id_Agencia
JOIN vn2008.Agencias_province ap ON t.warehouse_id = ap.warehouse_id
AND ap.province_id = c.province_id
AND ap.agency_id = a.agency_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = t.Id_Agencia
AND az.zona = ap.zona
AND t.warehouse_id = az.warehouse_id
AND az.Id_Article = e.EsBulto
WHERE
t.Fecha between datSTART AND datEND
AND cli.`real`
AND t.empresa_id IN (442 , 567)
GROUP BY t.Id_Ticket;
DROP TEMPORARY TABLE IF EXISTS tmp.dp_aux;
CREATE TEMPORARY TABLE tmp.dp_aux
(PRIMARY KEY (Id_Ticket))
SELECT t.Id_Ticket, sum(freight) as porte
FROM tmp.dp
JOIN vn2008.Tickets t ON t.Id_Ticket = dp.Id_Ticket
JOIN vn2008.Rutas r on r.Id_Ruta = t.Id_Ruta
JOIN vn2008.Agencias a on a.Id_Agencia = r.Id_Agencia
JOIN (
SELECT
M.Id_Ticket,
M.Cantidad * (vn2008.CM3(b.Id_Compra) / 1000000 / C.Packing) * (az.price / 0.08) AS freight
FROM
vn2008.Movimientos M
JOIN vn2008.Tickets t ON t.Id_Ticket = M.Id_Ticket
JOIN vn2008.Consignatarios c ON c.Id_Consigna = t.Id_Consigna
JOIN bi.Last_buy_id b ON M.Id_Article = b.Id_Article
AND t.warehouse_id = b.warehouse_id
JOIN vn2008.Compres C ON b.Id_Compra = C.Id_Compra
JOIN vn2008.Agencias a ON a.Id_Agencia = t.Id_Agencia
JOIN vn2008.Agencias_province ap ON t.warehouse_id = ap.warehouse_id
AND ap.province_id = c.province_id
AND ap.agency_id = a.agency_id
JOIN vn2008.Agencias_zonas az ON az.Id_Agencia = t.Id_Agencia
AND az.zona = ap.zona
AND t.warehouse_id = az.warehouse_id
AND az.Id_Article = 71
WHERE t.Fecha between datSTART AND datEND
) vmv ON vmv.Id_Ticket = t.Id_Ticket
WHERE a.is_volumetric
GROUP BY t.Id_Ticket;
UPDATE tmp.dp
JOIN tmp.dp_aux using(Id_Ticket)
SET teorico = porte;
DROP TEMPORARY TABLE IF EXISTS tmp.dp_aux;
CREATE TEMPORARY TABLE tmp.dp_aux
(PRIMARY KEY (Id_Ticket))
SELECT dp.Id_Ticket, sum(Cantidad * Valor) as valor
FROM tmp.dp
JOIN vn2008.Movimientos m using(Id_Ticket)
JOIN vn2008.Movimientos_componentes mc using(Id_Movimiento)
WHERE Id_Componente = 15
GROUP BY m.Id_Ticket;
UPDATE tmp.dp
JOIN tmp.dp_aux using(Id_Ticket)
SET practico = valor;
DROP TEMPORARY TABLE tmp.dp_aux;
CREATE TEMPORARY TABLE tmp.dp_aux
(PRIMARY KEY (Id_Ticket))
SELECT dp.Id_Ticket, Importe
FROM tmp.dp
JOIN
(
SELECT Id_Ticket, sum(Importe) as Importe
FROM vn2008.Greuges g
WHERE Greuges_type_id = 1
GROUP BY Id_Ticket
) sub using(Id_Ticket);
UPDATE tmp.dp
JOIN tmp.dp_aux using(Id_Ticket)
SET greuge = Importe;
INSERT INTO vn2008.Greuges (Id_Cliente,Comentario,Importe,Fecha, Greuges_type_id, Id_Ticket)
SELECT t.Id_Cliente
, concat('dif_porte ', dp.Id_Ticket)
, round(teorico - practico - greuge,2) as Importe
, date(t.Fecha)
, 1
,t.Id_Ticket
FROM tmp.dp
JOIN vn2008.Tickets t on dp.Id_Ticket = t.Id_Ticket
WHERE ABS(teorico - practico - greuge) > 1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Greuge_Evolution_Add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Greuge_Evolution_Add`()
BEGIN
DECLARE datFEC DATE;
DECLARE datFEC_TOMORROW DATE;
DECLARE datFEC_LASTYEAR DATE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN
GET DIAGNOSTICS CONDITION 2 @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT;
SELECT CONCAT('ERROR ', IFNULL(@errno,0), ': ', ifnull(@text,'texto'));
INSERT INTO vn2008.mail (`to`,`subject`,`text`) VALUES ('jgallego@verdnatura.es', 'Greuge_Evolution_Add' ,CONCAT('ERROR ', IFNULL(@errno,0), ': ', ifnull(@text,'texto')));
INSERT INTO vn2008.mail (`to`,`subject`,`text`) VALUES ('pako@verdnatura.es', 'Greuge_Evolution_Add' ,CONCAT('ERROR ', IFNULL(@errno,0), ': ', ifnull(@text,'texto')));
END;
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('Greuge Evolution Add START');
SELECT TIMESTAMPADD(DAY,1,MAX(Fecha)),TIMESTAMPADD(DAY,2,MAX(Fecha)) INTO datFEC, datFEC_TOMORROW FROM bi.Greuge_Evolution;
SET datFEC_LASTYEAR = TIMESTAMPADD(YEAR,-1,datFEC);
DELETE FROM bi.Greuge_Evolution WHERE Fecha >= datFEC;
DROP TEMPORARY TABLE IF EXISTS maxInvoice;
CREATE TEMPORARY TABLE maxInvoice
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT DISTINCT Id_Cliente, max(Fecha) as maxFecha
FROM vn2008.Facturas
GROUP BY Id_Cliente
HAVING maxFecha < timestampadd(month,-2,datFEC);
INSERT INTO vn2008.daily_task_log(consulta) VALUES('Greuge Evolution Add MIDDLE');
WHILE datFEC < CURDATE() DO
REPLACE bi.Greuge_Evolution(Id_Cliente, Fecha, Greuge, Ventas)
SELECT Id_Cliente, datFEC as Fecha, Greuge, Ventas
FROM
(
SELECT Id_Cliente, sum(Importe) as Greuge
FROM vn2008.Greuges
where Fecha <= datFEC
group by Id_Cliente
) sub
RIGHT JOIN
(
SELECT Id_Cliente, sum(Ventas) as Ventas
FROM
(
SELECT Id_Cliente, IF (fecha != datFEC, -1,1) * (importe + recargo) as Ventas
FROM bs.ventas
WHERE fecha = datFEC or fecha = datFEC_LASTYEAR
UNION ALL
SELECT Id_Cliente, Ventas
FROM bi.Greuge_Evolution
WHERE Fecha = TIMESTAMPADD(DAY, -1, datFEC)
) sub
group by Id_Cliente
) v using(Id_Cliente)
;
UPDATE bi.Greuge_Evolution ge
JOIN maxInvoice using(Id_Cliente)
SET FOSIL = GREUGE
WHERE ge.Fecha = datFEC;
UPDATE bi.Greuge_Evolution ge
JOIN (
SELECT cs.Id_Cliente, sum(Valor * Cantidad) as Importe
FROM vn2008.Tickets t
JOIN vn2008.Consignatarios cs on cs.Id_Consigna = t.Id_Consigna
JOIN vn2008.Movimientos m on m.Id_Ticket = t.Id_Ticket
JOIN vn2008.Movimientos_componentes mc on mc.Id_Movimiento = m.Id_Movimiento
WHERE t.Fecha >= datFEC
AND t.Fecha < datFEC_TOMORROW
AND mc.Id_Componente = 17
GROUP BY cs.Id_Cliente
) sub using(Id_Cliente)
SET Recobro = Importe
WHERE ge.Fecha = datFEC;
INSERT INTO vn2008.daily_task_log(consulta) VALUES(CONCAT('Greuge Evolution ',datFEC));
SET datFEC = datFEC_TOMORROW;
SET datFEC_TOMORROW = TIMESTAMPADD(DAY,1,datFEC_TOMORROW);
SET datFEC_LASTYEAR = TIMESTAMPADD(YEAR,-1,datFEC);
END WHILE;
DROP TEMPORARY TABLE IF EXISTS maxInvoice;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('Greuge Evolution Add END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `last_buy_id_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `last_buy_id_add`()
BEGIN
TRUNCATE TABLE bi.Last_buy_id;
INSERT INTO bi.Last_buy_id SELECT * FROM
(SELECT
Id_Article, Id_Compra, warehouse_id
FROM
vn2008.Compres c
JOIN vn2008.Entradas e USING (Id_Entrada)
JOIN vn2008.travel tr ON tr.id = e.travel_id
WHERE
Novincular = FALSE AND tarifa2 > 0 AND NOT Redada
AND landing > curdate()
ORDER BY landing DESC) t1
GROUP BY Id_Article , warehouse_id;
REPLACE bi.Last_buy_id SELECT * FROM
(SELECT
Id_Article, Id_Compra, warehouse_id
FROM
vn2008.Compres c
JOIN vn2008.Entradas e USING (Id_Entrada)
JOIN vn2008.travel tr ON tr.id = e.travel_id
WHERE
Novincular = FALSE AND tarifa2 > 0 AND NOT Redada
AND landing BETWEEN vn2008.date_inv() AND curdate()
ORDER BY landing DESC) t1
GROUP BY Id_Article , warehouse_id;
TRUNCATE TABLE bi.Last_buy_idBackUp;
INSERT INTO bi.Last_buy_idBackUp
SELECT * FROM Last_buy_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `margenes` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `margenes`()
BEGIN
TRUNCATE TABLE bi.margenes;
INSERT INTO bi.margenes
SELECT Id_Article, Cantidad as Unidades, Cantidad * round(nz(Costefijo) + nz(Embalajefijo) + nz(Comisionfija) + nz(Portefijo),3) as Coste , w.name as almacen, month(landing) as Mes, year(landing) as Year, 0 as Venta
FROM vn2008.Compres C
JOIN vn2008.Entradas E using(Id_Entrada)
JOIN vn2008.travel tr on tr.id = travel_id
JOIN vn2008.warehouse w on w.id = tr.warehouse_id
LEFT JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos TP using(tipo_id)
WHERE landing between '2013-01-01' and ' 2013-12-31'
AND E.Id_Proveedor <> 4
AND not redada
AND not inventario
union all
SELECT Id_Article, Cantidad as Unidades, 0 as Coste , w.name, month(Fecha) as Mes, year(Fecha) as Year, Cantidad * round(Preu * (100 - M.Descuento) / 100,2) as Venta
FROM vn2008.Movimientos M
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos TP using(tipo_id)
JOIN vn2008.Tickets T using(Id_Ticket)
JOIN vn2008.Clientes C using(Id_Cliente)
JOIN vn2008.warehouse w on w.id = warehouse_id
WHERE Fecha between '2013-01-01' and ' 2013-12-31'
AND (Id_Cliente = 31 or invoice)
AND Id_Cliente NOT IN (2066,2067,2068);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nightly_tasks` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nightly_tasks`()
BEGIN
call bi.analisis_ventas_evolution_add;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nigthlyAnalisisVentas` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nigthlyAnalisisVentas`()
BEGIN
INSERT INTO vn2008.daily_task_log(consulta) VALUES('analisis ventas START');
CALL bi.analisis_ventas_update;
CALL bi.analisis_ventas_simple;
CALL bi.analisis_ventas_evolution_add;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('analisis ventas END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `partitioning` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `partitioning`(IN intyear INT)
BEGIN
DECLARE v_sql TEXT;
DECLARE strSquemaName VARCHAR(10);
DECLARE strTableName VARCHAR(20);
DECLARE strFieldName VARCHAR(20);
DECLARE strDateField VARCHAR(20);
DECLARE strTableDependingOn VARCHAR(20);
DECLARE strFieldDependingOn VARCHAR(20);
DECLARE done BIT DEFAULT 0;
DECLARE strCacheSchema VARCHAR(5);
DECLARE dat_start,dat_end DATE;
DECLARE cur1 CURSOR FOR
SELECT `schema_name`,`table_name` FROM `cache`.partitioning_information ORDER BY execution_order;
DECLARE cur2 CURSOR FOR
SELECT `schema_name`,`table_name`,`date_field` FROM `cache`.partitioning_information WHERE date_field > '' ORDER BY execution_order;
DECLARE cur3 CURSOR FOR
SELECT `schema_name`,`table_name`,`table_depending` FROM `cache`.partitioning_information WHERE table_depending > '' ORDER BY execution_order;
DECLARE cur4 CURSOR FOR
SELECT `schema_name`,`table_name`,`table_depending` FROM `cache`.partitioning_information WHERE table_depending > '' ORDER BY execution_order DESC;
DECLARE cur5 CURSOR FOR
SELECT `schema_name`,`table_name`,`date_field` FROM `cache`.partitioning_information WHERE date_field > '' ORDER BY execution_order DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
SET FOREIGN_KEY_CHECKS=0;
IF LENGTH(intyear) <> 4 THEN
CALL el_año_debe_contener_4_caracteres_yyyy();
END IF;
SET dat_start = STR_TO_DATE(CONCAT('01,01,',intyear),'%d,%m,%Y');
SET dat_end = STR_TO_DATE(CONCAT('31,12,',intyear),'%d,%m,%Y');
SET strCacheSchema = CONCAT('vn_',right(intyear,2));
SET v_sql = sql_printf ('CREATE SCHEMA IF NOT EXISTS %t',strCacheSchema);
CALL vn2008.sql_query (v_sql);
OPEN cur1;
FETCH cur1 INTO strSquemaName,strTableName;
WHILE NOT done DO
SET v_sql = sql_printf ('CREATE TABLE IF NOT EXISTS %t.%t LIKE %t.%t',
strCacheSchema,
strTableName,
strSquemaName,
strTableName);
CALL vn2008.sql_query (v_sql);
FETCH cur1 INTO strSquemaName,strTableName;
END WHILE;
CLOSE cur1;
OPEN cur2;
FETCH cur2 INTO strSquemaName,strTableName,strDateField;
WHILE NOT done DO
SET v_sql = sql_printf ('REPLACE INTO %t.%t SELECT * FROM %t.%t WHERE %t BETWEEN %v AND %v',
strCacheSchema,
strTableName,
strSquemaName,
strTableName,
strDateField,
dat_start,
dat_end);
SELECT v_sql;
CALL vn2008.sql_query (v_sql);
FETCH cur2 INTO strSquemaName,strTableName,strDateField;
END WHILE;
CLOSE cur2;
OPEN cur3;
SET done = 0;
FETCH cur3 INTO strSquemaName,strTableName,strTableDependingOn;
WHILE NOT done DO
SELECT kcu.column_name INTO strFieldName
FROM information_schema.key_column_usage kcu
WHERE table_schema = CONVERT(strSquemaName USING utf8) COLLATE utf8_general_ci
AND REFERENCED_TABLE_NAME = CONVERT(strTableDependingOn USING utf8) COLLATE utf8_general_ci
AND table_name = CONVERT(strTableName USING utf8) COLLATE utf8_general_ci;
SELECT kcu.column_name INTO strFieldDependingOn
FROM information_schema.key_column_usage kcu
WHERE table_schema = CONVERT(strSquemaName USING utf8) COLLATE utf8_general_ci
AND constraint_name = 'PRIMARY'
AND table_name = CONVERT(strTableDependingOn USING utf8) COLLATE utf8_general_ci;
SET v_sql = sql_printf ('REPLACE INTO %t.%t SELECT a.* FROM %t.%t a JOIN %t.%t b ON a.%t = b.%t',
strCacheSchema,
strTableName,
strSquemaName,
strTableName,
strCacheSchema,
strTableDependingOn,
strFieldName,
strFieldDependingOn);
select v_sql;
CALL vn2008.sql_query (v_sql);
FETCH cur3 INTO strSquemaName,strTableName,strTableDependingOn;
END WHILE;
CLOSE cur3;
OPEN cur4;
SET done = 0;
FETCH cur4 INTO strSquemaName,strTableName,strTableDependingOn;
WHILE NOT done DO
SELECT kcu.column_name INTO strFieldName
FROM information_schema.key_column_usage kcu
WHERE table_schema = CONVERT(strSquemaName USING utf8) COLLATE utf8_general_ci
AND REFERENCED_TABLE_NAME = CONVERT(strTableDependingOn USING utf8) COLLATE utf8_general_ci
AND table_name = CONVERT(strTableName USING utf8) COLLATE utf8_general_ci;
SELECT kcu.column_name INTO strFieldDependingOn
FROM information_schema.key_column_usage kcu
WHERE table_schema = CONVERT(strSquemaName USING utf8) COLLATE utf8_general_ci
AND constraint_name = 'PRIMARY'
AND table_name = CONVERT(strTableDependingOn USING utf8) COLLATE utf8_general_ci;
SELECT v_sql;
SET v_sql = sql_printf ('DELETE a.* FROM %t.%t a JOIN %t.%t b ON a.%t = b.%t',
strSquemaName,
strTableName,
strCacheSchema,
strTableDependingOn,
strFieldName,
strFieldDependingOn);
CALL vn2008.sql_query (v_sql);
FETCH cur4 INTO strSquemaName,strTableName,strTableDependingOn;
END WHILE;
CLOSE cur4;
OPEN cur5;
SET done = 0;
FETCH cur5 INTO strSquemaName,strTableName,strDateField;
WHILE NOT done DO
SET v_sql = sql_printf ('DELETE FROM %t WHERE %t BETWEEN %v AND %v',
strTableName,
strDateField,
dat_start,
dat_end);
CALL vn2008.sql_query (v_sql);
FETCH cur5 INTO strSquemaName,strTableName,strDateField;
END WHILE;
CLOSE cur5;
SET FOREIGN_KEY_CHECKS=1;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `primer_pedido_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `primer_pedido_add`()
BEGIN
INSERT IGNORE INTO bi.primer_pedido(Id_Ticket, Id_Cliente, month, year, total)
SELECT *
FROM
(SELECT
`m`.`Id_Ticket` ,
`v`.`Id_Cliente` ,
`t`.`month`,
`t`.`year`,
v.importe + v.recargo as total
FROM
bs.ventas v
JOIN
vn2008.Movimientos m on m.Id_Movimiento = v.Id_Movimiento
JOIN
vn2008.time t on t.date = v.fecha
WHERE
fecha > CURDATE() + INTERVAL -(1) YEAR
ORDER BY fecha) `s`
GROUP BY `s`.`Id_Cliente`;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `regularidad` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `regularidad`()
BEGIN
select Id_Cliente, Meses, IF(Antiguedad = 13,12,Antiguedad) , Meses / IF(Antiguedad = 13,12,Antiguedad) as Regularidad from (
SELECT Id_Cliente, count(*) as Meses, FLOOR(DATEDIFF('2012-07-31', IF(Created < '2011-08-01','2011-08-01', Created)) / 30) +1 as Antiguedad from
(
SELECT DISTINCT Id_Cliente, Periodo(Fecha) as periodo from Facturas
where Fecha between '2011-08-01' AND '2012-07-31'
) sub
join Clientes using(Id_Cliente)
where Created <= '2012-07-31'
group by Id_Cliente
having Antiguedad > 0
) sub44
order by Antiguedad ;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `rotacion_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `rotacion_update`()
BEGIN
INSERT INTO vn2008.daily_task_log(consulta) VALUES('bi.rotation_update');
IF DAY(CURDATE()) = 5 THEN
call rotacion_update_manual(1, 999999, TIMESTAMPADD(YEAR,-1,CURDATE()), CURDATE()) ;
END if;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `rotacion_update_manual` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `rotacion_update_manual`(IN intART_DESDE INT, IN intART_HASTA INT, IN datSTART DATE, IN datEND DATE)
BEGIN
DECLARE intLAPSO INT DEFAULT DATEDIFF(datEND,datSTART );
REPLACE bi.rotacion(Id_Article,warehouse_id,total,rotacion)
SELECT Id_Article, warehouse_id, Total, round((sum(Saldo_Ponderado)/Total),2) as rotacion
FROM
(
SELECT Id_Article, warehouse_id,
@intervalo:= IF(warehouse_id = @wh AND Id_Article = @art , DATEDIFF(Fecha, @fec),1) as Dias,
IF(warehouse_id = @wh AND Id_Article = @art , IF(@sd < 0,0,@sd) * @intervalo, IF(Unidades<0,0,Unidades)) as Saldo_Ponderado,
IF(warehouse_id = @wh AND Id_Article = @art , @sd:= @sd + Unidades, @sd:= Unidades) as Saldo
, @fec:= Fecha, @art:= Id_Article, @wh:= warehouse_id
FROM
(
SELECT Id_Article, landing as Fecha, sum(Cantidad) as Unidades, warehouse_id, @fec:= datSTART, @art := 0, @d := 0, @sd:= 0, @wh := 0, @intervalo := 0
FROM
(
SELECT Id_Article, landing, Cantidad, warehouse_id
FROM vn2008.Compres C
JOIN vn2008.Entradas E using(Id_Entrada)
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos tp ON tp.tipo_id = A.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
JOIN vn2008.travel tr on tr.id = travel_id
JOIN vn2008.warehouse w on w.id = tr.warehouse_id
WHERE landing between datSTART and datEND
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Proveedor <> 4
AND r.display <> 0
AND NOT E.Inventario
AND NOT fuente
AND NOT redada
UNION ALL
SELECT Id_Article, shipment, -Cantidad, warehouse_id_out
FROM vn2008.Compres C
JOIN vn2008.Entradas E using(Id_Entrada)
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos tp ON tp.tipo_id = A.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
JOIN vn2008.travel tr on tr.id = travel_id
JOIN vn2008.warehouse w on w.id = tr.warehouse_id_out
WHERE shipment between datSTART and datEND
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Proveedor <> 4
AND r.display <> 0
AND NOT fuente
AND NOT E.Inventario
AND NOT redada
UNION ALL
SELECT Id_Article, date(Fecha), -Cantidad, warehouse_id
FROM vn2008.Movimientos M
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos tp ON tp.tipo_id = A.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
JOIN vn2008.Tickets t using(Id_Ticket)
JOIN vn2008.warehouse w on w.id = t.warehouse_id
WHERE Fecha between datSTART and datEND
AND r.display <> 0
AND NOT fuente
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Cliente NOT IN (2066,2067,2068)
) sub
GROUP BY Id_Article, warehouse_id, Fecha
) sub2
) sub4
JOIN
(
SELECT Id_Article, sum(Cantidad) as Total, warehouse_id
FROM vn2008.Compres C
JOIN vn2008.Entradas E using(Id_Entrada)
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos tp ON tp.tipo_id = A.tipo_id
LEFT JOIN vn2008.reinos r ON r.id = tp.reino_id
JOIN vn2008.travel tr on tr.id = travel_id
JOIN vn2008.warehouse w on w.id = tr.warehouse_id
WHERE landing between datSTART and datEND
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Proveedor <> 4
AND NOT E.Inventario
AND r.display <> 0
AND NOT redada
AND NOT fuente
GROUP BY Id_Article, warehouse_id
) sub3 using(Id_Article, warehouse_id)
GROUP BY Id_Article, warehouse_id;
CALL vn2008.item_last_buy_(NULL,datSTART);
update bi.rotacion r
JOIN vn2008.t_item_last_buy b ON r.Id_Article = b.item_id AND r.warehouse_id = b.warehouse_id
join vn2008.Compres ON Id_Compra = b.buy_id
set cm3 = vn2008.cm3_2(Id_Cubo, r.Id_Article) / Packing
where r.Id_Article between intART_DESDE and intART_HASTA;
UPDATE bi.rotacion
JOIN (
SELECT warehouse_id, sum(total*rotacion*cm3) as Operacion
FROM bi.rotacion
WHERE Id_Article between intART_DESDE and intART_HASTA
GROUP BY warehouse_id
) sub using(warehouse_id)
JOIN (
SELECT warehouse_id, sum(Valor) as Coste_Auxiliar
FROM bi.tarifa_warehouse
WHERE Id_Premisa = 1
GROUP BY warehouse_id
) sub2 using(warehouse_id)
JOIN (
SELECT warehouse_id, sum(Valor) as Coste_Operativo
FROM bi.tarifa_warehouse
WHERE Id_Premisa IN (2,3)
GROUP BY warehouse_id
) sub3 using(warehouse_id)
JOIN (
SELECT warehouse_id, sum(Valor) as Coste_Manipulacion
FROM bi.tarifa_warehouse
WHERE Id_Premisa = 4
GROUP BY warehouse_id
) sub4 using(warehouse_id)
SET auxiliar = if(rotacion < 0,0,round(rotacion *cm3 * Coste_Auxiliar / Operacion,4))
,almacenaje = if(rotacion < 0,0,round(rotacion *cm3 * Coste_Operativo / Operacion,4))
, manipulacion = if(rotacion < 0,0,round(rotacion *cm3 * Coste_Manipulacion / Operacion,4))
WHERE Id_Article between intART_DESDE and intART_HASTA;
INSERT INTO bi.rotacion(Id_Article, warehouse_id, rotacion, cm3, almacenaje, manipulacion, auxiliar, mermas)
SELECT a.Id_Article, warehouse_id, rotacion_m, cm3_m, alm_m, man_m, aux_m, merm_m
FROM vn2008.Articles a
JOIN (SELECT tipo_id, warehouse_id, Id_Tipo, avg(rotacion) rotacion_m, avg(cm3) cm3_m, avg(almacenaje) alm_m, avg(manipulacion) man_m
, avg(auxiliar) aux_m, avg(mermas) merm_m
from bi.rotacion
join vn2008.Articles a using(Id_Article)
join vn2008.Tipos tp using(tipo_id)
group by tipo_id, warehouse_id) sub using(tipo_id)
WHERE a.Id_Article between intART_DESDE and intART_HASTA
ON DUPLICATE KEY UPDATE rotacion = rotacion;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `rotacion_update_manual_PCA` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `rotacion_update_manual_PCA`(IN datSTART DATE, IN datEND DATE)
BEGIN
DECLARE intLAPSO INT DEFAULT DATEDIFF(datEND,datSTART );
DECLARE intART_DESDE BIGINT DEFAULT 1;
DECLARE intART_HASTA BIGINT DEFAULT 100;
WHILE intART_HASTA < 999999 DO
IF intART_HASTA MOD 1000 = 0 THEN
SELECT intART_HASTA;
END IF;
REPLACE bi.rotacion(Id_Article,warehouse_id,total,rotacion)
SELECT Id_Article, warehouse_id, Total, round((sum(Saldo_Ponderado)/Total),2) as rotacion
FROM
(
SELECT Id_Article, warehouse_id,
@intervalo:= IF(warehouse_id = @wh AND Id_Article = @art , DATEDIFF(Fecha, @fec),1) as Dias,
IF(warehouse_id = @wh AND Id_Article = @art , IF(@sd < 0,0,@sd) * @intervalo, IF(Unidades<0,0,Unidades)) as Saldo_Ponderado,
IF(warehouse_id = @wh AND Id_Article = @art , @sd:= @sd + Unidades, @sd:= Unidades) as Saldo
, @fec:= Fecha, @art:= Id_Article, @wh:= warehouse_id
FROM
(
SELECT Id_Article, landing as Fecha, sum(Cantidad) as Unidades, warehouse_id, @fec:= datSTART, @art := 0, @d := 0, @sd:= 0, @wh := 0, @intervalo := 0
FROM
(
SELECT Id_Article, landing, Cantidad, warehouse_id
FROM vn2008.Compres C
JOIN vn2008.Entradas E using(Id_Entrada)
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos using(tipo_id)
JOIN vn2008.travel tr on tr.id = travel_id
JOIN vn2008.warehouse w on w.id = tr.warehouse_id
WHERE landing between datSTART and datEND
AND warehouse_id = 44
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Proveedor <> 4
AND reino_id IN (3,4)
AND NOT E.Inventario
AND NOT fuente
AND NOT redada
UNION ALL
SELECT Id_Article, shipment, -Cantidad, warehouse_id_out
FROM vn2008.Compres C
JOIN vn2008.Entradas E using(Id_Entrada)
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos using(tipo_id)
JOIN vn2008.travel tr on tr.id = travel_id
JOIN vn2008.warehouse w on w.id = tr.warehouse_id_out
WHERE shipment between datSTART and datEND
AND warehouse_id_out = 44
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Proveedor <> 4
AND reino_id IN (3,4)
AND NOT fuente
AND NOT E.Inventario
AND NOT redada
UNION ALL
SELECT Id_Article, date(Fecha), -Cantidad, warehouse_id
FROM vn2008.Movimientos M
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos using(tipo_id)
JOIN vn2008.Tickets t using(Id_Ticket)
JOIN vn2008.warehouse w on w.id = t.warehouse_id
WHERE Fecha between datSTART and datEND
AND t.warehouse_id = 44
AND reino_id IN (3,4)
AND NOT fuente
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Cliente NOT IN (2066,2067,2068)
) sub
GROUP BY Id_Article, warehouse_id, Fecha
) sub2
) sub4
JOIN
(
SELECT Id_Article, sum(Cantidad) as Total, warehouse_id
FROM vn2008.Compres C
JOIN vn2008.Entradas E using(Id_Entrada)
JOIN vn2008.Articles A using(Id_Article)
JOIN vn2008.Tipos using(tipo_id)
JOIN vn2008.travel tr on tr.id = travel_id
JOIN vn2008.warehouse w on w.id = tr.warehouse_id
WHERE landing between datSTART and datEND
AND warehouse_id = 44
AND Id_Article between intART_DESDE and intART_HASTA
AND Id_Proveedor <> 4
AND NOT E.Inventario
AND reino_id IN (3,4)
AND NOT redada
AND NOT fuente
GROUP BY Id_Article, warehouse_id
) sub3 using(Id_Article, warehouse_id)
GROUP BY Id_Article, warehouse_id;
SET intART_DESDE = intART_DESDE + 100;
SET intART_DESDE = intART_HASTA + 100;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `rotacion_volumen_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `rotacion_volumen_update`(IN vIdCompra BIGINT)
BEGIN
UPDATE bi.rotacion r
JOIN vn2008.travel tr ON r.warehouse_id = tr.warehouse_id
JOIN vn2008.Entradas e ON e.travel_id = tr.id
JOIN vn2008.Compres c ON e.Id_Entrada = c.Id_Entrada AND c.Id_Article = r.Id_Article
SET r.cm3 = vn2008.cm3_2(c.Id_Cubo, c.Id_Article) / c.Packing
where c.Id_Compra = vIdCompra;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `rutas_m3_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `rutas_m3_add`()
BEGIN
DECLARE datSTART DATE DEFAULT TIMESTAMPADD(DAY,-90,CURDATE());
DECLARE datEND DATE DEFAULT CURDATE();
DECLARE datFEC DATE;
IF hour(now()) between 5 and 24 then
SET datSTART = CURDATE();
SET datEND = TIMESTAMPADD(DAY,1,CURDATE());
end if;
SET datFEC = datSTART;
CALL vn2008.item_last_buy_(NULL,CURDATE());
WHILE datFEC <= datEND DO
UPDATE vn2008.Rutas R
JOIN (SELECT R.Id_Ruta, sum(Cantidad * vn2008.cm3_unidad(b.buy_id)) / 1000000 as m3
from vn2008.Rutas R
join vn2008.Tickets t using(Id_Ruta)
join vn2008.Movimientos m using(Id_Ticket)
join vn2008.t_item_last_buy b ON Id_Article = b.item_id AND b.warehouse_id = t.warehouse_id
where R.Fecha = datFEC AND R.m3 IS NULL
group by R.Id_Ruta
) t using(Id_Ruta)
SET R.m3 = t.m3
WHERE R.m3 IS NULL;
SET datFEC = TIMESTAMPADD(DAY,1,datFEC);
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_add2kk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_add2kk`(intNUMDAYS INTEGER)
BEGIN
DECLARE datSTART,datEND DATETIME;
SET @@session.max_sp_recursion_depth=250;
SET datSTART = TIMESTAMPADD(DAY, -intNUMDAYS, CURDATE());
SET datEND = vn2008.DAYEND(datSTART);
update vn2008.Movimientos m
join
(
select Id_Movimiento, round(IFNULL(sum(Valor) , IFNULL( Preu * (100 - m.Descuento) /100,0 ) ),2) as Cost
from vn2008.Tickets t
join vn2008.Movimientos m using(Id_Ticket)
left join vn2008.Movimientos_componentes mc using(Id_Movimiento)
join bi.tarifa_componentes tc using(Id_Componente)
join bi.tarifa_componentes_series tcs on tcs.tarifa_componentes_series_id = tc.tarifa_componentes_series_id AND tcs.base
where t.Fecha between datSTART AND datEND
group by Id_Movimiento
) sub using(Id_Movimiento)
set CostFixat = Cost;
REPLACE INTO bi.ticket(Id_Ticket,Id_Cliente,`date`, tipo_id, `year`,`week`,`month`,`day`,`view`,amount,Id_Trabajador,Id_propietario )
SELECT t.Id_Ticket,c.Id_Cliente,t.Fecha `date`,tipo_id, year(Fecha) as `year`, vn2008.vnweek(Fecha) as `week`,
month(Fecha) as `month`,vn2008.vnday(Fecha) as `day`, A.Vista `view`,
IFNULL( round( sum(cantidad * Preu * (100 - m.Descuento)/100) ,2) ,0) as amount,
c.Id_Trabajador, c.Id_Trabajador
FROM vn2008.Tickets t
JOIN vn2008.Consignatarios cs using(Id_Consigna)
JOIN vn2008.warehouse W ON W.id = t.warehouse_id
INNER JOIN vn2008.Clientes c on cs.Id_Cliente = c.Id_Cliente
INNER JOIN vn2008.Movimientos m USING(Id_Ticket)
INNER JOIN vn2008.Articles USING(Id_Article)
INNER JOIN vn2008.Agencias A on A.Id_Agencia = t.Id_Agencia
INNER JOIN vn2008.Tipos TP USING(tipo_id)
WHERE Fecha BETWEEN datSTART AND datEND
AND NOT W.fuente
AND c.`Real`
AND (reino_id <> 6 OR m.Id_Article IN (95,98))
GROUP BY t.Id_Ticket,tipo_id ;
IF (intNUMDAYS>0) THEN
CALL `bi`.`ticket_add2` (intNUMDAYS-1);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_addkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_addkk`(intNUMDAYS INTEGER)
BEGIN
DECLARE datSTART DATETIME;
IF (intNUMDAYS > 0) THEN
SET datSTART = TIMESTAMPADD(DAY, -intNUMDAYS, CURDATE());
DELETE FROM bi.ticket where `date` >= datSTART ;
CALL `bi`.`ticket_add2` (intNUMDAYS);
DELETE FROM bi.ticket where `date` < '2001-01-01';
END IF;
UPDATE bi.ticket bt
JOIN vn2008.Tickets USING(Id_Ticket)
JOIN vn2008.Consignatarios C USING(Id_Consigna)
SET bt.Id_Cliente = C.Id_Cliente
, bt.Id_Trabajador = @idT := vn2008.Averiguar_ComercialCliente_Id(C.Id_Cliente,bt.date)
, bt.Id_propietario = @idT
WHERE Tickets.Id_Cliente = 31 AND bt.date >= datSTART;
truncate table bi.f_tvc;
insert into bi.f_tvc
select Id_Ticket
from vn2008.Tickets t
join vn2008.Consignatarios cs using(Id_Consigna)
join vn2008.Clientes c on c.Id_Cliente = cs.Id_Cliente
join vn2008.warehouse w on w.id = t.warehouse_id
where c.`Real` = TRUE
and w.comisionantes = TRUE;
IF DAY(CURDATE()) = 15 THEN
update vn2008.Tickets
set Fecha = date(Fecha)
where Fecha between TIMESTAMPADD(DAY,-46,CURDATE()) and TIMESTAMPADD(DAY, -1 - DAY(CURDATE()), CURDATE());
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_add_bydaykk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_add_bydaykk`(datFEC DATE)
BEGIN
DECLARE datSTART DATETIME;
DECLARE datEND DATETIME;
SET @@session.max_sp_recursion_depth=2500;
SET datSTART = DATE(datFEC);
SET datEND = TIMESTAMPADD(DAY,30,datSTART);
DELETE FROM bi.ticket WHERE `date` between datSTART and datEND;
INSERT INTO bi.ticket(Id_Ticket,`date`, tipo_id, `year`,`week`,`month`,`view`,amount,Id_Trabajador, Id_Cliente, Id_Propietario )
SELECT t.Id_Ticket,t.Fecha `date`,tipo_id, vn2008.vnyear(Fecha) as `year`, vn2008.vnweek(Fecha) as `week`,
vn2008.vnmonth(Fecha) as `month`, A.Vista `view`, IFNULL(round(sum(cantidad * preu * (100 - m.Descuento)/100),2),0) as amount,
c.Id_Trabajador, c.Id_Cliente, ifnull(c.Id_Trabajador,20)
FROM vn2008.Tickets t
JOIN vn2008.Consignatarios cs using(Id_Consigna)
JOIN vn2008.warehouse W ON W.id = t.warehouse_id
INNER JOIN vn2008.Clientes c on c.Id_Cliente = cs.Id_Cliente
INNER JOIN vn2008.Movimientos m USING(Id_Ticket)
INNER JOIN vn2008.Articles USING(Id_Article)
INNER JOIN vn2008.Agencias A on A.Id_Agencia = t.Id_Agencia
INNER JOIN vn2008.Tipos TP USING(tipo_id)
LEFT JOIN vn2008.reinos r ON r.id = TP.reino_id
WHERE Fecha >= datSTART
AND Fecha < datEND
AND NOT W.fuente
AND (invoice or t.Id_Cliente in (5,31))
AND r.display <> 0
GROUP BY t.Id_Ticket,tipo_id
ON DUPLICATE KEY UPDATE amount = amount,
`view` = `view`,
`date` = `date`,
`week` = `week`,
`year` = `year`,
`month` = `month`,
tipo_id = tipo_id,
Id_Trabajador = Id_Trabajador,
Id_Cliente = Id_Cliente,
Id_Propietario = ifnull(Id_Trabajador,20);
UPDATE bi.ticket
JOIN vn2008.Tickets using(Id_Ticket)
JOIN vn2008.Agencias using(Id_Agencia)
JOIN vn2008.agency_warehouse aw using(agency_id,warehouse_id)
SET `view` = aw.Vista
WHERE Tickets.Fecha BETWEEN datSTART AND datEND;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Ultima_Accion` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Ultima_Accion`()
BEGIN
REPLACE INTO bi.lastaction(Id_Cliente, Cliente, Ultima_accion, Comercial)
SELECT Id_Cliente, Cliente, Ultima_accion, Comercial
FROM vn2008.Clientes
JOIN
(
SELECT Id_Cliente, MAX(calldate) as Ultima_accion, vn2008.Averiguar_ComercialCliente(Id_Cliente, CURDATE()) as Comercial
FROM
(
SELECT Id_Cliente, calldate
FROM vn2008.cdr
JOIN vn2008.Contactos CT on CT.Telefono = dst
JOIN vn2008.Relaciones using(Id_Contacto)
WHERE Id_Cliente IS NOT NULL
AND duration > 30
UNION ALL
SELECT Id_Cliente, calldate
FROM vn2008.cdr
JOIN vn2008.Contactos CT on CT.Movil = dst
JOIN vn2008.Relaciones using(Id_Contacto)
WHERE Id_Cliente IS NOT NULL
AND duration > 30
UNION ALL
SELECT Id_Cliente, calldate
FROM vn2008.cdr
JOIN vn2008.Clientes CT on CT.Telefono = dst
WHERE duration > 30
UNION ALL
SELECT Id_Cliente, calldate
FROM vn2008.cdr
JOIN vn2008.Clientes CT on CT.Movil = dst
WHERE duration > 30
UNION ALL
SELECT C.Id_Cliente, Fecha
FROM vn2008.Tickets JOIN vn2008.Consignatarios C using(Id_Consigna)
) sub
GROUP BY Id_Cliente ) sub2 USING(Id_Cliente);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `Velocity_Add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `Velocity_Add`()
BEGIN
DECLARE bol_EXISTS BOOL;
DECLARE datMAX DATETIME;
DECLARE v_buffer VARCHAR(11);
DECLARE v_sql VARCHAR(255);
SELECT MAX(Fecha) INTO datMAX FROM bi.Velocity;
IF Date(datMAX) = CURDATE() AND hour(datMAX) > hour(now()) THEN
SET v_buffer = vn2008.buffer_name(CURDATE(),1);
SELECT count(*) INTO bol_EXISTS FROM information_schema.`TABLES`
WHERE TABLE_NAME = CONVERT(v_buffer using utf8) collate utf8_general_ci;
IF bol_EXISTS THEN
SET v_sql = sql_printf (
'INSERT INTO bi.Velocity(tipo_id, Fecha, Disponible, Visible)
SELECT A.tipo_id, NOW(), sum(avalaible), sum(visible)
FROM vn2008.%t b
JOIN Articles A ON b.item_id = A.Id_Article GROUP BY tipo_id;
',
v_buffer
);
CALL sql_query (v_sql);
END IF;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Current Database: `vn`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `vn` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `vn`;
--
-- Temporary view structure for view `accounting`
--
DROP TABLE IF EXISTS `accounting`;
/*!50001 DROP VIEW IF EXISTS `accounting`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `accounting` AS SELECT
1 AS `id`,
1 AS `bank`,
1 AS `account`,
1 AS `accountingTypeFk`,
1 AS `entityFk`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `accountingType`
--
DROP TABLE IF EXISTS `accountingType`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `accountingType` (
`id` smallint(6) NOT NULL DEFAULT '0',
`description` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='descripcio dels valors de la columna "cash" de la taula vn2008.Bancios';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `activityTaxDismissed`
--
DROP TABLE IF EXISTS `activityTaxDismissed`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `activityTaxDismissed` (
`clientFk` int(11) NOT NULL,
`isNotified` tinyint(1) DEFAULT '0',
`isDismissed` tinyint(1) DEFAULT '0',
`notified` int(11) DEFAULT '0',
PRIMARY KEY (`clientFk`),
CONSTRAINT `clientFk` FOREIGN KEY (`clientFk`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `address`
--
DROP TABLE IF EXISTS `address`;
/*!50001 DROP VIEW IF EXISTS `address`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `address` AS SELECT
1 AS `customer`,
1 AS `warehouse`,
1 AS `street`,
1 AS `city`,
1 AS `province`,
1 AS `postalCode`,
1 AS `phone`,
1 AS `celular`,
1 AS `nickname`,
1 AS `id`,
1 AS `defaultAddress`,
1 AS `agency`,
1 AS `active`,
1 AS `longitude`,
1 AS `latitude`,
1 AS `clientFk`,
1 AS `warehouseFk`,
1 AS `provinceFk`,
1 AS `mobile`,
1 AS `agencyFk`,
1 AS `isEqualizated`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `addressForPackaging`
--
DROP TABLE IF EXISTS `addressForPackaging`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `addressForPackaging` (
`addressFk` int(11) NOT NULL,
`packagingValue` decimal(10,2) NOT NULL DEFAULT '0.04',
PRIMARY KEY (`addressFk`),
CONSTRAINT `addresForPackaging_fk1` FOREIGN KEY (`addressFk`) REFERENCES `vn2008`.`Consignatarios` (`id_consigna`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `addressObservation`
--
DROP TABLE IF EXISTS `addressObservation`;
/*!50001 DROP VIEW IF EXISTS `addressObservation`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `addressObservation` AS SELECT
1 AS `id`,
1 AS `addressFk`,
1 AS `observationTypeFk`,
1 AS `description`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `agency`
--
DROP TABLE IF EXISTS `agency`;
/*!50001 DROP VIEW IF EXISTS `agency`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `agency` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `warehouse`,
1 AS `warehouseFk`,
1 AS `isVolumetric`,
1 AS `bank`,
1 AS `bankFk`,
1 AS `warehouseNickname`,
1 AS `warehouseAliasFk`,
1 AS `own`,
1 AS `labelZone`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `agencyHour`
--
DROP TABLE IF EXISTS `agencyHour`;
/*!50001 DROP VIEW IF EXISTS `agencyHour`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `agencyHour` AS SELECT
1 AS `id`,
1 AS `agency`,
1 AS `weekDay`,
1 AS `warehouse`,
1 AS `province`,
1 AS `substractDay`,
1 AS `maxHour`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `agencyMode`
--
DROP TABLE IF EXISTS `agencyMode`;
/*!50001 DROP VIEW IF EXISTS `agencyMode`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `agencyMode` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `description`,
1 AS `view`,
1 AS `deliveryMethod`,
1 AS `m3`,
1 AS `cod71`,
1 AS `web`,
1 AS `agency`,
1 AS `agencyFk`,
1 AS `agencyService`,
1 AS `agencyServiceFk`,
1 AS `inflacion`,
1 AS `isVolumetric`,
1 AS `reportMail`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `agencyWarehouse`
--
DROP TABLE IF EXISTS `agencyWarehouse`;
/*!50001 DROP VIEW IF EXISTS `agencyWarehouse`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `agencyWarehouse` AS SELECT
1 AS `agencyFk`,
1 AS `warehouseFk`,
1 AS `agencyType`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `autonomousRegion`
--
DROP TABLE IF EXISTS `autonomousRegion`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `autonomousRegion` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) CHARACTER SET utf8 NOT NULL,
`geoFk` int(11) DEFAULT NULL,
`countryFk` mediumint(8) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `countryFk` (`countryFk`),
CONSTRAINT `countryFk` FOREIGN KEY (`countryFk`) REFERENCES `vn2008`.`Paises` (`Id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `awb`
--
DROP TABLE IF EXISTS `awb`;
/*!50001 DROP VIEW IF EXISTS `awb`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `awb` AS SELECT
1 AS `id`,
1 AS `code`,
1 AS `package`,
1 AS `weight`,
1 AS `created`,
1 AS `transitoryFk`,
1 AS `taxFk`,
1 AS `docFk`,
1 AS `amount`,
1 AS `freightFk`,
1 AS `m3`,
1 AS `stems`,
1 AS `flightFk`,
1 AS `volumeWeight`,
1 AS `hb`,
1 AS `rate`,
1 AS `booked`,
1 AS `issued`,
1 AS `operated`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `bank`
--
DROP TABLE IF EXISTS `bank`;
/*!50001 DROP VIEW IF EXISTS `bank`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `bank` AS SELECT
1 AS `id`,
1 AS `bank`,
1 AS `account`,
1 AS `cash`,
1 AS `entityFk`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `bookingPlanner`
--
DROP TABLE IF EXISTS `bookingPlanner`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `bookingPlanner` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`effectived` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`pgcFk` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`taxAreaFk` varchar(15) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'SPAIN',
`priority` int(2) unsigned DEFAULT NULL,
`taxClassFk` tinyint(3) unsigned NOT NULL DEFAULT '1',
`countryFk` mediumint(8) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
KEY `taxArea_bookingPlanner_idx` (`taxAreaFk`),
KEY `pgcFk_bookingPlanner_idx` (`pgcFk`),
KEY `taxClassFk` (`taxClassFk`),
KEY `countryFk` (`countryFk`),
CONSTRAINT `bookingPlanner_ibfk_1` FOREIGN KEY (`pgcFk`) REFERENCES `pgc` (`code`) ON DELETE CASCADE,
CONSTRAINT `bookingPlanner_ibfk_2` FOREIGN KEY (`taxClassFk`) REFERENCES `vn2008`.`iva_group` (`iva_group_id`) ON DELETE CASCADE,
CONSTRAINT `bookingPlanner_ibfk_3` FOREIGN KEY (`countryFk`) REFERENCES `vn2008`.`Paises` (`Id`) ON DELETE CASCADE,
CONSTRAINT `taxArea_bookingPlanner` FOREIGN KEY (`taxAreaFk`) REFERENCES `taxArea` (`code`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `botanicExport`
--
DROP TABLE IF EXISTS `botanicExport`;
/*!50001 DROP VIEW IF EXISTS `botanicExport`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `botanicExport` AS SELECT
1 AS `id`,
1 AS `ediGenusFk`,
1 AS `ediSpecieFk`,
1 AS `countryFk`,
1 AS `restriction`,
1 AS `description`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `buy`
--
DROP TABLE IF EXISTS `buy`;
/*!50001 DROP VIEW IF EXISTS `buy`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `buy` AS SELECT
1 AS `id`,
1 AS `entryFk`,
1 AS `itemFk`,
1 AS `amount`,
1 AS `buyingValue`,
1 AS `quantity`,
1 AS `packageFk`,
1 AS `stickers`,
1 AS `freightValue`,
1 AS `packageValue`,
1 AS `comissionValue`,
1 AS `packing`,
1 AS `grouping`,
1 AS `groupingMode`,
1 AS `location`,
1 AS `price1`,
1 AS `price2`,
1 AS `price3`,
1 AS `minPrice`,
1 AS `producer`,
1 AS `printedStickers`,
1 AS `isChecked`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `category`
--
DROP TABLE IF EXISTS `category`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `category` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`description` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`nick` varchar(3) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `city`
--
DROP TABLE IF EXISTS `city`;
/*!50001 DROP VIEW IF EXISTS `city`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `city` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `provinceFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `client`
--
DROP TABLE IF EXISTS `client`;
/*!50001 DROP VIEW IF EXISTS `client`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `client` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `fi`,
1 AS `socialName`,
1 AS `contact`,
1 AS `street`,
1 AS `city`,
1 AS `postcode`,
1 AS `phone`,
1 AS `mobile`,
1 AS `fax`,
1 AS `isRelevant`,
1 AS `email`,
1 AS `iban`,
1 AS `dueDay`,
1 AS `accountingAccount`,
1 AS `isEqualizated`,
1 AS `provinceFk`,
1 AS `hasToInvoice`,
1 AS `credit`,
1 AS `countryFk`,
1 AS `isActive`,
1 AS `gestdocFk`,
1 AS `quality`,
1 AS `payMethodFk`,
1 AS `created`,
1 AS `isToBeMailed`,
1 AS `contactChannelFk`,
1 AS `hasSepaVnl`,
1 AS `hasCoreVnl`,
1 AS `hasCoreVnh`,
1 AS `riskCalculated`,
1 AS `clientTypeFk`,
1 AS `mailAddress`,
1 AS `cplusTerIdNifFk`,
1 AS `hasToInvoiceByAddress`,
1 AS `isTaxDataChecked`,
1 AS `isFreezed`,
1 AS `creditInsurance`,
1 AS `isCreatedAsServed`,
1 AS `hasInvoiceSimplified`,
1 AS `salesPersonFk`,
1 AS `isVies`,
1 AS `eypbc`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `clientCreditLimit`
--
DROP TABLE IF EXISTS `clientCreditLimit`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `clientCreditLimit` (
`id` int(11) NOT NULL,
`maxAmount` int(10) unsigned NOT NULL,
`roleFk` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `clientManaCache`
--
DROP TABLE IF EXISTS `clientManaCache`;
/*!50001 DROP VIEW IF EXISTS `clientManaCache`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `clientManaCache` AS SELECT
1 AS `clientFk`,
1 AS `mana`,
1 AS `dated`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `clientObservation`
--
DROP TABLE IF EXISTS `clientObservation`;
/*!50001 DROP VIEW IF EXISTS `clientObservation`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `clientObservation` AS SELECT
1 AS `id`,
1 AS `client`,
1 AS `worker`,
1 AS `text`,
1 AS `creationDate`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `clientType`
--
DROP TABLE IF EXISTS `clientType`;
/*!50001 DROP VIEW IF EXISTS `clientType`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `clientType` AS SELECT
1 AS `id`,
1 AS `code`,
1 AS `type`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `company`
--
DROP TABLE IF EXISTS `company`;
/*!50001 DROP VIEW IF EXISTS `company`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `company` AS SELECT
1 AS `id`,
1 AS `code`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `confectionType`
--
DROP TABLE IF EXISTS `confectionType`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `confectionType` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`description` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `config`
--
DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`mdbServer` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`fakeEmail` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`defaultersMaxAmount` int(10) DEFAULT '200' COMMENT 'maxima deuda permitida a partir de la cual se bloquea a un usuario',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `country`
--
DROP TABLE IF EXISTS `country`;
/*!50001 DROP VIEW IF EXISTS `country`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `country` AS SELECT
1 AS `id`,
1 AS `country`,
1 AS `CEE`,
1 AS `isUeeMember`,
1 AS `Code`,
1 AS `currencyFk`,
1 AS `politicalCountryFk`,
1 AS `geoFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `cplusCorrectingType`
--
DROP TABLE IF EXISTS `cplusCorrectingType`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusCorrectingType` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`description` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusInvoiceType472`
--
DROP TABLE IF EXISTS `cplusInvoiceType472`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusInvoiceType472` (
`id` int(10) unsigned NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='(*18) TIPO FACTURA (Asientos)SOPORTADO – DEDUCIBLE (472)';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusInvoiceType477`
--
DROP TABLE IF EXISTS `cplusInvoiceType477`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusInvoiceType477` (
`id` int(10) unsigned NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='(*18) TIPO FACTURA (Asientos)REPERCUTIDO - DEVENGADO (477)';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusRectificationType`
--
DROP TABLE IF EXISTS `cplusRectificationType`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusRectificationType` (
`id` int(10) unsigned NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='(*20) TIPO RECTIFICATIVA (Asientos)';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusSubjectOp`
--
DROP TABLE IF EXISTS `cplusSubjectOp`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusSubjectOp` (
`id` int(10) unsigned NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='(*17) TIPO OPERACIÓN SUJETA/NO SUJETA (Asientos)';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusTaxBreak`
--
DROP TABLE IF EXISTS `cplusTaxBreak`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusTaxBreak` (
`id` int(10) unsigned NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='(*16) TIPO EXENCIÓN (Asientos)';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusTerIdNif`
--
DROP TABLE IF EXISTS `cplusTerIdNif`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusTerIdNif` (
`id` int(11) NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusTrascendency472`
--
DROP TABLE IF EXISTS `cplusTrascendency472`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusTrascendency472` (
`id` int(10) unsigned NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='(*15) CLAVE DE RÉGIMEN ESPECIAL O TRASCENDENCIA(Asientos)SOPORTADO – DEDUCIBLE (472)';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cplusTrascendency477`
--
DROP TABLE IF EXISTS `cplusTrascendency477`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cplusTrascendency477` (
`id` int(10) unsigned NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='(*15) CLAVE DE RÉGIMEN ESPECIAL O TRASCENDENCIA(Asientos) REPERCUTIDO - DEVENGADO (477)';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `creditClassification`
--
DROP TABLE IF EXISTS `creditClassification`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `creditClassification` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`client` int(11) NOT NULL,
`dateStart` date NOT NULL,
`dateEnd` date DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `creditClassifClientFk_idx` (`client`),
KEY `creditClassifdateEnd_idx` (`dateEnd`),
CONSTRAINT `creditClassifClientFk` FOREIGN KEY (`client`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn`.`creditClassification_BEFORE_UPDATE` BEFORE UPDATE ON `creditClassification` FOR EACH ROW
BEGIN
IF NEW.client <> OLD.client THEN
CALL util.throw('NOT_ALLOWED_CHANGE_CLIENT');
END IF;
IF NEW.dateEnd IS NOT NULL AND OLD.dateEnd IS NULL THEN
UPDATE vn2008.Clientes c
SET creditInsurance = 0 WHERE c.Id_cliente = NEW.client;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Table structure for table `creditInsurance`
--
DROP TABLE IF EXISTS `creditInsurance`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `creditInsurance` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`creditClassification` int(11) DEFAULT NULL,
`credit` int(11) DEFAULT NULL,
`creationDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`grade` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `CreditInsurance_Fk1_idx` (`creditClassification`),
CONSTRAINT `CreditInsurance_Fk1` FOREIGN KEY (`creditClassification`) REFERENCES `creditClassification` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Detalla los clientes que tienen seguro de credito';
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn`.`creditInsurance_AFTER_INSERT` AFTER INSERT ON `creditInsurance` FOR EACH ROW
BEGIN
UPDATE vn2008.Clientes c
JOIN vn.creditClassification cc ON cc.client = c.Id_Cliente
SET creditInsurance = NEW.credit WHERE cc.id = NEW.creditClassification;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Table structure for table `dailyTaskLog`
--
DROP TABLE IF EXISTS `dailyTaskLog`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `dailyTaskLog` (
`state` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `deliveryError`
--
DROP TABLE IF EXISTS `deliveryError`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `deliveryError` (
`ticket` int(11) NOT NULL,
`description` varchar(255) CHARACTER SET latin1 NOT NULL,
`worker` int(11) NOT NULL,
`creation_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
KEY `errorTickets_idx` (`ticket`),
KEY `errorWorker_idx` (`worker`),
CONSTRAINT `errorTickets` FOREIGN KEY (`ticket`) REFERENCES `vn2008`.`Tickets` (`Id_Ticket`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `errorWorker` FOREIGN KEY (`worker`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `deliveryMethod`
--
DROP TABLE IF EXISTS `deliveryMethod`;
/*!50001 DROP VIEW IF EXISTS `deliveryMethod`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `deliveryMethod` AS SELECT
1 AS `id`,
1 AS `code`,
1 AS `description`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ediGenus`
--
DROP TABLE IF EXISTS `ediGenus`;
/*!50001 DROP VIEW IF EXISTS `ediGenus`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ediGenus` AS SELECT
1 AS `id`,
1 AS `latinGenusName`,
1 AS `entried`,
1 AS `dued`,
1 AS `modified`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ediSpecie`
--
DROP TABLE IF EXISTS `ediSpecie`;
/*!50001 DROP VIEW IF EXISTS `ediSpecie`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ediSpecie` AS SELECT
1 AS `id`,
1 AS `genusFk`,
1 AS `latinSpeciesName`,
1 AS `entried`,
1 AS `dued`,
1 AS `modified`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `entry`
--
DROP TABLE IF EXISTS `entry`;
/*!50001 DROP VIEW IF EXISTS `entry`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `entry` AS SELECT
1 AS `id`,
1 AS `supplierFk`,
1 AS `ref`,
1 AS `isInventory`,
1 AS `isConfirmed`,
1 AS `isOrdered`,
1 AS `isRaid`,
1 AS `commission`,
1 AS `created`,
1 AS `evaNotes`,
1 AS `travelFk`,
1 AS `currencyFk`,
1 AS `companyFk`,
1 AS `gestDocFk`,
1 AS `invoiceReceivedFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `especialPrice`
--
DROP TABLE IF EXISTS `especialPrice`;
/*!50001 DROP VIEW IF EXISTS `especialPrice`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `especialPrice` AS SELECT
1 AS `id`,
1 AS `clientFk`,
1 AS `itemFk`,
1 AS `value`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `excuse`
--
DROP TABLE IF EXISTS `excuse`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `excuse` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`txt` varchar(255) CHARACTER SET latin1 NOT NULL,
`date` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `expedition`
--
DROP TABLE IF EXISTS `expedition`;
/*!50001 DROP VIEW IF EXISTS `expedition`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `expedition` AS SELECT
1 AS `id`,
1 AS `agency`,
1 AS `agencyFk`,
1 AS `ticket`,
1 AS `ticketFk`,
1 AS `isBox`,
1 AS `printingTime`,
1 AS `item`,
1 AS `itemFk`,
1 AS `counter`,
1 AS `checked`,
1 AS `workerFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `expence`
--
DROP TABLE IF EXISTS `expence`;
/*!50001 DROP VIEW IF EXISTS `expence`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `expence` AS SELECT
1 AS `id`,
1 AS `taxTypeFk`,
1 AS `name`,
1 AS `isWithheld`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `family`
--
DROP TABLE IF EXISTS `family`;
/*!50001 DROP VIEW IF EXISTS `family`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `family` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `life`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `grant`
--
DROP TABLE IF EXISTS `grant`;
/*!50001 DROP VIEW IF EXISTS `grant`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `grant` AS SELECT
1 AS `group`,
1 AS `worker`,
1 AS `company`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `grantGroup`
--
DROP TABLE IF EXISTS `grantGroup`;
/*!50001 DROP VIEW IF EXISTS `grantGroup`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `grantGroup` AS SELECT
1 AS `id`,
1 AS `description`,
1 AS `observationType`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ink`
--
DROP TABLE IF EXISTS `ink`;
/*!50001 DROP VIEW IF EXISTS `ink`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ink` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `picture`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `intrastat`
--
DROP TABLE IF EXISTS `intrastat`;
/*!50001 DROP VIEW IF EXISTS `intrastat`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `intrastat` AS SELECT
1 AS `id`,
1 AS `description`,
1 AS `taxGroupFk`,
1 AS `taxCodeFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `invoiceCorrection`
--
DROP TABLE IF EXISTS `invoiceCorrection`;
/*!50001 DROP VIEW IF EXISTS `invoiceCorrection`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceCorrection` AS SELECT
1 AS `correctingFk`,
1 AS `correctedFk`,
1 AS `cplusRectificationTypeFk`,
1 AS `cplusInvoiceType477Fk`,
1 AS `invoiceCorrectionTypeFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `invoiceCorrectionDataSource`
--
DROP TABLE IF EXISTS `invoiceCorrectionDataSource`;
/*!50001 DROP VIEW IF EXISTS `invoiceCorrectionDataSource`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceCorrectionDataSource` AS SELECT
1 AS `itemFk`,
1 AS `quantity`,
1 AS `concept`,
1 AS `price`,
1 AS `discount`,
1 AS `refFk`,
1 AS `saleFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `invoiceCorrectionType`
--
DROP TABLE IF EXISTS `invoiceCorrectionType`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `invoiceCorrectionType` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`description` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `description_UNIQUE` (`description`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `invoiceIn`
--
DROP TABLE IF EXISTS `invoiceIn`;
/*!50001 DROP VIEW IF EXISTS `invoiceIn`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceIn` AS SELECT
1 AS `id`,
1 AS `serialNumber`,
1 AS `serial`,
1 AS `supplierFk`,
1 AS `issued`,
1 AS `supplierRef`,
1 AS `isBooked`,
1 AS `currencyFk`,
1 AS `created`,
1 AS `companyFk`,
1 AS `docFk`,
1 AS `booked`,
1 AS `operated`,
1 AS `cplusInvoiceType472Fk`,
1 AS `cplusRectificationTypeFk`,
1 AS `cplusSubjectOpFk`,
1 AS `cplusTaxBreakFk`,
1 AS `cplusTrascendency472Fk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `invoiceInAwb`
--
DROP TABLE IF EXISTS `invoiceInAwb`;
/*!50001 DROP VIEW IF EXISTS `invoiceInAwb`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceInAwb` AS SELECT
1 AS `invoiceInFk`,
1 AS `awbFk`,
1 AS `dua`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `invoiceInEntry`
--
DROP TABLE IF EXISTS `invoiceInEntry`;
/*!50001 DROP VIEW IF EXISTS `invoiceInEntry`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceInEntry` AS SELECT
1 AS `id`,
1 AS `invoiceInFk`,
1 AS `entryFk`,
1 AS `percentage`,
1 AS `invoiceInAwbFk`,
1 AS `isBooked`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `invoiceInIntrastat`
--
DROP TABLE IF EXISTS `invoiceInIntrastat`;
/*!50001 DROP VIEW IF EXISTS `invoiceInIntrastat`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceInIntrastat` AS SELECT
1 AS `invoiceInFk`,
1 AS `intrastatFk`,
1 AS `amount`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `invoiceInSerial`
--
DROP TABLE IF EXISTS `invoiceInSerial`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `invoiceInSerial` (
`code` varchar(2) COLLATE utf8_unicode_ci NOT NULL,
`description` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`cplusTerIdNifFk` int(11) NOT NULL DEFAULT '1',
PRIMARY KEY (`code`),
KEY `InvoiceInSerial_Fk1_idx` (`cplusTerIdNifFk`),
CONSTRAINT `InvoiceInSerial_Fk1` FOREIGN KEY (`cplusTerIdNifFk`) REFERENCES `cplusTerIdNif` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `invoiceInTax`
--
DROP TABLE IF EXISTS `invoiceInTax`;
/*!50001 DROP VIEW IF EXISTS `invoiceInTax`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceInTax` AS SELECT
1 AS `id`,
1 AS `invoiceInFk`,
1 AS `taxCodeFk`,
1 AS `taxableBase`,
1 AS `expenceFk`,
1 AS `foreignValue`,
1 AS `created`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `invoiceOut`
--
DROP TABLE IF EXISTS `invoiceOut`;
/*!50001 DROP VIEW IF EXISTS `invoiceOut`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoiceOut` AS SELECT
1 AS `id`,
1 AS `ref`,
1 AS `serial`,
1 AS `issued`,
1 AS `amount`,
1 AS `clientFk`,
1 AS `created`,
1 AS `companyFk`,
1 AS `dued`,
1 AS `booked`,
1 AS `cplusInvoiceType477Fk`,
1 AS `cplusTaxBreakFk`,
1 AS `cplusSubjectOpFk`,
1 AS `cplusTrascendency477Fk`,
1 AS `pdf`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `invoiceOutExpence`
--
DROP TABLE IF EXISTS `invoiceOutExpence`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `invoiceOutExpence` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`invoiceOutFk` int(10) unsigned NOT NULL,
`amount` decimal(10,2) NOT NULL DEFAULT '0.00',
`expenceFk` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`created` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `invoiceOutExpence_restriccion` (`expenceFk`,`invoiceOutFk`),
KEY `invoiceOutExpence_FK_1_idx` (`invoiceOutFk`),
KEY `invoiceOutExpence_FK_2_idx` (`expenceFk`),
CONSTRAINT `invoiceOutExpence_FK_1` FOREIGN KEY (`invoiceOutFk`) REFERENCES `vn2008`.`Facturas` (`factura_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `invoiceOutExpence_FK_2` FOREIGN KEY (`expenceFk`) REFERENCES `vn2008`.`Gastos` (`Id_Gasto`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Desglosa la base imponible de una factura en funcion del tipo de gasto/venta';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `invoiceOutSerial`
--
DROP TABLE IF EXISTS `invoiceOutSerial`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `invoiceOutSerial` (
`code` varchar(2) COLLATE utf8_unicode_ci NOT NULL,
`description` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`isTaxed` tinyint(1) NOT NULL DEFAULT '1',
`taxAreaFk` varchar(15) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'NATIONAL',
`isCEE` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`code`),
KEY `taxAreaFk_idx` (`taxAreaFk`),
CONSTRAINT `invoiceOutSerial_ibfk_1` FOREIGN KEY (`taxAreaFk`) REFERENCES `taxArea` (`code`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `invoiceOutTax`
--
DROP TABLE IF EXISTS `invoiceOutTax`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `invoiceOutTax` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`invoiceOutFk` int(10) unsigned NOT NULL,
`taxableBase` decimal(10,2) NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`vat` decimal(10,2) NOT NULL DEFAULT '0.00',
`pgcFk` varchar(10) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0000000000',
PRIMARY KEY (`id`),
UNIQUE KEY `invoiceOutTax_Resctriccion` (`invoiceOutFk`,`pgcFk`),
KEY `invoiceOutFk_idx` (`invoiceOutFk`),
KEY `pgcFk` (`pgcFk`),
CONSTRAINT `invoiceOutFk` FOREIGN KEY (`invoiceOutFk`) REFERENCES `vn2008`.`Facturas` (`factura_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `invoiceOutTax_ibfk_1` FOREIGN KEY (`pgcFk`) REFERENCES `pgc` (`code`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `item`
--
DROP TABLE IF EXISTS `item`;
/*!50001 DROP VIEW IF EXISTS `item`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `item` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `familyFk`,
1 AS `size`,
1 AS `inkFk`,
1 AS `category`,
1 AS `stems`,
1 AS `originFk`,
1 AS `description`,
1 AS `producerFk`,
1 AS `intrastatFk`,
1 AS `expenceFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `itemBotanical`
--
DROP TABLE IF EXISTS `itemBotanical`;
/*!50001 DROP VIEW IF EXISTS `itemBotanical`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `itemBotanical` AS SELECT
1 AS `itemFk`,
1 AS `botanical`,
1 AS `genusFk`,
1 AS `specieFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `itemBotanicalWithGenus`
--
DROP TABLE IF EXISTS `itemBotanicalWithGenus`;
/*!50001 DROP VIEW IF EXISTS `itemBotanicalWithGenus`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `itemBotanicalWithGenus` AS SELECT
1 AS `itemFk`,
1 AS `ediBotanic`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `itemConversor`
--
DROP TABLE IF EXISTS `itemConversor`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `itemConversor` (
`espItemFk` int(11) NOT NULL,
`genItemFk` int(11) DEFAULT NULL,
PRIMARY KEY (`espItemFk`),
KEY `itemConversor_fk2_idx` (`genItemFk`),
CONSTRAINT `itemConversor_fk1` FOREIGN KEY (`espItemFk`) REFERENCES `vn2008`.`Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `itemConversor_fk2` FOREIGN KEY (`genItemFk`) REFERENCES `vn2008`.`Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Relaciona los item específicos con los genéricos';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `itemTag`
--
DROP TABLE IF EXISTS `itemTag`;
/*!50001 DROP VIEW IF EXISTS `itemTag`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `itemTag` AS SELECT
1 AS `id`,
1 AS `itemFk`,
1 AS `tagFk`,
1 AS `value`,
1 AS `priority`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `itemTagArranged`
--
DROP TABLE IF EXISTS `itemTagArranged`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `itemTagArranged` (
`itemFk` int(11) NOT NULL,
`tag1` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`val1` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`tag2` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`val2` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`tag3` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`val3` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`tag4` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`val4` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`tag5` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`val5` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`tag6` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`val6` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`description` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`itemFk`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Cache de columnas de características de artículo';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `itemTagged`
--
DROP TABLE IF EXISTS `itemTagged`;
/*!50001 DROP VIEW IF EXISTS `itemTagged`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `itemTagged` AS SELECT
1 AS `itemFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `itemTaxCountry`
--
DROP TABLE IF EXISTS `itemTaxCountry`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `itemTaxCountry` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`itemFk` int(11) DEFAULT NULL,
`countryFk` mediumint(8) unsigned DEFAULT NULL,
`taxClassFk` tinyint(3) unsigned NOT NULL DEFAULT '1',
`effectived` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `taxClassFK_idx` (`taxClassFk`),
KEY `countryFK_paises_idx` (`countryFk`),
KEY `itemFK_Article_idx` (`itemFk`),
CONSTRAINT `countryFK_paises` FOREIGN KEY (`countryFk`) REFERENCES `vn2008`.`Paises` (`Id`) ON UPDATE CASCADE,
CONSTRAINT `itemFK_Article` FOREIGN KEY (`itemFk`) REFERENCES `vn2008`.`Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `taxClassFK_Iva_Group` FOREIGN KEY (`taxClassFk`) REFERENCES `vn2008`.`iva_group` (`iva_group_id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Define la clase de iva por artículo y pais';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `itemVerdecora`
--
DROP TABLE IF EXISTS `itemVerdecora`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `itemVerdecora` (
`itemFk` int(11) NOT NULL,
`codin` int(11) DEFAULT NULL,
PRIMARY KEY (`itemFk`),
CONSTRAINT `itemVerdecora_fk1` FOREIGN KEY (`itemFk`) REFERENCES `vn2008`.`Articles` (`Id_Article`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Relaciona nuestros articulos con los de Verdecora';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `logClient`
--
DROP TABLE IF EXISTS `logClient`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `logClient` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`originFk` int(11) NOT NULL,
`userFk` int(10) unsigned NOT NULL,
`action` set('insert','update','delete') COLLATE utf8_unicode_ci NOT NULL,
`creationDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`description` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
KEY `originFk` (`originFk`),
KEY `userFk` (`userFk`),
CONSTRAINT `logClient_ibfk_1` FOREIGN KEY (`originFk`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `logClient_ibfk_2` FOREIGN KEY (`userFk`) REFERENCES `account`.`user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `logEntry`
--
DROP TABLE IF EXISTS `logEntry`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `logEntry` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`originFk` int(11) NOT NULL,
`userFk` int(10) unsigned NOT NULL,
`action` set('insert','update','delete') COLLATE utf8_unicode_ci NOT NULL,
`creationDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`description` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
KEY `userFk` (`userFk`),
KEY `logEntry_ibfk_1` (`originFk`),
CONSTRAINT `logEntry_ibfk_1` FOREIGN KEY (`originFk`) REFERENCES `vn2008`.`Entradas` (`Id_Entrada`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `logEntry_ibfk_2` FOREIGN KEY (`userFk`) REFERENCES `account`.`user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `logTicket`
--
DROP TABLE IF EXISTS `logTicket`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `logTicket` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`originFk` int(11) NOT NULL,
`userFk` int(10) unsigned NOT NULL,
`action` set('insert','update','delete') COLLATE utf8_unicode_ci NOT NULL,
`creationDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`description` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
KEY `logTicketoriginFk` (`originFk`),
KEY `logTicketuserFk` (`userFk`),
CONSTRAINT `logTicket_ibfk_1` FOREIGN KEY (`originFk`) REFERENCES `vn2008`.`Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `logTicket_ibfk_2` FOREIGN KEY (`userFk`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `logType`
--
DROP TABLE IF EXISTS `logType`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `logType` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`originTableName` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`logTableName` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `logWorker`
--
DROP TABLE IF EXISTS `logWorker`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `logWorker` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`originFk` int(11) NOT NULL,
`userFk` int(10) unsigned NOT NULL,
`action` set('insert','update','delete') COLLATE utf8_unicode_ci NOT NULL,
`creationDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`description` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
KEY `workerFk_idx` (`originFk`),
KEY `userFk_idx` (`userFk`),
CONSTRAINT `userFk` FOREIGN KEY (`userFk`) REFERENCES `account`.`user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `workerFk` FOREIGN KEY (`originFk`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `mail`
--
DROP TABLE IF EXISTS `mail`;
/*!50001 DROP VIEW IF EXISTS `mail`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `mail` AS SELECT
1 AS `id`,
1 AS `senderFk`,
1 AS `recipientFk`,
1 AS `sender`,
1 AS `replyTo`,
1 AS `subject`,
1 AS `body`,
1 AS `plainTextBody`,
1 AS `attachment`,
1 AS `creationDate`,
1 AS `sent`,
1 AS `status`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `mailTemplates`
--
DROP TABLE IF EXISTS `mailTemplates`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mailTemplates` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) CHARACTER SET utf8 NOT NULL,
`attachmentPath` text CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `manaSpellers`
--
DROP TABLE IF EXISTS `manaSpellers`;
/*!50001 DROP VIEW IF EXISTS `manaSpellers`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `manaSpellers` AS SELECT
1 AS `worker`,
1 AS `size`,
1 AS `used`,
1 AS `pricesModifierRate`,
1 AS `pricesModifierActivated`,
1 AS `workerCode`,
1 AS `firstname`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `message`
--
DROP TABLE IF EXISTS `message`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `message` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uuid` varchar(50) CHARACTER SET utf8 NOT NULL,
`sender` varchar(50) CHARACTER SET utf8 NOT NULL,
`recipient` varchar(50) CHARACTER SET utf8 NOT NULL,
`message` longtext CHARACTER SET utf8,
`sendDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `sender` (`sender`),
KEY `recipient` (`recipient`),
KEY `uuid` (`uuid`(8))
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `messageInbox`
--
DROP TABLE IF EXISTS `messageInbox`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `messageInbox` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uuid` varchar(50) CHARACTER SET utf8 NOT NULL,
`sender` varchar(50) CHARACTER SET utf8 NOT NULL,
`recipient` varchar(45) CHARACTER SET utf8 NOT NULL,
`finalRecipient` varchar(50) CHARACTER SET utf8 NOT NULL,
`message` longtext CHARACTER SET utf8,
`sendDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`read` varchar(45) CHARACTER SET utf8 NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `uuid` (`uuid`(8)),
KEY `finalRecipient` (`finalRecipient`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `movement`
--
DROP TABLE IF EXISTS `movement`;
/*!50001 DROP VIEW IF EXISTS `movement`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `movement` AS SELECT
1 AS `id`,
1 AS `item`,
1 AS `ticket`,
1 AS `concept`,
1 AS `amount`,
1 AS `quantity`,
1 AS `price`,
1 AS `discount`,
1 AS `cost`,
1 AS `reservado`,
1 AS `od`,
1 AS `priceFixed`,
1 AS `lastUpdate`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `noticeCategory`
--
DROP TABLE IF EXISTS `noticeCategory`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `noticeCategory` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`keyName` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`subject` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`description` text COLLATE utf8_unicode_ci,
`isEnabled` tinyint(1) NOT NULL DEFAULT '1',
`requiredRole` int(11) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `keyName_UNIQUE` (`keyName`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `noticeSubscription`
--
DROP TABLE IF EXISTS `noticeSubscription`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `noticeSubscription` (
`noticeCategoryFk` int(11) NOT NULL DEFAULT '0',
`userFk` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`noticeCategoryFk`,`userFk`),
KEY `noticeSubscription_ibfk_2` (`userFk`),
CONSTRAINT `noticeSubscription_ibfk_1` FOREIGN KEY (`noticeCategoryFk`) REFERENCES `noticeCategory` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `noticeSubscription_ibfk_2` FOREIGN KEY (`userFk`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `observationType`
--
DROP TABLE IF EXISTS `observationType`;
/*!50001 DROP VIEW IF EXISTS `observationType`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `observationType` AS SELECT
1 AS `id`,
1 AS `description`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `origin`
--
DROP TABLE IF EXISTS `origin`;
/*!50001 DROP VIEW IF EXISTS `origin`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `origin` AS SELECT
1 AS `id`,
1 AS `code`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `outgoingInvoice`
--
DROP TABLE IF EXISTS `outgoingInvoice`;
/*!50001 DROP VIEW IF EXISTS `outgoingInvoice`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `outgoingInvoice` AS SELECT
1 AS `id`,
1 AS `serie`,
1 AS `dateInvoice`,
1 AS `total`,
1 AS `dueDate`,
1 AS `bank`,
1 AS `client`,
1 AS `remittance`,
1 AS `remit`,
1 AS `worker`,
1 AS `creationDate`,
1 AS `company`,
1 AS `liquidacion?`,
1 AS `isPdf`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `outgoingInvoiceVat`
--
DROP TABLE IF EXISTS `outgoingInvoiceVat`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `outgoingInvoiceVat` (
`outgoingInvoice` mediumint(8) NOT NULL,
`taxBase` decimal(12,2) DEFAULT NULL,
`equalizationTax` decimal(12,2) DEFAULT NULL,
`Vat` decimal(12,2) DEFAULT NULL,
PRIMARY KEY (`outgoingInvoice`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `package`
--
DROP TABLE IF EXISTS `package`;
/*!50001 DROP VIEW IF EXISTS `package`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `package` AS SELECT
1 AS `id`,
1 AS `volume`,
1 AS `width`,
1 AS `height`,
1 AS `depth`,
1 AS `isPackageReturnable`,
1 AS `created`,
1 AS `itemFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `payMethod`
--
DROP TABLE IF EXISTS `payMethod`;
/*!50001 DROP VIEW IF EXISTS `payMethod`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `payMethod` AS SELECT
1 AS `id`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `pgc`
--
DROP TABLE IF EXISTS `pgc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `pgc` (
`code` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`rate` decimal(10,2) NOT NULL,
`name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`cplusTaxBreakFk` int(10) unsigned DEFAULT '1',
`mod340` tinyint(1) NOT NULL DEFAULT '0',
`mod347` tinyint(1) NOT NULL DEFAULT '0',
`cplusTrascendency477Fk` int(10) unsigned DEFAULT '1',
PRIMARY KEY (`code`),
KEY `pgc_fk1_idx` (`cplusTaxBreakFk`),
KEY `pgc_fk2_idx` (`cplusTrascendency477Fk`),
CONSTRAINT `pgc_fk1` FOREIGN KEY (`cplusTaxBreakFk`) REFERENCES `cplusTaxBreak` (`id`) ON UPDATE CASCADE,
CONSTRAINT `pgc_fk2` FOREIGN KEY (`cplusTrascendency477Fk`) REFERENCES `cplusTrascendency477` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Plan General Contable';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `pgcEqu`
--
DROP TABLE IF EXISTS `pgcEqu`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `pgcEqu` (
`vatFk` varchar(10) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Cuenta de IVA',
`equFk` varchar(10) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Cuenta de recargo de equivalencia',
PRIMARY KEY (`vatFk`,`equFk`),
KEY `pgcEqu_fk2_idx` (`equFk`),
CONSTRAINT `pgcEqu_fk1` FOREIGN KEY (`vatFk`) REFERENCES `pgc` (`code`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `pgcEqu_fk2` FOREIGN KEY (`equFk`) REFERENCES `pgc` (`code`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Recoge las cuentas contables con recargo de equivalencia e identifica a la que corresponde al iva y la que corresponde al recargo';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `plantpassport`
--
DROP TABLE IF EXISTS `plantpassport`;
/*!50001 DROP VIEW IF EXISTS `plantpassport`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `plantpassport` AS SELECT
1 AS `producerFk`,
1 AS `plantpassportAuthorityFk`,
1 AS `number`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `plantpassportAuthority`
--
DROP TABLE IF EXISTS `plantpassportAuthority`;
/*!50001 DROP VIEW IF EXISTS `plantpassportAuthority`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `plantpassportAuthority` AS SELECT
1 AS `id`,
1 AS `denomination`,
1 AS `countryFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `priceFixed`
--
DROP TABLE IF EXISTS `priceFixed`;
/*!50001 DROP VIEW IF EXISTS `priceFixed`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `priceFixed` AS SELECT
1 AS `itemFk`,
1 AS `rate0`,
1 AS `rate1`,
1 AS `rate2`,
1 AS `rate3`,
1 AS `started`,
1 AS `ended`,
1 AS `bonus`,
1 AS `warehouseFk`,
1 AS `created`,
1 AS `id`,
1 AS `grouping`,
1 AS `packing`,
1 AS `box`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `printServerQueue`
--
DROP TABLE IF EXISTS `printServerQueue`;
/*!50001 DROP VIEW IF EXISTS `printServerQueue`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `printServerQueue` AS SELECT
1 AS `id`,
1 AS `printerFk`,
1 AS `priorityFk`,
1 AS `reportFk`,
1 AS `statusFk`,
1 AS `started`,
1 AS `finished`,
1 AS `param1`,
1 AS `workerFk`,
1 AS `param2`,
1 AS `param3`,
1 AS `error`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `printingQueue`
--
DROP TABLE IF EXISTS `printingQueue`;
/*!50001 DROP VIEW IF EXISTS `printingQueue`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `printingQueue` AS SELECT
1 AS `id`,
1 AS `printer`,
1 AS `priority`,
1 AS `report`,
1 AS `state`,
1 AS `startingTime`,
1 AS `endingTime`,
1 AS `text`,
1 AS `worker`,
1 AS `text2`,
1 AS `text3`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `producer`
--
DROP TABLE IF EXISTS `producer`;
/*!50001 DROP VIEW IF EXISTS `producer`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `producer` AS SELECT
1 AS `id`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `province`
--
DROP TABLE IF EXISTS `province`;
/*!50001 DROP VIEW IF EXISTS `province`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `province` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `countryFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `referenceRate`
--
DROP TABLE IF EXISTS `referenceRate`;
/*!50001 DROP VIEW IF EXISTS `referenceRate`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `referenceRate` AS SELECT
1 AS `currencyFk`,
1 AS `dated`,
1 AS `value`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `role`
--
DROP TABLE IF EXISTS `role`;
/*!50001 DROP VIEW IF EXISTS `role`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `role` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `description`,
1 AS `hasLogin`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `route`
--
DROP TABLE IF EXISTS `route`;
/*!50001 DROP VIEW IF EXISTS `route`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `route` AS SELECT
1 AS `id`,
1 AS `workerFk`,
1 AS `created`,
1 AS `vehicleFk`,
1 AS `agencyFk`,
1 AS `agencyModeFk`,
1 AS `time`,
1 AS `isOk`,
1 AS `kmStart`,
1 AS `kmEnd`,
1 AS `started`,
1 AS `finished`,
1 AS `gestdocFk`,
1 AS `cost`,
1 AS `m3`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `sale`
--
DROP TABLE IF EXISTS `sale`;
/*!50001 DROP VIEW IF EXISTS `sale`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `sale` AS SELECT
1 AS `id`,
1 AS `itemFk`,
1 AS `ticketFk`,
1 AS `concept`,
1 AS `quantity`,
1 AS `price`,
1 AS `discount`,
1 AS `reserved`,
1 AS `isPicked`,
1 AS `created`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `saleComponent`
--
DROP TABLE IF EXISTS `saleComponent`;
/*!50001 DROP VIEW IF EXISTS `saleComponent`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `saleComponent` AS SELECT
1 AS `saleFk`,
1 AS `componentFk`,
1 AS `value`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `solunionCAP`
--
DROP TABLE IF EXISTS `solunionCAP`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `solunionCAP` (
`creditInsurance` int(11) NOT NULL,
`dateStart` date NOT NULL,
`dateEnd` date NOT NULL,
`dateLeaving` date DEFAULT NULL,
PRIMARY KEY (`creditInsurance`,`dateStart`),
KEY `solunionCAPdateLeavingIdx` (`dateLeaving`),
CONSTRAINT `solunionCAP` FOREIGN KEY (`creditInsurance`) REFERENCES `creditInsurance` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn`.`solunionCAP_AFTER_INSERT` AFTER INSERT ON `solunionCAP` FOR EACH ROW
BEGIN
UPDATE vn2008.Clientes c
JOIN creditClassification cc ON c.Id_Cliente = cc.client
JOIN creditInsurance ci ON ci.creditClassification = cc.id
SET creditInsurance = ci.credit * 2 WHERE ci.id = NEW.creditInsurance;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn`.`solunionCAP_AFTER_UPDATE` AFTER UPDATE ON `solunionCAP` FOR EACH ROW
BEGIN
IF NEW.dateLeaving IS NOT NULL THEN
UPDATE vn2008.Clientes c
JOIN creditClassification cc ON c.Id_Cliente = cc.client
JOIN creditInsurance ci ON ci.creditClassification = cc.id
SET creditInsurance = ci.credit WHERE ci.id = OLD.creditInsurance;
ELSE
UPDATE vn2008.Clientes c
JOIN creditClassification cc ON c.Id_Cliente = cc.client
JOIN creditInsurance ci ON ci.creditClassification = cc.id
SET creditInsurance = ci.credit * 2 WHERE ci.id = OLD.creditInsurance;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn`.`solunionCAP_BEFORE_DELETE` BEFORE DELETE ON `solunionCAP` FOR EACH ROW
BEGIN
UPDATE vn2008.Clientes c
JOIN creditClassification cc ON c.Id_Cliente = cc.client
JOIN creditInsurance ci ON ci.creditClassification = cc.id
SET creditInsurance = ci.credit WHERE ci.id = OLD.creditInsurance;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Temporary view structure for view `state`
--
DROP TABLE IF EXISTS `state`;
/*!50001 DROP VIEW IF EXISTS `state`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `state` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `order`,
1 AS `alertLevel`,
1 AS `code`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `stockBuyed`
--
DROP TABLE IF EXISTS `stockBuyed`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `stockBuyed` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`user` int(10) unsigned DEFAULT NULL,
`buyed` decimal(10,2) DEFAULT NULL,
`date` date DEFAULT NULL,
`creationDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`reserved` decimal(10,2) DEFAULT NULL,
`requested` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `date_UNIQUE` (`date`,`user`),
KEY `stockBuyed_user_idx` (`user`),
CONSTRAINT `stockBuyedUserFk` FOREIGN KEY (`user`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `supplier`
--
DROP TABLE IF EXISTS `supplier`;
/*!50001 DROP VIEW IF EXISTS `supplier`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `supplier` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `account`,
1 AS `countryFk`,
1 AS `nif`,
1 AS `isFarmer`,
1 AS `retAccount`,
1 AS `commission`,
1 AS `created`,
1 AS `postcodeFk`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `tag`
--
DROP TABLE IF EXISTS `tag`;
/*!50001 DROP VIEW IF EXISTS `tag`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `tag` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `free`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `taxArea`
--
DROP TABLE IF EXISTS `taxArea`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `taxArea` (
`code` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `taxClass`
--
DROP TABLE IF EXISTS `taxClass`;
/*!50001 DROP VIEW IF EXISTS `taxClass`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `taxClass` AS SELECT
1 AS `id`,
1 AS `description`,
1 AS `code`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `taxClassCode`
--
DROP TABLE IF EXISTS `taxClassCode`;
/*!50001 DROP VIEW IF EXISTS `taxClassCode`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `taxClassCode` AS SELECT
1 AS `taxClassFk`,
1 AS `effectived`,
1 AS `taxCodeFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `taxCode`
--
DROP TABLE IF EXISTS `taxCode`;
/*!50001 DROP VIEW IF EXISTS `taxCode`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `taxCode` AS SELECT
1 AS `id`,
1 AS `dated`,
1 AS `code`,
1 AS `taxTypeFk`,
1 AS `rate`,
1 AS `equalizationTax`,
1 AS `type`,
1 AS `linkFk`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `taxType`
--
DROP TABLE IF EXISTS `taxType`;
/*!50001 DROP VIEW IF EXISTS `taxType`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `taxType` AS SELECT
1 AS `id`,
1 AS `nickname`,
1 AS `serial`,
1 AS `TIPOOPE`,
1 AS `description`,
1 AS `countryFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ticket`
--
DROP TABLE IF EXISTS `ticket`;
/*!50001 DROP VIEW IF EXISTS `ticket`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticket` AS SELECT
1 AS `id`,
1 AS `clientFk`,
1 AS `warehouseFk`,
1 AS `shipped`,
1 AS `landed`,
1 AS `nickname`,
1 AS `refFk`,
1 AS `addressFk`,
1 AS `isSigned`,
1 AS `location`,
1 AS `blocked`,
1 AS `solution`,
1 AS `path`,
1 AS `routeFk`,
1 AS `company`,
1 AS `companyFk`,
1 AS `agencyModeFk`,
1 AS `loadingOrder`,
1 AS `created`,
1 AS `shipment`,
1 AS `landing`,
1 AS `customer`,
1 AS `warehouse`,
1 AS `client`,
1 AS `address`,
1 AS `agencyMode`,
1 AS `signed`,
1 AS `creationDate`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ticketObservation`
--
DROP TABLE IF EXISTS `ticketObservation`;
/*!50001 DROP VIEW IF EXISTS `ticketObservation`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticketObservation` AS SELECT
1 AS `id`,
1 AS `ticketFk`,
1 AS `observationTypeFk`,
1 AS `description`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `ticketPackage`
--
DROP TABLE IF EXISTS `ticketPackage`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ticketPackage` (
`ticket` int(11) NOT NULL,
`counter` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`ticket`),
CONSTRAINT `ticketPackage_ticketFk` FOREIGN KEY (`ticket`) REFERENCES `vn2008`.`Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ticketPackaging`
--
DROP TABLE IF EXISTS `ticketPackaging`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ticketPackaging` (
`id` int(11) NOT NULL,
`ticketFk` int(11) NOT NULL,
`packagingFk` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`quantity` int(10) DEFAULT '0',
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`pvp` double DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `ticketPackaging_fk1_idx` (`ticketFk`),
KEY `ticketPackaging_fk2_idx` (`packagingFk`),
CONSTRAINT `ticketPackaging_fk1` FOREIGN KEY (`ticketFk`) REFERENCES `vn2008`.`Tickets` (`Id_Ticket`) ON UPDATE CASCADE,
CONSTRAINT `ticketPackaging_fk2` FOREIGN KEY (`packagingFk`) REFERENCES `vn2008`.`Cubos` (`Id_Cubo`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `ticketState`
--
DROP TABLE IF EXISTS `ticketState`;
/*!50001 DROP VIEW IF EXISTS `ticketState`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticketState` AS SELECT
1 AS `ticketFk`,
1 AS `ticket`,
1 AS `state`,
1 AS `productionOrder`,
1 AS `alertLevel`,
1 AS `code`,
1 AS `worker`,
1 AS `workerFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ticketStateToday`
--
DROP TABLE IF EXISTS `ticketStateToday`;
/*!50001 DROP VIEW IF EXISTS `ticketStateToday`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticketStateToday` AS SELECT
1 AS `ticket`,
1 AS `state`,
1 AS `productionOrder`,
1 AS `alertLevel`,
1 AS `worker`,
1 AS `code`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ticketTracking`
--
DROP TABLE IF EXISTS `ticketTracking`;
/*!50001 DROP VIEW IF EXISTS `ticketTracking`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticketTracking` AS SELECT
1 AS `id`,
1 AS `stateFk`,
1 AS `created`,
1 AS `ticketFk`,
1 AS `workerFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `ticketTrolley`
--
DROP TABLE IF EXISTS `ticketTrolley`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ticketTrolley` (
`ticket` int(11) NOT NULL,
`labelCount` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`ticket`),
CONSTRAINT `fk_ticketTrolley_vs_ticket` FOREIGN KEY (`ticket`) REFERENCES `vn2008`.`Tickets` (`Id_Ticket`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `time`
--
DROP TABLE IF EXISTS `time`;
/*!50001 DROP VIEW IF EXISTS `time`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `time` AS SELECT
1 AS `dated`,
1 AS `period`,
1 AS `month`,
1 AS `year`,
1 AS `day`,
1 AS `week`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `travel`
--
DROP TABLE IF EXISTS `travel`;
/*!50001 DROP VIEW IF EXISTS `travel`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `travel` AS SELECT
1 AS `id`,
1 AS `shipped`,
1 AS `shipmentHour`,
1 AS `landed`,
1 AS `landingHour`,
1 AS `warehouseInFk`,
1 AS `warehouseOutFk`,
1 AS `agencyFk`,
1 AS `ref`,
1 AS `isDelivered`,
1 AS `isReceived`,
1 AS `m3`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `travelObservation`
--
DROP TABLE IF EXISTS `travelObservation`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `travelObservation` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`originFk` int(11) NOT NULL,
`userFk` int(11) NOT NULL,
`description` text COLLATE utf8_unicode_ci NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Observaciones de travel';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `unary`
--
DROP TABLE IF EXISTS `unary`;
/*!50001 DROP VIEW IF EXISTS `unary`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `unary` AS SELECT
1 AS `id`,
1 AS `parent`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `unaryScan`
--
DROP TABLE IF EXISTS `unaryScan`;
/*!50001 DROP VIEW IF EXISTS `unaryScan`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `unaryScan` AS SELECT
1 AS `unaryFk`,
1 AS `name`,
1 AS `created`,
1 AS `type`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `unaryScanLine`
--
DROP TABLE IF EXISTS `unaryScanLine`;
/*!50001 DROP VIEW IF EXISTS `unaryScanLine`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `unaryScanLine` AS SELECT
1 AS `id`,
1 AS `code`,
1 AS `created`,
1 AS `unaryScanFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `unaryScanLineBuy`
--
DROP TABLE IF EXISTS `unaryScanLineBuy`;
/*!50001 DROP VIEW IF EXISTS `unaryScanLineBuy`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `unaryScanLineBuy` AS SELECT
1 AS `unaryScanLineFk`,
1 AS `itemFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `unaryScanLineExpedition`
--
DROP TABLE IF EXISTS `unaryScanLineExpedition`;
/*!50001 DROP VIEW IF EXISTS `unaryScanLineExpedition`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `unaryScanLineExpedition` AS SELECT
1 AS `unaryScanLineFk`,
1 AS `expeditionFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `user`
--
DROP TABLE IF EXISTS `user`;
/*!50001 DROP VIEW IF EXISTS `user`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `user` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `password`,
1 AS `role`,
1 AS `active`,
1 AS `recoverPass`,
1 AS `lastPassChange`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `vehicle`
--
DROP TABLE IF EXISTS `vehicle`;
/*!50001 DROP VIEW IF EXISTS `vehicle`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `vehicle` AS SELECT
1 AS `id`,
1 AS `numberPlate`,
1 AS `tradeMark`,
1 AS `model`,
1 AS `companyFk`,
1 AS `warehouseFk`,
1 AS `description`,
1 AS `m3`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `warehouse`
--
DROP TABLE IF EXISTS `warehouse`;
/*!50001 DROP VIEW IF EXISTS `warehouse`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `warehouse` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `isInventory`,
1 AS `hasComission`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `warehouseAlias`
--
DROP TABLE IF EXISTS `warehouseAlias`;
/*!50001 DROP VIEW IF EXISTS `warehouseAlias`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `warehouseAlias` AS SELECT
1 AS `id`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `worker`
--
DROP TABLE IF EXISTS `worker`;
/*!50001 DROP VIEW IF EXISTS `worker`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `worker` AS SELECT
1 AS `id`,
1 AS `workerCode`,
1 AS `firstName`,
1 AS `name`,
1 AS `userFk`,
1 AS `bossFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `workerDocument`
--
DROP TABLE IF EXISTS `workerDocument`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `workerDocument` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`worker` int(10) unsigned DEFAULT NULL,
`document` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `workerDocument_ibfk_1` (`worker`),
KEY `workerDocument_ibfk_2` (`document`),
CONSTRAINT `workerDocument_ibfk_1` FOREIGN KEY (`worker`) REFERENCES `vn2008`.`Trabajadores` (`user_id`) ON UPDATE CASCADE,
CONSTRAINT `workerDocument_ibfk_2` FOREIGN KEY (`document`) REFERENCES `vn2008`.`gestdoc` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `workerTeam`
--
DROP TABLE IF EXISTS `workerTeam`;
/*!50001 DROP VIEW IF EXISTS `workerTeam`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `workerTeam` AS SELECT
1 AS `team`,
1 AS `user`,
1 AS `id`,
1 AS `Id_Trabajador`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `workerTeam_kk`
--
DROP TABLE IF EXISTS `workerTeam_kk`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `workerTeam_kk` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`team` int(11) NOT NULL,
`user` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `user_team_idx` (`user`),
CONSTRAINT `user_team` FOREIGN KEY (`user`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `workingHours`
--
DROP TABLE IF EXISTS `workingHours`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `workingHours` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`timeIn` datetime NOT NULL,
`timeOut` datetime DEFAULT NULL,
`userId` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `user_working_hour_idx` (`userId`),
CONSTRAINT `user_working_hour` FOREIGN KEY (`userId`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacena horas de Entrada y de Salida del personal';
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `vn`.`workingHoursBeforeInsert` BEFORE INSERT ON `workingHours` FOR EACH ROW
BEGIN
IF (SELECT COUNT(*) FROM workingHours WHERE userId = NEW.userId AND DATE(timeIn) = CURDATE()) > 0 THEN
CALL util.throw ('ALREADY_LOGGED');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Table structure for table `zone`
--
DROP TABLE IF EXISTS `zone`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zone` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(45) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
`hour` int(11) NOT NULL,
`warehouseFk` int(11) NOT NULL,
`agencyFk` int(11) NOT NULL,
`travelingDays` int(11) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`,`name`),
UNIQUE KEY `name_UNIQUE` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `zoneCalendar`
--
DROP TABLE IF EXISTS `zoneCalendar`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zoneCalendar` (
`zoneFk` int(11) NOT NULL,
`delivered` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`zoneFk`,`delivered`),
CONSTRAINT `zoneFk` FOREIGN KEY (`zoneFk`) REFERENCES `zone` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `zoneGeo`
--
DROP TABLE IF EXISTS `zoneGeo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `zoneGeo` (
`zoneFk` varchar(45) CHARACTER SET utf8 NOT NULL,
`geoFk` int(11) NOT NULL,
`isIncluded` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`zoneFk`,`geoFk`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'vn'
--
--
-- Dumping routines for database 'vn'
--
/*!50003 DROP FUNCTION IF EXISTS `agencyIsAvailable` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `agencyIsAvailable`(vAgency INT, vDate DATE, vAddress INT) RETURNS tinyint(1)
BEGIN
DECLARE vMaxDays INT DEFAULT DATEDIFF(vDate, CURDATE());
DECLARE vWday TINYINT DEFAULT WEEKDAY(vDate);
DECLARE vHour TINYINT DEFAULT HOUR(NOW());
DECLARE vProvince INT;
DECLARE isAvailable BOOL;
SELECT province INTO vProvince
FROM address
WHERE id = vAddress;
SELECT COUNT(*) > 0 INTO isAvailable
FROM agencyHour h
JOIN agencyMode a
ON a.agency = h.agency
WHERE (h.province = vProvince
OR h.province IS NULL)
AND (h.weekDay = vWday
OR h.weekDay IS NULL)
AND (h.substractDay < vMaxDays
OR (h.substractDay = vMaxDays AND h.maxHour > vHour))
AND a.id = vAgency;
RETURN isAvailable;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `clientGetDebt` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `clientGetDebt`(vClient INT, vDate DATE) RETURNS decimal(10,2)
BEGIN
DECLARE vDateEnd DATETIME;
DECLARE vDateIni DATETIME;
DECLARE vDebt DECIMAL(10,2);
SET vDate = IFNULL(vDate, CURDATE());
SET vDateIni = TIMESTAMPADD(MONTH,-2,CURDATE());
SET vDateEnd = TIMESTAMP(vDate, '23:59:59');
DROP TEMPORARY TABLE IF EXISTS vn2008.ticket_tmp;
CREATE TEMPORARY TABLE vn2008.ticket_tmp
(INDEX (ticket_id))
ENGINE = MEMORY
SELECT id ticket_id
FROM ticket
WHERE clientfK = vClient
AND refFk IS NULL
AND shipped BETWEEN vDateIni AND vDateEnd;
CALL vn2008.ticket_total ();
SELECT IFNULL(SUM(t.amount), 0) INTO vDebt
FROM (
SELECT SUM(total) amount
FROM vn2008.ticket_total
UNION ALL
SELECT SUM(Entregado)
FROM vn2008.Recibos
WHERE Id_Cliente = vClient
AND Fechacobro > vDateEnd
UNION ALL
SELECT SUM(amount)
FROM bi.customer_risk r
WHERE customer_id = vClient
UNION ALL
SELECT CAST(-SUM(amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction
WHERE customer_id = vClient
AND receipt_id IS NULL
AND `status` = 'ok'
) t;
DROP TEMPORARY TABLE
vn2008.ticket_tmp,
vn2008.ticket_total;
RETURN vDebt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `clientGetDebtKK` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `clientGetDebtKK`(vClient INT, vDate DATE) RETURNS decimal(10,2)
BEGIN
DECLARE vDateEnd DATETIME;
DECLARE vDateIni DATETIME;
DECLARE vDebt DECIMAL(10,2);
SET vDate = IFNULL(vDate, CURDATE());
SET vDateIni = TIMESTAMPADD(MONTH,-2,CURDATE());
SET vDateEnd = TIMESTAMP(vDate, '23:59:59');
DROP TEMPORARY TABLE IF EXISTS vn2008.ticket_tmp;
CREATE TEMPORARY TABLE vn2008.ticket_tmp
(INDEX (ticket_id))
ENGINE = MEMORY
SELECT id ticket_id
FROM ticket
WHERE `client` = vClient
AND refFk IS NULL
AND shipment BETWEEN vDateIni AND vDateEnd;
CALL vn2008.ticket_total ();
SELECT IFNULL(SUM(t.amount), 0) INTO vDebt
FROM (
SELECT SUM(total) amount
FROM vn2008.ticket_total
UNION ALL
SELECT SUM(Entregado)
FROM vn2008.Recibos
WHERE Id_Cliente = vClient
AND Fechacobro > vDateEnd
UNION ALL
SELECT SUM(amount)
FROM bi.customer_risk r
WHERE customer_id = vClient
UNION ALL
SELECT CAST(-SUM(amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction
WHERE customer_id = vClient
AND receipt_id IS NULL
AND `status` = 'ok'
) t;
DROP TEMPORARY TABLE
vn2008.ticket_tmp,
vn2008.ticket_total;
RETURN vDebt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `clientGetMana` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `clientGetMana`(vClient INT) RETURNS decimal(10,2)
BEGIN
DECLARE vMana DECIMAL(10,2);
DECLARE vFromDated DATE;
SELECT max(dated) INTO vFromDated
FROM vn.clientManaCache
WHERE clientFk = vClient;
SELECT sum(mana) INTO vMana
FROM
(
SELECT mana
FROM vn.clientManaCache
WHERE clientFk = vClient
AND dated = vFromDated
UNION ALL
SELECT s.quantity * Valor
FROM vn.ticket t
JOIN vn.address a ON a.id = t.addressFk
JOIN vn.sale s on s.ticketFk = t.id
JOIN vn2008.Movimientos_componentes mc on mc.Id_Movimiento = s.id
WHERE Id_Componente IN (37, 39)
AND t.shipped > vFromDated
AND t.clientFk = vClient
UNION ALL
SELECT - Entregado
FROM vn2008.Recibos r
JOIN vn2008.Clientes c using(Id_Cliente)
WHERE r.Id_Banco = 66
AND r.Fechacobro > vFromDated
AND c.Id_Cliente = vClient
UNION ALL
SELECT g.Importe
FROM vn2008.Greuges g
JOIN vn2008.Clientes c using(Id_Cliente)
WHERE g.Greuges_type_id = 3
AND g.Fecha > vFromDated
AND c.Id_Cliente = vClient
) sub;
RETURN IFNULL(vMana,0);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `clientTaxArea` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `clientTaxArea`(vClientFk INT, vCompanyFk INT) RETURNS varchar(25) CHARSET utf8
BEGIN
DECLARE vTaxArea VARCHAR(25);
DECLARE vCee INT;
SELECT ct.Cee INTO vCee
FROM `client` c
JOIN country ct ON ct.id = c.countryFk
JOIN supplier s ON s.id = vCompanyFk
WHERE
c.id = vClientFk
AND c.vies
AND c.countryFk != s.countryFk;
IF vCee < 2 THEN
SET vTaxArea = 'CEE';
ELSEIF vCee = 2 THEN
SET vTaxArea = 'WORLD';
ELSE
SET vTaxArea = 'NATIONAL';
END IF;
RETURN vTaxArea;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `getAlert3State` */;
ALTER DATABASE `vn` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getAlert3State`(vTicket INT) RETURNS varchar(45) CHARSET latin1
BEGIN
DECLARE vDeliveryType INTEGER DEFAULT 0;
DECLARE vWorker INT;
DECLARE isWaitingForPickUp BOOLEAN DEFAULT FALSE;
DECLARE vCode VARCHAR(45);
SELECT IFNULL(aw.Vista,a.Vista) INTO vDeliveryType
FROM vn2008.Tickets t
JOIN vn2008.Agencias a ON a.Id_Agencia = t.Id_Agencia
LEFT JOIN vn2008.agency_warehouse aw ON a.agency_id = aw.agency_id AND t.warehouse_id = aw.warehouse_id
WHERE Id_Ticket = vTicket;
SELECT getUser() INTO vWorker;
CASE vDeliveryType
WHEN 1 THEN
SELECT COUNT(*) INTO isWaitingForPickUp
FROM vn2008.Tickets t
JOIN vn2008.warehouse_pickup w ON w.agency_id = t.Id_Agencia
WHERE t.Id_Ticket = vTicket AND w.warehouse_id <> t.warehouse_id;
IF isWaitingForPickUp THEN
SET vCode = 'WAITING_FOR_PICKUP';
ELSE
SET vCode = 'DELIVERED';
END IF;
WHEN 2 THEN
SET vCode = 'ON_DELIVERY';
ELSE
SET vCode = 'DELIVERED';
END CASE;
RETURN vCode;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getDueDate` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getDueDate`(vDated DATE, vDayToPay INT) RETURNS date
BEGIN
DECLARE vDued DATE;
SET vDued = IF (vDayToPay > 30 or vDayToPay < 1
,TIMESTAMPADD(DAY, vDayToPay, vDated)
,TIMESTAMPADD(DAY, vDayToPay, LAST_DAY(vDated)));
RETURN vDued;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getInventoryDate` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getInventoryDate`() RETURNS date
DETERMINISTIC
BEGIN
RETURN vn2008.date_inv();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getShipmentHour` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getShipmentHour`(vTicket INT) RETURNS int(11)
BEGIN
DECLARE vShipmentHour INT;
SELECT HOUR(shipment) INTO vShipmentHour
FROM ticket
WHERE id = vTicket;
IF vShipmentHour = 0
THEN
DROP TEMPORARY TABLE IF EXISTS tmp.production_buffer;
CREATE TEMPORARY TABLE tmp.production_buffer
ENGINE = MEMORY
SELECT am.agency as agency_id
, t.warehouse as warehouse_id
, a.province as province_id
, 0 as Hora
, 0 as Departure
FROM ticket t
JOIN agencyMode am on am.id = t.agencyMode
JOIN address a on a.id = t.address
WHERE t.id = vTicket;
CALL vn2008.production_buffer_set_priority;
SELECT Hora INTO vShipmentHour
FROM tmp.production_buffer;
END IF;
RETURN vShipmentHour;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getSpecialPrice` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getSpecialPrice`(vItemFk int(11),vClientFk int(11)) RETURNS decimal(10,2)
BEGIN
DECLARE price DECIMAL(10,2);
SELECT rate3 INTO price
FROM vn.priceFixed
WHERE itemFk = vItemFk
AND CURDATE() BETWEEN started AND ended ORDER BY created DESC LIMIT 1;
SELECT `value` INTO price
FROM vn.especialPrice
WHERE itemFk = vItemFk
AND clientFk = vClientFk ;
RETURN price;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `getTicketToPrepare` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8mb4 */ ;
/*!50003 SET character_set_results = utf8mb4 */ ;
/*!50003 SET collation_connection = utf8mb4_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getTicketToPrepare`(`vWorker` INT, `vWarehouse` INT) RETURNS int(11)
BEGIN
DECLARE vToday DATETIME DEFAULT CURDATE();
DECLARE vYesterday DATETIME;
DECLARE vTodayvMidniight DATETIME DEFAULT midnight(vToday);
DECLARE vTicket INT DEFAULT NULL;
SET vYesterday = TIMESTAMPADD(DAY,-1,vToday);
DROP TEMPORARY TABLE IF EXISTS tmp.workerComercial;
CREATE TEMPORARY TABLE tmp.workerComercial
ENGINE = MEMORY
SELECT worker FROM `grant` g
JOIN grantGroup gg ON g.group = gg.id
WHERE gg.description = 'Comerciales'
AND worker != 2;
DROP TEMPORARY TABLE IF EXISTS tmp.production_buffer;
CREATE TEMPORARY TABLE tmp.production_buffer
ENGINE = MEMORY
SELECT t.id as ticket
, am.agency as agency_id
, t.warehouse as warehouse_id
, a.province as province_id
, Hour(t.shipment) as Hora
, Hour(t.shipment) as Departure
, tls.code
, IFNULL(t.loadingOrder,0) loadingOrder
FROM ticket t
JOIN ticketState tls on t.id = tls.ticket
JOIN agencyMode am on am.id = t.agencyMode
JOIN address a on a.id = t.address
LEFT JOIN tmp.workerComercial wc ON wc.worker = vWorker
WHERE t.shipment BETWEEN vYesterday AND vTodayvMidniight
AND t.warehouse = vWarehouse
AND
(
(tls.code = 'PRINTED' AND wc.worker IS NULL)
OR
(tls.code ='PICKER_DESIGNED' AND tls.worker = vWorker)
OR
(tls.code = 'PRINTED_BACK')
);
CALL vn2008.production_buffer_set_priority;
SELECT ticket INTO vTicket
FROM tmp.production_buffer
ORDER BY (code = 'PICKER_DESIGNED') DESC , Hora, loadingOrder
LIMIT 1;
RETURN vTicket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getTicketTrolleyLabelCount` */;
ALTER DATABASE `vn` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getTicketTrolleyLabelCount`(vTicket INT) RETURNS int(11)
BEGIN
DECLARE vLabelCount INT DEFAULT 0;
SELECT labelCount INTO vLabelCount
FROM ticketTrolley
WHERE ticket = vTicket;
SET vLabelCount = vLabelCount +1 ;
REPLACE ticketTrolley(ticket,labelCount)
SELECT vTicket, vLabelCount;
RETURN vlabelCount;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getUser` */;
ALTER DATABASE `vn` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getUser`() RETURNS int(11)
DETERMINISTIC
BEGIN
RETURN getWorker();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getUserId` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getUserId`(userName varchar(30)) RETURNS int(11)
BEGIN
DECLARE vUser INT;
SELECT id INTO vUser
FROM account.user
WHERE `name` = userName;
RETURN vUser;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `getWorker` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getWorker`() RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE vUser INT;
SELECT id INTO vUser
FROM worker
WHERE userFk = account.userGetId();
RETURN vUser;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `getWorkerkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `getWorkerkk`() RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE vUser INT;
SELECT id INTO vUser
FROM worker
WHERE user = account.userGetId();
RETURN vUser;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `hasAnyNegativeBase` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `hasAnyNegativeBase`() RETURNS tinyint(1)
BEGIN
DECLARE vCountry INT;
DECLARE hasAnyNegativeBase BOOLEAN;
SELECT s.countryFk
INTO vCountry
FROM supplier s
JOIN ticket t ON t.companyFk = s.id
JOIN vn.ticketToInvoice tl ON tl.id = t.id
LIMIT 1;
SELECT COUNT(*) INTO hasAnyNegativeBase
FROM (
SELECT SUM(ROUND(s.quantity * s.price * (100 - s.discount)/100,2)) taxableBase
FROM sale s
JOIN item i ON i.id = s.itemFk
JOIN itemTaxCountry itc
ON itc.itemFk = i.id AND itc.countryFk = vCountry
JOIN vn.ticketToInvoice tl ON tl.id = s.ticketFk
GROUP BY itc.taxClassFk
HAVING taxableBase < 0
) t1 ;
RETURN hasAnyNegativeBase;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `hasSomeNegativeBase` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `hasSomeNegativeBase`(vTicket INT) RETURNS tinyint(1)
BEGIN
DECLARE vCountry INT;
DECLARE hasSomeNegativeBase BOOLEAN;
SELECT s.countryFk
INTO vCountry
FROM supplier s
JOIN ticket t ON t.companyFk = s.id
WHERE t.id = vTicket;
SELECT COUNT(*) INTO hasSomeNegativeBase
FROM (
SELECT SUM(ROUND(s.quantity * s.price * (100 - s.discount)/100,2)) taxableBase
FROM sale s
JOIN item i ON i.id = s.itemFk
JOIN itemTaxCountry itc
ON itc.itemFk = i.id AND itc.countryFk = vCountry
WHERE s.ticketFk = vTicket
GROUP BY itc.taxClassFk
HAVING taxableBase < 0
) t1 ;
RETURN hasSomeNegativeBase;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `invoiceOutAmount` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `invoiceOutAmount`(vInvoiceRef VARCHAR(15)) RETURNS decimal(10,2)
BEGIN
DECLARE totalAmount DECIMAL(10,2);
SELECT SUM(vat) INTO totalAmount
FROM
(
SELECT iot.vat
FROM invoiceOutTax iot
JOIN invoiceOut io ON io.id = iot.invoiceOutFk
WHERE io.ref = vInvoiceRef
UNION ALL
SELECT ioe.amount
FROM invoiceOutExpence ioe
JOIN invoiceOut io ON io.id = ioe.invoiceOutFk
WHERE io.ref = vInvoiceRef
) t1;
RETURN totalAmount;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `invoiceSerial` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `invoiceSerial`(vClientFk INT, vCompanyFk INT, vType CHAR(1)) RETURNS char(1) CHARSET utf8
BEGIN
DECLARE vArea VARCHAR(25);
DECLARE vSerie CHAR(1);
SELECT clientTaxArea(vClientFk, vCompanyFk) INTO vArea;
IF vType = 'R' THEN
SELECT
CASE vArea
WHEN 'CEE'
THEN 'H'
WHEN 'WORLD'
THEN 'E'
WHEN 'NATIONAL'
THEN 'T'
END
INTO vSerie;
ELSEIF vType = 'M' THEN
SELECT
CASE vArea
WHEN 'CEE'
THEN 'H'
WHEN 'WORLD'
THEN 'E'
WHEN 'NATIONAL'
THEN 'M'
END
INTO vSerie;
ELSEIF vType = 'G' THEN
SELECT
CASE vArea
WHEN 'CEE'
THEN 'V'
WHEN 'WORLD'
THEN 'X'
WHEN 'NATIONAL'
THEN 'A'
END
INTO vSerie;
END IF;
RETURN vSerie;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `isWorkerBoss` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `isWorkerBoss`(vUserId INT(11)) RETURNS tinyint(1)
DETERMINISTIC
BEGIN
DECLARE subjectId INT(11) DEFAULT vUserId;
DECLARE tmpSubjectId INT(11);
DECLARE tmpBossId INT(11);
LOOP
SELECT
bossWorker.user_id AS tmpBossId,
subjectWorker.user_id AS tmpSubjectId
INTO tmpBossId, tmpSubjectId
FROM
vn2008.Trabajadores AS subjectWorker
JOIN
vn2008.Trabajadores AS bossWorker ON bossWorker.Id_Trabajador = subjectWorker.boss
WHERE
subjectWorker.user_id = subjectId;
IF tmpBossId = tmpSubjectId THEN
RETURN FALSE;
ELSEIF tmpBossId = account.userGetId() THEN
RETURN TRUE;
ELSE
SET subjectId = tmpBossId;
END IF;
END LOOP;
RETURN FALSE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `messageSend` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `messageSend`(vRecipient VARCHAR(255), vMessage TEXT) RETURNS int(11)
BEGIN
DECLARE vCount INT;
DECLARE vUuid VARCHAR(255);
DECLARE vSendDate DATETIME DEFAULT NOW();
DECLARE vUser VARCHAR(255) DEFAULT account.userGetName();
SET vRecipient = LOWER(vRecipient);
DROP TEMPORARY TABLE IF EXISTS tRecipients;
CREATE TEMPORARY TABLE tRecipients
SELECT u.name finalRecipient
FROM account.mailAlias a
JOIN account.mailAliasAccount aa ON aa.mailAlias = a.id
JOIN account.user u ON u.id = aa.account
WHERE a.alias = vRecipient COLLATE utf8_unicode_ci
AND u.name != vUser
AND u.active
UNION
SELECT u.name FROM account.user u
WHERE u.name = vRecipient
AND u.active;
SELECT COUNT(*) INTO vCount FROM tRecipients;
IF vCount = 0 THEN
RETURN vCount;
END IF;
SET vUuid = UUID();
INSERT INTO message
SET uuid = vUuid,
sender = vUser,
recipient = vRecipient,
message = vMessage,
sendDate = vSendDate;
INSERT INTO messageInbox (uuid, sender, recipient, finalRecipient, message, sendDate)
SELECT vUuid, vUser, vRecipient, finalRecipient, vMessage, vSendDate
FROM tRecipients;
DROP TEMPORARY TABLE tRecipients;
RETURN vCount;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `midnight` */;
ALTER DATABASE `vn` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `midnight`(vDate DATE) RETURNS datetime
DETERMINISTIC
BEGIN
RETURN TIMESTAMP(vDate,'23:59:59');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `noticeHasActive` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `noticeHasActive`(vCategoryKey VARCHAR(50), vUser INT) RETURNS tinyint(1)
BEGIN
DECLARE vActive INT;
SELECT COUNT(*) INTO vActive
FROM noticeSubscription s
JOIN noticeCategory c ON c.id = s.noticeCategoryFk
WHERE c.keyName = vCategoryKey AND userFk = vUser;
RETURN vActive;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `phytoPassport` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `phytoPassport`(vRef VARCHAR(15)) RETURNS text CHARSET utf8
BEGIN
DECLARE vPhyto TEXT CHARSET utf8 COLLATE utf8_unicode_ci;
SELECT
GROUP_CONCAT(i.id,
':',
ppa.denomination,
' ',
pp.number,
CHAR(13,10)
SEPARATOR '') fitosanitario
INTO vPhyto
FROM
sale s
JOIN
ticket t ON t.id = s.ticketFk
JOIN
item i ON i.id = s.itemFk
JOIN
plantpassport pp ON pp.producerFk = i.producerFk
JOIN
plantpassportAuthority ppa ON ppa.id = pp.plantpassportAuthorityFk
JOIN
itemBotanicalWithGenus ib ON ib.itemFk = i.id
JOIN
botanicExport be ON be.restriction = 'Se Requiere Certificado'
LEFT JOIN
ediGenus eg ON eg.id = be.ediGenusFk
LEFT JOIN
ediSpecie es ON es.id = be.ediSpecieFk
WHERE
t.refFk = vRef
AND ib.ediBotanic LIKE CONCAT(IFNULL(eg.latinGenusName, ''),
IF(latinSpeciesName > '',
CONCAT(' ', latinSpeciesName),
''),
'%');
RETURN vPhyto;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticketPositionInPath` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticketPositionInPath`(vTicketId INT) RETURNS varchar(10) CHARSET utf8
BEGIN
DECLARE vRestTicketsMaxOrder INT;
DECLARE vRestTicketsMinOrder INT;
DECLARE vRestTicketsPacking INT;
DECLARE vMyProductionOrder INT;
DECLARE vPosition VARCHAR(10) DEFAULT 'MID';
DECLARE vMyPath INT;
DECLARE vMyWarehouse INT;
DECLARE PACKING_ORDER INT;
DECLARE vExpeditionsCount INT;
DECLARE vIsValenciaPath BOOLEAN DEFAULT FALSE;
SELECT `order`
INTO PACKING_ORDER
FROM state
WHERE code = 'PACKING';
SELECT t.routeFk, t.warehouseFk, IFNULL(ts.productionOrder,0)
INTO vMyPath, vMyWarehouse, vMyProductionOrder
FROM ticket t
LEFT JOIN ticketState ts on ts.ticket = t.id
WHERE t.id = vTicketId;
SELECT (ag.`name` = 'VN_VALENCIA')
INTO vIsValenciaPath
FROM vn2008.Rutas r
JOIN vn2008.Agencias a on a.Id_Agencia = r.Id_Agencia
JOIN vn2008.agency ag on ag.agency_id = a.agency_id
WHERE r.Id_Ruta = vMyPath;
IF vIsValenciaPath THEN
SELECT COUNT(*)
INTO vExpeditionsCount
FROM expedition e
JOIN ticket t ON t.id = e.ticket
WHERE t.routeFk = vMyPath;
SELECT MAX(ts.productionOrder), MIN(ts.productionOrder)
INTO vRestTicketsMaxOrder, vRestTicketsMinOrder
FROM ticket t
LEFT JOIN ticketState ts on t.id = ts.ticket
WHERE t.routeFk = vMyPath
AND t.warehouseFk = vMyWarehouse
AND t.id != vTicketid;
SELECT COUNT(*)
INTO vRestTicketsPacking
FROM ticket t
LEFT JOIN ticketState ts on t.id = ts.ticket
WHERE ts.productionOrder = PACKING_ORDER
AND t.routeFk = vMyPath
AND t.warehouseFk = vMyWarehouse
AND t.id != vTicketid;
IF vExpeditionsCount = 1 THEN
SET vPosition = 'FIRST';
ELSEIF vRestTicketsMinOrder > PACKING_ORDER THEN
SET vPosition = 'LAST';
ELSEIF vRestTicketsPacking THEN
SET vPosition = 'SHARED';
ELSE
SET vPosition = 'MID';
END IF;
ELSE
SET vPosition = 'MID';
END IF;
RETURN vPosition;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `ticketPositionInPathkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `ticketPositionInPathkk`(vTicketId INT) RETURNS varchar(10) CHARSET utf8
BEGIN
DECLARE vRestTicketsMaxOrder INT;
DECLARE vRestTicketsMinOrder INT;
DECLARE vRestTicketsPacking INT;
DECLARE vMyProductionOrder INT;
DECLARE vPosition VARCHAR(10) DEFAULT 'MID';
DECLARE vMyPath INT;
DECLARE vMyWarehouse INT;
DECLARE PACKING_ORDER INT;
DECLARE vExpeditionsCount INT;
DECLARE vIsValenciaPath BOOLEAN DEFAULT FALSE;
SELECT `order`
INTO PACKING_ORDER
FROM state
WHERE code = 'PACKING';
SELECT path, warehouse, IFNULL(productionOrder,0)
INTO vMyPath, vMyWarehouse, vMyProductionOrder
FROM ticket t
LEFT JOIN ticketState ts on ts.ticket = t.id
WHERE id = vTicketId;
SELECT (ag.`name` = 'VN_VALENCIA')
INTO vIsValenciaPath
FROM vn2008.Rutas r
JOIN vn2008.Agencias a on a.Id_Agencia = r.Id_Agencia
JOIN vn2008.agency ag on ag.agency_id = a.agency_id
WHERE r.Id_Ruta = vMyPath;
IF vIsValenciaPath THEN
SELECT COUNT(*)
INTO vExpeditionsCount
FROM expedition e
JOIN ticket t ON t.id = e.ticket
WHERE t.path = vMyPath;
SELECT MAX(productionOrder), MIN(productionOrder)
INTO vRestTicketsMaxOrder, vRestTicketsMinOrder
FROM ticket t
LEFT JOIN ticketState ts on t.id = ts.ticket
WHERE t.path = vMyPath
AND t.warehouse = vMyWarehouse
AND t.id != vTicketid;
SELECT COUNT(*)
INTO vRestTicketsPacking
FROM ticket t
LEFT JOIN ticketState ts on t.id = ts.ticket
WHERE productionOrder = PACKING_ORDER
AND t.path = vMyPath
AND t.warehouse = vMyWarehouse
AND t.id != vTicketid;
IF vExpeditionsCount = 1 THEN
SET vPosition = 'FIRST';
ELSEIF vRestTicketsMinOrder > PACKING_ORDER THEN
SET vPosition = 'LAST';
ELSEIF vRestTicketsPacking THEN
SET vPosition = 'SHARED';
ELSE
SET vPosition = 'MID';
END IF;
ELSE
SET vPosition = 'MID';
END IF;
RETURN vPosition;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `workerIsBoss` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `workerIsBoss`(vUserId INT) RETURNS int(11)
BEGIN
DECLARE vWorkerId INT;
DECLARE vBossId INT;
SELECT id INTO vWorkerId
FROM vn.worker
WHERE userFk = vUserId;
IF vWorkerId IS NULL THEN
CALL util.throw('USER_NOT_FOUND');
END IF;
DROP TEMPORARY TABLE IF EXISTS tCheckedWorker;
CREATE TEMPORARY TABLE tCheckedWorker
(PRIMARY KEY (workerFk))
ENGINE = MEMORY
SELECT id workerFk FROM worker LIMIT 0;
LOOP
SELECT bossFk INTO vBossId
FROM vn.worker
WHERE id = vWorkerId;
IF (SELECT COUNT(*) FROM tCheckedWorker WHERE workerFk = vBossId) THEN
CALL util.throw('INFINITE_LOOP');
END IF;
IF vBossId = vWorkerId THEN
RETURN FALSE;
ELSEIF vBossId = vn.getWorker() THEN
RETURN TRUE;
ELSE
INSERT INTO tCheckedWorker VALUES (vWorkerId);
SET vWorkerId = vBossId;
END IF;
END LOOP;
DROP TEMPORARY TABLE tCheckedWorker;
RETURN FALSE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `agencyListAvailable` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `agencyListAvailable`(vDate DATE, vAddress INT)
BEGIN
DECLARE vMaxDays INT DEFAULT DATEDIFF(vDate, CURDATE());
DECLARE vWday TINYINT DEFAULT WEEKDAY(vDate);
DECLARE vHour TINYINT DEFAULT HOUR(NOW());
DECLARE vProvince INT;
SELECT province INTO vProvince
FROM address
WHERE id = vAddress;
DROP TEMPORARY TABLE IF EXISTS tmp.agencyAvailable;
CREATE TEMPORARY TABLE tmp.agencyAvailable
(INDEX (agency))
ENGINE = MEMORY
SELECT agency, warehouse
FROM agencyHour h
WHERE (province = vProvince
OR province IS NULL)
AND (weekDay = vWday
OR weekDay IS NULL)
AND (substractDay < vMaxDays
OR (substractDay = vMaxDays AND maxHour > vHour));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `agencyListForMethod` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `agencyListForMethod`(
vDate DATE, vAddress INT, vMethod VARCHAR(255))
BEGIN
CALL agencyListAvailable (vDate, vAddress);
SELECT DISTINCT m.id, m.description
FROM tmp.agencyAvailable a
JOIN agencyMode m
ON m.agency = a.agency
JOIN deliveryMethod d
ON d.id = m.deliveryMethod
WHERE d.code = vMethod COLLATE 'utf8_unicode_ci';
DROP TEMPORARY TABLE tmp.agencyAvailable;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `clean` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean`()
BEGIN
DECLARE vDateShort DATETIME;
SET vDateShort = TIMESTAMPADD(MONTH, -2, CURDATE());
INSERT INTO vn.dailyTaskLog(state) VALUES('clean START');
DELETE FROM vn.message WHERE sendDate < vDateShort;
INSERT INTO vn.dailyTaskLog(state) VALUES('clean END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clientFreeze` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clientFreeze`()
BEGIN
IF day(CURDATE()) IN (10,20,30) THEN
UPDATE vn.client c
JOIN bi.defaulters d ON d.client = c.id AND d.date = CURDATE()
JOIN vn.config ON TRUE
SET c.isFreezed = TRUE
WHERE d.amount > config.defaultersMaxAmount;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `copyComponentsFromSaleList` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `copyComponentsFromSaleList`(vTargetTicketFk INT)
BEGIN
INSERT INTO vn.sale(ticketFk, itemFk, quantity,concept,price,discount)
SELECT vTargetTicketFk, itemFk, quantity,concept,price,discount
FROM tmp.saleList
ORDER BY orden;
SET @order = 0;
DROP TEMPORARY TABLE IF EXISTS tmp.newSaleList;
CREATE TEMPORARY TABLE tmp.newSaleList
SELECT id as saleFk, @order := @order + 1 as orden
FROM vn.sale
WHERE ticketFk = vTargetTicketFk
ORDER BY saleFk;
INSERT INTO vn.saleComponent(saleFk,componentFk,value)
SELECT ns.saleFk, sc.componentFk, sc.value
FROM vn.saleComponent sc
JOIN tmp.saleList s ON s.saleFk = sc.saleFk
JOIN tmp.newSaleList ns ON ns.orden = s.orden;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `createExternalWorker` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `createExternalWorker`(
vFirstName VARCHAR(50),
vSurname1 VARCHAR(50),
vSurname2 VARCHAR(50),
vUser VARCHAR(20),
vPassword VARCHAR(50),
vWorkerCode VARCHAR(3)
)
BEGIN
DECLARE vUserId INT;
DECLARE vWorkerPako INT DEFAULT 2;
INSERT INTO account.user(name,password,role)
SELECT vUser,MD5(vPassword),1;
SET vUserId = LAST_INSERT_ID();
INSERT INTO vn2008.Trabajadores(Nombre,Apellidos,boss,CodigoTrabajador,user_id)
SELECT vFirstName,CONCAT(vSurname1,' ',vSurname2),vWorkerPako,vWorkerCode,vUserId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `entryConverter` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `entryConverter`(vEntry INT)
BEGIN
DECLARE vWarehouseIn INT;
DECLARE vWarehouseOut INT;
DECLARE vTravel INT;
DECLARE done BOOL DEFAULT FALSE;
DECLARE vId_Entrada INT;
DECLARE vId_Article INT;
DECLARE vEtiquetas INT;
DECLARE vId_Cubo VARCHAR(10);
DECLARE vPacking INT;
DECLARE vGrouping INT;
DECLARE vCantidad INT;
DECLARE vCostefijo DECIMAL(10,3);
DECLARE vPortefijo DECIMAL(10,3);
DECLARE vEmbalajefijo DECIMAL(10);
DECLARE vComisionfija DECIMAL(10,3);
DECLARE vCaja INT;
DECLARE vNicho VARCHAR(5);
DECLARE vTarifa1 DECIMAL(10,2);
DECLARE vTarifa2 DECIMAL(10,2);
DECLARE vTarifa3 DECIMAL(10,2);
DECLARE vPVP DECIMAL(10,2);
DECLARE vCompra INT;
DECLARE rs CURSOR FOR
SELECT
b.Id_Entrada,
b.Id_Article,
b.Etiquetas,
b.Id_Cubo,
b.Packing,
b.grouping,
b.Cantidad,
b.Costefijo,
b.Portefijo,
b.Embalajefijo,
b.Comisionfija,
b.caja,
b.Nicho,
b.Tarifa1,
b.Tarifa2,
b.Tarifa3,
b.PVP
FROM vn2008.Compres b
JOIN vn.itemConversor ic ON ic.espItemFk = b.Id_Article
WHERE Id_Entrada = vEntry;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
SELECT warehouseInFk, warehouseOutFk, tr.id
INTO vWarehouseIn, vWarehouseOut, vTravel
FROM travel tr
JOIN entry e ON e.travelFk = tr.id
WHERE e.id = vEntry;
UPDATE travel
SET warehouseInFk = vWarehouseOut,
warehouseOutFk = vWarehouseIn
WHERE id = vTravel;
UPDATE vn2008.Compres c
LEFT JOIN vn.itemConversor ic ON ic.espItemFk = c.Id_Article
SET Etiquetas = 0, Cantidad = 0
WHERE c.Id_Entrada = vEntry
AND ic.espItemFk IS NULL;
OPEN rs;
DELETE FROM vn2008.Compres WHERE Id_Entrada = vEntry;
FETCH rs INTO
vId_Entrada,
vId_Article,
vEtiquetas,
vId_Cubo,
vPacking,
vGrouping,
vCantidad,
vCostefijo,
vPortefijo,
vEmbalajefijo,
vComisionfija,
vCaja,
vNicho,
vTarifa1,
vTarifa2,
vTarifa3,
vPVP;
WHILE NOT done DO
INSERT INTO vn2008.Compres
(
Id_Entrada,
Id_Article,
Etiquetas,
Id_Cubo,
Packing,
grouping,
Cantidad,
Costefijo,
Portefijo,
Embalajefijo,
Comisionfija,
caja,
Nicho,
Tarifa1,
Tarifa2,
Tarifa3,
PVP
)
VALUES
(
vId_Entrada,
vId_Article,
- vEtiquetas,
vId_Cubo,
vPacking,
vGrouping,
- vCantidad,
vCostefijo,
vPortefijo,
vEmbalajefijo,
vComisionfija,
vCaja,
vNicho,
vTarifa1,
vTarifa2,
vTarifa3,
vPVP);
INSERT INTO vn2008.Compres
(
Id_Entrada,
Id_Article,
Etiquetas,
Id_Cubo,
Packing,
grouping,
Cantidad,
Costefijo,
Portefijo,
Embalajefijo,
Comisionfija,
caja,
Nicho,
Tarifa1,
Tarifa2,
Tarifa3,
PVP
)
SELECT
vId_Entrada,
genItemFk as Id_Article,
vEtiquetas,
vId_Cubo,
vPacking,
vGrouping,
vCantidad,
vCostefijo,
vPortefijo,
vEmbalajefijo,
vComisionfija,
vCaja,
vNicho,
vTarifa1,
vTarifa2,
vTarifa3,
vPVP
FROM itemConversor
WHERE espItemFk = vId_Article;
SELECT LAST_INSERT_ID()
INTO vCompra;
REPLACE vn2008.Compres_mark(Id_Compra,`comment`)
SELECT vCompra, vId_Article;
FETCH rs INTO
vId_Entrada,
vId_Article,
vEtiquetas,
vId_Cubo,
vPacking,
vGrouping,
vCantidad,
vCostefijo,
vPortefijo,
vEmbalajefijo,
vComisionfija,
vCaja,
vNicho,
vTarifa1,
vTarifa2,
vTarifa3,
vPVP;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `getDebt` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `getDebt`(vDate DATE)
BEGIN
DECLARE vDateIni DATETIME DEFAULT TIMESTAMPADD(DAY, - DAYOFMONTH(CURDATE()) - 5, CURDATE());
DECLARE vDateEnd DATETIME;
DECLARE MAX_RISK_ALLOWED INT DEFAULT 200;
SET vDateEnd = TIMESTAMP(IFNULL(vDate, CURDATE()), '23:59:59');
DROP TEMPORARY TABLE IF EXISTS tmp.clientList2;
CREATE TEMPORARY TABLE tmp.clientList2
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS tmp.clientList3;
CREATE TEMPORARY TABLE tmp.clientList3
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS vn2008.ticket_tmp;
CREATE TEMPORARY TABLE vn2008.ticket_tmp
(INDEX (ticket_id))
ENGINE = MEMORY
SELECT id ticket_id, cl.Id_Cliente
FROM ticket t
JOIN tmp.clientList2 cl ON t.clientFk = cl.Id_Cliente
WHERE refFk IS NULL
AND shipped BETWEEN vDateIni AND vDateEnd;
CALL vn2008.ticket_total ();
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
CREATE TEMPORARY TABLE tmp.risk
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT Id_Cliente, SUM(amount) risk
FROM vn2008.Clientes c
JOIN (
SELECT customer_id, SUM(amount) amount
FROM bi.customer_risk cr
JOIN tmp.client_list on tmp.client_list.Id_Cliente = cr.customer_id
GROUP BY customer_id
UNION ALL
SELECT Id_Cliente, SUM(Entregado)
FROM vn2008.Recibos
JOIN tmp.clientList2 using(Id_Cliente)
WHERE Fechacobro > vDateIni
GROUP BY Id_Cliente
UNION ALL
SELECT t.Id_Cliente, total
FROM vn2008.ticket_total tt
JOIN vn2008.ticket_tmp t ON tt.ticket_id = t.ticket_id
UNION ALL
SELECT t.customer_id, CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction t
JOIN tmp.clientList3 on Id_Cliente = customer_id
WHERE t.receipt_id IS NULL
AND t.status = 'ok'
GROUP BY t.customer_id
) t ON c.Id_Cliente = t.customer_id
WHERE c.activo != FALSE
GROUP BY c.Id_Cliente;
DROP TEMPORARY TABLE vn2008.ticket_tmp;
DROP TEMPORARY TABLE tmp.clientList2;
DROP TEMPORARY TABLE tmp.clientList3;
DROP TEMPORARY TABLE vn2008.ticket_total;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `getDebtkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `getDebtkk`(vDate DATE)
BEGIN
DECLARE vDateIni DATETIME DEFAULT TIMESTAMPADD(DAY, - DAYOFMONTH(CURDATE()) - 5, CURDATE());
DECLARE vDateEnd DATETIME;
DECLARE MAX_RISK_ALLOWED INT DEFAULT 200;
SET vDateEnd = TIMESTAMP(IFNULL(vDate, CURDATE()), '23:59:59');
DROP TEMPORARY TABLE IF EXISTS tmp.clientList2;
CREATE TEMPORARY TABLE tmp.clientList2
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS tmp.clientList3;
CREATE TEMPORARY TABLE tmp.clientList3
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT *
FROM tmp.client_list;
DROP TEMPORARY TABLE IF EXISTS vn2008.ticket_tmp;
CREATE TEMPORARY TABLE vn2008.ticket_tmp
(INDEX (ticket_id))
ENGINE = MEMORY
SELECT id ticket_id, cl.Id_Cliente
FROM ticket t
JOIN tmp.clientList2 cl ON t.client = cl.Id_Cliente
WHERE refFk IS NULL
AND shipment BETWEEN vDateIni AND vDateEnd;
CALL vn2008.ticket_total ();
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
CREATE TEMPORARY TABLE tmp.risk
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT Id_Cliente, SUM(amount) risk
FROM vn2008.Clientes c
JOIN (
SELECT customer_id, SUM(amount) amount
FROM bi.customer_risk cr
JOIN tmp.client_list on tmp.client_list.Id_Cliente = cr.customer_id
GROUP BY customer_id
UNION ALL
SELECT Id_Cliente, SUM(Entregado)
FROM vn2008.Recibos
JOIN tmp.clientList2 using(Id_Cliente)
WHERE Fechacobro > vDateIni
GROUP BY Id_Cliente
UNION ALL
SELECT t.Id_Cliente, total
FROM vn2008.ticket_total tt
JOIN vn2008.ticket_tmp t ON tt.ticket_id = t.ticket_id
UNION ALL
SELECT t.customer_id, CAST(-SUM(t.amount) / 100 AS DECIMAL(10,2))
FROM hedera.tpv_transaction t
JOIN tmp.clientList3 on Id_Cliente = customer_id
WHERE t.receipt_id IS NULL
AND t.status = 'ok'
GROUP BY t.customer_id
) t ON c.Id_Cliente = t.customer_id
WHERE c.activo != FALSE
GROUP BY c.Id_Cliente;
DROP TEMPORARY TABLE vn2008.ticket_tmp;
DROP TEMPORARY TABLE tmp.clientList2;
DROP TEMPORARY TABLE tmp.clientList3;
DROP TEMPORARY TABLE vn2008.ticket_total;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `getItemVisibleAvailable` */;
ALTER DATABASE `vn` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `getItemVisibleAvailable`(IN vItem INT,IN vDate DATE,IN vWarehouse TINYINT,IN isForcedToRecalculate BOOLEAN)
BEGIN
DECLARE vCacheVisibleCalculated INTEGER;
DECLARE vCacheAvailableCalculated INTEGER;
CALL cache.visible_refresh(vCacheVisibleCalculated, isForcedToRecalculate, vWarehouse);
CALL cache.available_refresh(vCacheAvailableCalculated, isForcedToRecalculate, vWarehouse, vDate);
SELECT a.Id_Article, a.Article, a.Medida, a.Tallos, a.caja, O.Abreviatura as origen, a.Color, tipo_id, an.Nicho,
a.Categoria, p.`name` as producer, v.visible, av.available
FROM vn2008.Articles a
LEFT JOIN vn2008.Articles_nicho an ON a.Id_Article = an.Id_Article AND an.warehouse_id = vWarehouse
LEFT JOIN vn2008.Origen O ON O.id = a.id_origen
LEFT JOIN vn2008.producer p ON p.producer_id = a.producer_id
LEFT JOIN cache.visible v ON (vItem IS NULL OR v.item_id = vItem) AND v.calc_id = vCacheVisibleCalculated
LEFT JOIN cache.available av ON (vItem IS NULL OR av.item_id = vItem) AND av.calc_id = vCacheAvailableCalculated
WHERE (vItem IS NULL OR a.Id_Article = vItem);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceCorrectedSale` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceCorrectedSale`(vInvoiceOut INT)
BEGIN
SELECT
s.id,
s.itemFk,
s.quantity,
s.price,
s.discount
FROM sale s
JOIN ticket t ON t.id = s.ticketFk
WHERE t.invoice = vInvoiceOut;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceExpenceMake` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceExpenceMake`(IN vInvoice INT)
BEGIN
DELETE FROM invoiceOutExpence
WHERE invoiceOutFk = vInvoice;
INSERT INTO invoiceOutExpence(
invoiceOutFk,
expenceFk,
amount
)
SELECT
vInvoice,
expenceFk,
SUM(ROUND(quantity * price * (100 - discount)/100,2)) amount
FROM ticketToInvoice t
JOIN sale s ON s.ticketFk = t.id
JOIN item i ON i.id = s.itemFk
GROUP BY i.expenceFk
HAVING amount != 0;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceFromAddress` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceFromAddress`(vMaxTicketDate DATETIME,vAddress INT,vCompany INT)
BEGIN
DECLARE vMinDateTicket DATE DEFAULT TIMESTAMPADD(MONTH, -3, CURDATE());
SET vMaxTicketDate = vn2008.DAYEND(vMaxTicketDate);
DROP TEMPORARY TABLE IF EXISTS `ticketToInvoice`;
CREATE TEMPORARY TABLE `ticketToInvoice`
(PRIMARY KEY (`id`))
ENGINE = MEMORY
SELECT Id_Ticket id FROM vn2008.Tickets WHERE (Fecha BETWEEN vMinDateTicket
AND vMaxTicketDate) AND Id_Consigna = vAddress
AND Factura IS NULL AND empresa_id = vCompany;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceFromClient` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceFromClient`(vMaxTicketDate DATETIME, vClient INT, vCompany INT)
BEGIN
DECLARE vMinDateTicket DATE DEFAULT TIMESTAMPADD(YEAR, -3, CURDATE());
SET vMaxTicketDate = vn2008.DAYEND(vMaxTicketDate);
DROP TEMPORARY TABLE IF EXISTS `ticketToInvoice`;
CREATE TEMPORARY TABLE `ticketToInvoice`
(PRIMARY KEY (`id`))
ENGINE = MEMORY
SELECT Id_Ticket id FROM vn2008.Tickets
WHERE Id_Cliente = vClient
AND Factura IS NULL
AND empresa_id = vCompany
AND (Fecha BETWEEN vMinDateTicket AND vMaxTicketDate)
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceFromTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceFromTicket`(IN vTicket INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS `ticketToInvoice`;
CREATE TEMPORARY TABLE `ticketToInvoice`
(PRIMARY KEY (`id`))
ENGINE = MEMORY
SELECT id FROM vn.ticket
WHERE id = vTicket AND refFk IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceInBooking` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceInBooking`(vInvoiceInId INT)
BEGIN
DECLARE vSerialNumber, vBookNumber, vBookNumberPlus1 INT;
DECLARE vTotalAmount DECIMAL(10,2);
DROP TEMPORARY TABLE IF EXISTS newInvoiceIn;
CREATE TEMPORARY TABLE newInvoiceIn
SELECT
i.*,
YEAR(i.booked) datedYear,
CONCAT('s/fra',RIGHT(i.supplierRef,8),':',LEFT(s.name, 10)) conceptWithSupplier,
(cc.id = c.id) isSameCountry,
cit.id invoicesCount
FROM invoiceIn i
JOIN cplusInvoiceType472 cit ON cit.id = i.cplusInvoiceType472Fk
JOIN supplier s ON s.id = i.supplierFk
JOIN country c ON c.id = s.countryFk
JOIN supplier sc ON sc.id = i.companyFk
JOIN country cc ON cc.id = sc.countryFk
WHERE i.id = vInvoiceInId;
DROP TEMPORARY TABLE IF EXISTS newSupplier;
CREATE TEMPORARY TABLE newSupplier
SELECT
s.*,
REPLACE(s.account,' ','') supplierAccount,
IF(c.CEE < 2, TRUE, FALSE) isUeeMember
FROM supplier s
JOIN newInvoiceIn n
JOIN country c ON c.id = s.countryFk
WHERE s.id = n.supplierFk;
IF (SELECT isActive FROM newSupplier) = 0 THEN
CALL util.throw('INACTIVE_PROVIDER');
END IF;
SELECT IFNULL(MAX(i.serialNumber) + 1,1)
INTO vSerialNumber
FROM invoiceIn i
JOIN newInvoiceIn n
WHERE i.serial LIKE n.serial
AND YEAR(i.booked) = n.datedYear
AND i.companyFk = n.companyFk
GROUP BY i.companyFk;
SELECT MAX(ASIEN) + 1
INTO vBookNumber
FROM vn2008.XDiario;
SET vBookNumberPlus1 = vBookNumber + 1;
SELECT SUM(iit.taxableBase * IF(i.serial = 'R', 1 +(tc.rate/100),1))
INTO vTotalAmount
FROM invoiceIn i
JOIN invoiceInTax iit ON iit.invoiceInFk = i.id
JOIN taxCode tc ON iit.taxCodeFk = tc.id
WHERE i.id = vInvoiceInId;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id)
SELECT
vBookNumber,
n.booked,
s.supplierAccount,
vTotalAmount,
n.conceptWithSupplier,
n.invoicesCount,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumber ASIEN,
n.booked FECHA,
if(
e.isWithheld,
LPAD(RIGHT(s.supplierAccount ,5),10,iit.expenceFk),
iit.expenceFk
) SUBCTA,
s.supplierAccount CONTRA,
if(
e.isWithheld,
NULL,
ABS(ROUND(SUM(iit.taxableBase),2))
) EURODEBE,
if(
e.isWithheld,
ABS(ROUND(SUM(iit.taxableBase),2)),
NULL
) EUROHABER,
n.conceptWithSupplier CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax iit ON iit.invoiceInFk = n.id
JOIN taxCode tc ON tc.id = iit.taxCodeFk
JOIN expence e ON e.id = iit.expenceFk AND e.taxTypeFk = tc.taxTypeFk
WHERE iit.expenceFk != 5660000002
GROUP BY iit.expenceFk;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumberPlus1 ASIEN,
IFNULL(a.booked, n.booked) FECHA,
iit.expenceFk SUBCTA,
s.account CONTRA,
ROUND(SUM(iit.taxableBase) * (iie.percentage / 100),2) EURODEBE,
CONCAT('COMPRA s/fra ',i.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = n.id
JOIN invoiceInTax iit ON iit.invoiceInFk = iie.invoiceInFk
JOIN invoiceIn i ON i.id = iit.invoiceInFk
JOIN supplier s ON s.id = i.supplierFk
LEFT JOIN invoiceInAwb iia ON iia.invoiceInFk = n.id
LEFT JOIN awb a ON a.id = iia.awbFk
WHERE iie.percentage
GROUP BY i.id;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumberPlus1 ASIEN,
IFNULL(a.booked, n.booked) FECHA,
s.account SUBCTA,
iit.expenceFk CONTRA,
ROUND(SUM(iit.taxableBase) * (iie.percentage / 100),2) EUROHABER,
CONCAT('COMPRA s/fra ',i.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = n.id
JOIN invoiceInTax iit ON iit.invoiceInFk = iie.invoiceInFk
JOIN invoiceIn i ON i.id = iit.invoiceInFk
JOIN supplier s ON s.id = i.supplierFk
LEFT JOIN invoiceInAwb iia ON iia.invoiceInFk = n.id
LEFT JOIN awb a ON a.id = iia.awbFk
WHERE iie.percentage
GROUP BY i.id;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
TIPOOPE,
FECHA_EX,
FECHA_OP,
NFACTICK,
FACTURAEX,
L340,
LRECT349,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
FECREGCON,
empresa_id
)
SELECT vBookNumber ASIEN,
n.booked FECHA,
tc.code SUBCTA,
s.supplierAccount CONTRA,
SUM(ROUND(tc.rate/100*it.taxableBase + 0.0001,2)) EURODEBE,
SUM(it.taxableBase) BASEEURO,
GROUP_CONCAT(DISTINCT e.`name` SEPARATOR ', ') CONCEPTO,
vSerialNumber FACTURA,
tc.rate IVA,
IF(isUeeMember AND eWithheld.id IS NULL,'','*') AUXILIAR,
n.serial SERIE,
tt.TIPOOPE,
n.issued FECHA_EX,
n.operated FECHA_OP,
n.invoicesCount NFACTICK,
n.supplierRef FACTURAEX,
TRUE L340,
(isSameCountry OR NOT isUeeMember) LRECT349,
n.cplusTrascendency472Fk TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
n.cplusInvoiceType472Fk TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
n.booked FECREGCON,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax it ON n.id = it.invoiceInFk
JOIN taxCode tc ON tc.id = it.taxCodeFk
JOIN taxType tt ON tt.id = tc.taxTypeFk
JOIN invoiceInSerial iis ON iis.code = tt.serial
JOIN expence e ON e.id = it.expenceFk AND e.taxTypeFk = tc.taxTypeFk
LEFT JOIN
(SELECT eWithheld.id
FROM invoiceInTax hold
JOIN expence eWithheld ON eWithheld.id = hold.expenceFk AND eWithheld.isWithheld
WHERE hold.invoiceInFk = 58262 LIMIT 1
) eWithheld ON TRUE
WHERE tc.type != '-'
AND tc.isActive
GROUP BY tc.rate;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
TIPOOPE,
FECHA_EX,
FECHA_OP,
NFACTICK,
FACTURAEX,
L340,
LRECT349,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
empresa_id
)
SELECT
vBookNumber ASIEN,
n.booked FECHA,
tcLink.code SUBCTA,
s.supplierAccount CONTRA,
ROUND(tcLink.rate/100*SUM(it.taxableBase) + 0.0001,2) EUROHABER,
ROUND(SUM(it.taxableBase),2) BASEEURO,
GROUP_CONCAT(DISTINCT e.`name` SEPARATOR ', ') CONCEPTO,
vSerialNumber FACTURA,
tcLink.rate IVA,
'*' AUXILIAR,
n.serial SERIE,
tt.TIPOOPE,
n.issued FECHA_EX,
n.operated FECHA_OP,
n.invoicesCount NFACTICK,
n.supplierRef FACTURAEX,
FALSE L340,
(isSameCountry OR NOT isUeeMember) LRECT349,
1 TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
n.cplusInvoiceType472Fk TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax it ON n.id = it.invoiceInFk
JOIN taxCode tc ON tc.id = it.taxCodeFk
JOIN taxType tt ON tt.id = tc.taxTypeFk
JOIN invoiceInSerial iis ON iis.code = tt.serial
JOIN taxCode tcLink ON tcLink.linkFk = tc.linkFk AND tc.id != tcLink.id
JOIN expence e ON e.id = it.expenceFk AND e.taxTypeFk = tc.taxTypeFk
WHERE tc.isActive
GROUP BY tcLink.rate, e.id;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONCEPTO,
EUROHABER,
SERIE,
empresa_id)
SELECT
vBookNumberPlus1,
a.booked,
'4700000999',
n.conceptWithSupplier,
ROUND(SUM(iii.amount * (tc.rate/100)),2) eurohaber,
n.serial,
n.companyFk
FROM newInvoiceIn n
JOIN invoiceInIntrastat iii ON n.id = iii.invoiceInFk
JOIN intrastat ii ON ii.id = iii.intrastatFk
JOIN taxCode tc ON tc.id = ii.taxCodeFk
JOIN invoiceInAwb iia ON iia.invoiceInFk = iii.invoiceInFk
JOIN awb a ON a.id = iia.awbFk
HAVING eurohaber IS NOT NULL;
SET @cont:=1;
SET @total:=0;
SET @base:=2;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
FECHA_EX,
FECHA_OP,
FACTURAEX,
NFACTICK,
L340,
LDIFADUAN,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
empresa_id,
FECREGCON
)
SELECT
vBookNumberPlus1 ASIEN,
x.FECHA,
x.SUBCTA,
x.CONTRA,
IF (n.isSameCountry OR NOT s.isUeeMember,
x.EURODEBE,
NULL
) EURODEBE,
x.BASEEURO,
x.CONCEPTO,
vSerialNumber FACTURA,
x.IVA,
'*' AUXILIAR,
x.SERIE,
x.FECHA_EX,
x.FECHA_OP,
x.dua FACTURAEX,
n.invoicesCount NFACTICK,
IF(@total:=@total + x.EURODEBE AND @cont:=@cont + 1 ,1,1) L340,
TRUE LDIFADUAN,
x.TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
5 TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
x.TERIDNIF,
x.TERNIF,
x.TERNOM,
n.companyFk,
IFNULL(x.FECREGCON,n.booked) FECREGCON
FROM newInvoiceIn n
JOIN newSupplier s
JOIN (
SELECT
CONCAT('COMPRA s/fra ',ii.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
tc.code SUBCTA,
s.account CONTRA,
tc.rate IVA,
ROUND(sum(b.buyingValue * b.quantity / intraSub.intrastatSum * taxSub.amount)*(tc.rate/100),2) EURODEBE,
ROUND(sum(b.buyingValue * b.quantity / intraSub.intrastatSum * taxSub.amount),2) BASEEURO,
ii.serial SERIE,
e.supplierFk,
iia.dua,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
ii.booked FECREGCON,
ii.cplusTrascendency472Fk TIPOCLAVE,
a.issued FECHA_EX,
a.operated FECHA_OP,
a.booked FECHA
FROM invoiceInAwb iia
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = iia.invoiceInFk
JOIN awb a ON a.id = iia.awbFk
JOIN invoiceIn ii ON ii.id = iie.invoiceInFk
JOIN invoiceInSerial iis ON iis.code = ii.serial
JOIN buy b ON b.entryFk = iie.entryFk
JOIN item i ON i.id = b.itemFk
JOIN (
SELECT
i.intrastatFk,
sum(b.buyingValue * b.quantity) as intrastatSum
FROM buy b
JOIN item i ON i.id = b.itemFk
JOIN invoiceInEntry iie
ON iie.entryFk = b.entryFk
JOIN invoiceInAwb iia
ON iia.invoiceInFk = iie.invoiceInAwbFk
JOIN awb aw ON aw.id =iia.awbFk
WHERE iie.percentage AND iia.invoiceInFk = vInvoiceInId
GROUP BY i.intrastatFk
) intraSub ON intraSub.intrastatFk = i.intrastatFk
JOIN (
SELECT
iii.intrastatFk,
iii.amount,
intr.taxCodeFk
FROM invoiceInIntrastat iii
JOIN intrastat intr
ON intr.id = iii.intrastatFk
WHERE iii.invoiceInFk = vInvoiceInId
) taxSub ON taxSub.intrastatFk = i.intrastatFk
JOIN taxCode tc ON tc.id = taxSub.taxCodeFk
JOIN entry e ON e.id = iie.entryFk
JOIN supplier s ON s.id = e.supplierFk
WHERE iie.invoiceInAwbFk = vInvoiceInId AND iie.percentage
GROUP BY e.supplierFk, taxSub.taxCodeFk
) x
GROUP BY x.supplierFk, x.IVA;
UPDATE newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = vInvoiceInId
JOIN invoiceIn ii ON ii.id = iie.invoiceInFk
SET ii.booked = IFNULL(ii.booked,n.booked),
ii.operated = IFNULL(ii.operated,n.issued);
UPDATE invoiceIn
SET
serialNumber = vSerialNumber,
isBooked = TRUE
WHERE
id = vInvoiceInId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceInBookingCommon` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceInBookingCommon`(vInvoiceInId INT, OUT vSerialNumber INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS newInvoiceIn;
CREATE TEMPORARY TABLE newInvoiceIn
SELECT
i.*,
YEAR(i.booked) datedYear,
CONCAT('s/fra',RIGHT(i.supplierRef,8),':',LEFT(s.name, 10)) conceptWithSupplier,
(cc.id = c.id) isSameCountry,
cit.id invoicesCount
FROM invoiceIn i
JOIN cplusInvoiceType472 cit ON cit.id = i.cplusInvoiceType472Fk
JOIN supplier s ON s.id = i.supplierFk
JOIN country c ON c.id = s.countryFk
JOIN supplier sc ON sc.id = i.companyFk
JOIN country cc ON cc.id = sc.countryFk
WHERE i.id = vInvoiceInId;
DROP TEMPORARY TABLE IF EXISTS newSupplier;
CREATE TEMPORARY TABLE newSupplier
SELECT
s.*,
REPLACE(s.account,' ','') supplierAccount,
IF(c.CEE < 2, TRUE, FALSE) isUeeMember
FROM supplier s
JOIN newInvoiceIn n
JOIN country c ON c.id = s.countryFk
WHERE s.id = n.supplierFk;
IF (SELECT isActive FROM newSupplier) = 0 THEN
CALL util.throw('INACTIVE_PROVIDER');
END IF;
SELECT IFNULL(MAX(i.serialNumber) + 1,1)
INTO vSerialNumber
FROM invoiceIn i
JOIN newInvoiceIn n
WHERE i.serial LIKE n.serial
AND YEAR(i.booked) = n.datedYear
AND i.companyFk = n.companyFk
GROUP BY i.companyFk;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceInBookingExtra` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceInBookingExtra`(vInvoiceInId INT)
BEGIN
DECLARE vBookNumber,vSerialNumber INT;
CALL invoiceInBookingCommon(vInvoiceInId,vSerialNumber);
SELECT MAX(ASIEN) + 1
INTO vBookNumber
FROM vn2008.XDiario;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumber ASIEN,
IFNULL(a.booked, n.booked) FECHA,
iit.expenceFk SUBCTA,
s.account CONTRA,
ROUND(SUM(iit.taxableBase) * (iie.percentage / 100),2) EURODEBE,
CONCAT('COMPRA s/fra ',i.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = n.id
JOIN invoiceInTax iit ON iit.invoiceInFk = iie.invoiceInFk
JOIN invoiceIn i ON i.id = iit.invoiceInFk
JOIN supplier s ON s.id = i.supplierFk
LEFT JOIN invoiceInAwb iia ON iia.invoiceInFk = n.id
LEFT JOIN awb a ON a.id = iia.awbFk
WHERE iie.percentage
GROUP BY i.id;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumber ASIEN,
IFNULL(a.booked, n.booked) FECHA,
s.account SUBCTA,
iit.expenceFk CONTRA,
ROUND(SUM(iit.taxableBase) * (iie.percentage / 100),2) EUROHABER,
CONCAT('COMPRA s/fra ',i.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = n.id
JOIN invoiceInTax iit ON iit.invoiceInFk = iie.invoiceInFk
JOIN invoiceIn i ON i.id = iit.invoiceInFk
JOIN supplier s ON s.id = i.supplierFk
LEFT JOIN invoiceInAwb iia ON iia.invoiceInFk = n.id
LEFT JOIN awb a ON a.id = iia.awbFk
WHERE iie.percentage
GROUP BY i.id;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONCEPTO,
EUROHABER,
SERIE,
empresa_id)
SELECT
vBookNumber,
a.booked,
'4700000999',
n.conceptWithSupplier,
ROUND(SUM(iii.amount * (tc.rate/100)),2) eurohaber,
n.serial,
n.companyFk
FROM newInvoiceIn n
JOIN invoiceInIntrastat iii ON n.id = iii.invoiceInFk
JOIN intrastat ii ON ii.id = iii.intrastatFk
JOIN taxCode tc ON tc.id = ii.taxCodeFk
JOIN invoiceInAwb iia ON iia.invoiceInFk = iii.invoiceInFk
JOIN awb a ON a.id = iia.awbFk
HAVING eurohaber IS NOT NULL;
SET @cont:=1;
SET @total:=0;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
FECHA_EX,
FECHA_OP,
FACTURAEX,
NFACTICK,
L340,
LDIFADUAN,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
empresa_id,
FECREGCON
)
SELECT
vBookNumber ASIEN,
x.FECHA,
x.SUBCTA,
x.CONTRA,
IF (n.isSameCountry OR NOT s.isUeeMember,
x.EURODEBE,
NULL
) EURODEBE,
x.BASEEURO,
x.CONCEPTO,
vSerialNumber FACTURA,
x.IVA,
'*' AUXILIAR,
x.SERIE,
x.FECHA_EX,
x.FECHA_OP,
x.dua FACTURAEX,
n.invoicesCount NFACTICK,
IF(@total:=@total + x.EURODEBE AND @cont:=@cont + 1 ,1,1) L340,
TRUE LDIFADUAN,
x.TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
5 TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
x.TERIDNIF,
x.TERNIF,
x.TERNOM,
n.companyFk,
IFNULL(x.FECREGCON,n.booked) FECREGCON
FROM newInvoiceIn n
JOIN newSupplier s
JOIN (
SELECT
CONCAT('COMPRA s/fra ',ii.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
tc.code SUBCTA,
s.account CONTRA,
tc.rate IVA,
ROUND(sum(b.buyingValue * b.quantity / intraSub.intrastatSum * taxSub.amount)*(tc.rate/100),2) EURODEBE,
ROUND(sum(b.buyingValue * b.quantity / intraSub.intrastatSum * taxSub.amount),2) BASEEURO,
ii.serial SERIE,
e.supplierFk,
iia.dua,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
ii.booked FECREGCON,
ii.cplusTrascendency472Fk TIPOCLAVE,
a.issued FECHA_EX,
a.operated FECHA_OP,
a.booked FECHA
FROM invoiceInAwb iia
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = iia.invoiceInFk
JOIN awb a ON a.id = iia.awbFk
JOIN invoiceIn ii ON ii.id = iie.invoiceInFk
JOIN invoiceInSerial iis ON iis.code = ii.serial
JOIN buy b ON b.entryFk = iie.entryFk
JOIN item i ON i.id = b.itemFk
JOIN (
SELECT
i.intrastatFk,
sum(b.buyingValue * b.quantity) as intrastatSum
FROM buy b
JOIN item i ON i.id = b.itemFk
JOIN invoiceInEntry iie ON iie.entryFk = b.entryFk
JOIN invoiceInAwb iia ON iia.invoiceInFk = iie.invoiceInAwbFk
JOIN awb aw ON aw.id =iia.awbFk
WHERE iie.percentage AND iia.invoiceInFk = vInvoiceInId
GROUP BY i.intrastatFk
) intraSub ON intraSub.intrastatFk = i.intrastatFk
JOIN (
SELECT
iii.intrastatFk,
iii.amount,
intr.taxCodeFk
FROM invoiceInIntrastat iii
JOIN intrastat intr ON intr.id = iii.intrastatFk
WHERE iii.invoiceInFk = vInvoiceInId
) taxSub ON taxSub.intrastatFk = i.intrastatFk
JOIN taxCode tc ON tc.id = taxSub.taxCodeFk
JOIN entry e ON e.id = iie.entryFk
JOIN supplier s ON s.id = e.supplierFk
WHERE iie.invoiceInAwbFk = vInvoiceInId AND iie.percentage
GROUP BY e.supplierFk, taxSub.taxCodeFk
) x
GROUP BY x.supplierFk, x.IVA;
UPDATE newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = vInvoiceInId
JOIN invoiceIn ii ON ii.id = iie.invoiceInFk
SET ii.isBooked = TRUE,
ii.booked = IFNULL(ii.booked,n.booked),
ii.operated = IFNULL(ii.operated,n.issued);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceInBookingkk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceInBookingkk`(vInvoiceInId INT)
BEGIN
DECLARE vDocument VARCHAR(255);
DECLARE vSerialNumber, vBookNumber, vBookNumberPlus1 INT;
DECLARE vTotalAmount DECIMAL(10,2);
DROP TEMPORARY TABLE IF EXISTS newInvoiceIn;
CREATE TEMPORARY TABLE newInvoiceIn
SELECT
i.*,
YEAR(i.booked) datedYear,
CONCAT('s/fra',RIGHT(i.supplierRef,8),':',LEFT(s.name, 10)) conceptWithSupplier,
(cc.id = c.id) isSameCountry,
cit.id invoicesCount
FROM invoiceIn i
JOIN cplusInvoiceType472 cit ON cit.id = i.cplusInvoiceType472Fk
JOIN supplier s ON s.id = i.supplierFk
JOIN country c ON c.id = s.countryFk
JOIN supplier sc ON sc.id = i.companyFk
JOIN country cc ON cc.id = sc.countryFk
WHERE i.id = vInvoiceInId;
DROP TEMPORARY TABLE IF EXISTS newSupplier;
CREATE TEMPORARY TABLE newSupplier
SELECT
s.*,
REPLACE(s.account,' ','') supplierAccount,
IF(c.CEE < 2, TRUE, FALSE) isUeeMember
FROM supplier s
JOIN newInvoiceIn n
JOIN country c ON c.id = s.countryFk
WHERE s.id = n.supplierFk;
IF (SELECT isActive FROM newSupplier) = 0 THEN
CALL util.throw('INACTIVE_PROVIDER');
END IF;
SELECT IFNULL(MAX(i.serialNumber) + 1,1)
INTO vSerialNumber
FROM invoiceIn i
JOIN newInvoiceIn n
WHERE i.serial LIKE n.serial
AND YEAR(i.booked) = n.datedYear
AND i.companyFk = n.companyFk
GROUP BY i.companyFk;
SELECT MAX(ASIEN) + 1
INTO vBookNumber
FROM vn2008.XDiario;
SET vBookNumberPlus1 = vBookNumber + 1;
SELECT CONCAT(serial,'/', LPAD(vSerialNumber,5,'0'))
INTO vDocument
FROM newInvoiceIn;
SELECT SUM(iit.taxableBase * IF(i.serial = 'R', 1 +(tc.rate/100),1))
INTO vTotalAmount
FROM invoiceIn i
JOIN invoiceInTax iit ON iit.invoiceInFk = i.id
JOIN taxCode tc ON iit.taxCodeFk = tc.id
WHERE i.id = vInvoiceInId;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id)
SELECT
vBookNumber,
n.booked,
s.supplierAccount,
vTotalAmount,
n.conceptWithSupplier,
n.invoicesCount,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumber ASIEN,
n.booked FECHA,
if(
e.isWithheld,
LPAD(RIGHT(s.supplierAccount ,5),10,iit.expenceFk),
iit.expenceFk
) SUBCTA,
s.supplierAccount CONTRA,
if(
e.isWithheld,
NULL,
ABS(ROUND(SUM(iit.taxableBase),2))
) EURODEBE,
if(
e.isWithheld,
ABS(ROUND(SUM(iit.taxableBase),2)),
NULL
) EUROHABER,
n.conceptWithSupplier CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax iit ON iit.invoiceInFk = n.id
JOIN taxCode tc ON tc.id = iit.taxCodeFk
JOIN expence e ON e.id = iit.expenceFk AND e.taxTypeFk = tc.taxTypeFk
WHERE iit.expenceFk != 5660000002
GROUP BY iit.expenceFk;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumberPlus1 ASIEN,
IFNULL(a.booked, n.booked) FECHA,
iit.expenceFk SUBCTA,
s.account CONTRA,
ROUND(SUM(iit.taxableBase) * (iie.percentage / 100),2) EURODEBE,
CONCAT('COMPRA s/fra ',i.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = n.id
JOIN invoiceInTax iit ON iit.invoiceInFk = iie.invoiceInFk
JOIN invoiceIn i ON i.id = iit.invoiceInFk
JOIN supplier s ON s.id = i.supplierFk
LEFT JOIN invoiceInAwb iia ON iia.invoiceInFk = n.id
LEFT JOIN awb a ON a.id = iia.awbFk
WHERE iie.percentage
GROUP BY i.id;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumberPlus1 ASIEN,
IFNULL(a.booked, n.booked) FECHA,
s.account SUBCTA,
iit.expenceFk CONTRA,
ROUND(SUM(iit.taxableBase) * (iie.percentage / 100),2) EUROHABER,
CONCAT('COMPRA s/fra ',i.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = n.id
JOIN invoiceInTax iit ON iit.invoiceInFk = iie.invoiceInFk
JOIN invoiceIn i ON i.id = iit.invoiceInFk
JOIN supplier s ON s.id = i.supplierFk
LEFT JOIN invoiceInAwb iia ON iia.invoiceInFk = n.id
LEFT JOIN awb a ON a.id = iia.awbFk
WHERE iie.percentage
GROUP BY i.id;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
TIPOOPE,
FECHA_EX,
FECHA_OP,
NFACTICK,
FACTURAEX,
L340,
LRECT349,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
FECREGCON,
empresa_id
)
SELECT
vBookNumber ASIEN,
n.booked FECHA,
tc.code SUBCTA,
s.supplierAccount CONTRA,
ROUND(tc.rate/100*it.taxableBase + 0.0001,2) EURODEBE,
it.taxableBase BASEEURO,
GROUP_CONCAT(DISTINCT e.`name` SEPARATOR ', ') CONCEPTO,
vSerialNumber FACTURA,
tc.rate IVA,
IF(isUeeMember AND eWithheld.id IS NULL,'','*') AUXILIAR,
n.serial SERIE,
tt.TIPOOPE,
n.issued FECHA_EX,
n.operated FECHA_OP,
n.invoicesCount NFACTICK,
n.supplierRef FACTURAEX,
TRUE L340,
(isSameCountry OR NOT isUeeMember) LRECT349,
n.cplusTrascendency472Fk TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
n.cplusInvoiceType472Fk TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
n.booked FECREGCON,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax it ON n.id = it.invoiceInFk
JOIN taxCode tc ON tc.id = it.taxCodeFk
JOIN taxType tt ON tt.id = tc.taxTypeFk
JOIN invoiceInSerial iis ON iis.code = tt.serial
JOIN expence e ON e.id = it.expenceFk AND e.taxTypeFk = tc.taxTypeFk
LEFT JOIN invoiceInTax hold ON hold.invoiceInFk = n.id
LEFT JOIN expence eWithheld ON eWithheld.id = hold.expenceFk AND eWithheld.isWithheld
WHERE tc.type != '-'
AND tc.isActive
GROUP BY tc.rate;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
TIPOOPE,
FECHA_EX,
FECHA_OP,
NFACTICK,
FACTURAEX,
L340,
LRECT349,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
empresa_id
)
SELECT
vBookNumber ASIEN,
n.booked FECHA,
tcLink.code SUBCTA,
s.supplierAccount CONTRA,
ROUND(tcLink.rate/100*SUM(it.taxableBase) + 0.0001,2) EUROHABER,
ROUND(SUM(it.taxableBase),2) BASEEURO,
GROUP_CONCAT(DISTINCT e.`name` SEPARATOR ', ') CONCEPTO,
vSerialNumber FACTURA,
tcLink.rate IVA,
'*' AUXILIAR,
n.serial SERIE,
tt.TIPOOPE,
n.issued FECHA_EX,
n.operated FECHA_OP,
n.invoicesCount NFACTICK,
n.supplierRef FACTURAEX,
FALSE L340,
(isSameCountry OR NOT isUeeMember) LRECT349,
1 TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
n.cplusInvoiceType472Fk TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax it ON n.id = it.invoiceInFk
JOIN taxCode tc ON tc.id = it.taxCodeFk
JOIN taxType tt ON tt.id = tc.taxTypeFk
JOIN invoiceInSerial iis ON iis.code = tt.serial
JOIN taxCode tcLink ON tcLink.linkFk = tc.linkFk AND tc.id != tcLink.id
JOIN expence e ON e.id = it.expenceFk AND e.taxTypeFk = tc.taxTypeFk
WHERE tc.isActive
GROUP BY tcLink.rate, e.id;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONCEPTO,
EUROHABER,
SERIE,
empresa_id)
SELECT
vBookNumberPlus1,
a.booked,
'4700000999',
n.conceptWithSupplier,
ROUND(SUM(iii.amount * (tc.rate/100)),2) eurohaber,
n.serial,
n.companyFk
FROM newInvoiceIn n
JOIN invoiceInIntrastat iii ON n.id = iii.invoiceInFk
JOIN intrastat ii ON ii.id = iii.intrastatFk
JOIN taxCode tc ON tc.id = ii.taxCodeFk
JOIN invoiceInAwb iia ON iia.invoiceInFk = iii.invoiceInFk
JOIN awb a ON a.id = iia.awbFk
HAVING eurohaber IS NOT NULL;
SET @cont:=1;
SET @total:=0;
SET @base:=2;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
FECHA_EX,
FECHA_OP,
FACTURAEX,
NFACTICK,
L340,
LDIFADUAN,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
empresa_id,
FECREGCON
)
SELECT
vBookNumberPlus1 ASIEN,
x.FECHA,
x.SUBCTA,
x.CONTRA,
IF (n.isSameCountry OR NOT s.isUeeMember,
x.EURODEBE,
NULL
) EURODEBE,
x.BASEEURO,
x.CONCEPTO,
vSerialNumber FACTURA,
x.IVA,
'*' AUXILIAR,
x.SERIE,
x.FECHA_EX,
x.FECHA_OP,
x.dua FACTURAEX,
n.invoicesCount NFACTICK,
IF(@total:=@total + x.EURODEBE AND @cont:=@cont + 1 ,1,1) L340,
TRUE LDIFADUAN,
x.TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
5 TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
x.TERIDNIF,
x.TERNIF,
x.TERNOM,
n.companyFk,
IFNULL(x.FECREGCON,n.booked) FECREGCON
FROM newInvoiceIn n
JOIN newSupplier s
JOIN (
SELECT
CONCAT('COMPRA s/fra ',ii.supplierRef,':',LEFT(s.name, 10)) CONCEPTO,
tc.code SUBCTA,
s.account CONTRA,
tc.rate IVA,
ROUND(sum(b.buyingValue * b.quantity / intraSub.intrastatSum * taxSub.amount)*(tc.rate/100),2) EURODEBE,
ROUND(sum(b.buyingValue * b.quantity / intraSub.intrastatSum * taxSub.amount),2) BASEEURO,
ii.serial SERIE,
e.supplierFk,
iia.dua,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
ii.booked FECREGCON,
ii.cplusTrascendency472Fk TIPOCLAVE,
a.issued FECHA_EX,
a.operated FECHA_OP,
a.booked FECHA
FROM invoiceInAwb iia
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = iia.invoiceInFk
JOIN awb a ON a.id = iia.awbFk
JOIN invoiceIn ii ON ii.id = iie.invoiceInFk
JOIN invoiceInSerial iis ON iis.code = ii.serial
JOIN buy b ON b.entryFk = iie.entryFk
JOIN item i ON i.id = b.itemFk
JOIN (
SELECT
i.intrastatFk,
sum(b.buyingValue * b.quantity) as intrastatSum
FROM buy b
JOIN item i ON i.id = b.itemFk
JOIN invoiceInEntry iie
ON iie.entryFk = b.entryFk
JOIN invoiceInAwb iia
ON iia.invoiceInFk = iie.invoiceInAwbFk
JOIN awb aw ON aw.id =iia.awbFk
WHERE iie.percentage AND iia.invoiceInFk = vInvoiceInId
GROUP BY i.intrastatFk
) intraSub ON intraSub.intrastatFk = i.intrastatFk
JOIN (
SELECT
iii.intrastatFk,
iii.amount,
intr.taxCodeFk
FROM invoiceInIntrastat iii
JOIN intrastat intr
ON intr.id = iii.intrastatFk
WHERE iii.invoiceInFk = vInvoiceInId
) taxSub ON taxSub.intrastatFk = i.intrastatFk
JOIN taxCode tc ON tc.id = taxSub.taxCodeFk
JOIN entry e ON e.id = iie.entryFk
JOIN supplier s ON s.id = e.supplierFk
WHERE iie.invoiceInAwbFk = vInvoiceInId AND iie.percentage
GROUP BY e.supplierFk, taxSub.taxCodeFk
) x
GROUP BY x.supplierFk, x.IVA;
UPDATE newInvoiceIn n
JOIN invoiceInEntry iie ON iie.invoiceInAwbFk = vInvoiceInId
JOIN invoiceIn ii ON ii.id = iie.invoiceInFk
SET ii.booked = IFNULL(ii.booked,n.booked),
ii.operated = IFNULL(ii.operated,n.issued);
UPDATE invoiceIn
SET
serialNumber = vSerialNumber,
isBooked = TRUE
WHERE
id = vInvoiceInId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceInBookingMain` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceInBookingMain`(vInvoiceInId INT)
BEGIN
DECLARE vTotalAmount DECIMAL(10,2);
DECLARE vBookNumber,vSerialNumber INT;
CALL invoiceInBookingCommon(vInvoiceInId,vSerialNumber);
SELECT MAX(ASIEN) + 1
INTO vBookNumber
FROM vn2008.XDiario;
SELECT SUM(iit.taxableBase * IF(i.serial = 'R', 1 +(tc.rate/100),1))
INTO vTotalAmount
FROM newInvoiceIn i
JOIN invoiceInTax iit ON iit.invoiceInFk = i.id
JOIN taxCode tc ON iit.taxCodeFk = tc.id;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id)
SELECT
vBookNumber,
n.booked,
s.supplierAccount,
vTotalAmount,
n.conceptWithSupplier,
n.invoicesCount,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s;
INSERT INTO vn2008.XDiario (
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
EUROHABER,
CONCEPTO,
NFACTICK,
empresa_id
)
SELECT
vBookNumber ASIEN,
n.booked FECHA,
if(
e.isWithheld,
LPAD(RIGHT(s.supplierAccount ,5),10,iit.expenceFk),
iit.expenceFk
) SUBCTA,
s.supplierAccount CONTRA,
if(
e.isWithheld,
NULL,
ABS(ROUND(SUM(iit.taxableBase),2))
) EURODEBE,
if(
e.isWithheld,
ABS(ROUND(SUM(iit.taxableBase),2)),
NULL
) EUROHABER,
n.conceptWithSupplier CONCEPTO,
n.invoicesCount NFACTICK,
n.companyFk empresa_id
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax iit ON iit.invoiceInFk = n.id
JOIN taxCode tc ON tc.id = iit.taxCodeFk
JOIN expence e ON e.id = iit.expenceFk AND e.taxTypeFk = tc.taxTypeFk
WHERE iit.expenceFk != 5660000002
GROUP BY iit.expenceFk;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EURODEBE,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
TIPOOPE,
FECHA_EX,
FECHA_OP,
NFACTICK,
FACTURAEX,
L340,
LRECT349,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
FECREGCON,
empresa_id
)
SELECT vBookNumber ASIEN,
n.booked FECHA,
tc.code SUBCTA,
s.supplierAccount CONTRA,
SUM(ROUND(tc.rate/100*it.taxableBase + 0.0001,2)) EURODEBE,
SUM(it.taxableBase) BASEEURO,
GROUP_CONCAT(DISTINCT e.`name` SEPARATOR ', ') CONCEPTO,
vSerialNumber FACTURA,
tc.rate IVA,
IF(isUeeMember AND eWithheld.id IS NULL,'','*') AUXILIAR,
n.serial SERIE,
tt.TIPOOPE,
n.issued FECHA_EX,
n.operated FECHA_OP,
n.invoicesCount NFACTICK,
n.supplierRef FACTURAEX,
TRUE L340,
(isSameCountry OR NOT isUeeMember) LRECT349,
n.cplusTrascendency472Fk TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
n.cplusInvoiceType472Fk TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
n.booked FECREGCON,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax it ON n.id = it.invoiceInFk
JOIN taxCode tc ON tc.id = it.taxCodeFk
JOIN taxType tt ON tt.id = tc.taxTypeFk
JOIN invoiceInSerial iis ON iis.code = tt.serial
JOIN expence e ON e.id = it.expenceFk AND e.taxTypeFk = tc.taxTypeFk
LEFT JOIN
(SELECT eWithheld.id
FROM invoiceInTax hold
JOIN expence eWithheld ON eWithheld.id = hold.expenceFk AND eWithheld.isWithheld
WHERE hold.invoiceInFk = 58262 LIMIT 1
) eWithheld ON TRUE
WHERE tc.type != '-'
AND tc.isActive
GROUP BY tc.rate;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
AUXILIAR,
SERIE,
TIPOOPE,
FECHA_EX,
FECHA_OP,
NFACTICK,
FACTURAEX,
L340,
LRECT349,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
TERIDNIF,
TERNIF,
TERNOM,
empresa_id
)
SELECT
vBookNumber ASIEN,
n.booked FECHA,
tcLink.code SUBCTA,
s.supplierAccount CONTRA,
ROUND(tcLink.rate/100*SUM(it.taxableBase) + 0.0001,2) EUROHABER,
ROUND(SUM(it.taxableBase),2) BASEEURO,
GROUP_CONCAT(DISTINCT e.`name` SEPARATOR ', ') CONCEPTO,
vSerialNumber FACTURA,
tcLink.rate IVA,
'*' AUXILIAR,
n.serial SERIE,
tt.TIPOOPE,
n.issued FECHA_EX,
n.operated FECHA_OP,
n.invoicesCount NFACTICK,
n.supplierRef FACTURAEX,
FALSE L340,
(isSameCountry OR NOT isUeeMember) LRECT349,
1 TIPOCLAVE,
n.cplusTaxBreakFk TIPOEXENCI,
n.cplusSubjectOpFk TIPONOSUJE,
n.cplusInvoiceType472Fk TIPOFACT,
n.cplusRectificationTypeFk TIPORECTIF,
iis.cplusTerIdNifFk TERIDNIF,
s.nif AS TERNIF,
s.name AS TERNOM,
n.companyFk
FROM newInvoiceIn n
JOIN newSupplier s
JOIN invoiceInTax it ON n.id = it.invoiceInFk
JOIN taxCode tc ON tc.id = it.taxCodeFk
JOIN taxType tt ON tt.id = tc.taxTypeFk
JOIN invoiceInSerial iis ON iis.code = tt.serial
JOIN taxCode tcLink ON tcLink.linkFk = tc.linkFk AND tc.id != tcLink.id
JOIN expence e ON e.id = it.expenceFk AND e.taxTypeFk = tc.taxTypeFk
WHERE tc.isActive
GROUP BY tcLink.rate, e.id;
UPDATE invoiceIn ii
JOIN newInvoiceIn ni ON ii.id = ni.id
SET
ii.serialNumber = vSerialNumber,
ii.isBooked = TRUE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceMakeByClient` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceMakeByClient`(vClientFk INT, vSerial CHAR(1), vShipped DATE, vCompanyFk INT, OUT vInvoiceId INT)
BEGIN
CALL invoiceFromClient(vShipped, vClientFk, vCompanyFk);
CALL invoiceOutMake(vSerial, CURDATE(), vInvoiceId);
IF vSerial <> 'R' AND NOT ISNULL(vInvoiceId) AND vInvoiceId <> 0 THEN
CALL invoiceOutBooking(vInvoiceId);
INSERT INTO printServerQueue(priorityFk, reportFk, param1) VALUES(1, 3, vInvoiceId);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceMakeByTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceMakeByTicket`(vTicketFk INT, vSerial CHAR(1), OUT vInvoiceId INT)
BEGIN
CALL invoiceFromTicket(vTicketFk);
CALL invoiceOutMake(vSerial, CURDATE(), vInvoiceId);
IF vSerial <> 'R' AND NOT ISNULL(vInvoiceId) AND vInvoiceId <> 0 THEN
CALL invoiceOutBooking(vInvoiceId);
INSERT INTO printServerQueue(priorityFk, reportFk, param1) VALUES(1, 3, vInvoiceId);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutAgain` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutAgain`(IN vInvoiceRef VARCHAR(15))
BEGIN
DECLARE vInvoice INT;
DECLARE vCountry INT;
DECLARE vTaxArea VARCHAR(15);
DECLARE vSpainCountryCode INT DEFAULT 1;
SELECT id
INTO vInvoice
FROM invoiceOut
WHERE ref = vInvoiceRef;
UPDATE invoiceOut
SET pdf = 0
WHERE id = vInvoice;
SELECT s.countryFk
INTO vCountry
FROM supplier s
JOIN invoiceOut io ON io.companyFk = s.id
WHERE io.id = vInvoice;
SELECT IF(a.isEqualizated
AND c.countryFk = vSpainCountryCode
AND i.taxAreaFk = 'NATIONAL',
'EQU',
i.taxAreaFk)
INTO vTaxArea
FROM invoiceOutSerial i
JOIN invoiceOut io ON io.serial = i.code
JOIN ticket t ON t.refFk = io.ref
JOIN address a ON a.id = t.addressFk
JOIN client c ON c.id = t.clientFk
WHERE io.id = vInvoice
LIMIT 1;
DROP TEMPORARY TABLE IF EXISTS ticketToInvoice;
CREATE TEMPORARY TABLE ticketToInvoice
SELECT id
FROM ticket
WHERE refFk = vInvoiceRef;
CALL invoiceExpenceMake(vInvoice);
CALL invoiceTaxMake(vInvoice,vCountry,vTaxArea);
UPDATE invoiceOut io
JOIN (
SELECT SUM(amount) AS total
FROM invoiceOutExpence
WHERE invoiceOutFk = vInvoice
) base
JOIN (
SELECT SUM(vat) AS total
FROM invoiceOutTax
WHERE invoiceOutFk = vInvoice
) vat
SET io.amount = base.total + vat.total
WHERE io.id = vInvoice;
CALL vn.invoiceOutBooking(vInvoice);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutAgainDateRange` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutAgainDateRange`(IN vFirstDate DATE, IN vLastDate DATE)
BEGIN
DECLARE done BOOL DEFAULT FALSE;
DECLARE vInvoice INT;
DECLARE vInvoiceRef VARCHAR(15);
DECLARE vContador INT DEFAULT 0;
DECLARE rs CURSOR FOR
SELECT id, ref
FROM vn.invoiceOut
WHERE issued BETWEEN vFirstDate AND vLastDate
AND booked IS NULL;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN rs;
FETCH rs INTO vInvoice, vInvoiceRef;
WHILE NOT done DO
CALL vn.invoiceOutAgain(vInvoiceRef);
FETCH rs INTO vInvoice, vInvoiceRef;
SET vContador = vContador + 1;
IF vContador MOD 50 = 0 THEN
SELECT CONCAT(vContador, ' de momento') AS FACTURAS_ASENTADAS;
END IF;
END WHILE;
CLOSE rs;
SELECT CONCAT(vContador, ' total') AS FACTURAS_ASENTADAS;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutBooking` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutBooking`(IN vInvoice INT)
BEGIN
DECLARE vBookNumber INT;
DECLARE vExpenceConcept VARCHAR(50);
DECLARE isUEENotSpain INT DEFAULT 1;
DECLARE vOldBookNumber INT;
SELECT ASIEN
INTO vOldBookNumber
FROM vn2008.XDiario x
JOIN vn.invoiceOut io ON io.id = vInvoice
WHERE x.SERIE = io.serial
AND x.FACTURA = RIGHT(io.ref, LENGTH(io.ref) - 1)
LIMIT 1;
DELETE
FROM vn2008.XDiario
WHERE ASIEN = vOldBookNumber;
SELECT MAX(ASIEN) + 1
INTO vBookNumber
FROM vn2008.XDiario;
DROP TEMPORARY TABLE IF EXISTS rs;
CREATE TEMPORARY TABLE rs
SELECT
c.accountingAccount AS clientBookingAccount,
io.amount as totalAmount,
CONCAT('n/fra ', io.ref) as simpleConcept,
CONCAT('n/fra ', io.ref, ' ', c.name) as Concept,
io.serial AS SERIE,
io.issued AS FECHA_EX,
opDate.FECHA_OP,
io.issued AS FECHA,
1 AS NFACTICK,
IF(ic.correctingFk,'D','') AS TIPOOPE,
io.cplusTrascendency477Fk AS TIPOCLAVE,
io.cplusTaxBreakFk AS TIPOEXENCI,
io.cplusSubjectOpFk AS TIPONOSUJE,
io.cplusInvoiceType477Fk AS TIPOFACT,
ic.cplusRectificationTypeFk AS TIPORECTIF,
io.companyFk,
RIGHT(io.ref, LENGTH(io.ref) - 1) AS invoiceNum,
IF(ct.CEE = 0, 1, IF(ct.CEE = isUEENotSpain,2,4)) AS TERIDNIF,
CONCAT(IF(ct.CEE = isUEENotSpain,ct.code,''),c.fi) AS TERNIF,
c.socialName AS TERNOM,
ior.serial AS SERIE_RT,
RIGHT(ior.ref, LENGTH(ior.ref) - 1) AS FACTU_RT,
ior.issued AS FECHA_RT,
IF(ior.id,TRUE,FALSE) AS RECTIFICA
FROM invoiceOut io
JOIN (
SELECT MAX(shipped) as FECHA_OP
FROM ticket t
JOIN invoiceOut io ON io.ref = t.refFk
WHERE io.id = vInvoice ) opDate
JOIN invoiceOutSerial ios ON ios.code = io.serial
JOIN client c ON c.id = io.clientFk
JOIN country ct ON ct.id = c.countryFk
LEFT JOIN invoiceCorrection ic ON ic.correctingFk = io.id
LEFT JOIN invoiceOut ior ON ior.id = ic.correctedFk
WHERE io.id = vInvoice;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
EURODEBE,
CONCEPTO,
FECHA_EX,
FECHA_OP,
empresa_id
)
SELECT
vBookNumber AS ASIEN,
rs.FECHA,
rs.clientBookingAccount AS SUBCTA,
rs.totalAmount AS EURODEBE,
rs.simpleConcept AS CONCEPTO,
rs.FECHA_EX,
rs.FECHA_OP,
rs.companyFk AS empresa_id
FROM rs;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
CONCEPTO,
FECHA_EX,
FECHA_OP,
empresa_id
)
SELECT
vBookNumber AS ASIEN,
rs.FECHA,
ioe.expenceFk AS SUBCTA,
rs.clientBookingAccount AS CONTRA,
ioe.amount AS EUROHABER,
rs.Concept AS CONCEPTO,
rs.FECHA_EX,
rs.FECHA_OP,
rs.companyFk AS empresa_id
FROM rs
JOIN invoiceOutExpence ioe
WHERE ioe.invoiceOutFk = vInvoice;
SELECT GROUP_CONCAT(`name` SEPARATOR ',')
INTO vExpenceConcept
FROM expence e
JOIN invoiceOutExpence ioe ON ioe.expenceFk = e.id
WHERE ioe.invoiceOutFk = vInvoice;
INSERT INTO vn2008.XDiario(
ASIEN,
FECHA,
SUBCTA,
CONTRA,
EUROHABER,
BASEEURO,
CONCEPTO,
FACTURA,
IVA,
RECEQUIV,
AUXILIAR,
SERIE,
SERIE_RT,
FACTU_RT,
RECTIFICA,
FECHA_RT,
FECHA_OP,
FECHA_EX,
TIPOOPE,
NFACTICK,
TERIDNIF,
TERNIF,
TERNOM,
L340,
TIPOCLAVE,
TIPOEXENCI,
TIPONOSUJE,
TIPOFACT,
TIPORECTIF,
empresa_id
)
SELECT
vBookNumber AS ASIEN,
rs.FECHA,
iot.pgcFk AS SUBCTA,
rs.clientBookingAccount AS CONTRA,
iot.vat AS EUROHABER,
iot.taxableBase AS BASEEURO,
CONCAT(vExpenceConcept,' : ',rs.Concept) AS CONCEPTO,
rs.invoiceNum AS FACTURA,
IF(pe2.equFk,0,pgc.rate) AS IVA,
IF(pe2.equFk,0,pgce.rate) AS RECEQUIV,
IF(pgc.mod347,'','*') AS AUXILIAR,
rs.SERIE,
rs.SERIE_RT,
rs.FACTU_RT,
rs.RECTIFICA,
rs.FECHA_RT,
rs.FECHA_OP,
rs.FECHA_EX,
rs.TIPOOPE,
rs.NFACTICK,
rs.TERIDNIF,
rs.TERNIF,
rs.TERNOM,
pgc.mod340 AS L340,
pgc.cplusTrascendency477Fk AS TIPOCLAVE,
pgc.cplusTaxBreakFk as TIPOEXENCI,
rs.TIPONOSUJE,
rs.TIPOFACT,
rs.TIPORECTIF,
rs.companyFk AS empresa_id
FROM rs
JOIN invoiceOutTax iot
JOIN pgc ON pgc.code = iot.pgcFk
LEFT JOIN pgcEqu pe ON pe.vatFk = iot.pgcFk
LEFT JOIN pgc pgce ON pgce.code = pe.equFk
LEFT JOIN pgcEqu pe2 ON pe2.equFk = iot.pgcFk
WHERE iot.invoiceOutFk = vInvoice;
UPDATE invoiceOut
SET booked = CURDATE()
WHERE id = vInvoice;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutBookingRange` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutBookingRange`()
BEGIN
DECLARE vInvoice INT;
DECLARE vContador INT DEFAULT 0;
DECLARE done BOOL DEFAULT FALSE;
DECLARE rs CURSOR FOR
SELECT io.id
FROM invoiceOut io
WHERE RIGHT(ref,7) BETWEEN 1724215 AND 1724224
AND serial = 'T';
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN rs;
FETCH rs INTO vInvoice;
WHILE NOT done DO
CALL invoiceOutBooking(vInvoice);
FETCH rs INTO vInvoice ;
SET vContador = vContador + 1;
IF vContador MOD 50 = 0 THEN
SELECT CONCAT(vContador, ' de momento') AS FACTURAS_ASENTADAS;
END IF;
END WHILE;
CLOSE rs;
SELECT CONCAT(vContador, ' total') AS FACTURAS_ASENTADAS;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutFix_BI_RE_IVA` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutFix_BI_RE_IVA`()
BEGIN
DECLARE done BOOL DEFAULT FALSE;
DECLARE vInvoice INT;
DECLARE rs CURSOR FOR
SELECT factura_id
FROM vn2008.Facturas
WHERE Importe != BI7 + BI16 + RE4 + RE1 + IVA7 + IVA16
AND Fecha >= '2017-07-01';
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN rs;
FETCH rs INTO vInvoice;
SELECT vInvoice, done;
WHILE NOT done DO
UPDATE invoiceOut io
JOIN (
SELECT SUM(amount) AS total
FROM invoiceOutExpence
WHERE invoiceOutFk = vInvoice
) base
JOIN (
SELECT SUM(vat) AS total
FROM invoiceOutTax
WHERE invoiceOutFk = vInvoice
) vat
SET io.amount = base.total + vat.total
WHERE io.id = vInvoice;
UPDATE vn2008.Facturas
SET BI16 = 0,
BI7 = 0,
RE1 = 0,
RE4 = 0,
IVA7 = 0,
IVA16 = 0
WHERE factura_id = vInvoice;
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.BI16 = iot.taxableBase, f.IVA16 = iot.vat
WHERE f.factura_id = vInvoice
AND iot.pgcFk IN ('4770000021' ,'4770000215', '4770000002','4771000000','4770000000','4770000020');
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.RE4 = iot.vat
WHERE f.factura_id = vInvoice
AND iot.pgcFk = '4770000521';
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.BI7 = iot.taxableBase, f.IVA7 = iot.vat
WHERE f.factura_id = vInvoice
AND iot.pgcFk IN ('4770000010' ,'4770000101');
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.RE1 = iot.vat
WHERE f.factura_id = vInvoice
AND iot.pgcFk = '4770000110';
FETCH rs INTO vInvoice;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutListByCompany` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutListByCompany`(vCompany INT, vStarted DATE, vEnded DATE)
BEGIN
SELECT
c.socialName as RazonSocial,
c.fi as NIF,
io.ref as Factura,
io.serial as Serie,
io.issued as Fecha,
io.amount as Importe,
c.id as Id_Cliente,
iot.taxableBase as Base,
pgc.rate as Tipo,
iot.vat as Cuota,
pgc.name as Concepto
FROM vn.invoiceOut io
JOIN vn.invoiceOutTax iot ON iot.invoiceOutFk = io.id
JOIN vn.client c ON c.id = io.clientFk
JOIN vn.pgc ON pgc.code = iot.pgcFk
WHERE io.companyFk = vCompany
AND io.issued BETWEEN vStarted AND vEnded
ORDER BY io.ref DESC;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutMake` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutMake`(
vSerial VARCHAR(255),
vInvoiceDate DATETIME,
OUT vNewInvoiceId INT)
BEGIN
DECLARE vSpainCountryCode INT DEFAULT 1;
DECLARE vIsAnySaleToInvoice BOOL;
DECLARE vCountry TINYINT DEFAULT 1;
DECLARE vTaxArea VARCHAR(15);
DECLARE vNewRef VARCHAR(255);
DECLARE vWorker INT DEFAULT vn.getWorker();
DECLARE vCompany INT;
DECLARE vClient INT;
DECLARE vCplusStandardInvoiceTypeFk INT DEFAULT 1;
DECLARE vCplusCorrectingInvoiceTypeFk INT DEFAULT 6;
DECLARE vCorrectingSerial VARCHAR(1) DEFAULT 'R';
SET vInvoiceDate = IFNULL(vInvoiceDate,CURDATE());
SELECT t.clientFk, t.companyFk
INTO vClient, vCompany
FROM ticketToInvoice tt
JOIN ticket t ON t.id = tt.id
LIMIT 1;
SELECT countryFk
INTO vCountry
FROM supplier
WHERE id = vCompany;
SELECT IF(a.isEqualizated
AND c.countryFk = vSpainCountryCode
AND i.taxAreaFk = 'NATIONAL',
'EQU',
i.taxAreaFk)
INTO vTaxArea
FROM invoiceOutSerial i
JOIN ticketToInvoice tti
JOIN ticket t ON t.id = tti.id
JOIN address a ON a.id = t.addressFk
JOIN client c ON c.id = t.clientFk
WHERE i.code = vSerial
LIMIT 1;
INSERT INTO dailyTaskLog(state) VALUES('invoiceOutMake 1: START');
START TRANSACTION;
UPDATE ticket t
JOIN ticketToInvoice ti ON ti.id = t.id
LEFT JOIN sale s ON s.ticketFk = ti.id
SET t.shipped = '2000-02-01 00:00:00'
WHERE s.id IS NULL;
INSERT INTO dailyTaskLog(state) VALUES('invoiceOutMake 1.1');
DELETE ti.*
FROM ticketToInvoice ti
JOIN ticket t ON t.id = ti.id
JOIN client c ON c.id = t.clientFk
WHERE YEAR(t.shipped) < 2001
OR c.isTaxDataChecked = FALSE;
INSERT INTO dailyTaskLog(state) VALUES('invoiceOutMake 1.2');
SELECT SUM(quantity * price * (100 - discount)/100)
INTO vIsAnySaleToInvoice
FROM sale s
JOIN ticketToInvoice t on t.id = s.ticketFk;
INSERT INTO dailyTaskLog(state) VALUES('invoiceOutMake 1.3');
IF vIsAnySaleToInvoice THEN
INSERT INTO invoiceOut
(
ref,
serial,
issued,
clientFk,
dued,
companyFk,
cplusInvoiceType477Fk
)
SELECT
1,
vSerial,
vInvoiceDate,
vClient,
getDueDate(vInvoiceDate, dueDay),
vCompany,
IF(vSerial = vCorrectingSerial, vCplusCorrectingInvoiceTypeFk, vCplusStandardInvoiceTypeFk)
FROM client
WHERE id = vClient;
SET vNewInvoiceId = LAST_INSERT_ID();
SELECT ref
INTO vNewRef
FROM invoiceOut
WHERE id = vNewInvoiceId;
UPDATE ticket t
JOIN ticketToInvoice ti ON ti.id = t.id
SET t.refFk = vNewRef;
DROP TEMPORARY TABLE IF EXISTS tmp.updateInter;
CREATE TEMPORARY TABLE tmp.updateInter ENGINE = MEMORY
SELECT s.id,ti.id ticket_id,vWorker Id_Trabajador
FROM ticketToInvoice ti
JOIN vn.ticketState ts ON ti.id = ts.ticket
JOIN state s
WHERE IFNULL(ts.alertLevel,0) < 3 and s.`code` = vn.getAlert3State(ti.id);
INSERT INTO vncontrol.inter(state_id,Id_Ticket,Id_Trabajador)
SELECT * FROM tmp.updateInter;
INSERT INTO logTicket (action, userFk,originFk, description)
SELECT 'UPDATE',account.userGetId(),ti.id, CONCAT('CREA FACTURA ',vNewRef)
FROM ticketToInvoice ti;
CALL invoiceExpenceMake(vNewInvoiceId);
CALL invoiceTaxMake(vNewInvoiceId,vCountry,vTaxArea);
UPDATE invoiceOut io
JOIN (
SELECT SUM(amount) AS total
FROM invoiceOutExpence
WHERE invoiceOutFk = vNewInvoiceId
) base
JOIN (
SELECT SUM(vat) AS total
FROM invoiceOutTax
WHERE invoiceOutFk = vNewInvoiceId
) vat
SET io.amount = base.total + vat.total
WHERE io.id = vNewInvoiceId;
INSERT INTO dailyTaskLog(state) VALUES('invoiceOutMake 2: START');
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.BI16 = iot.taxableBase, f.IVA16 = iot.vat
WHERE f.factura_id = vNewInvoiceId
AND iot.pgcFk IN ('4770000021' ,'4770000215', '4770000002','4771000000','4770000000','4770000020');
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.RE4 = iot.vat
WHERE f.factura_id = vNewInvoiceId
AND iot.pgcFk = '4770000521';
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.BI7 = iot.taxableBase, f.IVA7 = iot.vat
WHERE f.factura_id = vNewInvoiceId
AND iot.pgcFk IN ('4770000010' ,'4770000101');
UPDATE vn2008.Facturas f
JOIN invoiceOutTax iot ON iot.invoiceOutFk = f.factura_id
SET f.RE1 = iot.vat
WHERE f.factura_id = vNewInvoiceId
AND iot.pgcFk = '4770000110';
END IF;
INSERT INTO dailyTaskLog(state) VALUES('invoiceOutMake 3: END');
DROP TEMPORARY TABLE `ticketToInvoice`;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceOutTaxAndExpence` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceOutTaxAndExpence`()
BEGIN
DECLARE vInvoice INT;
DECLARE vInvoiceRef VARCHAR(15);
DECLARE vCountry INT;
DECLARE vTaxArea VARCHAR(15);
DECLARE vContador INT DEFAULT 0;
DECLARE done BOOL DEFAULT FALSE;
DECLARE rs CURSOR FOR
SELECT id,ref
FROM invoiceOut io
WHERE issued >= '2017-07-01'
AND companyFk = 1381
AND io.amount IS NULL
;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN rs;
FETCH rs INTO vInvoice ,vInvoiceRef;
WHILE NOT done DO
SELECT s.countryFk
INTO vCountry
FROM supplier s
JOIN invoiceOut io ON io.companyFk = s.id
WHERE io.id = vInvoice;
SELECT IF(c.isEqualizated AND i.taxAreaFk = 'NATIONAL','EQU',i.taxAreaFk)
INTO vTaxArea
FROM invoiceOutSerial i
JOIN invoiceOut io ON io.serial = i.code
JOIN client c ON c.id = io.clientFk
WHERE io.id = vInvoice;
DROP TEMPORARY TABLE IF EXISTS ticketToInvoice;
CREATE TEMPORARY TABLE ticketToInvoice
SELECT id
FROM ticket
WHERE refFk = vInvoiceRef;
CALL invoiceExpenceMake(vInvoice);
CALL invoiceTaxMake(vInvoice,vCountry,vTaxArea);
FETCH rs INTO vInvoice ,vInvoiceRef;
SET vContador = vContador + 1;
IF vContador MOD 50 = 0 THEN
SELECT CONCAT(vContador, ' de momento') AS FACTURAS_ASENTADAS;
END IF;
END WHILE;
CLOSE rs;
SELECT CONCAT(vContador, ' total') AS FACTURAS_ASENTADAS;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `invoiceTaxMake` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `invoiceTaxMake`(IN vInvoice INT, IN vCountry INT, IN vTaxArea VARCHAR(15))
BEGIN
DELETE FROM invoiceOutTax
WHERE invoiceOutFk = vInvoice;
INSERT INTO invoiceOutTax(
invoiceOutFk,
pgcFk,
taxableBase,
vat
)
SELECT vInvoice,
bp.pgcFk,
SUM(ROUND(s.quantity * s.price * (100 - s.discount)/100,2)
) taxableBase,
SUM(ROUND(s.quantity * s.price * (100 - s.discount)/100,2)
) * pgc.rate / 100
FROM ticketToInvoice t
JOIN sale s ON s.ticketFk = t.id
JOIN item i ON i.id = s.itemFk
JOIN itemTaxCountry itc
ON itc.itemFk = i.id AND itc.countryFk = vCountry
JOIN bookingPlanner bp
ON bp.countryFk = vCountry
AND bp.taxAreaFk = vTaxArea
AND bp.taxClassFk = itc.taxClassFk
JOIN pgc ON pgc.code = bp.pgcFk
GROUP BY pgc.code
HAVING taxableBase != 0;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `itemTagArrangedUpdate` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemTagArrangedUpdate`(IN vItem BIGINT)
BEGIN
DELETE
FROM itemTagArranged
WHERE vItem IS NULL
OR vItem = itemFk;
INSERT INTO itemTagArranged(itemFk)
SELECT id
FROM item
WHERE vItem IS NULL
OR vItem = id;
REPLACE itemTagArranged
SELECT i.id,
'Medida' as tag1,
LEFT(i.size,15) as val1,
'Color' as tag2,
LEFT(ink.`name`,15) as val2,
'Categoria' as tag3,
LEFT(i.category,15) as val3,
'Productor' as tag4,
LEFT(p.`name`,15) as val4,
'Tallos' as tag5,
i.stems as val5,
'Origen' as tag6,
o.code as val6,
i.description
FROM item i
LEFT JOIN itemTagged it ON it.itemFk = i.id
LEFT JOIN ink on ink.id = i.inkFk
JOIN origin o ON o.id = i.originFk
LEFT JOIN producer p ON p.id = i.producerFk
WHERE it.itemFk IS NULL
AND (vItem IS NULL OR vItem = i.id);
CALL itemTagUpdatePriority(vItem);
UPDATE itemTagArranged ita
JOIN itemTag it ON it.itemFk = ita.itemFk
JOIN tag t ON t.id = it.tagFk
SET tag1 = t.name, val1 = it.value
WHERE it.priority = 1
AND (vItem IS NULL OR vItem = it.itemFk);
UPDATE itemTagArranged ita
JOIN itemTag it ON it.itemFk = ita.itemFk
JOIN tag t ON t.id = it.tagFk
SET tag2 = t.name, val2 = it.value
WHERE it.priority = 2
AND (vItem IS NULL OR vItem = it.itemFk);
UPDATE itemTagArranged ita
JOIN itemTag it ON it.itemFk = ita.itemFk
JOIN tag t ON t.id = it.tagFk
SET tag3 = t.name, val3 = it.value
WHERE it.priority = 3
AND (vItem IS NULL OR vItem = it.itemFk);
UPDATE itemTagArranged ita
JOIN itemTag it ON it.itemFk = ita.itemFk
JOIN tag t ON t.id = it.tagFk
SET tag4 = t.name, val4 = it.value
WHERE it.priority = 4
AND (vItem IS NULL OR vItem = it.itemFk);
UPDATE itemTagArranged ita
JOIN itemTag it ON it.itemFk = ita.itemFk
JOIN tag t ON t.id = it.tagFk
SET tag5 = t.name, val5 = it.value
WHERE it.priority = 5
AND (vItem IS NULL OR vItem = it.itemFk);
UPDATE itemTagArranged ita
JOIN itemTag it ON it.itemFk = ita.itemFk
JOIN tag t ON t.id = it.tagFk
SET tag6 = t.name, val6 = it.value
WHERE it.priority = 6
AND (vItem IS NULL OR vItem = it.itemFk);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `itemTagUpdatePriority` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemTagUpdatePriority`(IN vItem INT)
BEGIN
SET vItem = IFNULL(vItem,0);
SET @p := 0;
SET @a := 0;
UPDATE itemTag a
JOIN (
SELECT
id,
@p := IF(itemFk = @a, @p, 0) + 1 as NewPriority,
@a := itemFk
FROM itemTag
WHERE vItem IS NULL
OR vItem = itemFk
ORDER BY itemFk, priority
) sub ON sub.id = a.id
SET a.priority = NewPriority;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `itemTagUpdatePriority_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemTagUpdatePriority_launcher`()
BEGIN
CALL vn.itemTagUpdatePriority(0);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `logAdd` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `logAdd`(vOriginFk INT, vActionCode VARCHAR(45), vTypeCode VARCHAR(45), vDescription TEXT)
BEGIN
DECLARE vTableName VARCHAR(45);
SELECT logTableName INTO vTableName
FROM vn.logType
WHERE `code` = vTypeCode;
IF ISNULL(vTableName) THEN
CALL util.throw('CODE_NOT_FOUND');
END IF;
SET @qryLog := CONCAT(
'INSERT INTO ', vTableName, ' (originFk, userFk, action, description)',
' VALUES (', vOriginFk, ', ', account.userGetId(), ', "', vActionCode, '", "', vDescription, '")'
);
PREPARE stmt FROM @qryLog;
EXECUTE stmt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `logShow` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `logShow`(vOriginFk INT, vTypeCode VARCHAR(45))
BEGIN
DECLARE vTableName VARCHAR(45);
SELECT logTableName INTO vTableName
FROM vn.logType
WHERE `code` = vTypeCode;
IF ISNULL(vTableName) THEN
CALL util.throw('CODE_NOT_FOUND');
END IF;
SET @qryLog := CONCAT(
'SELECT ot.id, ot.originFk, ot.userFk, u.name, ot.action, ot.creationDate, ot.description FROM ', vTableName, ' AS ot',
' INNER JOIN account.user u ON u.id = ot.userFk',
' WHERE ot.originFk = ', vOriginFk, ' ORDER BY ot.creationDate DESC'
);
PREPARE stmt FROM @qryLog;
EXECUTE stmt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `mergeTicketUnattended` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `mergeTicketUnattended`(IN vMainTicket INT(11), IN hasSameAgency BOOLEAN)
BEGIN
DECLARE isBilled BOOLEAN;
DECLARE arrayTickets VARCHAR(255);
SELECT Factura IS NOT NULL INTO isBilled FROM vn2008.Tickets WHERE Id_Ticket = vMainTicket;
IF NOT isBilled THEN
SELECT GROUP_CONCAT(distinct T.Id_Ticket) INTO arrayTickets
FROM vn2008.Tickets T LEFT JOIN vn.ticketState ts ON T.Id_Ticket = ts.ticket
JOIN vn2008.Tickets ticketOriginal ON ticketOriginal.Id_Ticket = vMainTicket
AND T.empresa_id = ticketOriginal.empresa_id
AND T.Id_Consigna = ticketOriginal.Id_Consigna
AND DATE(T.Fecha) = DATE(ticketOriginal.Fecha)
AND T.warehouse_id = ticketOriginal.warehouse_id
AND IF(hasSameAgency <> 0,T.Id_Agencia = ticketOriginal.Id_Agencia,TRUE)
LEFT JOIN vn.ticketState tsOriginal ON ticketOriginal.Id_Ticket = tsOriginal.ticket
WHERE ts.alertLevel < 3
AND T.Factura IS NULL
AND T.Anotadoencaja = FALSE
AND T.Id_Ticket <> vMainTicket
AND ts.alertLevel = tsOriginal.alertLevel;
CALL mergeTicketWithArray(vMainTicket,arrayTickets);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `mergeTicketWithArray` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `mergeTicketWithArray`(IN vMainTicket INT(11), IN arrayTickets VARCHAR(50))
BEGIN
DECLARE isBilled BOOLEAN;
DECLARE messageLog VARCHAR(50);
DECLARE company INT;
DECLARE messageForSplit VARCHAR(255);
DECLARE vMainSplit INT;
DECLARE worker INT(3);
SELECT Factura IS NOT NULL INTO isBilled FROM vn2008.Tickets WHERE Id_Ticket = vMainTicket;
IF NOT isBilled THEN
SELECT Id_Trabajador INTO worker from vn2008.Trabajadores where user_id = account.userGetId();
IF worker IS NULL THEN
SET worker = 20;
END IF;
DROP TEMPORARY TABLE IF EXISTS vn2008.Tickets_to_fusion;
CALL hedera.sql_query(sql_printf('
CREATE TEMPORARY TABLE vn2008.Tickets_to_fusion
SELECT Id_Ticket, Localizacion
FROM vn2008.Tickets T
WHERE Id_Ticket IN (%s);',arrayTickets));
INSERT INTO vn2008.ticket_observation (Id_Ticket,observation_type_id,text)
SELECT vMainTicket,observation_type_id,CONCAT(' Ticket ', Id_Ticket, ':' , tco.text, '. ')
FROM vn2008.Tickets_to_fusion tf
INNER JOIN vn2008.ticket_observation tco USING(Id_Ticket)
ON DUPLICATE KEY UPDATE `text` = CONCAT(ticket_observation.`text`,CONCAT(' Ticket ', VALUES(Id_Ticket), ':' , VALUES(`text`), '. '));
UPDATE vn2008.Movimientos M
JOIN vn2008.Tickets_to_fusion USING(Id_Ticket)
SET M.Id_Ticket = vMainTicket;
UPDATE vn2008.expeditions M
JOIN vn2008.Tickets_to_fusion t ON t.Id_Ticket = M.ticket_id
SET M.ticket_id = vMainTicket;
UPDATE vn2008.Tickets
SET Bultos = (SELECT COUNT(*) FROM vn2008.expeditions WHERE ticket_id = vMainTicket AND EsBulto)
WHERE Id_Ticket = vMainTicket;
UPDATE vn2008.Tickets
JOIN vn2008.Tickets_to_fusion USING(Id_Ticket)
SET Fecha = TIMESTAMPADD(YEAR,-1 * (YEAR(Fecha)-2000), Fecha);
UPDATE vn2008.Tickets_dits ts
JOIN vn2008.Tickets_to_fusion t USING(Id_Ticket)
SET ts.Id_Ticket = vMainTicket;
UPDATE vn2008.Tickets
SET Localizacion = CONCAT(Tickets.Localizacion,' ',IFNULL((SELECT GROUP_CONCAT(Localizacion SEPARATOR ' ') FROM vn2008.Tickets_to_fusion),''))
WHERE Id_Ticket = vMainTicket;
UPDATE vn2008.Splits s
RIGHT JOIN vn2008.Tickets_to_fusion t USING(Id_Ticket)
SET s.Id_Ticket = vMainTicket;
IF (SELECT COUNT(*) FROM vn2008.Splits WHERE Id_Ticket=vMainTicket) > 1 THEN
SELECT Id_Split INTO vMainSplit FROM vn2008.Splits WHERE Id_Ticket = vMainTicket LIMIT 1;
SELECT group_concat(Notas,',') INTO messageForSplit FROM vn2008.Splits WHERE Id_Ticket = vMainTicket;
UPDATE vn2008.Splits SET Notas = messageForSplit WHERE Id_Split=vMainSplit;
UPDATE vn2008.Split_lines sl JOIN vn2008.Splits s USING (Id_Split) SET sl.Id_Split=vMainSplit WHERE Id_Ticket=vMainTicket;
DELETE FROM vn2008.Splits WHERE Id_Ticket=vMainTicket AND Id_Split<>vMainSplit;
END IF;
SELECT GROUP_CONCAT(Id_Ticket SEPARATOR ',') into messageLog FROM vn2008.Tickets_to_fusion;
CALL vn2008.Ditacio(vMainTicket,'Fusion','T',worker,messageLog,NULL);
DELETE ts FROM vn2008.Tickets_state ts JOIN vn2008.Tickets_to_fusion t USING(Id_Ticket);
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `noticeSend` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `noticeSend`(vCategoryKey VARCHAR(50), vSender INT, vRecipient INT, vBody TEXT)
BEGIN
DECLARE vCategoryId INT;
DECLARE vIsEnabled TINYINT(1);
SELECT c.id, c.isEnabled INTO vCategoryId, vIsEnabled FROM vn.noticeCategory c WHERE keyName = vCategoryKey;
IF vn.noticeHasActive(vCategoryKey, vRecipient) AND vIsEnabled THEN
INSERT INTO vn.noticeInbox (noticeCategoryFk, senderFk, recipientFk, body)
VALUES (vCategoryId, vSender, vRecipient, vBody);
SELECT vSender, vRecipient;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `observationAdd` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `observationAdd`(vOriginFk INT, vTableCode VARCHAR(45), vDescription TEXT)
BEGIN
DECLARE vTableName VARCHAR(45);
SET vTableName = CONCAT(vTableCode,'Observation');
IF ISNULL(vTableName) THEN
CALL util.throw('CODE_NOT_FOUND');
END IF;
SET @qryLog := CONCAT(
'INSERT INTO ', vTableName, ' (originFk, userFk, description)',
' VALUES (', vOriginFk, ', ', account.userGetId(), ', "', vDescription, '")'
);
PREPARE stmt FROM @qryLog;
EXECUTE stmt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `printTrolleyLabel` */;
ALTER DATABASE `vn` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `printTrolleyLabel`(vTicket INT, vPrinter INT, vReport INT)
BEGIN
DECLARE vlabelCount INT DEFAULT 0;
DECLARE PRIORITY INT DEFAULT 3;
DECLARE vWorker INT;
DECLARE vShipmentHour VARCHAR(10);
SELECT getTicketTrolleyLabelCount(vTicket) INTO vLabelCount;
SELECT getUser() INTO vWorker;
SELECT CONCAT(getShipmentHour(vTicket),':00') INTO vShipmentHour;
INSERT INTO printingQueue(printer
, priority
, report
, `text`
, worker
, text2
, text3)
VALUES (vPrinter
, PRIORITY
, vReport
, vTicket
, vWorker
, vLabelCount
, vShipmentHour);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `refund` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `refund`(IN vMainTicket INT, OUT vNewTicket INT)
BEGIN
DECLARE vCustomer MEDIUMINT;
DECLARE vNewDate DATE;
DECLARE vWarehouse TINYINT;
DECLARE vCompany MEDIUMINT;
DECLARE vAddress MEDIUMINT;
DECLARE vRefundAgencyMode INT DEFAULT 23;
SELECT customer, TIMESTAMPADD(DAY, 1,shipment), warehouse, company, address
INTO vCustomer, vNewDate, vWarehouse, vCompany, vAddress
FROM ticket
WHERE id = vMainTicket;
CALL ticketCreate(vCustomer, vNewDate, vWarehouse, vCompany, vAddress, vRefundAgencyMode,NULL,vNewDate,vNewTicket);
INSERT INTO vn2008.Movimientos(Id_Ticket, Id_Article, Cantidad, Concepte, Preu, Descuento, PrecioFijado)
SELECT vNewTicket, Id_Article, - Cantidad, Concepte, Preu, Descuento, TRUE FROM vn2008.Movimientos WHERE Id_Ticket = vMainTicket;
SELECT vNewTicket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `solunionRiskRequest` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `solunionRiskRequest`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.client_list;
CREATE TEMPORARY TABLE tmp.client_list
(PRIMARY KEY (Id_Cliente))
ENGINE = MEMORY
SELECT * FROM (SELECT cc.client Id_Cliente, ci.grade FROM vn.creditClassification cc
JOIN vn.creditInsurance ci ON cc.id = ci.creditClassification
WHERE dateEnd IS NULL
ORDER BY ci.creationDate DESC) t1 GROUP BY Id_Cliente;
CALL vn2008.risk_vs_client_list(CURDATE());
SELECT
c.Id_Cliente, c.Cliente, c.Credito credito_vn, c.creditInsurance solunion, cast(r.risk as DECIMAL(10,0)) riesgo_vivo,
cast(c.creditInsurance - r.risk as decimal(10,0)) margen_vivo,
f.Consumo consumo_anual, c.Vencimiento, ci.grade
FROM
vn2008.Clientes c
JOIN tmp.risk r ON r.Id_Cliente = c.Id_Cliente
JOIN tmp.client_list ci ON c.Id_Cliente = ci.Id_Cliente
JOIN bi.facturacion_media_anual f ON c.Id_Cliente = f.Id_Cliente
GROUP BY Id_cliente;
DROP TEMPORARY TABLE IF EXISTS tmp.risk;
DROP TEMPORARY TABLE IF EXISTS tmp.client_list;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `stockBuyed` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `stockBuyed`(vDate DATE)
BEGIN
DECLARE vVolume DECIMAL(10,2);
DECLARE vWarehouse INT DEFAULT 7;
CALL stockTraslation(vDate);
SELECT Volumen INTO vVolume FROM vn2008.Cubos WHERE Id_Cubo = 'cc' LIMIT 1;
INSERT INTO stockBuyed(user, buyed, `date`)
SELECT tr.user_id, SUM(0.6 * ( amount / c.packing ) * vn2008.cm3(Id_Compra))/vVolume buyed, vDate
FROM tmp_item i
JOIN vn2008.Articles a ON a.Id_Article = i.item_id
JOIN vn2008.Tipos t ON a.tipo_id = t.tipo_id
JOIN vn2008.reinos r ON r.id = t.reino_id
JOIN vn2008.Trabajadores tr ON tr.Id_Trabajador = t.Id_Trabajador
JOIN vn2008.t_item_last_buy ilb ON ilb.item_id = Id_Article AND ilb.warehouse_id = vWarehouse
JOIN vn2008.Compres c ON c.Id_compra = ilb.buy_id
WHERE r.display <> 0
GROUP BY tr.Id_Trabajador
ON DUPLICATE KEY UPDATE buyed = VALUES(buyed);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `stockBuyedByWorker` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `stockBuyedByWorker`(vDate DATE, vWorker INT)
BEGIN
DECLARE vVolume DECIMAL(10,2);
DECLARE vWarehouse INT DEFAULT 7;
CALL stockTraslation(vDate);
SELECT Volumen INTO vVolume FROM vn2008.Cubos WHERE Id_Cubo = 'cc' LIMIT 1;
SELECT c.Id_Entrada, a.Id_Article, a.Article, c.Cantidad, (0.6 * ( amount / c.packing ) * vn2008.cm3(Id_Compra))/vVolume buyed
FROM tmp_item i
JOIN vn2008.Articles a ON a.Id_Article = i.item_id
JOIN vn2008.Tipos t ON a.tipo_id = t.tipo_id
JOIN vn2008.reinos r ON r.id = t.reino_id
JOIN vn2008.Trabajadores tr ON tr.Id_Trabajador = t.Id_Trabajador
JOIN vn2008.t_item_last_buy ilb ON ilb.item_id = a.Id_Article AND ilb.warehouse_id = vWarehouse
JOIN vn2008.Compres c ON c.Id_compra = ilb.buy_id
WHERE r.display <> 0 AND tr.user_id = vWorker;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `stockTraslation` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `stockTraslation`(vDate DATE)
BEGIN
DECLARE vWarehouse INT DEFAULT 7;
DELETE FROM stockBuyed WHERE `date` = vDate;
DROP TEMPORARY TABLE IF EXISTS tmp_item;
CREATE TEMPORARY TABLE tmp_item
(UNIQUE INDEX i USING HASH (item_id))
ENGINE = MEMORY
SELECT item_id, SUM(amount) amount FROM vn2008.item_entry_in
WHERE dat = vDate
AND warehouse_id = vWarehouse
GROUP BY item_id HAVING amount != 0;
CALL `cache`.stock_refresh (FALSE);
INSERT INTO tmp_item (item_id,amount)
SELECT item_id,s.amount FROM `cache`.stock s
WHERE warehouse_id = vWarehouse
ON DUPLICATE KEY UPDATE
amount = tmp_item.amount + VALUES(amount);
CALL vn2008.item_last_buy_(vWarehouse,vDate);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketClosure` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketClosure`()
BEGIN
DECLARE vDone BOOL;
DECLARE vClientFk INT;
DECLARE vCredit INT;
DECLARE vPayMethod INT;
DECLARE vTicketFk INT;
DECLARE vIsToBeMailed BOOL;
DECLARE vIsTaxDataChecked BOOL;
DECLARE vCompanyFk INT;
DECLARE vDeliveryMethod INT;
DECLARE vAgencyFk INT;
DECLARE vAgencyModeFk INT;
DECLARE vWarehouseFk INT;
DECLARE vShipped DATE;
DECLARE vWarehouseVnh INT DEFAULT 7;
DECLARE vWarehouseFloramondo INT DEFAULT 40;
DECLARE vCompanyBlk INT DEFAULT 965;
DECLARE vCompanyCcs INT DEFAULT 69;
DECLARE vAgencyPackage INT DEFAULT 628;
DECLARE vPayMethodCard INT DEFAULT 5;
DECLARE vhasPackage BOOL DEFAULT 0;
DECLARE vPriority INT DEFAULT 1;
DECLARE vReportDeliveryNote INT DEFAULT 1;
DECLARE vReportInvoice INT DEFAULT 3;
DECLARE vNewPackageTicket INT;
DECLARE vNewInvoiceId INT;
DECLARE cur CURSOR FOR
SELECT ticketFk FROM tmp.ticketClosure;
INSERT INTO dailyTaskLog(state) VALUES('ticketClosure START');
OPEN cur;
proc: LOOP
SET vDone = FALSE;
SET vNewPackageTicket = 0;
FETCH cur INTO vTicketFk;
IF vDone THEN
LEAVE proc;
END IF;
INSERT INTO dailyTaskLog(state) VALUES(CONCAT('ticketClosure: ', vTicketFk, ' START'));
SELECT 1;
SELECT
c.id,
c.credit,
c.paymentMethodFk,
c.isToBeMailed,
c.isTaxDataChecked,
t.companyFk,
IFNULL(aw.agencyType, a.deliveryMethod) AS deliveryMethod,
a.id AS agencyFk,
t.agencyModeFk,
t.warehouseFk,
t.shipped
INTO vClientFk,
vCredit,
vPayMethod,
vIsToBeMailed,
vIsTaxDataChecked,
vCompanyFk,
vDeliveryMethod,
vAgencyFk,
vAgencyModeFk,
vWarehouseFk,
vShipped
FROM ticket t
INNER JOIN `client` c ON c.id = t.clientFk
LEFT JOIN agencyMode a ON a.id = t.agencyModeFk
LEFT JOIN agencyWarehouse aw ON a.id = aw.agencyFk AND t.warehouseFk = aw.warehouseFk
WHERE t.id = vTicketFk;
SELECT 2;
CALL mergeTicketUnattended(vTicketFk, TRUE);
IF vWarehouseFk = vWarehouseVnh OR vWareHouseFk = vWarehouseFloramondo THEN
SELECT 2.2;
SELECT COUNT(*) INTO vhasPackage
FROM expedition e
JOIN package p ON p.itemFk = e.itemFk
WHERE e.ticketFk = vTicketFk
AND p.isPackageReturnable
LIMIT 1;
IF vhasPackage THEN
SELECT id INTO vNewPackageTicket
FROM ticket
WHERE companyFk = vCompanyCcs
AND agencyModeFk = vAgencyPackage
AND clientFk = vClientFk
AND shipped = CURDATE()
AND refFk IS NULL
LIMIT 1;
IF ISNULL(vNewPackageTicket) OR vNewPackageTicket = 0 THEN
CALL ticketCreate(vClientFk, CURDATE(), vWarehouseFk, vCompanyCcs, '', vAgencyPackage, '', DATE_ADD(CURDATE(), INTERVAL 1 DAY), vNewPackageTicket);
END IF;
SELECT 2.3;
INSERT INTO movement (item, ticket, concept, amount, price, priceFixed)
(SELECT e.itemFk, vNewPackageTicket, i.name, COUNT(*) AS amount, getSpecialPrice(e.itemFk, vClientFk), 1
FROM expedition e
JOIN item i ON i.id = e.itemFk
LEFT JOIN package p ON p.itemFk = i.id
WHERE e.ticketFk = vTicketFk AND p.isPackageReturnable
GROUP BY e.itemFk);
END IF;
INSERT INTO movement (item, ticket, concept, amount, price, priceFixed)
(SELECT e.itemFk, vTicketFk, i.name, COUNT(*) AS amount, getSpecialPrice(e.itemFk, vClientFk), 1
FROM expedition e
JOIN item i ON i.id = e.itemFk
LEFT JOIN package p ON p.itemFk = i.id
WHERE e.ticketFk = vTicketFk AND IFNULL(p.isPackageReturnable, 0) = 0
GROUP BY e.itemFk);
CALL ticketTrackingAdd(vTicketFk, (SELECT vn.getAlert3State(vTicketFk)), 20);
INSERT INTO printServerQueue(priorityFk, reportFk, param1) VALUES(vPriority, vReportDeliveryNote, vTicketFk);
ELSE
INSERT INTO movement (item, ticket, concept, amount, price, priceFixed)
(SELECT e.item, vTicketFk, i.name, COUNT(*) AS amount, getSpecialPrice(e.itemFk, vClientFk), 1
FROM expedition e
JOIN item i ON i.id = e.itemFk
WHERE e.ticketFk = vTicketFk
GROUP BY e.itemFk);
END IF;
IF(vCredit <= 1 OR vCompanyFk = vCompanyBlk OR vPayMethod = vPayMethodCard) THEN
SELECT 4;
CALL ticketTrackingAdd(vTicketFk, 'DELIVERED', 20);
IF vIsTaxDataChecked THEN
IF (SELECT clientTaxArea(vClientFk, vCompanyFk)) = 'NATIONAL' THEN
CALL invoiceMakeByClient(
vClientFk,
(SELECT invoiceSerial(vClientFk, vCompanyFk, 'M')),
vShipped,
vCompanyFk,
vNewInvoiceId);
ELSE
CALL invoiceMakeByTicket(vTicketFk, (SELECT invoiceSerial(vClientFk, vCompanyFk, 'R')), vNewInvoiceId);
END IF;
END IF;
ELSE
SELECT 5;
CALL ticketTrackingAdd(vTicketFk, (SELECT vn.getAlert3State(vTicketFk)), 20);
INSERT INTO printServerQueue(priorityFk, reportFk, param1) VALUES(vPriority, vReportDeliveryNote, vTicketFk);
END IF;
INSERT INTO dailyTaskLog(state) VALUES(CONCAT('ticketClosure: ', vTicketFk, ' END'));
END LOOP;
CLOSE cur;
INSERT INTO dailyTaskLog(state) VALUES('ticketClosure END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketClosureAgencyList` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketClosureAgencyList`(vWarehouseFk INT, vDateTo DATE)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.ticketClosure;
CREATE TEMPORARY TABLE tmp.ticketClosure ENGINE = MEMORY (
SELECT
t.id AS ticketFk
FROM expedition e
INNER JOIN ticket t ON t.id = e.ticketFk
INNER JOIN tmp.ticketClosureAgencyList al ON al.agencyModeFk = t.agencyModeFk
LEFT JOIN ticketState ts ON ts.ticketFk = t.id
WHERE
ts.alertLevel = 2
AND t.warehouseFk = vWarehouseFk
AND DATE(t.shipped) BETWEEN DATE_ADD(vDateTo, INTERVAL -2 DAY) AND vDateTo
AND t.refFk IS NULL
GROUP BY e.ticketFk);
DROP TEMPORARY TABLE tmp.ticketClosureAgencyList;
CALL ticketClosure();
DROP TEMPORARY TABLE tmp.ticketClosure;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketClosureAgencyListAdd` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketClosureAgencyListAdd`(vAgencyModeFk INT)
BEGIN
CREATE TEMPORARY TABLE IF NOT EXISTS tmp.ticketClosureAgencyList (
`agencyModeFk` INT,
PRIMARY KEY(agencyModeFk)) ENGINE = MEMORY;
INSERT INTO tmp.ticketClosureAgencyList(agencyModeFk) VALUES(vAgencyModeFk);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketClosureMultiWarehouse` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketClosureMultiWarehouse`(vDateTo DATE)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.ticketClosure;
CREATE TEMPORARY TABLE tmp.ticketClosure ENGINE = MEMORY (
SELECT
t.id AS ticketFk
FROM expedition e
INNER JOIN ticket t ON t.id = e.ticketFk
INNER JOIN warehouse w ON w.id = t.warehouseFk AND hasComission
LEFT JOIN ticketState ts ON ts.ticketFk = t.id
WHERE
ts.alertLevel = 2
AND DATE(t.shipped) BETWEEN DATE_ADD(vDateTo, INTERVAL -2 DAY) AND vDateTo
AND t.refFk IS NULL
GROUP BY e.ticketFk);
CALL ticketClosure();
DROP TEMPORARY TABLE tmp.ticketClosure;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketClosureRoute` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketClosureRoute`(vWarehouseFk INT, vRouteFk INT, vDateTo DATE)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.ticketClosure;
CREATE TEMPORARY TABLE tmp.ticketClosure ENGINE = MEMORY (
SELECT
t.id AS ticketFk
FROM expedition e
INNER JOIN ticket t ON t.id = e.ticketFk
LEFT JOIN ticketState ts ON ts.ticketFk = t.id
WHERE
ts.alertLevel = 2
AND t.warehouseFk = vWarehouseFk
AND t.routeFk = vRouteFk
AND DATE(t.shipped) BETWEEN DATE_ADD(vDateTo, INTERVAL -2 DAY) AND vDateTo
AND t.refFk IS NULL
GROUP BY e.ticketFk);
CALL ticketClosure();
DROP TEMPORARY TABLE tmp.ticketClosure;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketClosureTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketClosureTicket`(vTicketFk INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.ticketClosure;
CREATE TEMPORARY TABLE tmp.ticketClosure ENGINE = MEMORY (
SELECT
t.id AS ticketFk
FROM expedition e
INNER JOIN ticket t ON t.id = e.ticketFk
LEFT JOIN ticketState ts ON ts.ticketFk = t.id
WHERE
ts.alertLevel = 2
AND t.id = vTicketFk
AND t.refFk IS NULL
GROUP BY e.ticketFk);
CALL ticketClosure();
DROP TEMPORARY TABLE tmp.ticketClosure;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketClosureWarehouse` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketClosureWarehouse`(vWarehouseFk INT, vDateTo DATE)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.ticketClosure;
CREATE TEMPORARY TABLE ticketClosure ENGINE = MEMORY(
SELECT
t.id AS ticketFk
FROM expedition e
INNER JOIN ticket t ON t.id = e.ticketFk
LEFT JOIN ticketState ts ON ts.ticketFk = t.id
WHERE
ts.alertLevel = 2
AND t.warehouseFk = vWarehouseFk
AND DATE(t.shipped) BETWEEN DATE_ADD(vDateTo, INTERVAL -2 DAY) AND vDateTo
AND t.refFk IS NULL
GROUP BY e.ticketFk);
CALL ticketClosure();
DROP TEMPORARY TABLE tmp.ticketClosure;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketCreate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketCreate`(
IN vClientId INT
, IN vShipped DATE
, IN vWarehouseId INT
, IN vCompanyFk INT
, IN vAddressFk INT
, IN vAgencyType INT
, IN vRouteFk INT
, IN vlanded DATE
, OUT vNewTicket INT)
BEGIN
DECLARE vClientOrnamentales INT DEFAULT 5270;
DECLARE vCompanyOrn INT DEFAULT 1381;
DECLARE vProvinceName VARCHAR(255);
SELECT p.name INTO vProvinceName
FROM vn.client c
JOIN province p ON p.id = c.province
WHERE c.id = vClientId;
IF vProvinceName IN ('SANTA CRUZ DE TENERIFE','LAS PALMAS DE GRAN CANARIA') AND vClientId <> vClientOrnamentales THEN
SET vCompanyFk = vCompanyOrn;
END IF;
INSERT INTO vn2008.Tickets (
Id_Cliente,
Fecha,
Id_Consigna,
Id_Agencia,
Alias,
warehouse_id,
Id_Ruta,
empresa_id,
landing)
SELECT
vClientId,
vShipped,
a.id,
IF(vAgencyType,vAgencyType,a.agencyFk),
a.nickname,
vWarehouseId,
IF(vRouteFk,vRouteFk,NULL),
vCompanyFk,
vlanded
FROM address a
JOIN agencyMode am ON am.id = a.agencyFk
WHERE IF(vAddressFk, a.id = vAddressFk, a.defaultAddress != 0)
AND a.clientFk = vClientId
LIMIT 1;
SET vNewTicket = LAST_INSERT_ID();
INSERT INTO ticketObservation(ticketFk, observationTypeFk, description)
SELECT vNewTicket,ao.observationTypeFk, ao.description
FROM addressObservation ao
JOIN address a ON a.id =ao.addressFk
WHERE a.clientFk = vClientId
AND IF(vAddressFk, a.id = vAddressFk, a.defaultAddress != 0);
CALL logAdd(vNewTicket,'insert','ticket',concat('CREA EL TICKET',' ',vNewTicket));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketToInvoiceByAddress` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketToInvoiceByAddress`(
vStarted DATE,
vEnded DATETIME,
vAddress INT,
vCompany INT
)
BEGIN
SET vEnded = util.dayEnd(vEnded);
DROP TEMPORARY TABLE IF EXISTS vn.ticketToInvoice;
CREATE TEMPORARY TABLE vn.ticketToInvoice
SELECT id
FROM vn.ticket
WHERE addressFk = vAddress
AND companyFk = vCompany
AND shipped BETWEEN vStarted AND vEnded
AND refFk IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketToInvoiceByClient` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketToInvoiceByClient`(
vStarted DATE,
vEnded DATETIME,
vClient INT,
vCompany INT
)
BEGIN
SET vEnded = util.dayEnd(vEnded);
DROP TEMPORARY TABLE IF EXISTS vn.ticketToInvoice;
CREATE TEMPORARY TABLE vn.ticketToInvoice
SELECT id
FROM vn.ticket
WHERE clientFk = vClient
AND companyFk = vCompany
AND shipped BETWEEN vStarted AND vEnded
AND refFk IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketToInvoiceByDate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketToInvoiceByDate`(
vStarted DATE,
vEnded DATETIME,
vClient INT,
vCompany INT
)
BEGIN
SET vEnded = util.dayEnd(vEnded);
DROP TEMPORARY TABLE IF EXISTS vn.ticketToInvoice;
CREATE TEMPORARY TABLE vn.ticketToInvoice
SELECT id
FROM vn.ticket
WHERE clientFk = vClient
AND companyFk = vCompany
AND shipped BETWEEN vStarted AND vEnded
AND refFk IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketToInvoiceByRef` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketToInvoiceByRef`(IN vInvoiceRef VARCHAR(15))
BEGIN
DECLARE vInvoice INT;
DECLARE vCountry INT;
DECLARE vTaxArea VARCHAR(15);
DECLARE vSpainCountryCode INT DEFAULT 1;
SELECT id
INTO vInvoice
FROM vn.invoiceOut
WHERE ref = vInvoiceRef;
SELECT s.countryFk
INTO vCountry
FROM vn.supplier s
JOIN vn.invoiceOut io ON io.companyFk = s.id
WHERE io.id = vInvoice;
SELECT IF(
c.isEqualizated
AND c.countryFk = vSpainCountryCode
AND i.taxAreaFk = 'NATIONAL',
'EQU',
i.taxAreaFk
)
INTO vTaxArea
FROM vn.invoiceOutSerial i
JOIN vn.invoiceOut io ON io.serial = i.code
JOIN vn.client c ON c.id = io.clientFk
WHERE io.id = vInvoice;
DROP TEMPORARY TABLE IF EXISTS vn.ticketToInvoice;
CREATE TEMPORARY TABLE vn.ticketToInvoice
SELECT id
FROM vn.ticket
WHERE refFk = vInvoiceRef;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketToInvoiceByTicket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketToInvoiceByTicket`(vTicket INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS vn.ticketToInvoice;
CREATE TEMPORARY TABLE vn.ticketToInvoice
SELECT id
FROM vn.ticket
WHERE id = vTicket
AND refFk IS NULL;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketTrackingAdd` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketTrackingAdd`(vTicketFk INT, vState VARCHAR(25) CHARSET UTF8, vWorkerFk INT)
BEGIN
INSERT INTO ticketTracking (stateFk, ticketFk, workerFk)
SELECT s.id, vTicketFk, vWorkerFk FROM state s WHERE s.code = vState;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `workerDisable` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` PROCEDURE `workerDisable`(vUserId int)
BEGIN
DELETE FROM account.account
WHERE user_id = vUserId;
UPDATE account.user
SET role = 2
WHERE id = vUserId;
UPDATE `client`
SET credit = 0
WHERE id = vUserId;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `workingHours` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `workingHours`(username varchar(255), logon boolean)
BEGIN
DECLARE userid int(11);
SELECT vn.getUserId(username) INTO userid;
SELECT username, userid;
IF userid IS NOT NULL THEN
IF (logon) THEN
CALL vn.workingHoursTimeIn(userid);
ELSE
CALL vn.workingHoursTimeOut(userid);
END IF;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `workingHoursTimeIn` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `workingHoursTimeIn`(vUserId INT(11))
BEGIN
INSERT INTO vn.workingHours (timeIn, userId)
VALUES (NOW(),vUserId);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `workingHoursTimeOut` */;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `workingHoursTimeOut`(vUserId INT(11))
BEGIN
UPDATE vn.workingHours
SET timeOut = NOW()
WHERE userId = vUserId
AND DATE(timeIn) = CURDATE();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `vn` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Current Database: `salix`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `salix` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `salix`;
--
-- Table structure for table `ACL`
--
DROP TABLE IF EXISTS `ACL`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ACL` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`model` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
`property` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
`accessType` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
`permission` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
`principalType` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
`principalId` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `AccessToken`
--
DROP TABLE IF EXISTS `AccessToken`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `AccessToken` (
`id` varchar(255) CHARACTER SET utf8 NOT NULL,
`ttl` int(11) DEFAULT NULL,
`scopes` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
`created` datetime DEFAULT NULL,
`userId` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `Account`
--
DROP TABLE IF EXISTS `Account`;
/*!50001 DROP VIEW IF EXISTS `Account`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Account` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `password`,
1 AS `roleFk`,
1 AS `active`,
1 AS `email`,
1 AS `created`,
1 AS `updated`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Accounting`
--
DROP TABLE IF EXISTS `Accounting`;
/*!50001 DROP VIEW IF EXISTS `Accounting`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Accounting` AS SELECT
1 AS `id`,
1 AS `bank`,
1 AS `account`,
1 AS `accountingTypeFk`,
1 AS `entityFk`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Address`
--
DROP TABLE IF EXISTS `Address`;
/*!50001 DROP VIEW IF EXISTS `Address`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Address` AS SELECT
1 AS `id`,
1 AS `consignee`,
1 AS `street`,
1 AS `city`,
1 AS `postcode`,
1 AS `provinceFk`,
1 AS `phone`,
1 AS `mobile`,
1 AS `isEnabled`,
1 AS `isDefaultAddress`,
1 AS `clientFk`,
1 AS `defaultAgencyFk`,
1 AS `longitude`,
1 AS `latitude`,
1 AS `isEqualizated`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Agency`
--
DROP TABLE IF EXISTS `Agency`;
/*!50001 DROP VIEW IF EXISTS `Agency`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Agency` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `warehouseFk`,
1 AS `isVolumetric`,
1 AS `bankFk`,
1 AS `warehouseAliasFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `AgencyMode`
--
DROP TABLE IF EXISTS `AgencyMode`;
/*!50001 DROP VIEW IF EXISTS `AgencyMode`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `AgencyMode` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `description`,
1 AS `agencyTypeFk`,
1 AS `m3`,
1 AS `agencyFk`,
1 AS `inflation`,
1 AS `sendMailTo`,
1 AS `isForTicket`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Bank`
--
DROP TABLE IF EXISTS `Bank`;
/*!50001 DROP VIEW IF EXISTS `Bank`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Bank` AS SELECT
1 AS `id`,
1 AS `bank`,
1 AS `account`,
1 AS `cash`,
1 AS `entityFk`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `City`
--
DROP TABLE IF EXISTS `City`;
/*!50001 DROP VIEW IF EXISTS `City`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `City` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `provinceFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Client`
--
DROP TABLE IF EXISTS `Client`;
/*!50001 DROP VIEW IF EXISTS `Client`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Client` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `fi`,
1 AS `socialName`,
1 AS `contact`,
1 AS `street`,
1 AS `city`,
1 AS `postcode`,
1 AS `provinceFk`,
1 AS `countryFk`,
1 AS `email`,
1 AS `phone`,
1 AS `mobile`,
1 AS `fax`,
1 AS `active`,
1 AS `discount`,
1 AS `credit`,
1 AS `creditInsurance`,
1 AS `iban`,
1 AS `dueDay`,
1 AS `equalizationTax`,
1 AS `hasToInvoice`,
1 AS `isToBeMailed`,
1 AS `payMethodFk`,
1 AS `salesPersonFk`,
1 AS `contactChannelFk`,
1 AS `sepaVnl`,
1 AS `coreVnl`,
1 AS `coreVnh`,
1 AS `eypbc`,
1 AS `quality`,
1 AS `vies`,
1 AS `isRelevant`,
1 AS `typeFk`,
1 AS `accountingAccount`,
1 AS `created`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ClientCredit`
--
DROP TABLE IF EXISTS `ClientCredit`;
/*!50001 DROP VIEW IF EXISTS `ClientCredit`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ClientCredit` AS SELECT
1 AS `id`,
1 AS `clientFk`,
1 AS `employeeFk`,
1 AS `amount`,
1 AS `created`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ClientCreditLimit`
--
DROP TABLE IF EXISTS `ClientCreditLimit`;
/*!50001 DROP VIEW IF EXISTS `ClientCreditLimit`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ClientCreditLimit` AS SELECT
1 AS `id`,
1 AS `maxAmount`,
1 AS `roleFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ClientObservation`
--
DROP TABLE IF EXISTS `ClientObservation`;
/*!50001 DROP VIEW IF EXISTS `ClientObservation`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ClientObservation` AS SELECT
1 AS `id`,
1 AS `clientFk`,
1 AS `employeeFk`,
1 AS `text`,
1 AS `created`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ClientType`
--
DROP TABLE IF EXISTS `ClientType`;
/*!50001 DROP VIEW IF EXISTS `ClientType`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ClientType` AS SELECT
1 AS `id`,
1 AS `code`,
1 AS `type`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ContactChannel`
--
DROP TABLE IF EXISTS `ContactChannel`;
/*!50001 DROP VIEW IF EXISTS `ContactChannel`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ContactChannel` AS SELECT
1 AS `id`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Country`
--
DROP TABLE IF EXISTS `Country`;
/*!50001 DROP VIEW IF EXISTS `Country`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Country` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `inCee`,
1 AS `code`,
1 AS `currencyFk`,
1 AS `realCountryFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `CreditClassification`
--
DROP TABLE IF EXISTS `CreditClassification`;
/*!50001 DROP VIEW IF EXISTS `CreditClassification`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `CreditClassification` AS SELECT
1 AS `id`,
1 AS `clientFk`,
1 AS `started`,
1 AS `ended`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Employee`
--
DROP TABLE IF EXISTS `Employee`;
/*!50001 DROP VIEW IF EXISTS `Employee`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Employee` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `surname`,
1 AS `userFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `FakeProduction`
--
DROP TABLE IF EXISTS `FakeProduction`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `FakeProduction` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ticketFk` int(11) NOT NULL DEFAULT '0',
`clientFk` int(11) NOT NULL DEFAULT '0',
`client` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`date` date DEFAULT NULL,
`hour` time DEFAULT NULL,
`city` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`province` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`provinceFk` smallint(6) unsigned NOT NULL DEFAULT '0',
`agency` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`agencyFk` smallint(6) NOT NULL,
`lines` int(1) NOT NULL DEFAULT '0',
`m3` decimal(5,2) NOT NULL DEFAULT '0.00',
`problems` int(1) NOT NULL DEFAULT '0',
`problem` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`stateFk` bigint(4) NOT NULL DEFAULT '0',
`workerfk` int(11) NOT NULL DEFAULT '0',
`worker` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`salesPersonFk` int(11) NOT NULL DEFAULT '0',
`salesPerson` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`state` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`boxes` double DEFAULT NULL,
`routeFk` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `Message`
--
DROP TABLE IF EXISTS `Message`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `Message` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uuid` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`sender` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`recipient` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`message` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`sendDate` datetime DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `MessageInbox`
--
DROP TABLE IF EXISTS `MessageInbox`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `MessageInbox` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uuid` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`sender` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`recipient` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`finalRecipient` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`message` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL,
`sendDate` datetime DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `PayMethod`
--
DROP TABLE IF EXISTS `PayMethod`;
/*!50001 DROP VIEW IF EXISTS `PayMethod`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `PayMethod` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `graceDays`,
1 AS `outstandingDebt`,
1 AS `ibanRequired`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Province`
--
DROP TABLE IF EXISTS `Province`;
/*!50001 DROP VIEW IF EXISTS `Province`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Province` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `countryFk`,
1 AS `warehouseFk`,
1 AS `zoneFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Role`
--
DROP TABLE IF EXISTS `Role`;
/*!50001 DROP VIEW IF EXISTS `Role`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Role` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `description`,
1 AS `created`,
1 AS `modified`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `RoleMapping`
--
DROP TABLE IF EXISTS `RoleMapping`;
/*!50001 DROP VIEW IF EXISTS `RoleMapping`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `RoleMapping` AS SELECT
1 AS `id`,
1 AS `principalType`,
1 AS `principalId`,
1 AS `roleId`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Route`
--
DROP TABLE IF EXISTS `Route`;
/*!50001 DROP VIEW IF EXISTS `Route`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Route` AS SELECT
1 AS `id`,
1 AS `date`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `State`
--
DROP TABLE IF EXISTS `State`;
/*!50001 DROP VIEW IF EXISTS `State`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `State` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `order`,
1 AS `alertLevel`,
1 AS `code`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Ticket`
--
DROP TABLE IF EXISTS `Ticket`;
/*!50001 DROP VIEW IF EXISTS `Ticket`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Ticket` AS SELECT
1 AS `id`,
1 AS `agencyFk`,
1 AS `employeeFk`,
1 AS `date`,
1 AS `hour`,
1 AS `clientFk`,
1 AS `addressFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `TicketState`
--
DROP TABLE IF EXISTS `TicketState`;
/*!50001 DROP VIEW IF EXISTS `TicketState`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `TicketState` AS SELECT
1 AS `id`,
1 AS `ticketFk`,
1 AS `stateFk`,
1 AS `employeeFk`,
1 AS `updated`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Vehicle`
--
DROP TABLE IF EXISTS `Vehicle`;
/*!50001 DROP VIEW IF EXISTS `Vehicle`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Vehicle` AS SELECT
1 AS `id`,
1 AS `numberPlate`,
1 AS `tradeMark`,
1 AS `model`,
1 AS `companyFk`,
1 AS `warehouseFk`,
1 AS `description`,
1 AS `m3`,
1 AS `isActive`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Warehouse`
--
DROP TABLE IF EXISTS `Warehouse`;
/*!50001 DROP VIEW IF EXISTS `Warehouse`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Warehouse` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `tpv`,
1 AS `inventory`,
1 AS `isManaged`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `WarehouseAlias`
--
DROP TABLE IF EXISTS `WarehouseAlias`;
/*!50001 DROP VIEW IF EXISTS `WarehouseAlias`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `WarehouseAlias` AS SELECT
1 AS `id`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Worker`
--
DROP TABLE IF EXISTS `Worker`;
/*!50001 DROP VIEW IF EXISTS `Worker`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Worker` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `surname`,
1 AS `userFk`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `Zone`
--
DROP TABLE IF EXISTS `Zone`;
/*!50001 DROP VIEW IF EXISTS `Zone`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `Zone` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `printingOrder`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `user`
--
DROP TABLE IF EXISTS `user`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`realm` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
`username` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
`password` varchar(512) CHARACTER SET utf8 NOT NULL,
`email` varchar(512) CHARACTER SET utf8 NOT NULL,
`emailVerified` tinyint(1) DEFAULT NULL,
`verificationToken` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'salix'
--
--
-- Dumping routines for database 'salix'
--
/*!50003 DROP PROCEDURE IF EXISTS `production_control_source` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `production_control_source`(IN idWarehouse INT, IN scopeDays TINYINT)
BEGIN
call vn2008.production_control_source(idWarehouse, scopeDays);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Current Database: `bs`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `bs` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `bs`;
--
-- Temporary view structure for view `VentasPorCliente`
--
DROP TABLE IF EXISTS `VentasPorCliente`;
/*!50001 DROP VIEW IF EXISTS `VentasPorCliente`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `VentasPorCliente` AS SELECT
1 AS `Id_Cliente`,
1 AS `VentaBasica`,
1 AS `year`,
1 AS `month`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `bancos_evolution`
--
DROP TABLE IF EXISTS `bancos_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `bancos_evolution` (
`Fecha` date NOT NULL,
`Id_Banco` int(11) NOT NULL,
`saldo` double NOT NULL DEFAULT '0',
`quilla` double NOT NULL DEFAULT '0',
`deuda` double NOT NULL DEFAULT '0',
`liquidez` double NOT NULL DEFAULT '0',
`disponibilidad ajena` double NOT NULL DEFAULT '0',
`saldo_aux` double NOT NULL DEFAULT '0' COMMENT 'Saldo auxiliar para el calculo de lo dispuesto en las polizas',
PRIMARY KEY (`Fecha`,`Id_Banco`),
KEY `fk_banco_evolution_idx` (`Id_Banco`),
CONSTRAINT `fk_banco_evolution` FOREIGN KEY (`Id_Banco`) REFERENCES `vn2008`.`Bancos` (`Id_Banco`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacena los saldos bancarios';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `carteras`
--
DROP TABLE IF EXISTS `carteras`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `carteras` (
`CodigoTrabajador` varchar(3) CHARACTER SET latin1 NOT NULL,
`Año` int(11) NOT NULL,
`Mes` int(11) NOT NULL,
`Peso` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`CodigoTrabajador`,`Año`,`Mes`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `compradores`
--
DROP TABLE IF EXISTS `compradores`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `compradores` (
`Id_Trabajador` int(11) NOT NULL,
`año` int(4) NOT NULL,
`semana` int(2) NOT NULL,
`importe` decimal(10,2) DEFAULT NULL,
`comision` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`Id_Trabajador`,`año`,`semana`),
CONSTRAINT `comprador_trabajador` FOREIGN KEY (`Id_Trabajador`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `compradores_evolution`
--
DROP TABLE IF EXISTS `compradores_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `compradores_evolution` (
`Id_Trabajador` int(11) NOT NULL,
`fecha` date NOT NULL,
`importe` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`Id_Trabajador`,`fecha`),
CONSTRAINT `evo_trabajador` FOREIGN KEY (`Id_Trabajador`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `experienceIberflora2016`
--
DROP TABLE IF EXISTS `experienceIberflora2016`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `experienceIberflora2016` (
`Id_Cliente` int(11) NOT NULL,
`isVisitor` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`Id_Cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Lista de clientes que participan en el estudio sobre la mejora del consumo tras la visita a las instalaciones de Silla';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `fondo_maniobra`
--
DROP TABLE IF EXISTS `fondo_maniobra`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `fondo_maniobra` (
`fecha` date NOT NULL,
`fondo` double DEFAULT NULL,
`clientes_facturas` double DEFAULT NULL,
`clientes_cobros` double DEFAULT NULL,
`proveedores_facturas` double DEFAULT NULL,
`proveedores_pagos` double DEFAULT NULL,
`fondo_medio` double DEFAULT NULL,
PRIMARY KEY (`fecha`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `manaCustomer`
--
DROP TABLE IF EXISTS `manaCustomer`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `manaCustomer` (
`Id_Cliente` int(11) NOT NULL,
`Mana` decimal(10,0) NOT NULL DEFAULT '0',
`dated` date NOT NULL,
PRIMARY KEY (`Id_Cliente`,`dated`),
CONSTRAINT `cliente_fk` FOREIGN KEY (`Id_Cliente`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mana_spellers`
--
DROP TABLE IF EXISTS `mana_spellers`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mana_spellers` (
`Id_Trabajador` int(11) NOT NULL,
`size` int(11) NOT NULL DEFAULT '300',
`used` int(11) NOT NULL DEFAULT '0',
`prices_modifier_rate` double NOT NULL DEFAULT '0',
`prices_modifier_activated` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`Id_Trabajador`),
KEY `fk_mana_spellers_Trabajadores_idx` (`Id_Trabajador`),
CONSTRAINT `fk_mana_spellers_Trabajadores` FOREIGN KEY (`Id_Trabajador`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `bs`.`mana_spellers_AFTER_INSERT` AFTER INSERT ON `mana_spellers` FOR EACH ROW
BEGIN
REPLACE vn2008.Permisos(Id_Grupo, Id_Trabajador)
VALUES(6, NEW.Id_Trabajador);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Table structure for table `nightTask`
--
DROP TABLE IF EXISTS `nightTask`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `nightTask` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`started` datetime DEFAULT NULL,
`finished` datetime DEFAULT NULL,
`order` int(11) DEFAULT NULL,
`schema` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`procedure` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `bs`.`nightTaskBeforeInsert` BEFORE INSERT ON `nightTask` FOR EACH ROW
BEGIN
IF NOT (NEW.`schema`REGEXP '^[0-9a-zA-Z_]+$') OR NOT (NEW.`procedure`REGEXP '^[0-9a-zA-Z_]+$') THEN
CALL util.throw('ONLY_ALPHANUMERICS_ALLOWED');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `bs`.`nightTaskBeforeUpdate` BEFORE UPDATE ON `nightTask` FOR EACH ROW
BEGIN
IF NOT (NEW.`schema`REGEXP '^[0-9a-zA-Z_]+$') OR NOT (NEW.`procedure`REGEXP '^[0-9a-zA-Z_]+$') THEN
CALL util.throw('ONLY_ALPHANUMERICS_ALLOWED');
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Temporary view structure for view `v_ventas`
--
DROP TABLE IF EXISTS `v_ventas`;
/*!50001 DROP VIEW IF EXISTS `v_ventas`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `v_ventas` AS SELECT
1 AS `importe`,
1 AS `recargo`,
1 AS `year`,
1 AS `month`,
1 AS `week`,
1 AS `day`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `vendedores`
--
DROP TABLE IF EXISTS `vendedores`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `vendedores` (
`Id_Trabajador` int(11) NOT NULL,
`año` int(4) NOT NULL,
`mes` int(2) NOT NULL,
`importe` decimal(10,2) DEFAULT NULL,
`comision` decimal(10,2) DEFAULT NULL,
`comisionArrendada` decimal(10,2) DEFAULT NULL COMMENT 'comision proveniente de clientes que han sido donados. Ver tabla Clientes_cedidos',
`comisionCedida` decimal(10,2) DEFAULT NULL COMMENT 'comision generada por los clientes que han sido donados. Ver tabla Clientes_cedidos',
PRIMARY KEY (`Id_Trabajador`,`año`,`mes`),
CONSTRAINT `trabajador_trabajador` FOREIGN KEY (`Id_Trabajador`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `vendedores_evolution`
--
DROP TABLE IF EXISTS `vendedores_evolution`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `vendedores_evolution` (
`Id_Trabajador` int(11) NOT NULL,
`fecha` date NOT NULL,
`importe` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`Id_Trabajador`,`fecha`),
CONSTRAINT `evo_vendedor_trabajador` FOREIGN KEY (`Id_Trabajador`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ventas`
--
DROP TABLE IF EXISTS `ventas`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ventas` (
`Id_Movimiento` int(11) NOT NULL,
`importe` decimal(10,3) NOT NULL DEFAULT '0.000',
`recargo` decimal(10,3) NOT NULL DEFAULT '0.000',
`fecha` date NOT NULL,
`tipo_id` smallint(5) unsigned NOT NULL,
`Id_Cliente` int(11) NOT NULL DEFAULT '1',
`empresa_id` smallint(5) unsigned NOT NULL DEFAULT '442',
PRIMARY KEY (`Id_Movimiento`),
KEY `tip_to_tip_idx` (`tipo_id`),
KEY `clientes_bs_ventas_idx` (`Id_Cliente`),
KEY `empresa_bs_ventas_idx` (`empresa_id`),
KEY `fecha_bs` (`fecha`),
CONSTRAINT `clientes_bs_ventas` FOREIGN KEY (`Id_Cliente`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `empresa_bs_ventas` FOREIGN KEY (`empresa_id`) REFERENCES `vn2008`.`empresa` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `mov_to_mov` FOREIGN KEY (`Id_Movimiento`) REFERENCES `vn2008`.`Movimientos` (`Id_Movimiento`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `tip_to_tip` FOREIGN KEY (`tipo_id`) REFERENCES `vn2008`.`Tipos` (`tipo_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ventas_contables`
--
DROP TABLE IF EXISTS `ventas_contables`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ventas_contables` (
`year` int(4) NOT NULL,
`month` int(2) NOT NULL,
`venta` decimal(10,2) DEFAULT NULL,
`grupo` int(1) NOT NULL,
`reino_id` int(10) unsigned NOT NULL,
`tipo_id` smallint(5) unsigned NOT NULL,
`empresa_id` int(4) NOT NULL,
`gasto` varchar(10) CHARACTER SET latin1 NOT NULL,
PRIMARY KEY (`year`,`month`,`grupo`,`reino_id`,`tipo_id`,`empresa_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'bs'
--
--
-- Dumping routines for database 'bs'
--
/*!50003 DROP PROCEDURE IF EXISTS `bancos_evolution_add` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bancos_evolution_add`()
BEGIN
DECLARE vCurrentDate DATE;
DECLARE vStartingDate DATE DEFAULT '2015-01-01';
DECLARE vMaxDate DATE DEFAULT TIMESTAMPADD(MONTH, 2, CURDATE());
SELECT max(Fecha)
INTO vStartingDate
FROM bs.bancos_evolution
WHERE Fecha > '2015-01-01';
DELETE FROM bs.bancos_evolution
WHERE Fecha > vStartingDate;
SET vCurrentDate = vStartingDate;
WHILE vCurrentDate < vMaxDate DO
IF day(vCurrentDate) mod 28 = 0 then
SELECT vCurrentDate;
end if;
REPLACE bs.bancos_evolution( Fecha
,Id_Banco
,saldo)
SELECT vCurrentDate
, Id_Banco
, sum(saldo)
FROM
(
SELECT Id_Banco
,saldo_aux as saldo
FROM bs.bancos_evolution
WHERE Fecha = TIMESTAMPADD(DAY,-1,vCurrentDate)
UNION ALL
SELECT c.Id_Banco, IFNULL(sum(Entrada),0) - ifnull(sum(Salida),0) as saldo
FROM vn2008.Cajas c
JOIN vn2008.Bancos b using(Id_Banco)
WHERE cash IN (0,3)
AND Cajafecha = vCurrentDate
AND (Serie = 'MB' OR cash = 3)
GROUP BY Id_Banco
UNION ALL
SELECT id_banco, - importe
FROM vn2008.pago
WHERE fecha = vCurrentDate
AND fecha >= CURDATE()
AND NOT conciliado
UNION ALL
SELECT Id_Banco, Entregado
FROM vn2008.Recibos
WHERE Fechacobro = vCurrentDate
AND Fechacobro > CURDATE()
UNION ALL
SELECT sp.Id_Banco, Importe
FROM vn2008.Saldos_Prevision sp
JOIN vn2008.Bancos b using(Id_Banco)
WHERE cash IN (0,3)
AND Fecha = vCurrentDate
)sub
GROUP BY Id_Banco;
UPDATE bs.bancos_evolution be
SET saldo_aux = saldo;
UPDATE bs.bancos_evolution be
LEFT JOIN
(
SELECT Id_Banco, - sum(importe) as quilla
FROM vn2008.Bancos_poliza
WHERE vCurrentDate between apertura AND IFNULL(cierre, vCurrentDate)
GROUP BY Id_Banco
) sub using(Id_Banco)
SET be.quilla = sub.quilla
WHERE be.Fecha = vCurrentDate;
SET vCurrentDate = TIMESTAMPADD(DAY,1,vCurrentDate);
END WHILE;
UPDATE bs.bancos_evolution be
JOIN vn2008.Bancos using(Id_Banco)
SET be.deuda = IF(cash = 3, be.saldo_aux, 0)
, be.saldo = IF(cash = 3, 0, be.saldo_aux)
WHERE Fecha >= vStartingDate;
update bs.bancos_evolution set liquidez = saldo - quilla + deuda WHERE Fecha >= vStartingDate;
update bs.bancos_evolution set `disponibilidad ajena` = - quilla + deuda WHERE Fecha >= vStartingDate;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `campaignComparative` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `campaignComparative`(vDateFrom DATE, vDateTo DATE)
BEGIN
SELECT
workerName,
id,
name,
CAST(SUM(previousAmmount) AS DECIMAL(10, 0)) AS previousAmmount,
CAST(SUM(currentAmmount) AS DECIMAL(10, 0)) AS currentAmmount
FROM (
(SELECT
CONCAT(w.firstname, ' ', w.name) AS workerName,
c.id,
c.name,
SUM(v.importe) AS previousAmmount,
0 currentAmmount
FROM bs.ventas v
INNER JOIN vn.`client` c ON v.Id_Cliente = c.id
INNER JOIN vn.worker w ON c.workerFk = w.id
WHERE v.fecha BETWEEN DATE_ADD(vDateFrom, INTERVAL - 1 YEAR)
AND DATE_ADD(vDateTo, INTERVAL - 1 YEAR)
GROUP BY w.id, v.Id_Cliente)
UNION ALL
(SELECT
CONCAT(w.firstname, ' ', w.name) AS workerName,
c.id,
c.name,
0 AS previousAmmount,
SUM(s.quantity * s.price) AS currentAmmount
FROM vn.sale s
JOIN vn.ticket t ON t.id = s.ticketFk
JOIN vn.client c ON c.id = t.clientFk
JOIN vn.worker w ON c.workerFk = w.id
WHERE t.shipped BETWEEN vDateFrom
AND vDateTo
GROUP BY w.id, c.id)
) comparative
GROUP BY workerName, id
HAVING (previousAmmount <> 0 OR currentAmmount <> 0)
ORDER BY workerName, id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `carteras_add` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `carteras_add`()
BEGIN
DELETE FROM bs.carteras
WHERE Año >= YEAR(CURDATE()) - 1;
INSERT INTO bs.carteras(Año,Mes,CodigoTrabajador,Peso)
SELECT year as Año, month as Mes, CodigoTrabajador, sum(importe) as Peso
FROM vn2008.time t
JOIN bs.ventas v on t.date = v.fecha
JOIN vn2008.Clientes c on c.Id_Cliente = v.Id_Cliente
JOIN vn2008.Trabajadores tr on tr.Id_Trabajador = c.Id_Trabajador
WHERE t.year >= YEAR(CURDATE()) - 1
GROUP BY CodigoTrabajador, Año, Mes;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `comercialesCompleto` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `comercialesCompleto`(IN vWorker INT)
BEGIN
SELECT
c.Id_Cliente id_cliente,
c.calidad,
c.Cliente cliente,
cr.recobro * 100 tarifa,
c.Telefono telefono,
c.movil,
c.POBLACION poblacion,
p.`name` provincia,
vn2008.red(f.futur) futur,
c.Credito credito,
pm.`name` forma_pago,
vn2008.red(c365 / 12) consumo_medio365,
vn2008.red(c365) consumo365,
vn2008.red(CmLy.peso) peso_mes_año_pasado,
vn2008.red(CmLy.peso * 1.19) objetivo,
tr.CodigoTrabajador,
vn2008.red(mes_actual.consumo) consumoMes,
vn2008.red(IFNULL(mes_actual.consumo, 0) - IFNULL(CmLy.peso * 1.19, 0)) como_lo_llevo,
DATE(LastTicket) ultimo_ticket,
dead.muerto,
g.Greuge,
cr.recobro
FROM
vn2008.Clientes c
LEFT JOIN
(SELECT Id_Cliente, Greuge
FROM bi.Greuge_Evolution
WHERE Fecha = (SELECT MAX(Fecha) FROM bi.Greuge_Evolution)
) g ON g.Id_Cliente = c.Id_Cliente
LEFT JOIN
vn2008.province p ON p.province_id = c.province_id
JOIN
vn2008.pay_met pm ON pm.id = c.pay_met_id
LEFT JOIN
vn2008.Trabajadores tr ON c.Id_Trabajador = tr.Id_Trabajador
LEFT JOIN
bi.claims_ratio cr on cr.Id_Cliente = c.Id_Cliente
LEFT JOIN
(SELECT
v.Id_Cliente, SUM(importe) c365
FROM
bs.ventas v
INNER JOIN vn2008.Clientes c USING (Id_Cliente)
LEFT JOIN vn2008.Trabajadores tr ON c.Id_Trabajador = tr.Id_Trabajador
WHERE
(c.Id_Trabajador = vWorker OR tr.boss = vWorker)
AND v.fecha BETWEEN TIMESTAMPADD(YEAR, - 1, CURDATE()) AND CURDATE()
GROUP BY v.Id_Cliente) c365 ON c365.Id_Cliente = c.Id_Cliente
LEFT JOIN
(SELECT
Id_Cliente, SUM(importe) consumo
FROM
bs.ventas v
INNER JOIN vn2008.Clientes c USING (Id_Cliente)
LEFT JOIN vn2008.Trabajadores tr ON c.Id_Trabajador = tr.Id_Trabajador
WHERE
(c.Id_Trabajador = vWorker OR tr.boss = vWorker)
AND (v.fecha BETWEEN TIMESTAMPADD(DAY, - DAY(CURDATE()) + 1, CURDATE()) AND CURDATE() - 1)
GROUP BY Id_Cliente) mes_actual ON mes_actual.Id_Cliente = c.Id_Cliente
LEFT JOIN
(SELECT
t.Id_Cliente,
SUM(m.preu * m.Cantidad * (1 - m.Descuento / 100)) futur
FROM
vn2008.Tickets t
JOIN vn2008.Clientes c ON c.Id_Cliente = t.Id_Cliente
JOIN vn2008.Movimientos m ON m.Id_Ticket = t.Id_Ticket
LEFT JOIN vn2008.Trabajadores tr ON c.Id_Trabajador = tr.Id_Trabajador
WHERE
(c.Id_Trabajador = vWorker OR tr.boss = vWorker)
AND DATE(Fecha) BETWEEN CURDATE() AND LAST_DAY(CURDATE())
GROUP BY Id_Cliente) f ON c.Id_Cliente = f.Id_Cliente
LEFT JOIN
(SELECT
MAX(t.Fecha) LastTicket, c.Id_Cliente
FROM
vn2008.Tickets t
JOIN vn2008.Clientes c ON c.Id_cliente = t.Id_Cliente
LEFT JOIN vn2008.Trabajadores tr ON c.Id_Trabajador = tr.Id_Trabajador
WHERE
(c.Id_Trabajador = vWorker OR tr.boss = vWorker)
GROUP BY t.Id_Cliente) LastTicket ON LastTicket.Id_Cliente = c.Id_Cliente
LEFT JOIN
(SELECT
SUM(importe) peso, c.Id_Cliente
FROM
bs.ventas v
JOIN vn2008.Clientes c ON c.Id_Cliente = v.Id_Cliente
LEFT JOIN vn2008.Trabajadores tr ON c.Id_Trabajador = tr.Id_Trabajador
WHERE
MONTH(fecha) = MONTH(CURDATE())
AND YEAR(fecha) = YEAR(CURDATE()) - 1
AND (c.Id_Trabajador = vWorker OR tr.boss = vWorker)
GROUP BY c.Id_Cliente) CmLy ON CmLy.Id_Cliente = c.Id_Cliente
LEFT JOIN
(SELECT
c.Id_Cliente,
IF(MAX(Fecha) < DATE_FORMAT(TIMESTAMPADD(MONTH, - 1, CURDATE()), '%Y- %m-01'), TRUE, FALSE) muerto
FROM
vn2008.Facturas f
JOIN vn2008.Clientes c ON c.Id_cliente = f.Id_Cliente
LEFT JOIN vn2008.Trabajadores tr ON c.Id_Trabajador = tr.Id_Trabajador
WHERE
(c.Id_Trabajador = vWorker OR tr.boss = vWorker)
GROUP BY Id_Cliente) dead ON dead.Id_Cliente = c.Id_Cliente
WHERE
(c.Id_Trabajador = vWorker OR tr.boss = vWorker);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `compradores_add` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `compradores_add`(IN intYEAR INT, IN intWEEK_START INT, IN intWEEK_END INT)
BEGIN
REPLACE bs.compradores
SELECT tp.Id_Trabajador
, intYEAR as año
, tm.week as semana
, sum(importe) as importe
, 0 as comision
FROM bs.ventas v
JOIN vn2008.time tm on tm.date = v.fecha
JOIN vn2008.Tipos tp using(tipo_id)
WHERE tm.year = intYEAR and tm.week between intWEEK_START and intWEEK_END
AND reino_id != 6
GROUP BY tp.Id_Trabajador, tm.week;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `compradores_evolution_add` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `compradores_evolution_add`()
BEGIN
DECLARE datFEC DATE;
SELECT TIMESTAMPADD(DAY,1,MAX(fecha)) INTO datFEC FROM bs.compradores_evolution;
WHILE datFEC < CURDATE() DO
SELECT datFEC;
REPLACE bs.compradores_evolution( Id_Trabajador
, fecha
, importe)
SELECT Id_Trabajador
, datFEC as fecha
, sum(importe) as importe
FROM
(
SELECT Id_Trabajador
, importe
FROM bs.compradores_evolution
WHERE fecha = TIMESTAMPADD(DAY,-1,datFEC)
UNION ALL
SELECT Id_Trabajador
, importe * IF(v.fecha < datFEC,-1,1)
FROM bs.ventas v
JOIN vn2008.Tipos tp using(tipo_id)
WHERE fecha IN (datFEC, TIMESTAMPADD(DAY,-365,datFEC))
AND reino_id != 6
)sub
GROUP BY Id_Trabajador;
SET datFEC = TIMESTAMPADD(DAY,1,datFEC);
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `fondo_evolution_add` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `fondo_evolution_add`()
BEGIN
DECLARE datFEC DATE DEFAULT '2015-01-01';
SELECT TIMESTAMPADD(DAY,1,MAX(fecha)) INTO datFEC FROM bs.fondo_maniobra;
WHILE datFEC < CURDATE() DO
IF day(datFEC) mod 28 = 0 then
SELECT datFEC;
end if;
REPLACE bs.fondo_maniobra(Fecha, clientes_facturas, clientes_cobros,proveedores_facturas,proveedores_pagos, fondo)
SELECT datFEC as Fecha, Facturas, Cobros,Recibidas,Pagos, Facturas + Cobros + Recibidas + Pagos
FROM
(
SELECT Sum(Facturas.Importe) AS Facturas
FROM vn2008.Facturas
INNER JOIN vn2008.Clientes ON Facturas.Id_Cliente = Clientes.Id_cliente
WHERE Clientes.`real`
AND empresa_id <>1381
AND Fecha between '2011-01-01' and datFEC) fac
JOIN
(
SELECT - Sum(Entregado) AS Cobros
FROM vn2008.Recibos
INNER JOIN vn2008.Clientes ON Recibos.Id_Cliente = Clientes.Id_cliente
WHERE Clientes.`real`
AND empresa_id <> 1381
AND Fechacobro Between '2011-01-01' and datFEC) cob
JOIN
(
SELECT - Sum(cantidad) AS Recibidas
FROM vn2008.recibida
INNER JOIN vn2008.recibida_vencimiento ON recibida.id = recibida_vencimiento.recibida_id
WHERE empresa_id <> 1381
AND recibida.fecha Between '2015-01-01' and datFEC) rec
JOIN
(
SELECT Sum(importe) AS Pagos
FROM vn2008.pago
WHERE empresa_id <>1381 AND pago.fecha Between '2015-01-01' and datFEC) pag;
UPDATE bs.fondo_maniobra
JOIN
(SELECT avg(fondo) as media
FROM bs.fondo_maniobra
WHERE fecha <= datFEC) sub
SET fondo_medio = media
WHERE fecha = datFEC;
SET datFEC = TIMESTAMPADD(DAY,1,datFEC);
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `manaCustomerFill_kk` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `manaCustomerFill_kk`()
BEGIN
DECLARE vFromDated DATE;
DECLARE vToDated DATETIME DEFAULT '2015-12-31 23:59:59';
DECLARE isDone BOOLEAN DEFAULT FALSE;
DELETE FROM bs.manaCustomer;
WHILE NOT isDone DO
SELECT TIMESTAMPADD(DAY,1,vToDated), TIMESTAMPADD(MONTH, 1, vToDated)
INTO vFromDated, vToDated;
IF vToDated >= CURDATE() THEN
SET vToDated = TIMESTAMPADD(SECOND,-1,CURDATE());
SET isDone = TRUE;
END IF;
INSERT INTO bs.manaCustomer(Id_Cliente, Mana)
SELECT Id_Cliente, newMana
FROM
(SELECT cs.Id_Cliente, - sum(Cantidad * Valor) as newMana
FROM vn2008.Tickets t
JOIN vn2008.Consignatarios cs using(Id_Consigna)
JOIN vn2008.Movimientos m using(Id_Ticket)
JOIN vn2008.Movimientos_componentes mc using(Id_Movimiento)
WHERE Id_Componente IN (39, 37)
AND Fecha BETWEEN vFromDated AND vToDated
GROUP BY cs.Id_Cliente
) t1
ON DUPLICATE KEY UPDATE Mana = Mana + newMana;
SELECT vFromDated, vToDated;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `manaCustomerUpdate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `manaCustomerUpdate`()
BEGIN
DECLARE vToDated DATE;
DECLARE vFromDated DATE;
DECLARE vForDeleteDated DATE;
DECLARE vManaId INT DEFAULT 37;
DECLARE vManaAutoId INT DEFAULT 39;
DECLARE vManaBankId INT DEFAULT 66;
DECLARE vManaGreugeTypeId INT DEFAULT 3;
SELECT IFNULL(max(dated), '2016-01-01')
INTO vFromDated
FROM bs.manaCustomer;
WHILE timestampadd(week,1,vFromDated) < CURDATE() DO
SELECT
timestampadd(week,1,vFromDated),
timestampadd(week,-4,vFromDated)
INTO
vToDated,
vForDeleteDated;
DELETE FROM bs.manaCustomer
WHERE dated <= vForDeleteDated;
INSERT INTO bs.manaCustomer(Id_Cliente, Mana, dated)
SELECT
Id_Cliente,
cast(sum(mana) as decimal(10,2)) as mana,
vToDated as dated
FROM
(
SELECT cs.Id_Cliente, Cantidad * Valor as mana
FROM vn2008.Tickets t
JOIN vn2008.Consignatarios cs using(Id_Consigna)
JOIN vn2008.Movimientos m on m.Id_Ticket = t.Id_Ticket
JOIN vn2008.Movimientos_componentes mc on mc.Id_Movimiento = m.Id_Movimiento
WHERE Id_Componente IN (vManaAutoId, vManaId)
AND Fecha > vFromDated
AND Fecha <= vToDated
UNION ALL
SELECT r.Id_Cliente, - Entregado
FROM vn2008.Recibos r
WHERE Id_Banco = vManaBankId
AND Fechacobro > vFromDated
AND Fechacobro <= vToDated
UNION ALL
SELECT g.Id_Cliente, g.Importe
FROM vn2008.Greuges g
WHERE Greuges_type_id = vManaGreugeTypeId
AND Fecha > vFromDated
AND Fecha <= vToDated
UNION ALL
SELECT Id_Cliente, mana
FROM bs.manaCustomer
WHERE dated = vFromDated
) sub
GROUP BY Id_Cliente
HAVING Id_Cliente;
SET vFromDated = vToDated;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `mana_price_modifier_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `mana_price_modifier_update`()
BEGIN
INSERT INTO vn2008.daily_task_log(consulta)
VALUES ('bs.mana_price_modifier_update');
UPDATE mana_spellers
JOIN
(SELECT Id_Trabajador, floor(sum(importe)/12) as pesoCarteraMensual
FROM bs.vendedores v
WHERE año * 100 + mes >= (year(curdate()) -1) * 100 + month(curdate())
GROUP BY Id_Trabajador
) ultimo_año_de_ventas using(Id_Trabajador)
SET prices_modifier_rate = GREATEST(-0.05,LEAST(0.05,round(- used/pesoCarteraMensual,3))) ;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nightly_tasks` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nightly_tasks`()
BEGIN
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN
INSERT INTO vn2008.mail SET `to` = 'informatica@verdnatura.es', subject = 'bs.nightly_tasks', `text` = CONCAT('ERROR ', @errno, ' (', @sqlstate, '): ', @text);
INSERT INTO vn2008.mail SET `to` = 'pako@verdnatura.es', subject = 'bs.nightly_tasks', `text` = CONCAT('ERROR ', @errno, ' (', @sqlstate, '): ', @text);
END;
insert into vn2008.daily_task_log(consulta) VALUES('arranca el event bs.nightly_tasks');
call bancos_evolution_add;
call fondo_evolution_add;
call ventas_add(timestampadd(month,-1,curdate()),curdate());
call ventas_contables_add(YEAR(TIMESTAMPADD(MONTH,-1,CURDATE())), MONTH(TIMESTAMPADD(MONTH,-1,CURDATE())));
call bs.vendedores_add(year(curdate()), month(curdate()));
call bs.vendedores_add(year(timestampadd(month,-1,curdate()))
, month(timestampadd(month,-1,curdate()))
);
call carteras_add;
call vn2008.mana_inventory_requery;
call bs.mana_price_modifier_update;
call bs.manaCustomerUpdate;
insert into vn2008.daily_task_log(consulta) VALUES('finalitza el event bs.nightly_tasks');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `nightTaskLauncher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nightTaskLauncher`()
BEGIN
DECLARE done BOOL DEFAULT FALSE;
DECLARE vSchema VARCHAR(255);
DECLARE vProcedure VARCHAR(255);
DECLARE vId INT;
DECLARE rs CURSOR FOR
SELECT id,`schema`, `procedure`
FROM bs.nightTask
WHERE IFNULL(finished,0) <= CURDATE()
ORDER BY `order`;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN rs;
FETCH rs INTO vId, vSchema, vProcedure;
WHILE NOT done DO
SELECT vId, vSchema, vProcedure;
UPDATE bs.nightTask
SET started = now()
WHERE id = vId;
CALL vn2008.sql_query (sql_printf('CALL %s.%s',vSchema, vProcedure));
UPDATE bs.nightTask
SET finished = now()
WHERE id = vId;
FETCH rs INTO vId, vSchema, vProcedure;
END WHILE;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `nocturnEvent_Tickets_Bionizar` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `nocturnEvent_Tickets_Bionizar`()
BEGIN
DECLARE MyDate DATE;
SET MyDate = timestampadd(week,-1,curdate());
INSERT INTO vn2008.daily_task_log(consulta) VALUES('Comença la rebionització de tickets ');
WHILE MyDate < CURDATE() DO
CALL `vn2008`.`bionic_tickets_range_bionizar`(MyDate, MyDate);
SET MyDate = timestampadd(DAY,1,MyDate);
SELECT MyDate;
END WHILE;
INSERT INTO vn2008.daily_task_log(consulta) VALUES('finalitza la rebionització de tickets ');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `vendedores_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `vendedores_add`(IN intYEAR INT, IN intMONTH INT)
BEGIN
REPLACE vendedores
SELECT c.Id_Trabajador
, intYEAR
, intMONTH
, sum(importe) as importe
, sum(importe) * 0.029 as comision
, 0 as comisionCedida
, 0 as comisionArrendada
FROM ventas v
JOIN vn2008.Clientes c on v.Id_Cliente = c.Id_Cliente
JOIN vn2008.time on time.date = v.fecha
WHERE time.year = intYEAR and time.month = intMONTH
AND c.Id_Trabajador is not null
GROUP BY c.Id_Trabajador;
UPDATE vendedores
JOIN
(
SELECT cc.Id_Trabajador_old as Id_Trabajador
, sum(importe) * 0.029 * comision_old as cedido
FROM ventas v
JOIN vn2008.Clientes c on v.Id_Cliente = c.Id_Cliente
JOIN vn2008.Clientes_cedidos cc on cc.Id_Cliente = c.Id_Cliente
JOIN vn2008.time on time.date = v.fecha
WHERE time.year = intYEAR and time.month = intMONTH
AND c.Id_Trabajador is not null
GROUP BY cc.Id_Trabajador_old
) sub using(Id_Trabajador)
SET comisionCedida = cedido, comision = comision - cedido
WHERE año = intYEAR and mes = intMONTH;
UPDATE vendedores
JOIN
(
SELECT cc.Id_Trabajador_new as Id_Trabajador
, sum(importe) * 0.029 * comision_new as arrendada
FROM ventas v
JOIN vn2008.Clientes c on v.Id_Cliente = c.Id_Cliente
JOIN vn2008.Clientes_cedidos cc on cc.Id_Cliente = c.Id_Cliente AND v.fecha between datSTART and datEND
JOIN vn2008.time on time.date = v.fecha
WHERE time.year = intYEAR and time.month = intMONTH
AND c.Id_Trabajador is not null
GROUP BY cc.Id_Trabajador_new
) sub using(Id_Trabajador)
SET comisionArrendada = arrendada, comision = comision - arrendada
WHERE año = intYEAR and mes = intMONTH;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `vendedores_add_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `vendedores_add_launcher`()
BEGIN
call bs.vendedores_add(year(curdate()), month(curdate()));
call bs.vendedores_add(year(timestampadd(month,-1,curdate())), month(timestampadd(month,-1,curdate())));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `vendedores_evolution_add` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `vendedores_evolution_add`()
BEGIN
DECLARE datFEC DATE;
SELECT TIMESTAMPADD(DAY,1,MAX(fecha)) INTO datFEC FROM bs.vendedores_evolution;
WHILE datFEC < CURDATE() DO
SELECT datFEC;
REPLACE bs.vendedores_evolution( Id_Trabajador
, fecha
, importe)
SELECT Id_Trabajador
, datFEC as fecha
, sum(importe) as importe
FROM
(
SELECT Id_Trabajador
, importe
FROM bs.vendedores_evolution
WHERE fecha = TIMESTAMPADD(DAY,-1,datFEC)
UNION ALL
SELECT c.Id_Trabajador
, importe * IF(v.fecha < datFEC,-1,1)
FROM bs.ventas v
JOIN vn2008.Movimientos m using(Id_Movimiento)
JOIN vn2008.Tickets t using(Id_Ticket)
JOIN vn2008.Consignatarios cs using(Id_Consigna)
JOIN vn2008.Clientes c on cs.Id_Cliente = c.Id_Cliente
JOIN vn2008.Tipos using(tipo_id)
WHERE v.fecha IN (datFEC, TIMESTAMPADD(DAY,-365,datFEC))
AND c.Id_Trabajador is not null
AND (Id_Article = 98 or Id_Article = 95 or reino_id != 6)
GROUP BY c.Id_Trabajador
)sub
GROUP BY Id_Trabajador;
SET datFEC = TIMESTAMPADD(DAY,1,datFEC);
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `ventas_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ventas_add`(IN datSTART DATE, IN datEND DATE)
BEGIN
DECLARE vStartingPeriod INT;
DECLARE vStartingDate DATETIME;
DECLARE vEndingDate DATETIME;
DECLARE TIPO_PATRIMONIAL INT DEFAULT 188;
SET datEND = vn2008.dayend(datEND);
SET vStartingDate = GREATEST('2015-10-01',datSTART);
SET vEndingDate = vn2008.dayend(vStartingDate);
DELETE FROM ventas
WHERE fecha between vStartingDate and datEND;
WHILE vEndingDate <= datEND DO
SELECT vStartingDate,vEndingDate;
INSERT INTO ventas(Id_Movimiento, importe, recargo, fecha, tipo_id, Id_Cliente, empresa_id)
SELECT Id_Movimiento
, sum( IF(base, Cantidad * Valor, 0) ) as importe
, sum( IF(base, 0, Cantidad * Valor) ) as recargo
, vStartingDate
, a.tipo_id
, cs.Id_Cliente
, t.empresa_id
FROM vn2008.Movimientos_componentes mc
JOIN bi.tarifa_componentes tc using(Id_Componente)
JOIN bi.tarifa_componentes_series tcs using(tarifa_componentes_series_id)
JOIN vn2008.Movimientos m using(Id_Movimiento)
JOIN vn2008.Articles a using(Id_Article)
JOIN vn2008.Tipos tp using(tipo_id)
JOIN vn2008.reinos r on r.id = tp.reino_id
JOIN vn2008.Tickets t using(Id_Ticket)
JOIN vn2008.Consignatarios cs using(Id_Consigna)
JOIN vn2008.Clientes c on c.Id_Cliente = cs.Id_Cliente
JOIN vn2008.empresa e on e.id = empresa_id
WHERE t.Fecha between vStartingDate and vEndingDate
AND datEND >= '2015-10-01'
AND (
c.`Real` != 0
OR c.Razonsocial = 'MIRIAM FERRER TORIBIO'
OR c.Razonsocial = 'VERDNATURA COMPLEMENTOS'
)
AND Cantidad <> 0
AND a.tipo_id != TIPO_PATRIMONIAL
AND c.Id_Trabajador IS NOT NULL
AND m.Descuento <> 100
AND (m.Id_Article = 98 or m.Id_Article = 95 or r.mercancia != 0)
GROUP BY mc.Id_Movimiento
HAVING IFNULL(importe,0) <> 0 OR IFNULL(recargo,0) <> 0;
SET vStartingDate = TIMESTAMPADD(DAY,1, vStartingDate);
SET vEndingDate = vn2008.dayend(vStartingDate);
IF CURDATE() = '2017-02-28' THEN
SELECT vStartingDate;
END IF;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ventas_add_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ventas_add_launcher`()
BEGIN
call bs.ventas_add(timestampadd(week,-2,curdate()),curdate());
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ventas_contables_add` */;
ALTER DATABASE `bs` CHARACTER SET latin1 COLLATE latin1_swedish_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ventas_contables_add`(IN vYear INT, IN vMonth INT)
BEGIN
DECLARE TIPO_PATRIMONIAL INT DEFAULT 188;
DELETE FROM bs.ventas_contables
WHERE year = vYear
AND month = vMonth;
DROP TEMPORARY TABLE IF EXISTS tmp.ticket_list;
CREATE TEMPORARY TABLE tmp.ticket_list
(PRIMARY KEY (Id_Ticket))
SELECT Id_Ticket
FROM vn2008.Tickets t
JOIN vn2008.Facturas f ON f.Id_Factura = t.Factura
WHERE year(f.Fecha) = vYear
AND month(f.Fecha) = vMonth;
INSERT INTO bs.ventas_contables(year
, month
, venta
, grupo
, reino_id
, tipo_id
, empresa_id
, gasto)
SELECT vYear
, vMonth
, round(sum(Cantidad * Preu * (100 - m.Descuento)/100))
, if(
e.empresa_grupo = e2.empresa_grupo
,1
,if(e2.empresa_grupo,2,0)
) as grupo
, tp.reino_id
, a.tipo_id
, t.empresa_id
, 7000000000
+ if(e.empresa_grupo = e2.empresa_grupo
,1
,if(e2.empresa_grupo,2,0)
) * 1000000
+ IF(tp.Id_Trabajador = 24 , 7,tp.reino_id) * 10000 as Gasto
FROM vn2008.Movimientos m
JOIN vn2008.Tickets t on t.Id_Ticket = m.Id_Ticket
JOIN vn2008.Consignatarios cs on cs.Id_Consigna = t.Id_Consigna
JOIN vn2008.Clientes c on c.Id_Cliente = cs.Id_Cliente
JOIN tmp.ticket_list tt on tt.Id_Ticket = t.Id_Ticket
JOIN vn2008.Articles a on m.Id_Article = a.Id_Article
JOIN vn2008.empresa e on e.id = t.empresa_id
LEFT JOIN vn2008.empresa e2 on e2.Id_Cliente = c.Id_Cliente
JOIN vn2008.Tipos tp on tp.tipo_id = a.tipo_id
WHERE Cantidad <> 0
AND Preu <> 0
AND m.Descuento <> 100
AND a.tipo_id != TIPO_PATRIMONIAL
GROUP BY grupo, reino_id, tipo_id, empresa_id, Gasto;
DROP TEMPORARY TABLE tmp.ticket_list;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `bs` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `ventas_contables_add_launcher` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ventas_contables_add_launcher`()
BEGIN
call bs.ventas_contables_add(YEAR(TIMESTAMPADD(MONTH,-1,CURDATE())), MONTH(TIMESTAMPADD(MONTH,-1,CURDATE())));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ventas_contables_por_cliente` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ventas_contables_por_cliente`(IN vYear INT, IN vMonth INT)
BEGIN
DROP TEMPORARY TABLE IF EXISTS tmp.ticket_list;
CREATE TEMPORARY TABLE tmp.ticket_list
(PRIMARY KEY (Id_Ticket))
SELECT Id_Ticket
FROM vn2008.Tickets t
JOIN vn2008.Facturas f ON f.Id_Factura = t.Factura
WHERE year(f.Fecha) = vYear
AND month(f.Fecha) = vMonth;
SELECT vYear Año
, vMonth Mes
, t.Id_Cliente
, round(sum(Cantidad * Preu * (100 - m.Descuento)/100)) Venta
, if(
e.empresa_grupo = e2.empresa_grupo
,1
,if(e2.empresa_grupo,2,0)
) as grupo
, t.empresa_id empresa
FROM vn2008.Movimientos m
JOIN vn2008.Tickets t on t.Id_Ticket = m.Id_Ticket
JOIN vn2008.Consignatarios cs on cs.Id_Consigna = t.Id_Consigna
JOIN vn2008.Clientes c on c.Id_Cliente = cs.Id_Cliente
JOIN tmp.ticket_list tt on tt.Id_Ticket = t.Id_Ticket
JOIN vn2008.Articles a on m.Id_Article = a.Id_Article
JOIN vn2008.empresa e on e.id = t.empresa_id
LEFT JOIN vn2008.empresa e2 on e2.Id_Cliente = c.Id_Cliente
JOIN vn2008.Tipos tp on tp.tipo_id = a.tipo_id
WHERE Cantidad <> 0
AND Preu <> 0
AND m.Descuento <> 100
AND a.tipo_id != 188
GROUP BY t.Id_Cliente, grupo,t.empresa_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Current Database: `account`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `account` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `account`;
--
-- Table structure for table `account`
--
DROP TABLE IF EXISTS `account`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `account` (
`id` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
CONSTRAINT `account_ibfk_3` FOREIGN KEY (`id`) REFERENCES `user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Users allowed to have an account';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `accountConfig`
--
DROP TABLE IF EXISTS `accountConfig`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `accountConfig` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`homedir` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The base folder for users home directories',
`shell` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The default shell',
`min` smallint(6) NOT NULL,
`max` smallint(6) NOT NULL,
`warn` smallint(6) NOT NULL,
`inact` smallint(6) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Global configuration parameters for accounts';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `accountDovecot`
--
DROP TABLE IF EXISTS `accountDovecot`;
/*!50001 DROP VIEW IF EXISTS `accountDovecot`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `accountDovecot` AS SELECT
1 AS `name`,
1 AS `password`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `accountLog`
--
DROP TABLE IF EXISTS `accountLog`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `accountLog` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`msg` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`pid` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`user` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`host` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`rhost` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`time` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `accountNss`
--
DROP TABLE IF EXISTS `accountNss`;
/*!50001 DROP VIEW IF EXISTS `accountNss`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `accountNss` AS SELECT
1 AS `surname`,
1 AS `name`,
1 AS `password`,
1 AS `home`,
1 AS `shell`,
1 AS `min`,
1 AS `max`,
1 AS `warn`,
1 AS `inact`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `accountPam`
--
DROP TABLE IF EXISTS `accountPam`;
/*!50001 DROP VIEW IF EXISTS `accountPam`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `accountPam` AS SELECT
1 AS `name`,
1 AS `password`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `ldapConfig`
--
DROP TABLE IF EXISTS `ldapConfig`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ldapConfig` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`host` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The hostname of LDAP server',
`rdn` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The LDAP user',
`password` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Base64 encoded password',
`baseDn` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The base DN to do the query',
`filter` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Filter to apply to the query',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='LDAP server configuration parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mailAlias`
--
DROP TABLE IF EXISTS `mailAlias`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mailAlias` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`alias` varchar(50) CHARACTER SET utf8 NOT NULL,
`isPublic` tinyint(4) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `alias` (`alias`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Mail aliases';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mailAliasAccount`
--
DROP TABLE IF EXISTS `mailAliasAccount`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mailAliasAccount` (
`mailAlias` int(10) unsigned NOT NULL,
`account` int(10) unsigned NOT NULL,
PRIMARY KEY (`mailAlias`,`account`),
KEY `account` (`account`),
CONSTRAINT `account` FOREIGN KEY (`account`) REFERENCES `account` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `mailAlias` FOREIGN KEY (`mailAlias`) REFERENCES `mailAlias` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Mail alias that is assigned to each account';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mailForward`
--
DROP TABLE IF EXISTS `mailForward`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mailForward` (
`account` int(10) unsigned NOT NULL,
`forwardTo` varchar(250) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`account`),
CONSTRAINT `mailForward_ibfk_1` FOREIGN KEY (`account`) REFERENCES `account` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Mail forwarding';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `role`
--
DROP TABLE IF EXISTS `role`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `role` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(14) COLLATE utf8_unicode_ci NOT NULL,
`description` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`hasLogin` tinyint(3) unsigned NOT NULL DEFAULT '0',
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Roles';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `roleInherit`
--
DROP TABLE IF EXISTS `roleInherit`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `roleInherit` (
`role` int(10) unsigned NOT NULL,
`inheritsFrom` int(10) unsigned NOT NULL,
PRIMARY KEY (`role`,`inheritsFrom`),
KEY `owner_id` (`inheritsFrom`),
CONSTRAINT `roleInherit_ibfk_1` FOREIGN KEY (`role`) REFERENCES `role` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `roleInherit_ibfk_2` FOREIGN KEY (`inheritsFrom`) REFERENCES `role` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Role inheritance';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `roleRole`
--
DROP TABLE IF EXISTS `roleRole`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `roleRole` (
`role` int(10) unsigned NOT NULL,
`inheritsFrom` int(10) unsigned NOT NULL,
UNIQUE KEY `role` (`role`,`inheritsFrom`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Calculated role inheritance';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sambaConfig`
--
DROP TABLE IF EXISTS `sambaConfig`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sambaConfig` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`host` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The hosname of Samba server',
`sshUser` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The SSH user to connect to servers',
`sshPass` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The SSH password base64 encoded',
`domain` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The default domain for mail accounts, its appended to the user name',
`uidBase` int(10) unsigned NOT NULL DEFAULT '10000' COMMENT 'The base for Unix uids',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Global configuration parameters for accounts';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `user`
--
DROP TABLE IF EXISTS `user`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `user` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(30) CHARACTER SET utf8 NOT NULL,
`password` char(64) COLLATE utf8_unicode_ci NOT NULL,
`role` int(10) unsigned NOT NULL DEFAULT '2',
`active` tinyint(1) NOT NULL DEFAULT '1',
`email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`sync` tinyint(4) NOT NULL DEFAULT '0',
`recoverPass` tinyint(3) unsigned NOT NULL DEFAULT '1',
`lastPassChange` datetime DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`),
KEY `role` (`role`),
KEY `email` (`email`),
CONSTRAINT `user_ibfk_2` FOREIGN KEY (`role`) REFERENCES `role` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Global users';
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `account`.`userBeforeInsert`
BEFORE INSERT ON `user` FOR EACH ROW
BEGIN
CALL userCheckName (NEW.`name`);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `account`.`userBeforeUpdate`
BEFORE UPDATE ON `user` FOR EACH ROW
BEGIN
IF OLD.`name` != NEW.`name` THEN
CALL userCheckName (NEW.`name`);
END IF;
IF NEW.`password` != OLD.`password`
OR (OLD.`password` IS NULL AND NEW.`password` IS NOT NULL)
THEN
SET NEW.lastPassChange = NOW();
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `userAfterUpdate`
AFTER UPDATE ON `user` FOR EACH ROW
BEGIN
IF NEW.role <> OLD.role
THEN
INSERT INTO vn2008.mail(`to`,reply_to,`subject`,`text`)
SELECT 'jgallego@verdnatura.es','jgallego@verdnatura.es','Rol modificado',
CONCAT(`name`,' ha modificado el rol del usuario ',NEW.`name`,' de ',OLD.role,' a ',NEW.role)
FROM account.user WHERE id = account.userGetId();
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Table structure for table `userPassword`
--
DROP TABLE IF EXISTS `userPassword`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `userPassword` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`length` tinyint(3) unsigned NOT NULL,
`nAlpha` tinyint(3) unsigned NOT NULL,
`nUpper` tinyint(3) unsigned NOT NULL,
`nDigits` tinyint(3) unsigned NOT NULL,
`nPunct` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Restrictions on user passwords';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `userRole`
--
DROP TABLE IF EXISTS `userRole`;
/*!50001 DROP VIEW IF EXISTS `userRole`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `userRole` AS SELECT
1 AS `id`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `userSession`
--
DROP TABLE IF EXISTS `userSession`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `userSession` (
`connectionId` int(10) unsigned NOT NULL,
`user` int(10) unsigned NOT NULL,
`userName` varchar(30) CHARACTER SET utf8 DEFAULT NULL,
`creationDate` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`connectionId`),
KEY `creationDate` (`creationDate`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `userView`
--
DROP TABLE IF EXISTS `userView`;
/*!50001 DROP VIEW IF EXISTS `userView`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `userView` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `active`,
1 AS `email`,
1 AS `role`,
1 AS `recoverPass`*/;
SET character_set_client = @saved_cs_client;
--
-- Dumping events for database 'account'
--
--
-- Dumping routines for database 'account'
--
/*!50003 DROP FUNCTION IF EXISTS `toUnixDays` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `toUnixDays`(vDate DATE) RETURNS int(11)
DETERMINISTIC
BEGIN
RETURN UNIX_TIMESTAMP(vDate) DIV 86400;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `userGetId` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `userGetId`() RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE vUser INT DEFAULT NULL;
SELECT user INTO vUser FROM userSession
WHERE connectionId = CONNECTION_ID();
IF vUser IS NULL THEN
SELECT id INTO vUser FROM user
WHERE name = LEFT(USER(), INSTR(USER(), '@') - 1);
END IF;
RETURN vUser;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `userGetMysqlRole` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `userGetMysqlRole`(vUserName VARCHAR(255)) RETURNS varchar(255) CHARSET utf8
BEGIN
DECLARE vRole VARCHAR(255);
SELECT CONCAT(IF(r.hasLogin, 'z-', ''), r.name) INTO vRole
FROM role r
JOIN user u ON u.role = r.id
WHERE u.name = vUserName;
RETURN vRole;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `userGetName` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `userGetName`() RETURNS varchar(30) CHARSET utf8
DETERMINISTIC
BEGIN
DECLARE vUser VARCHAR(30) DEFAULT NULL;
SELECT userName INTO vUser
FROM userSession
WHERE connectionId = CONNECTION_ID();
IF vUser IS NULL THEN
SET vUser = LEFT(USER(), INSTR(USER(), '@') - 1);
END IF;
RETURN vUser;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `userGetNameFromId` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `userGetNameFromId`(vId INT) RETURNS varchar(30) CHARSET utf8
BEGIN
DECLARE vName VARCHAR(30);
SELECT `name` INTO vName
FROM user
WHERE id = vId;
RETURN vName;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `userHasRole` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `userHasRole`(vRoleName VARCHAR(255)) RETURNS tinyint(1)
DETERMINISTIC
BEGIN
DECLARE vRoleId INT;
SELECT id INTO vRoleId
FROM role
WHERE `name` = vRoleName COLLATE 'utf8_unicode_ci';
RETURN userHasRoleId (vRoleId);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP FUNCTION IF EXISTS `userHasRoleId` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `userHasRoleId`(vRoleId INT) RETURNS tinyint(1)
DETERMINISTIC
BEGIN
DECLARE vHasRole BOOL DEFAULT FALSE;
SELECT COUNT(*) > 0 INTO vHasRole
FROM userRole
WHERE id = vRoleId;
RETURN vHasRole;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `privSync` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `privSync`()
proc: BEGIN
DECLARE vTplUser VARCHAR(255) DEFAULT 'any';
DECLARE vHost VARCHAR(255) DEFAULT '%';
DECLARE vPrefix VARCHAR(2) DEFAULT 'z-';
DECLARE vTplExists BOOL;
DECLARE vTplHost VARCHAR(255);
DECLARE vPrefixedLike VARCHAR(255);
SELECT COUNT(*) > 0, `Host`
INTO vTplExists, vTplHost
FROM mysql.user
WHERE `User` = vTplUser
LIMIT 1;
IF NOT vTplExists THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'TEMPLATE_USER_NOT_EXISTS';
END IF;
SET vPrefixedLike = CONCAT(vPrefix, '%');
DELETE FROM mysql.user
WHERE `User` LIKE vPrefixedLike;
DELETE FROM mysql.db
WHERE `User` LIKE vPrefixedLike;
DELETE FROM mysql.tables_priv
WHERE `User` LIKE vPrefixedLike;
DELETE FROM mysql.columns_priv
WHERE `User` LIKE vPrefixedLike;
DELETE FROM mysql.procs_priv
WHERE `User` LIKE vPrefixedLike;
DELETE FROM mysql.proxies_priv
WHERE `Proxied_user` LIKE vPrefixedLike;
DROP TEMPORARY TABLE IF EXISTS tRole;
CREATE TEMPORARY TABLE tRole
ENGINE = MEMORY
SELECT
`name` role,
CONCAT(vPrefix, `name`) prefixedRole
FROM role
WHERE hasLogin;
DROP TEMPORARY TABLE IF EXISTS tRoleInherit;
CREATE TEMPORARY TABLE tRoleInherit
(INDEX (inheritsFrom))
ENGINE = MEMORY
SELECT
CONCAT(vPrefix, r.`name`) prefixedRole,
ri.`name` inheritsFrom
FROM role r
JOIN roleRole rr ON rr.role = r.id
JOIN role ri ON ri.id = rr.inheritsFrom;
INSERT INTO mysql.user (
`User`,
`Host`,
`Password`,
`ssl_type`,
`ssl_cipher`,
`x509_issuer`,
`x509_subject`,
`max_questions`,
`max_updates`,
`max_connections`,
`max_user_connections`
)
SELECT
r.prefixedRole,
vTplHost,
IF('' != u.`Password`,
u.`Password`, t.`Password`),
IF('' != u.`ssl_type`,
u.`ssl_type`, t.`ssl_type`),
IF('' != u.`ssl_cipher`,
u.`ssl_cipher`, t.`ssl_cipher`),
IF('' != u.`x509_issuer`,
u.`x509_issuer`, t.`x509_issuer`),
IF('' != u.`x509_subject`,
u.`x509_subject`, t.`x509_subject`),
IF(0 != u.`max_questions`,
u.`max_questions`, t.`max_questions`),
IF(0 != u.`max_updates`,
u.`max_updates`, t.`max_updates`),
IF(0 != u.`max_connections`,
u.`max_connections`, t.`max_connections`),
IF(0 != u.`max_user_connections`,
u.`max_user_connections`, t.`max_user_connections`)
FROM tRole r
JOIN mysql.user t
ON t.`User` = vTplUser
AND t.`Host` = vTplHost
LEFT JOIN mysql.user u
ON u.`User` = r.role
AND u.`Host` = vHost;
INSERT INTO mysql.proxies_priv (
`User`,
`Host`,
`Proxied_user`,
`Proxied_host`,
`Grantor`
)
SELECT
'',
vHost,
prefixedRole,
vHost,
CONCAT(prefixedRole, '@', vTplHost)
FROM tRole;
DROP TEMPORARY TABLE IF EXISTS tUserPriv;
CREATE TEMPORARY TABLE tUserPriv
(INDEX (prefixedRole))
ENGINE = MEMORY
SELECT
r.prefixedRole,
MAX(u.`Select_priv`) `Select_priv`,
MAX(u.`Insert_priv`) `Insert_priv`,
MAX(u.`Update_priv`) `Update_priv`,
MAX(u.`Delete_priv`) `Delete_priv`,
MAX(u.`Create_priv`) `Create_priv`,
MAX(u.`Drop_priv`) `Drop_priv`,
MAX(u.`Reload_priv`) `Reload_priv`,
MAX(u.`Shutdown_priv`) `Shutdown_priv`,
MAX(u.`Process_priv`) `Process_priv`,
MAX(u.`File_priv`) `File_priv`,
MAX(u.`Grant_priv`) `Grant_priv`,
MAX(u.`References_priv`) `References_priv`,
MAX(u.`Index_priv`) `Index_priv`,
MAX(u.`Alter_priv`) `Alter_priv`,
MAX(u.`Show_db_priv`) `Show_db_priv`,
MAX(u.`Super_priv`) `Super_priv`,
MAX(u.`Create_tmp_table_priv`) `Create_tmp_table_priv`,
MAX(u.`Lock_tables_priv`) `Lock_tables_priv`,
MAX(u.`Execute_priv`) `Execute_priv`,
MAX(u.`Repl_slave_priv`) `Repl_slave_priv`,
MAX(u.`Repl_client_priv`) `Repl_client_priv`,
MAX(u.`Create_view_priv`) `Create_view_priv`,
MAX(u.`Show_view_priv`) `Show_view_priv`,
MAX(u.`Create_routine_priv`) `Create_routine_priv`,
MAX(u.`Alter_routine_priv`) `Alter_routine_priv`,
MAX(u.`Create_user_priv`) `Create_user_priv`,
MAX(u.`Event_priv`) `Event_priv`,
MAX(u.`Trigger_priv`) `Trigger_priv`,
MAX(u.`Create_tablespace_priv`) `Create_tablespace_priv`
FROM tRoleInherit r
JOIN mysql.user u
ON u.`User` = r.inheritsFrom
AND u.`Host`= vHost
GROUP BY r.prefixedRole;
UPDATE mysql.user u
JOIN tUserPriv t
ON u.`User` = t.prefixedRole
AND u.`Host` = vHost
SET
u.`Select_priv`
= t.`Select_priv`,
u.`Insert_priv`
= t.`Insert_priv`,
u.`Update_priv`
= t.`Update_priv`,
u.`Delete_priv`
= t.`Delete_priv`,
u.`Create_priv`
= t.`Create_priv`,
u.`Drop_priv`
= t.`Drop_priv`,
u.`Reload_priv`
= t.`Reload_priv`,
u.`Shutdown_priv`
= t.`Shutdown_priv`,
u.`Process_priv`
= t.`Process_priv`,
u.`File_priv`
= t.`File_priv`,
u.`Grant_priv`
= t.`Grant_priv`,
u.`References_priv`
= t.`References_priv`,
u.`Index_priv`
= t.`Index_priv`,
u.`Alter_priv`
= t.`Alter_priv`,
u.`Show_db_priv`
= t.`Show_db_priv`,
u.`Super_priv`
= t.`Super_priv`,
u.`Create_tmp_table_priv`
= t.`Create_tmp_table_priv`,
u.`Lock_tables_priv`
= t.`Lock_tables_priv`,
u.`Execute_priv`
= t.`Execute_priv`,
u.`Repl_slave_priv`
= t.`Repl_slave_priv`,
u.`Repl_client_priv`
= t.`Repl_client_priv`,
u.`Create_view_priv`
= t.`Create_view_priv`,
u.`Show_view_priv`
= t.`Show_view_priv`,
u.`Create_routine_priv`
= t.`Create_routine_priv`,
u.`Alter_routine_priv`
= t.`Alter_routine_priv`,
u.`Create_user_priv`
= t.`Create_user_priv`,
u.`Event_priv`
= t.`Event_priv`,
u.`Trigger_priv`
= t.`Trigger_priv`,
u.`Create_tablespace_priv`
= t.`Create_tablespace_priv`;
DROP TEMPORARY TABLE tUserPriv;
INSERT INTO mysql.db (
`User`,
`Host`,
`Db`,
`Select_priv`,
`Insert_priv`,
`Update_priv`,
`Delete_priv`,
`Create_priv`,
`Drop_priv`,
`Grant_priv`,
`References_priv`,
`Index_priv`,
`Alter_priv`,
`Create_tmp_table_priv`,
`Lock_tables_priv`,
`Create_view_priv`,
`Show_view_priv`,
`Create_routine_priv`,
`Alter_routine_priv`,
`Execute_priv`,
`Event_priv`,
`Trigger_priv`
)
SELECT
r.prefixedRole,
vTplHost,
t.`Db`,
MAX(t.`Select_priv`),
MAX(t.`Insert_priv`),
MAX(t.`Update_priv`),
MAX(t.`Delete_priv`),
MAX(t.`Create_priv`),
MAX(t.`Drop_priv`),
MAX(t.`Grant_priv`),
MAX(t.`References_priv`),
MAX(t.`Index_priv`),
MAX(t.`Alter_priv`),
MAX(t.`Create_tmp_table_priv`),
MAX(t.`Lock_tables_priv`),
MAX(t.`Create_view_priv`),
MAX(t.`Show_view_priv`),
MAX(t.`Create_routine_priv`),
MAX(t.`Alter_routine_priv`),
MAX(t.`Execute_priv`),
MAX(t.`Event_priv`),
MAX(t.`Trigger_priv`)
FROM tRoleInherit r
JOIN mysql.db t
ON t.`User` = r.inheritsFrom
AND t.`Host`= vHost
GROUP BY r.prefixedRole, t.`Db`;
INSERT INTO mysql.tables_priv (
`User`,
`Host`,
`Db`,
`Table_name`,
`Grantor`,
`Timestamp`,
`Table_priv`,
`Column_priv`
)
SELECT
r.prefixedRole,
vTplHost,
t.`Db`,
t.`Table_name`,
t.`Grantor`,
MAX(t.`Timestamp`),
GROUP_CONCAT(CONCAT(t.`Table_priv`, ',')),
GROUP_CONCAT(CONCAT(t.`Column_priv`, ','))
FROM tRoleInherit r
JOIN mysql.tables_priv t
ON t.`User` = r.inheritsFrom
AND t.`Host`= vHost
GROUP BY r.prefixedRole, t.`Db`, t.`Table_name`;
INSERT INTO mysql.columns_priv (
`User`,
`Host`,
`Db`,
`Table_name`,
`Column_name`,
`Timestamp`,
`Column_priv`
)
SELECT
r.prefixedRole,
vTplHost,
t.`Db`,
t.`Table_name`,
t.`Column_name`,
MAX(t.`Timestamp`),
GROUP_CONCAT(CONCAT(t.`Column_priv`, ','))
FROM tRoleInherit r
JOIN mysql.columns_priv t
ON t.`User` = r.inheritsFrom
AND t.`Host`= vHost
GROUP BY r.prefixedRole, t.`Db`, t.`Table_name`, t.`Column_name`;
INSERT IGNORE INTO mysql.procs_priv (
`User`,
`Host`,
`Db`,
`Routine_name`,
`Routine_type`,
`Grantor`,
`Timestamp`,
`Proc_priv`
)
SELECT
r.prefixedRole,
vTplHost,
t.`Db`,
t.`Routine_name`,
t.`Routine_type`,
t.`Grantor`,
t.`Timestamp`,
t.`Proc_priv`
FROM tRoleInherit r
JOIN mysql.procs_priv t
ON t.`User` = r.inheritsFrom
AND t.`Host`= vHost;
DROP TEMPORARY TABLE
tRole,
tRoleInherit;
FLUSH PRIVILEGES;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `roleGetDescendents` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `roleGetDescendents`(vRole INT)
BEGIN
DECLARE vIsRoot BOOL;
DROP TEMPORARY TABLE IF EXISTS
tmp.role, parents, childs;
CREATE TEMPORARY TABLE tmp.role
(UNIQUE (id))
ENGINE = MEMORY
SELECT vRole AS id;
CREATE TEMPORARY TABLE parents
ENGINE = MEMORY
SELECT vRole AS id;
CREATE TEMPORARY TABLE childs
LIKE parents;
REPEAT
DELETE FROM childs;
INSERT INTO childs
SELECT DISTINCT r.inheritsFrom id
FROM parents p
JOIN roleInherit r ON r.role = p.id
LEFT JOIN tmp.role t ON t.id = r.inheritsFrom
WHERE t.id IS NULL;
DELETE FROM parents;
INSERT INTO parents
SELECT * FROM childs;
INSERT INTO tmp.role
SELECT * FROM childs;
UNTIL ROW_COUNT() <= 0
END REPEAT;
SELECT COUNT(*) > 0 INTO vIsRoot
FROM tmp.role
WHERE id = 0;
IF vIsRoot THEN
INSERT IGNORE INTO tmp.role (id)
SELECT id FROM role;
END IF;
DROP TEMPORARY TABLE
parents, childs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `roleSync` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `roleSync`()
BEGIN
DECLARE vRoleId INT;
DECLARE vDone BOOL;
DECLARE cur CURSOR FOR
SELECT id FROM role;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
TRUNCATE TABLE roleRole;
OPEN cur;
l: LOOP
SET vDone = FALSE;
FETCH cur INTO vRoleId;
IF vDone THEN
LEAVE l;
END IF;
CALL roleGetDescendents (vRoleId);
INSERT INTO roleRole (role, inheritsFrom)
SELECT vRoleId, id FROM tmp.role;
DROP TEMPORARY TABLE tmp.role;
END LOOP;
CLOSE cur;
CALL privSync();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `userChangePassword` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `userChangePassword`(vOldPassword VARCHAR(255), vPassword VARCHAR(255))
BEGIN
DECLARE vPasswordOk BOOL;
SELECT `password` = MD5(vOldPassword) OR recoverPass
INTO vPasswordOk
FROM user WHERE id = account.userGetId();
IF NOT vPasswordOk THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Invalid password';
END IF;
CALL userSetPassword (userGetName(), vPassword);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `userCheckName` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `userCheckName`(vUserName VARCHAR(255))
BEGIN
IF vUserName NOT REGEXP '^[a-z0-9_]*$' THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'INVALID_USER_NAME';
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `userCheckPassword` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `userCheckPassword`(vPassword VARCHAR(255))
BEGIN
DECLARE vChr CHAR(1);
DECLARE vPasswordOk TINYINT;
DECLARE vI TINYINT DEFAULT 1;
DECLARE vNAlpha TINYINT DEFAULT 0;
DECLARE vNUpper TINYINT DEFAULT 0;
DECLARE vNDigits TINYINT DEFAULT 0;
DECLARE vNPunct TINYINT DEFAULT 0;
WHILE vI <= CHAR_LENGTH(vPassword)
DO
SET vChr = SUBSTRING(vPassword, vI, 1);
IF vChr REGEXP '[[:alpha:]]'
THEN
SET vNAlpha = vNAlpha+1;
IF vChr REGEXP '[A-Z]'
THEN
SET vNUpper = vNUpper+1;
END IF;
ELSEIF vChr REGEXP '[[:digit:]]'
THEN
SET vNDigits = vNDigits+1;
ELSEIF vChr REGEXP '[[:punct:]]'
THEN
SET vNPunct = vNPunct+1;
END IF;
SET vI = vI+1;
END WHILE;
SELECT
CHAR_LENGTH(vPassword) >= length
AND vNAlpha >= nAlpha
AND vNUpper >= nUpper
AND vNDigits >= nDigits
AND vNPunct >= nPunct
INTO vPasswordOk
FROM userPassword LIMIT 1;
IF NOT vPasswordOk THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Password does not meet requirements';
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `userLogin` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `userLogin`(vUserName VARCHAR(255), vPassword VARCHAR(255))
BEGIN
DECLARE vUserId INT DEFAULT NULL;
SELECT id INTO vUserId FROM user
WHERE name = vUserName
AND password = MD5(vPassword)
AND active;
IF vUserId IS NOT NULL
THEN
REPLACE INTO userSession (connectionId, user, userName)
VALUES (CONNECTION_ID(), vUserId, vUserName);
ELSE
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'INVALID_CREDENTIALS';
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `userLoginWithName` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `userLoginWithName`(vUserName VARCHAR(255))
BEGIN
DECLARE vUserId INT DEFAULT NULL;
SELECT id INTO vUserId FROM user
WHERE name = vUserName;
REPLACE INTO userSession (connectionId, user, userName)
VALUES (CONNECTION_ID(), vUserId, vUserName);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `userLogout` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `userLogout`()
BEGIN
DECLARE vCleanTime DATETIME
DEFAULT TIMESTAMPADD(MINUTE, -30, NOW());
DELETE FROM userSession
WHERE connectionId = CONNECTION_ID()
OR creationDate < vCleanTime;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `userSetPassword` */;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `userSetPassword`(vUserName VARCHAR(255), vPassword VARCHAR(255))
BEGIN
CALL userCheckPassword (vPassword);
UPDATE user SET
password = MD5(vPassword),
recoverPass = FALSE
WHERE `name` = vUserName;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `account` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Current Database: `cache`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `cache` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `cache`;
--
-- Table structure for table `available`
--
DROP TABLE IF EXISTS `available`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `available` (
`calc_id` int(10) unsigned NOT NULL,
`item_id` int(11) NOT NULL,
`available` int(11) NOT NULL,
KEY `calc_id_4` (`calc_id`) USING BTREE,
KEY `calc_id` (`item_id`,`calc_id`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `barcodes`
--
DROP TABLE IF EXISTS `barcodes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `barcodes` (
`code` varchar(22) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`Id_Article` int(11) NOT NULL DEFAULT '0',
`Article` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`Medida` int(10) unsigned DEFAULT NULL,
`Color` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`Categoria` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL,
`Producer` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cache`
--
DROP TABLE IF EXISTS `cache`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cache` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) CHARACTER SET utf8 NOT NULL,
`lifetime` time NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cache_calc`
--
DROP TABLE IF EXISTS `cache_calc`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cache_calc` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`cache_id` int(10) unsigned NOT NULL,
`cacheName` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
`params` varchar(100) CHARACTER SET utf8 NOT NULL DEFAULT '',
`last_refresh` datetime DEFAULT NULL,
`expires` datetime DEFAULT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`connection_id` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `cache_name` (`cache_id`,`params`),
KEY `cache_id` (`cache_id`),
KEY `cacheName` (`cacheName`),
KEY `expires` (`expires`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cache_valid`
--
DROP TABLE IF EXISTS `cache_valid`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cache_valid` (
`valid` tinyint(3) unsigned NOT NULL
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `daily_task_log`
--
DROP TABLE IF EXISTS `daily_task_log`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `daily_task_log` (
`state` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='No he encontrado el lugar en el que vicente almacena la hora en que se ejecutan las daily tasks, asi que he hecho esta tabla, a eliminar cuando se considere oportuno';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `departure_limit`
--
DROP TABLE IF EXISTS `departure_limit`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `departure_limit` (
`warehouse_id` smallint(6) unsigned NOT NULL,
`fecha` date NOT NULL,
`hora` int(11) NOT NULL DEFAULT '0',
`minSpeed` decimal(10,2) NOT NULL DEFAULT '0.00',
PRIMARY KEY (`warehouse_id`,`fecha`),
CONSTRAINT `warehouse_departure` FOREIGN KEY (`warehouse_id`) REFERENCES `vn2008`.`warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `equalizator`
--
DROP TABLE IF EXISTS `equalizator`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `equalizator` (
`warehouse_id` int(11) NOT NULL,
`Vista` int(11) NOT NULL,
`Pedido` int(11) DEFAULT NULL,
`Impreso` int(11) DEFAULT NULL,
`Encajado` int(11) DEFAULT NULL,
PRIMARY KEY (`Vista`,`warehouse_id`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `itemTagFormat`
--
DROP TABLE IF EXISTS `itemTagFormat`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `itemTagFormat` (
`itemFk` int(11) NOT NULL,
`labels1` varchar(80) CHARACTER SET utf8 DEFAULT NULL,
`values1` varchar(80) CHARACTER SET utf8 DEFAULT NULL,
`labels2` varchar(80) CHARACTER SET utf8 DEFAULT NULL,
`values2` varchar(80) CHARACTER SET utf8 DEFAULT NULL,
`description` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`itemFk`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Almacena el formato para los tags de los articulos';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `item_range`
--
DROP TABLE IF EXISTS `item_range`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `item_range` (
`calc_id` int(11) NOT NULL,
`item_id` int(11) NOT NULL,
`date_end` datetime DEFAULT NULL,
KEY `calc_item` (`calc_id`,`item_id`),
KEY `calc_id` (`calc_id`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `last_buy`
--
DROP TABLE IF EXISTS `last_buy`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `last_buy` (
`item_id` int(10) unsigned NOT NULL,
`warehouse_id` smallint(5) unsigned NOT NULL,
`buy_id` int(10) unsigned DEFAULT NULL,
`landing` date DEFAULT NULL,
KEY `buy_id` (`buy_id`),
KEY `item_id` (`item_id`,`warehouse_id`),
KEY `warehouse_id` (`warehouse_id`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `prod_graphic_source`
--
DROP TABLE IF EXISTS `prod_graphic_source`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `prod_graphic_source` (
`m3` double NOT NULL DEFAULT '0',
`warehouse_id` int(11) NOT NULL,
`hora` int(11) NOT NULL,
`order` int(11) NOT NULL DEFAULT '0',
`alert_level` int(11) NOT NULL DEFAULT '0',
`Agencia` varchar(45) CHARACTER SET utf8 NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `stock`
--
DROP TABLE IF EXISTS `stock`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `stock` (
`warehouse_id` smallint(5) unsigned NOT NULL,
`item_id` int(10) unsigned NOT NULL,
`amount` int(11) NOT NULL,
KEY `warehouse_id` (`warehouse_id`,`item_id`),
KEY `warehouse_id_2` (`warehouse_id`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `visible`
--
DROP TABLE IF EXISTS `visible`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `visible` (
`calc_id` int(10) unsigned NOT NULL,
`item_id` int(11) NOT NULL,
`visible` int(11) NOT NULL,
KEY `id` (`calc_id`) USING BTREE,
KEY `calc_id` (`calc_id`,`item_id`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `weekly_sales`
--
DROP TABLE IF EXISTS `weekly_sales`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `weekly_sales` (
`week` int(10) unsigned NOT NULL,
`item_id` int(10) unsigned NOT NULL,
`warehouse_id` smallint(5) unsigned NOT NULL,
`amount` int(11) NOT NULL,
`price` double NOT NULL,
KEY `item_id` (`item_id`,`warehouse_id`),
KEY `week` (`week`) USING BTREE
) ENGINE=MEMORY DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'cache'
--
--
-- Dumping routines for database 'cache'
--
/*!50003 DROP PROCEDURE IF EXISTS `available_refresh` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `available_refresh`(OUT v_calc INT, v_refresh BOOL, v_warehouse INT, v_date DATE)
proc: BEGIN
DECLARE v_date_ini DATE;
DECLARE v_date_end DATETIME;
DECLARE v_reserve_date DATETIME;
DECLARE v_params CHAR(100);
DECLARE v_date_inv DATE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
CALL cache_calc_unlock (v_calc);
RESIGNAL;
END;
IF v_date < CURDATE()
THEN
LEAVE proc;
END IF;
CALL vn2008.item_stock (v_warehouse, v_date, NULL);
SET v_params = CONCAT_WS('/', v_warehouse, v_date);
CALL cache_calc_start (v_calc, v_refresh, 'available', v_params);
IF !v_refresh
THEN
LEAVE proc;
END IF;
DELETE a
FROM available a
LEFT JOIN cache_calc c ON c.id = a.calc_id
WHERE c.id IS NULL;
SET v_date_ini = TIMESTAMP(v_date, '00:00:00');
SET v_date_end = TIMESTAMP(TIMESTAMPADD(DAY, 4, v_date), '23:59:59');
SELECT FechaInventario INTO v_date_inv FROM vn2008.tblContadores;
SELECT SUBTIME(NOW(), reserve_time) INTO v_reserve_date
FROM hedera.order_config;
DROP TEMPORARY TABLE IF EXISTS item_range;
CREATE TEMPORARY TABLE item_range
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT c.item_id, IF(t.life IS NULL, NULL, TIMESTAMP(TIMESTAMPADD(DAY, t.life, c.landing), '23:59:59')) AS date_end
FROM (
SELECT c.Id_Article item_id, MAX(landing) landing
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN vn2008.travel t ON t.id = e.travel_id
JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE t.landing BETWEEN v_date_inv AND v_date_ini
AND t.warehouse_id = v_warehouse
AND NOT e.Inventario
AND NOT e.Redada
GROUP BY Id_Article
) c
JOIN vn2008.Articles a ON a.Id_Article = c.item_id
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
HAVING date_end >= v_date_ini OR date_end IS NULL;
DROP TEMPORARY TABLE IF EXISTS item_range_copy1;
CREATE TEMPORARY TABLE item_range_copy1 LIKE item_range;
INSERT INTO item_range_copy1
SELECT * FROM item_range;
DROP TEMPORARY TABLE IF EXISTS item_range_copy2;
CREATE TEMPORARY TABLE item_range_copy2 LIKE item_range;
INSERT INTO item_range_copy2
SELECT * FROM item_range;
DROP TEMPORARY TABLE IF EXISTS item_range_copy3;
CREATE TEMPORARY TABLE item_range_copy3 LIKE item_range;
INSERT INTO item_range_copy3
SELECT * FROM item_range;
DROP TEMPORARY TABLE IF EXISTS item_range_copy4;
CREATE TEMPORARY TABLE item_range_copy4 LIKE item_range;
INSERT INTO item_range_copy4
SELECT * FROM item_range;
DELETE FROM available WHERE calc_id = v_calc;
INSERT INTO available (calc_id, item_id, available)
SELECT v_calc, t.item_id, SUM(stock) amount FROM (
SELECT ti.item_id, stock
FROM vn2008.tmp_item ti
JOIN item_range ir ON ir.item_id = ti.item_id
UNION ALL
SELECT t.item_id, minacum(dt, amount, v_date) AS available FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_out i
JOIN item_range_copy1 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = v_warehouse
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_in i
JOIN item_range_copy2 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = v_warehouse
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_out i
JOIN item_range_copy3 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = v_warehouse
UNION ALL
SELECT r.item_id, r.shipment, -r.amount
FROM hedera.order_row r
JOIN hedera.`order` o ON o.id = r.order_id
JOIN item_range_copy4 ir ON ir.item_id = r.item_id
WHERE r.shipment >= v_date_ini
AND (ir.date_end IS NULL OR r.shipment <= ir.date_end)
AND r.warehouse_id = v_warehouse
AND r.created >= v_reserve_date
AND NOT o.confirmed
) t
GROUP BY item_id, dt
) t
GROUP BY t.item_id
) t GROUP BY t.item_id HAVING amount != 0;
DROP TEMPORARY TABLE
vn2008.tmp_item
,item_range
,item_range_copy1
,item_range_copy2
,item_range_copy3
,item_range_copy4;
CALL cache_calc_end (v_calc);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `available_refreshtest` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `available_refreshtest`(OUT v_calc INT, v_refresh BOOL, v_warehouse INT, v_date DATE)
proc: BEGIN
DECLARE v_date_ini DATE;
DECLARE v_date_end DATETIME;
DECLARE v_reserve_date DATETIME;
DECLARE v_params CHAR(100);
DECLARE v_date_inv DATE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
CALL cache_calc_unlock (v_calc);
RESIGNAL;
END;
IF v_date < CURDATE()
THEN
LEAVE proc;
END IF;
CALL vn2008.item_stock (v_warehouse, v_date, NULL);
SET v_params = CONCAT_WS('/', v_warehouse, v_date);
CALL cache_calc_start (v_calc, v_refresh, 'available', v_params);
IF !v_refresh
THEN
LEAVE proc;
END IF;
IF TRUE
THEN
DELETE FROM available WHERE calc_id NOT IN (
SELECT cc.id
FROM `cache` c
JOIN cache_calc cc ON c.id = cc.cache_id
WHERE c.`name` = 'available');
END IF;
SET v_date_ini = TIMESTAMP(v_date, '00:00:00');
SET v_date_end = TIMESTAMP(TIMESTAMPADD(DAY, 4, v_date), '23:59:59');
SELECT FechaInventario INTO v_date_inv FROM vn2008.tblContadores;
SELECT SUBTIME(NOW(), reserve_time) INTO v_reserve_date
FROM hedera.order_config;
DROP TEMPORARY TABLE IF EXISTS item_range;
CREATE TEMPORARY TABLE item_range
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT c.item_id, IF(t.life IS NULL, NULL, TIMESTAMP(TIMESTAMPADD(DAY, t.life, c.landing), '23:59:59')) AS date_end
FROM (
SELECT c.Id_Article item_id, MAX(landing) landing
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN vn2008.travel t ON t.id = e.travel_id
JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE t.landing BETWEEN v_date_inv AND v_date_ini
AND t.warehouse_id = v_warehouse
AND NOT e.Inventario
AND NOT e.Redada
GROUP BY Id_Article
) c
JOIN vn2008.Articles a ON a.Id_Article = c.item_id
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
HAVING date_end >= v_date_ini OR date_end IS NULL;
DROP TEMPORARY TABLE IF EXISTS item_range_copy1;
CREATE TEMPORARY TABLE item_range_copy1 LIKE item_range;
INSERT INTO item_range_copy1
SELECT * FROM item_range;
DROP TEMPORARY TABLE IF EXISTS item_range_copy2;
CREATE TEMPORARY TABLE item_range_copy2 LIKE item_range;
INSERT INTO item_range_copy2
SELECT * FROM item_range;
DROP TEMPORARY TABLE IF EXISTS item_range_copy3;
CREATE TEMPORARY TABLE item_range_copy3 LIKE item_range;
INSERT INTO item_range_copy3
SELECT * FROM item_range;
DROP TEMPORARY TABLE IF EXISTS item_range_copy4;
CREATE TEMPORARY TABLE item_range_copy4 LIKE item_range;
INSERT INTO item_range_copy4
SELECT * FROM item_range;
DELETE FROM available WHERE calc_id = v_calc;
INSERT INTO available (calc_id, item_id, available)
SELECT v_calc, t.item_id, SUM(stock) amount FROM (
SELECT ti.item_id, stock
FROM vn2008.tmp_item ti
JOIN item_range ir ON ir.item_id = ti.item_id
UNION ALL
SELECT t.item_id, minacum(dt, amount, v_date) AS available FROM (
SELECT item_id, DATE(dat) dt, SUM(amount) amount FROM (
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_out i
JOIN item_range_copy1 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = v_warehouse
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_in i
JOIN item_range_copy2 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = v_warehouse
UNION ALL
SELECT i.item_id, i.dat, i.amount
FROM vn2008.item_entry_out i
JOIN item_range_copy3 ir ON ir.item_id = i.item_id
WHERE i.dat >= v_date_ini
AND (ir.date_end IS NULL OR i.dat <= ir.date_end)
AND i.warehouse_id = v_warehouse
UNION ALL
SELECT r.item_id, r.shipment, -r.amount
FROM hedera.order_row r
JOIN hedera.`order` o ON o.id = r.order_id
JOIN item_range_copy4 ir ON ir.item_id = r.item_id
WHERE r.shipment >= v_date_ini
AND (ir.date_end IS NULL OR r.shipment <= ir.date_end)
AND r.warehouse_id = v_warehouse
AND r.created >= v_reserve_date
AND NOT o.confirmed
) t
GROUP BY item_id, dt
) t
GROUP BY t.item_id
) t GROUP BY t.item_id HAVING amount != 0;
DROP TEMPORARY TABLE
vn2008.tmp_item
,item_range
,item_range_copy1
,item_range_copy2
,item_range_copy3
,item_range_copy4;
CALL cache_calc_end (v_calc);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `barcodes_articles_update` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `barcodes_articles_update`()
BEGIN
REPLACE cache.barcodes
SELECT
`Articles`.`Id_Article` AS `code`,
`Articles`.`Id_Article` AS `Id_Article`,
`Articles`.`Article` AS `Article`,
`Articles`.`Medida` AS `Medida`,
`Articles`.`Color` AS `Color`,
`Articles`.`Categoria` AS `Categoria`,
`p`.`name` AS `Producer`
FROM
vn2008.Articles
LEFT JOIN vn2008.`producer` `p` using(producer_id);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `barcodes_barcodes_update` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `barcodes_barcodes_update`()
BEGIN
REPLACE cache.barcodes
SELECT
`barcodes`.`code` AS `code`,
`barcodes`.`Id_Article` AS `Id_Article`,
`Articles`.`Article` AS `Article`,
`Articles`.`Medida` AS `Medida`,
`Articles`.`Color` AS `Color`,
`Articles`.`Categoria` AS `Categoria`,
`p`.`name` AS `Producer`
FROM
vn2008.`barcodes`
JOIN
vn2008.Articles using(Id_Article)
LEFT JOIN vn2008.`producer` `p` using(producer_id);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `barcodes_compres_update` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `barcodes_compres_update`()
BEGIN
REPLACE cache.barcodes
SELECT
Compres.`Id_Compra` AS `code`,
Compres.`Id_Article` AS `Id_Article`,
`Articles`.`Article` AS `Article`,
`Articles`.`Medida` AS `Medida`,
`Articles`.`Color` AS `Color`,
`Articles`.`Categoria` AS `Categoria`,
producer.`name` AS `Producer`
FROM
vn2008.Compres
JOIN vn2008.Articles using(Id_Article)
LEFT JOIN vn2008.producer using(producer_id)
JOIN vn2008.Entradas using(Id_Entrada)
JOIN vn2008.travel on travel.id = travel_id
WHERE
landing >= TIMESTAMPADD(WEEK, -2, CURDATE())
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `barcodes_expeditions_update` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `barcodes_expeditions_update`(IN idExpedition BIGINT)
BEGIN
REPLACE cache.barcodes
SELECT
`e`.`expeditions_id` AS `code`,
`Tickets`.`Id_Ruta` AS `Id_Article`,
`Tickets`.`Alias` AS `Article`,
`Tickets`.`Bultos` AS `Medida`,
`Tickets`.`Id_Ruta` AS `Color`,
`w`.`name` AS `Categoria`,
`a`.`Agencia` AS `Producer`
FROM
vn2008.expeditions `e`
JOIN vn2008.Tickets ON `Tickets`.`Id_Ticket` = `e`.`ticket_id`
JOIN vn2008.warehouse `w` ON `w`.`id` = `Tickets`.`warehouse_id`
JOIN vn2008.Rutas `r` ON `r`.`Id_Ruta` = `Tickets`.`Id_Ruta`
JOIN vn2008.Agencias `a` ON `a`.`Id_Agencia` = `r`.`Id_Agencia`
WHERE
idExpedition IN (e.expeditions_id,0)
AND
`Tickets`.`Fecha` >= (CURDATE() + INTERVAL -(2) DAY)
;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `barcodes_update` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `barcodes_update`()
BEGIN
declare allExpeditions int default 0;
call barcodes_articles_update;
call barcodes_barcodes_update;
call barcodes_compres_update;
call barcodes_expeditions_update(allExpeditions);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `cacheCalcClean` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cacheCalcClean`()
BEGIN
DECLARE vCleanTime DATETIME DEFAULT TIMESTAMPADD(MINUTE, -5, NOW());
DELETE FROM cache_calc WHERE expires < vCleanTime;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cache_calc_end` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cache_calc_end`(v_calc INT)
BEGIN
DECLARE v_cache_name VARCHAR(255);
DECLARE v_params VARCHAR(255);
UPDATE cache_calc cc JOIN cache c ON c.id = cc.cache_id
SET
cc.last_refresh = NOW(),
cc.expires = ADDTIME(NOW(), c.lifetime),
cc.connection_id = NULL
WHERE cc.id = v_calc;
SELECT c.name, ca.params INTO v_cache_name, v_params
FROM cache c
JOIN cache_calc ca ON c.id = ca.cache_id
WHERE ca.id = v_calc;
DO RELEASE_LOCK(CONCAT_WS('/', v_cache_name, IFNULL(v_params, '')));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cache_calc_start` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cache_calc_start`(OUT v_calc INT, INOUT v_refresh BOOL, v_cache_name VARCHAR(50), v_params VARCHAR(100))
proc: BEGIN
DECLARE v_valid BOOL;
DECLARE v_lock_id VARCHAR(100);
DECLARE v_cache_id INT;
DECLARE v_expires DATETIME;
DECLARE v_clean_time DATETIME;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
DO RELEASE_LOCK(v_lock_id);
RESIGNAL;
END;
SET v_params = IFNULL(v_params, '');
SELECT COUNT(*) > 0 INTO v_valid FROM cache_valid;
IF !v_valid
THEN
DELETE FROM cache_calc;
INSERT INTO cache_valid (valid) VALUES (TRUE);
END IF;
SET v_lock_id = CONCAT_WS('/', v_cache_name, v_params);
IF !GET_LOCK(v_lock_id, 30)
THEN
SET v_calc = NULL;
SET v_refresh = FALSE;
LEAVE proc;
END IF;
SELECT c.id, ca.id, ca.expires
INTO v_cache_id, v_calc, v_expires
FROM cache c
LEFT JOIN cache_calc ca
ON ca.cache_id = c.id AND ca.params = v_params COLLATE 'utf8_general_ci'
WHERE c.name = v_cache_name COLLATE 'utf8_general_ci';
IF !v_refresh AND NOW() < v_expires
THEN
DO RELEASE_LOCK(v_lock_id);
SET v_refresh = FALSE;
LEAVE proc;
END IF;
IF v_calc IS NULL
THEN
INSERT INTO cache_calc SET
cache_id = v_cache_id,
cacheName = v_cache_name,
params = v_params,
last_refresh = NULL,
expires = NULL,
connection_id = CONNECTION_ID();
SET v_calc = LAST_INSERT_ID();
ELSE
UPDATE cache_calc
SET
last_refresh = NULL,
expires = NULL,
connection_id = CONNECTION_ID()
WHERE id = v_calc;
END IF;
SET v_refresh = TRUE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `cache_calc_unlock` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `cache_calc_unlock`(v_calc INT)
BEGIN
DECLARE v_cache_name VARCHAR(50);
DECLARE v_params VARCHAR(100);
SELECT c.name, ca.params INTO v_cache_name, v_params
FROM cache c
JOIN cache_calc ca ON c.id = ca.cache_id
WHERE ca.id = v_calc;
DELETE FROM cache_calc WHERE id = v_calc;
DO RELEASE_LOCK(CONCAT_WS('/', v_cache_name, IFNULL(v_params, '')));
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `clean` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean`()
BEGIN
DECLARE vDateShort DATETIME;
SET vDateShort = TIMESTAMPADD(MONTH, -1, CURDATE());
INSERT INTO cache.daily_task_log(state) VALUES('clean START');
DELETE FROM cache.departure_limit WHERE Fecha < vDateShort;
INSERT INTO cache.daily_task_log(state) VALUES('clean END');
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `departure_timing` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `departure_timing`()
BEGIN
DECLARE done BOOL DEFAULT FALSE;
DECLARE rsDeparture INT;
DECLARE rsHoras DECIMAL(5,2);
DECLARE rsInicio DECIMAL(5,2);
DECLARE resto DECIMAL(5,2);
DECLARE horasProd DECIMAL(5,2);
DECLARE inicioProd DECIMAL(5,2) DEFAULT 24.00;
DECLARE myTime DECIMAL(5,2);
DECLARE departureLimit INT;
DECLARE myWarehouse INT;
DECLARE myMinSpeed DECIMAL(10,2);
DECLARE rs CURSOR FOR
SELECT Departure
, Sum(pb.m3)/(GREATEST(v.m3,IFNULL(minSpeed,0))/1.3) AS Horas
, curDate()+(Departure-(Sum(pb.m3)/(GREATEST(v.m3,IFNULL(minSpeed,0))/1.3))/24) AS InicioPreparacion
FROM tmp.production_buffer pb
JOIN vn2008.v_encajado_ultima_hora v ON v.warehouse_id = pb.warehouse_id
LEFT JOIN cache.departure_limit dp ON dp.warehouse_id = pb.warehouse_id AND dp.fecha = CURDATE()
WHERE pb.Fecha = CURDATE()
AND alert_level < 2
AND IFNULL(Departure,0) > 0
GROUP BY Departure
ORDER BY Departure DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
SET myTime = HOUR(now()) + MINUTE(now()) / 60;
SELECT warehouse_id INTO myWarehouse
FROM tmp.production_buffer
LIMIT 1;
OPEN rs;
FETCH rs INTO rsDeparture, rsHoras , rsInicio;
WHILE NOT done DO
SET resto = IF(inicioProd < rsDeparture, rsDeparture - inicioProd,0);
SET inicioProd = rsDeparture - rsHoras;
IF inicioProd - resto < myTime THEN
SET done = TRUE;
ELSE
SET departureLimit = rsDeparture;
FETCH rs INTO rsDeparture, rsHoras , rsInicio;
END IF;
END WHILE;
SET departureLimit = IFNULL(departureLimit,24);
SET departureLimit = IF(departureLimit = 0, 24, departureLimit);
SELECT minSpeed INTO myMinSpeed
FROM cache.departure_limit
WHERE warehouse_id = myWarehouse
AND fecha = CURDATE();
REPLACE cache.departure_limit(warehouse_id, fecha, hora, minSpeed)
VALUES (myWarehouse, CURDATE(), IFNULL(departureLimit,24), IFNULL(myMinSpeed,0));
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `departure_timing_beta` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `departure_timing_beta`()
BEGIN
DECLARE done BOOL DEFAULT FALSE;
DECLARE rsDeparture INT;
DECLARE rsHoras DECIMAL(5,2);
DECLARE rsInicio DECIMAL(5,2);
DECLARE resto DECIMAL(5,2);
DECLARE horasProd DECIMAL(5,2);
DECLARE inicioProd DECIMAL(5,2) DEFAULT 24.00;
DECLARE myTime DECIMAL(5,2);
DECLARE departureLimit INT;
DECLARE myWarehouse INT;
DECLARE rs CURSOR FOR
SELECT Departure
, Sum(pb.m3)/GREATEST(v.m3,IFNULL(minSpeed,0)) AS Horas
, curDate()+(Departure-(Sum(pb.m3)/GREATEST(v.m3,IFNULL(minSpeed,0)))/24) AS InicioPreparacion
FROM tmp.production_buffer pb
JOIN vn2008.v_encajado_ultima_hora v ON v.warehouse_id = pb.warehouse_id
LEFT JOIN cache.departure_limit dp ON dp.warehouse_id = pb.warehouse_id AND dp.fecha = CURDATE()
WHERE pb.Fecha = CURDATE()
AND alert_level < 2
AND IFNULL(Departure,0) > 0
GROUP BY Departure
ORDER BY Departure DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
SET myTime = HOUR(now()) + MINUTE(now()) / 60;
SELECT warehouse_id INTO myWarehouse
FROM tmp.production_buffer
LIMIT 1;
OPEN rs;
FETCH rs INTO rsDeparture, rsHoras , rsInicio;
SELECT rsDeparture, rsHoras , rsInicio, myWarehouse, done;
WHILE NOT done DO
SET resto = IF(inicioProd < rsDeparture, rsDeparture - inicioProd,0);
SET inicioProd = rsDeparture - rsHoras;
SELECT rsDeparture, rsHoras , rsInicio, resto,inicioProd;
IF inicioProd - resto < myTime THEN
SET done = TRUE;
ELSE
SET departureLimit = rsDeparture;
FETCH rs INTO rsDeparture, rsHoras , rsInicio;
END IF;
END WHILE;
SELECT rsDeparture, rsHoras , rsInicio, resto,inicioProd;
SET departureLimit = IFNULL(departureLimit,24);
IF departureLimit > 0 THEN
REPLACE cache.departure_limit(warehouse_id, fecha, hora, minSpeed)
VALUES (myWarehouse, CURDATE(), departureLimit, myMinSpeed);
END IF;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `departure_timing_kk` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `departure_timing_kk`()
BEGIN
DECLARE done BOOL DEFAULT FALSE;
DECLARE rsDeparture INT;
DECLARE rsHoras DECIMAL(5,2);
DECLARE rsInicio DECIMAL(5,2);
DECLARE resto DECIMAL(5,2);
DECLARE horasProd DECIMAL(5,2);
DECLARE inicioProd DECIMAL(5,2) DEFAULT 24.00;
DECLARE myTime DECIMAL(5,2);
DECLARE departureLimit INT;
DECLARE myWarehouse INT;
DECLARE myMinSpeed DECIMAL(10,2);
DECLARE rs CURSOR FOR
SELECT Departure
, Sum(pb.m3)/(GREATEST(v.m3, 100)/1.3) AS Horas
, curDate()+(Departure-Sum(pb.m3)/(GREATEST(v.m3, 100)/1.3))/24 AS InicioPreparacion
FROM tmp.production_buffer pb
JOIN vn2008.v_encajado_ultima_hora v ON v.warehouse_id = pb.warehouse_id
WHERE Fecha = CURDATE()
AND alert_level < 2
AND IFNULL(Departure,0) > 0
GROUP BY Departure
ORDER BY Departure DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
SELECT IFNULL(minSpeed,0) INTO myMinSpeed
FROM cache.departure_limit
WHERE warehouse_id = myWarehouse
AND fecha = CURDATE();
SET myTime = HOUR(now()) + MINUTE(now()) / 60;
SELECT warehouse_id INTO myWarehouse
FROM tmp.production_buffer
LIMIT 1;
OPEN rs;
FETCH rs INTO rsDeparture, rsHoras , rsInicio;
WHILE NOT done DO
SET resto = IF(inicioProd < rsDeparture, rsDeparture - inicioProd,0);
SET inicioProd = rsDeparture - rsHoras;
IF inicioProd - resto < myTime THEN
SET done = TRUE;
ELSE
SET departureLimit = rsDeparture;
FETCH rs INTO rsDeparture, rsHoras , rsInicio;
END IF;
END WHILE;
IF departureLimit > 0 THEN
REPLACE cache.departure_limit(warehouse_id, fecha, hora, minSpeed)
VALUES (myWarehouse, CURDATE(), departureLimit, myMinSpeed);
END IF;
CLOSE rs;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `equaliza` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `equaliza`(wh_id INT)
BEGIN
CALL equalizator_refresh (FALSE, wh_id);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `equalizator_refresh` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `equalizator_refresh`(v_refresh BOOL, wh_id INT)
proc: BEGIN
DECLARE datEQ DATETIME;
DECLARE timDIF TIME;
DECLARE v_calc INT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `item_range_refresh` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_range_refresh`(OUT v_calc INT, v_refresh BOOL, v_warehouse INT, v_date DATE)
proc: BEGIN
DECLARE v_params CHAR(100);
DECLARE v_date_inv DATE;
IF v_date < CURDATE()
THEN
LEAVE proc;
END IF;
SET v_params = CONCAT_WS('/', v_warehouse, v_date);
CALL cache_calc_start (v_calc, v_refresh, 'item_range', v_params);
IF !v_refresh
THEN
LEAVE proc;
END IF;
DELETE FROM item_range WHERE calc_id NOT IN (
SELECT cc.id
FROM `cache` c
JOIN cache_calc cc ON c.id = cc.cache_id
WHERE c.`name` = 'item_range');
CALL last_buy_refresh (FALSE);
SET v_date_inv = vn2008.date_inv();
DROP TEMPORARY TABLE IF EXISTS tmp.item_range;
CREATE TEMPORARY TABLE tmp.item_range
(INDEX (item_id))
ENGINE = MEMORY
SELECT c.item_id, IF(t.life IS NULL, NULL, TIMESTAMPADD(DAY, t.life + 1, GREATEST(c.landing, b.landing))) AS date_end
FROM last_buy b
JOIN (
SELECT c.Id_Article item_id, MAX(landing) landing
FROM vn2008.Compres c
JOIN vn2008.Entradas e ON c.Id_Entrada = e.Id_Entrada
JOIN vn2008.travel t ON t.id = e.travel_id
JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE t.landing BETWEEN v_date_inv AND v_date
AND t.warehouse_id = v_warehouse
AND NOT e.Inventario
AND NOT e.Redada
GROUP BY item_id
) c ON c.item_id = b.item_id
JOIN vn2008.Articles a ON a.Id_Article = b.item_id
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
WHERE b.warehouse_id = v_warehouse
HAVING date_end >= v_date OR date_end IS NULL;
DROP TEMPORARY TABLE IF EXISTS tmp.fix_range;
CREATE TEMPORARY TABLE tmp.fix_range
ENGINE = MEMORY
SELECT item_id, date_end FROM (
SELECT p.item_id, p.date_end
FROM vn2008.price_fixed p
LEFT JOIN tmp.item_range i USING(item_id)
WHERE IFNULL(i.date_end, v_date) BETWEEN p.date_start AND p.date_end
AND warehouse_id IN (0, v_warehouse)
ORDER BY item_id, warehouse_id DESC, date_end DESC
) t GROUP BY item_id;
DELETE FROM item_range WHERE calc_id = v_calc;
INSERT INTO item_range (calc_id, item_id, date_end)
SELECT v_calc, item_id, date_end
FROM (
SELECT * FROM tmp.fix_range
UNION ALL
SELECT * FROM tmp.item_range
) t
GROUP BY item_id;
DROP TEMPORARY TABLE tmp.item_range;
DROP TEMPORARY TABLE tmp.fix_range;
CALL cache_calc_end (v_calc);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `last_buy_refresh` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `last_buy_refresh`(v_refresh BOOL)
proc: BEGIN
DECLARE v_calc INT;
DECLARE v_date_ini DATE;
DECLARE v_date_end DATE;
DECLARE v_last_refresh DATE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
CALL cache_calc_unlock (v_calc);
RESIGNAL;
END;
CALL cache_calc_start (v_calc, v_refresh, 'last_buy', NULL);
IF !v_refresh
THEN
LEAVE proc;
END IF;
SET v_date_ini = vn2008.date_inv();
SET v_date_end = CURDATE();
CALL vn2008.item_last_buy_from_interval (NULL, v_date_ini, v_date_end);
DELETE FROM last_buy;
INSERT INTO last_buy (item_id, warehouse_id, buy_id, landing)
SELECT item_id, warehouse_id, buy_id, landing
FROM tmp.item_last_buy_from_interval;
DROP TEMPORARY TABLE tmp.item_last_buy_from_interval;
CALL cache_calc_end (v_calc);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `prod_graphic_refresh` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `prod_graphic_refresh`(v_refresh BOOL, wh_id INT)
proc: BEGIN
DECLARE datEQ DATETIME;
DECLARE timDIF TIME;
DECLARE v_calc INT;
CALL cache_calc_start (v_calc, v_refresh, 'prod_graphic', wh_id);
IF !v_refresh
THEN
LEAVE proc;
END IF;
CALL vn2008.production_control_source(wh_id, 0);
DELETE FROM prod_graphic_source;
INSERT INTO prod_graphic_source (warehouse_id, alert_level, m3, hora, `order`, Agencia)
SELECT
wh_id,
pb.alert_level,
m3,
pb.Hora,
pb.state_order,
pb.Agencia
FROM tmp.production_buffer pb
WHERE Fecha = CURDATE()
;
CALL cache_calc_end (v_calc);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `sales_refresh` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `sales_refresh`()
proc:BEGIN
DECLARE v_calc INT;
DECLARE v_refresh BOOL DEFAULT TRUE;
DECLARE datMONTH INT;
DECLARE datYEAR INT;
CALL cache_calc_start (v_calc, v_refresh, 'sales', NULL);
IF !v_refresh
THEN
LEAVE proc;
END IF;
SELECT MONTH(CURDATE()) INTO datMONTH;
SELECT YEAR(CURDATE()) INTO datYEAR;
DROP TEMPORARY TABLE IF EXISTS tmp.periods;
CREATE TEMPORARY TABLE tmp.periods
select distinct month, year(date) as year
from vn2008.time
where date <= CURDATE()
order by year desc, month desc
limit 3;
DELETE s.*
FROM bi.sales s
join tmp.periods using(year,month);
REPLACE bi.sales(Id_Trabajador, year, month, weight, boss_id)
select v.Id_Trabajador, year, month, round(sum(total)) as weight, IFNULL(j.boss_id,20)
from bi.v_ticket_total v
join tmp.periods using(year,month)
left join (SELECT jerarquia.boss_id, jerarquia.worker_id
FROM vn2008.jerarquia
) j on j.worker_id = v.Id_Trabajador
group by v.Id_Trabajador, year, month;
update bi.sales s
set comision = weight * 0.029;
DROP TEMPORARY TABLE IF EXISTS tmp.periods;
CALL cache_calc_end (v_calc);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `stock_refresh` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `stock_refresh`(v_refresh BOOL)
proc: BEGIN
DECLARE v_calc INT;
DECLARE v_date_inv DATE;
DECLARE v_curdate DATE;
DECLARE v_last_refresh DATETIME;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
CALL cache_calc_unlock (v_calc);
RESIGNAL;
END;
CALL cache_calc_start (v_calc, v_refresh, 'stock', NULL);
IF !v_refresh
THEN
LEAVE proc;
END IF;
SET v_date_inv = (SELECT FechaInventario FROM vn2008.tblContadores LIMIT 1);
SET v_curdate = CURDATE();
DELETE FROM stock;
INSERT INTO stock (item_id, warehouse_id, amount)
SELECT item_id, warehouse_id, SUM(amount) amount FROM
(
SELECT item_id, warehouse_id, amount FROM vn2008.item_out
WHERE dat >= v_date_inv AND dat < v_curdate
UNION ALL
SELECT item_id, warehouse_id, amount FROM vn2008.item_entry_in
WHERE dat >= v_date_inv AND dat < v_curdate
UNION ALL
SELECT item_id ,warehouse_id, amount FROM vn2008.item_entry_out
WHERE dat >= v_date_inv AND dat < v_curdate
) t
GROUP BY item_id, warehouse_id HAVING amount != 0;
CALL cache_calc_end (v_calc);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `visible_refresh` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `visible_refresh`(OUT v_calc INT, v_refresh BOOL, v_warehouse INT)
proc: BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
CALL cache_calc_unlock (v_calc);
RESIGNAL;
END;
CALL cache_calc_start (v_calc, v_refresh, 'visible', v_warehouse);
IF !v_refresh
THEN
LEAVE proc;
END IF;
IF TRUE
THEN
DELETE FROM visible WHERE calc_id NOT IN (
SELECT cc.id
FROM `cache` c
JOIN cache_calc cc ON c.id = cc.cache_id
WHERE c.`name` = 'visible');
END IF;
CALL `cache`.stock_refresh(false);
DROP TEMPORARY TABLE IF EXISTS vn2008.tmp_item;
CREATE TEMPORARY TABLE vn2008.tmp_item
(PRIMARY KEY (item_id))
ENGINE = MEMORY
SELECT item_id, amount stock, amount visible FROM `cache`.stock
WHERE warehouse_id = v_warehouse;
CALL vn2008.item_stock_visible(v_warehouse, NULL);
DELETE FROM visible WHERE calc_id = v_calc;
INSERT INTO visible (calc_id, item_id,visible)
SELECT v_calc, item_id, visible FROM vn2008.tmp_item;
CALL cache_calc_end (v_calc);
DROP TEMPORARY TABLE vn2008.tmp_item;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `weekly_sales_refresh` */;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `weekly_sales_refresh`(v_refresh BOOL)
BEGIN
DECLARE v_week_ini INT;
DECLARE v_week_end INT;
DECLARE v_date_ini DATE;
DECLARE v_date_end DATE;
DECLARE v_last_refresh DATE;
IF GET_LOCK('weekly_sales', 300)
THEN
SELECT last_refresh INTO v_last_refresh FROM weekly_sales_info;
IF v_last_refresh IS NULL THEN
SET v_refresh = TRUE;
END IF;
IF v_refresh || v_last_refresh < CURDATE()
THEN
SET v_date_ini = TIMESTAMPADD(DAY, -(366 * 1.5), CURDATE());
SET v_date_end = TIMESTAMPADD(DAY, -1, CURDATE());
IF v_refresh
THEN
TRUNCATE TABLE weekly_sales;
ELSE
SET v_week_ini = vn2008.to_weeks (v_date_ini);
SET v_date_ini = TIMESTAMPADD(DAY, -WEEKDAY(v_last_refresh) - 7, v_last_refresh);
SET v_week_end = vn2008.to_weeks (v_date_ini);
DELETE FROM weekly_sales
WHERE week < v_week_ini OR week >= v_week_end;
END IF;
CALL vn2008.weekly_sales_new (0, v_date_ini, v_date_end);
INSERT INTO weekly_sales (item_id, week, warehouse_id, amount, price)
SELECT item_id, week, warehouse_id, amount, price FROM vn2008.weekly_sales;
DROP TEMPORARY TABLE vn2008.weekly_sales;
TRUNCATE TABLE weekly_sales_info;
INSERT INTO weekly_sales_info (last_refresh) VALUES (CURDATE());
END IF;
DO RELEASE_LOCK('weekly_sales');
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `cache` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Current Database: `pbx`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `pbx` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `pbx`;
--
-- Table structure for table `blacklist`
--
DROP TABLE IF EXISTS `blacklist`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `blacklist` (
`phone` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`phone`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Hangup input calls from this list';
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`blacklistBeforeInsert`
BEFORE INSERT ON `blacklist` FOR EACH ROW
BEGIN
CALL phoneIsValid (NEW.phone);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`blacklistBerforeUpdate`
BEFORE UPDATE ON `blacklist` FOR EACH ROW
BEGIN
CALL phoneIsValid (NEW.phone);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Table structure for table `cdr`
--
DROP TABLE IF EXISTS `cdr`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `cdr` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`call_date` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`clid` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`src` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`dst` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`dcontext` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`channel` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`dst_channel` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`last_app` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`last_data` varchar(80) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`duration` int(11) NOT NULL DEFAULT '0',
`billsec` int(11) NOT NULL DEFAULT '0',
`disposition` varchar(45) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`ama_flags` int(11) NOT NULL DEFAULT '0',
`account_code` varchar(20) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`unique_id` varchar(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`user_field` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
KEY `calldate` (`call_date`),
KEY `dst` (`dst`),
KEY `accountcode` (`account_code`),
KEY `dstchannel` (`dst_channel`),
KEY `disposition` (`disposition`),
KEY `src` (`src`)
) ENGINE=MyISAM AUTO_INCREMENT=156174 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `cdrConf`
--
DROP TABLE IF EXISTS `cdrConf`;
/*!50001 DROP VIEW IF EXISTS `cdrConf`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `cdrConf` AS SELECT
1 AS `calldate`,
1 AS `clid`,
1 AS `src`,
1 AS `dst`,
1 AS `dcontext`,
1 AS `channel`,
1 AS `dstchannel`,
1 AS `lastapp`,
1 AS `lastdata`,
1 AS `duration`,
1 AS `billsec`,
1 AS `disposition`,
1 AS `amaflags`,
1 AS `accountcode`,
1 AS `uniqueid`,
1 AS `userfield`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `config`
--
DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`sundayFestive` tinyint(4) NOT NULL,
`countryPrefix` varchar(20) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Global configuration';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `followme`
--
DROP TABLE IF EXISTS `followme`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `followme` (
`extension` varchar(128) CHARACTER SET utf8 NOT NULL,
`phone` varchar(20) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`extension`),
CONSTRAINT `followme_ibfk_1` FOREIGN KEY (`extension`) REFERENCES `sip` (`extension`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`followmeBeforeInsert`
BEFORE INSERT ON `followme` FOR EACH ROW
BEGIN
CALL pbx.phoneIsValid (NEW.phone);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`followmeBeforeUpdate`
BEFORE UPDATE ON `followme` FOR EACH ROW
BEGIN
CALL pbx.phoneIsValid (NEW.phone);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Temporary view structure for view `followmeConf`
--
DROP TABLE IF EXISTS `followmeConf`;
/*!50001 DROP VIEW IF EXISTS `followmeConf`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `followmeConf` AS SELECT
1 AS `name`,
1 AS `music`,
1 AS `context`,
1 AS `takecall`,
1 AS `declinecall`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `followmeConfig`
--
DROP TABLE IF EXISTS `followmeConfig`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `followmeConfig` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`music` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
`context` varchar(50) CHARACTER SET utf8 NOT NULL,
`takeCall` char(1) CHARACTER SET utf8 NOT NULL,
`declineCall` char(1) CHARACTER SET utf8 NOT NULL,
`timeout` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `followmeNumberConf`
--
DROP TABLE IF EXISTS `followmeNumberConf`;
/*!50001 DROP VIEW IF EXISTS `followmeNumberConf`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `followmeNumberConf` AS SELECT
1 AS `name`,
1 AS `ordinal`,
1 AS `phonenumber`,
1 AS `timeout`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `queue`
--
DROP TABLE IF EXISTS `queue`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `queue` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`description` varchar(128) CHARACTER SET utf8 NOT NULL,
`name` varchar(128) CHARACTER SET utf8 NOT NULL,
`config` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`),
UNIQUE KEY `description` (`description`),
KEY `config` (`config`),
CONSTRAINT `queue_ibfk_1` FOREIGN KEY (`config`) REFERENCES `queueConfig` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Queues';
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`queueBeforeInsert`
BEFORE INSERT ON `queue` FOR EACH ROW
BEGIN
CALL queueIsValid (NEW.name);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`queueBeforeUpdate`
BEFORE UPDATE ON `queue` FOR EACH ROW
BEGIN
CALL queueIsValid (NEW.name);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Temporary view structure for view `queueConf`
--
DROP TABLE IF EXISTS `queueConf`;
/*!50001 DROP VIEW IF EXISTS `queueConf`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `queueConf` AS SELECT
1 AS `name`,
1 AS `strategy`,
1 AS `timeout`,
1 AS `retry`,
1 AS `weight`,
1 AS `maxlen`,
1 AS `ringinuse`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `queueConfig`
--
DROP TABLE IF EXISTS `queueConfig`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `queueConfig` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`strategy` varchar(128) CHARACTER SET utf8 NOT NULL,
`timeout` int(10) unsigned NOT NULL,
`retry` int(10) unsigned NOT NULL,
`weight` int(10) unsigned NOT NULL,
`maxLen` int(10) unsigned NOT NULL,
`ringInUse` tinyint(4) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Default values for queues configuration';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `queueMember`
--
DROP TABLE IF EXISTS `queueMember`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `queueMember` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`queue` varchar(128) CHARACTER SET utf8 NOT NULL,
`extension` varchar(128) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `queue` (`queue`,`extension`),
KEY `extension` (`extension`),
CONSTRAINT `queueMember_ibfk_1` FOREIGN KEY (`queue`) REFERENCES `queue` (`name`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `queueMember_ibfk_2` FOREIGN KEY (`extension`) REFERENCES `sip` (`extension`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Queue members';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `queueMemberConf`
--
DROP TABLE IF EXISTS `queueMemberConf`;
/*!50001 DROP VIEW IF EXISTS `queueMemberConf`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `queueMemberConf` AS SELECT
1 AS `uniqueid`,
1 AS `queue_name`,
1 AS `interface`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `queuePhone`
--
DROP TABLE IF EXISTS `queuePhone`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `queuePhone` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`queue` varchar(128) CHARACTER SET utf8 NOT NULL,
`phone` varchar(128) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `queue` (`queue`,`phone`),
CONSTRAINT `queuePhone_ibfk_1` FOREIGN KEY (`queue`) REFERENCES `queue` (`name`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`queuePhoneBeforeInsert`
BEFORE INSERT ON `queuePhone` FOR EACH ROW
BEGIN
CALL phoneIsValid (NEW.phone);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`queuePhoneBeforeUpdate`
BEFORE UPDATE ON `queuePhone` FOR EACH ROW
BEGIN
CALL phoneIsValid (NEW.phone);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Table structure for table `schedule`
--
DROP TABLE IF EXISTS `schedule`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `schedule` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`weekDay` tinyint(3) unsigned NOT NULL COMMENT '0 = Monday, 6 = Sunday',
`timeStart` time NOT NULL,
`timeEnd` time NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sip`
--
DROP TABLE IF EXISTS `sip`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sip` (
`user_id` int(10) unsigned NOT NULL DEFAULT '0',
`extension` varchar(128) CHARACTER SET utf8 NOT NULL,
`secret` varchar(80) CHARACTER SET utf8 NOT NULL,
`caller_id` varchar(80) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `extension` (`extension`),
CONSTRAINT `sip_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='SIP accounts';
/*!40101 SET character_set_client = @saved_cs_client */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`sipBeforeInsert`
BEFORE INSERT ON `sip` FOR EACH ROW
BEGIN
CALL extensionIsValid (NEW.extension);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `sipAfterInsert`
AFTER INSERT ON `sip` FOR EACH ROW
BEGIN
INSERT INTO sipReg (userId) VALUES (NEW.user_id);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `pbx`.`sipBeforeUpdate`
BEFORE UPDATE ON `sip` FOR EACH ROW
BEGIN
CALL extensionIsValid (NEW.extension);
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Temporary view structure for view `sipConf`
--
DROP TABLE IF EXISTS `sipConf`;
/*!50001 DROP VIEW IF EXISTS `sipConf`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `sipConf` AS SELECT
1 AS `id`,
1 AS `name`,
1 AS `secret`,
1 AS `callerid`,
1 AS `host`,
1 AS `deny`,
1 AS `permit`,
1 AS `type`,
1 AS `context`,
1 AS `incominglimit`,
1 AS `pickupgroup`,
1 AS `careinvite`,
1 AS `ipaddr`,
1 AS `regseconds`,
1 AS `port`,
1 AS `defaultuser`,
1 AS `useragent`,
1 AS `lastms`,
1 AS `fullcontact`,
1 AS `regserver`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `sipConfig`
--
DROP TABLE IF EXISTS `sipConfig`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sipConfig` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`host` varchar(40) CHARACTER SET utf8 DEFAULT NULL,
`deny` varchar(95) CHARACTER SET utf8 NOT NULL,
`permit` varchar(95) CHARACTER SET utf8 NOT NULL,
`type` enum('user','peer','friend') CHARACTER SET utf8 NOT NULL,
`context` varchar(80) CHARACTER SET utf8 NOT NULL,
`incomingLimit` varchar(10) CHARACTER SET utf8 NOT NULL,
`pickupGroup` varchar(10) CHARACTER SET utf8 NOT NULL,
`careInvite` varchar(10) CHARACTER SET utf8 NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Default values for SIP accounts';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sipReg`
--
DROP TABLE IF EXISTS `sipReg`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sipReg` (
`userId` int(10) unsigned NOT NULL,
`ipAddr` varchar(40) CHARACTER SET utf8 DEFAULT NULL,
`regSeconds` int(10) unsigned DEFAULT NULL,
`port` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
`defaultUser` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
`userAgent` varchar(80) CHARACTER SET utf8 DEFAULT NULL,
`lastMs` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
`fullContact` varchar(50) CHARACTER SET utf8 DEFAULT NULL,
`regServer` varchar(20) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`userId`),
CONSTRAINT `sipReg_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `sip` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='SIP registrations';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'pbx'
--
--
-- Dumping routines for database 'pbx'
--
/*!50003 DROP FUNCTION IF EXISTS `clientFromPhone` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `clientFromPhone`(vPhone VARCHAR(255)) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE vClient INT DEFAULT NULL;
DROP TEMPORARY TABLE IF EXISTS tmp.customer;
CREATE TEMPORARY TABLE tmp.customer
ENGINE = MEMORY
SELECT id_cliente customer
FROM vn2008.Clientes c
WHERE telefono = vPhone
OR movil = vPhone
UNION
SELECT id_cliente
FROM vn2008.Consignatarios
WHERE telefono = vPhone
OR movil = vPhone
UNION
SELECT r.id_cliente
FROM vn2008.Relaciones r
JOIN vn2008.Contactos c ON r.Id_Contacto = c.Id_Contacto
WHERE c.telefono = vPhone
OR c.movil = vPhone;
SELECT t.customer INTO vClient
FROM tmp.customer t
JOIN vn2008.Clientes c ON c.id_cliente = t.customer
WHERE c.activo
LIMIT 1;
DROP TEMPORARY TABLE tmp.customer;
RETURN vClient;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `phoneFormat` */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `phoneFormat`(vPhone VARCHAR(255)) RETURNS varchar(255) CHARSET utf8
BEGIN
DECLARE vI INT DEFAULT 0;
DECLARE vChr VARCHAR(1);
DECLARE vLen INT DEFAULT LENGTH(vPhone);
DECLARE vNewPhone VARCHAR(255) DEFAULT '';
WHILE vI < vLen
DO
SET vChr = SUBSTR(vPhone, vI + 1, 1);
IF vChr REGEXP '^[0-9]$'
THEN
SET vNewPhone = CONCAT(vNewPhone, vChr);
ELSEIF vChr = '+' AND vI = 0
THEN
SET vNewPhone = CONCAT(vNewPhone, '00');
END IF;
SET vI = vI + 1;
END WHILE;
IF vNewPhone REGEXP '^0+$' OR vNewPhone = '' THEN
RETURN NULL;
END IF;
IF vNewPhone REGEXP '^0034' THEN
SET vNewPhone = SUBSTR(vNewPhone, 5);
END IF;
RETURN vNewPhone;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `extensionIsValid` */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `extensionIsValid`(vExtension VARCHAR(255))
DETERMINISTIC
BEGIN
DECLARE vIsValid BOOLEAN;
SET vIsValid = vExtension IS NULL
OR (vExtension REGEXP '^[0-9]{4}$'
AND MOD(vExtension, 100) != 0);
IF NOT vIsValid
THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'EXTENSION_INVALID_FORMAT';
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `phoneIsValid` */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `phoneIsValid`(vPhone VARCHAR(255))
BEGIN
DECLARE vIsValid BOOLEAN;
SET vIsValid = vPhone IS NULL
OR (vPhone REGEXP '^[0-9]+$'
AND vPhone NOT REGEXP '^0+$'
AND vPhone NOT REGEXP '^0034');
IF NOT vIsValid
THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'PHONE_INVALID_FORMAT';
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
/*!50003 DROP PROCEDURE IF EXISTS `queueIsValid` */;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_general_ci ;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `queueIsValid`(vQueue VARCHAR(255))
DETERMINISTIC
BEGIN
DECLARE vIsValid BOOLEAN;
SET vIsValid = vQueue IS NULL
OR vQueue REGEXP '^[1-9][0-9]00$';
IF NOT vIsValid
THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'QUEUE_INVALID_FORMAT';
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
ALTER DATABASE `pbx` CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
--
-- Current Database: `hedera`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `hedera` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `hedera`;
--
-- Temporary view structure for view `address_view`
--
DROP TABLE IF EXISTS `address_view`;
/*!50001 DROP VIEW IF EXISTS `address_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `address_view` AS SELECT
1 AS `id`,
1 AS `customer_id`,
1 AS `warehouse_id`,
1 AS `name`,
1 AS `city`,
1 AS `province_id`,
1 AS `zip_code`,
1 AS `consignee`,
1 AS `default`,
1 AS `type_id`,
1 AS `specs`,
1 AS `insurance`,
1 AS `postage`,
1 AS `active`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `basket`
--
DROP TABLE IF EXISTS `basket`;
/*!50001 DROP VIEW IF EXISTS `basket`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `basket` AS SELECT
1 AS `id`,
1 AS `date_make`,
1 AS `date_send`,
1 AS `customer_id`,
1 AS `delivery_method_id`,
1 AS `agency_id`,
1 AS `address_id`,
1 AS `company_id`,
1 AS `note`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `basket_defaults`
--
DROP TABLE IF EXISTS `basket_defaults`;
/*!50001 DROP VIEW IF EXISTS `basket_defaults`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `basket_defaults` AS SELECT
1 AS `address_id`,
1 AS `agency_id`,
1 AS `delivery_method`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `basket_item`
--
DROP TABLE IF EXISTS `basket_item`;
/*!50001 DROP VIEW IF EXISTS `basket_item`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `basket_item` AS SELECT
1 AS `id`,
1 AS `order_id`,
1 AS `warehouse_id`,
1 AS `item_id`,
1 AS `amount`,
1 AS `price`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `browser`
--
DROP TABLE IF EXISTS `browser`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `browser` (
`name` varchar(30) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Browser name in browscap',
`version` float NOT NULL COMMENT 'Minimal version',
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='List of compatible web browsers and its version';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `config`
--
DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`default_lang` char(2) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The default language if none is specified',
`https` tinyint(3) unsigned NOT NULL COMMENT 'Wether to force de use of HTTPS',
`cookie_life` smallint(5) unsigned NOT NULL COMMENT 'The cookies life, in days',
`jwtKey` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The key used to encode/decode JWT tokens',
`default_form` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Form loaded at web login',
`restUri` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`testRestUri` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`image_host` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,
`image_dir` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Directory where images are allocated',
`guest_user` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Guest user name',
`guest_pass` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'Guest password, base64 encoded',
`test_domain` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The address for beta website',
`production_domain` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The address for production website',
`pdfs_dir` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Directory where pdfs are allocated',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Global configuration parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `contact`
--
DROP TABLE IF EXISTS `contact`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `contact` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`recipient` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `customer_user`
--
DROP TABLE IF EXISTS `customer_user`;
/*!50001 DROP VIEW IF EXISTS `customer_user`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `customer_user` AS SELECT
1 AS `user_id`,
1 AS `name`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `customer_view`
--
DROP TABLE IF EXISTS `customer_view`;
/*!50001 DROP VIEW IF EXISTS `customer_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `customer_view` AS SELECT
1 AS `user_id`,
1 AS `name`,
1 AS `email`,
1 AS `mail`,
1 AS `default_address`,
1 AS `credit`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `form`
--
DROP TABLE IF EXISTS `form`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `form` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`description` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`path` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`role_id` int(10) unsigned NOT NULL,
`parent` int(10) unsigned DEFAULT NULL,
`display_order` tinyint(4) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
KEY `group_id` (`role_id`),
KEY `parent` (`parent`),
CONSTRAINT `form_ibfk_1` FOREIGN KEY (`role_id`) REFERENCES `account`.`role` (`id`) ON UPDATE CASCADE,
CONSTRAINT `form_ibfk_2` FOREIGN KEY (`parent`) REFERENCES `form` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `gallery`
--
DROP TABLE IF EXISTS `gallery`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `gallery` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`comment` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=33 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `image_config`
--
DROP TABLE IF EXISTS `image_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `image_config` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identifier',
`max_size` int(10) unsigned NOT NULL COMMENT 'Maximun size for uploaded images in MB',
`use_xsendfile` tinyint(4) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Global image parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `image_file`
--
DROP TABLE IF EXISTS `image_file`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `image_file` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`schema_id` int(10) unsigned NOT NULL,
`file` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`stamp` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `schema_id_file` (`schema_id`,`file`),
CONSTRAINT `image_file_ibfk_1` FOREIGN KEY (`schema_id`) REFERENCES `image_schema` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `image_schema`
--
DROP TABLE IF EXISTS `image_schema`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `image_schema` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`desc` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`max_width` int(10) unsigned NOT NULL,
`max_height` int(10) unsigned NOT NULL,
`schema` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`table` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`column` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `image_schema_size`
--
DROP TABLE IF EXISTS `image_schema_size`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `image_schema_size` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`image_schema_id` int(10) unsigned NOT NULL,
`width` int(10) unsigned NOT NULL,
`height` int(10) unsigned NOT NULL,
`crop` tinyint(3) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `image_schema_id` (`image_schema_id`),
CONSTRAINT `image_schema_size_ibfk_1` FOREIGN KEY (`image_schema_id`) REFERENCES `image_schema` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `invoice_view`
--
DROP TABLE IF EXISTS `invoice_view`;
/*!50001 DROP VIEW IF EXISTS `invoice_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `invoice_view` AS SELECT
1 AS `invoice_id`,
1 AS `serial_num`,
1 AS `issued`,
1 AS `amount`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `language`
--
DROP TABLE IF EXISTS `language`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `language` (
`code` varchar(10) COLLATE utf8_unicode_ci NOT NULL,
`name` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
`active` tinyint(1) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`code`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `link`
--
DROP TABLE IF EXISTS `link`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `link` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`description` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`link` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`image` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=35 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `location`
--
DROP TABLE IF EXISTS `location`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `location` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`lat` varchar(12) COLLATE utf8_unicode_ci NOT NULL,
`lng` varchar(12) COLLATE utf8_unicode_ci NOT NULL,
`title` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`address` varchar(75) COLLATE utf8_unicode_ci DEFAULT NULL,
`postcode` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`city` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`province` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`phone` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`language` char(2) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `mail_config`
--
DROP TABLE IF EXISTS `mail_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mail_config` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identifier',
`host` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'localhost' COMMENT 'SMTP host',
`port` smallint(6) NOT NULL DEFAULT '465' COMMENT 'SMTP port',
`secure` tinyint(1) NOT NULL DEFAULT '1' COMMENT 'Wether to use a secure connection',
`sender` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The sender mail address',
`sender_name` varchar(75) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The sender name',
`user` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'SMTP user',
`password` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'SMTP password, base64 encoded',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `metatag`
--
DROP TABLE IF EXISTS `metatag`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `metatag` (
`id` int(11) NOT NULL,
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`content` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `news`
--
DROP TABLE IF EXISTS `news`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `news` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
`text` text COLLATE utf8_unicode_ci NOT NULL,
`image` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
`user_id` int(10) unsigned NOT NULL,
`date_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`priority` tinyint(3) unsigned NOT NULL DEFAULT '3',
`tag` varchar(15) COLLATE utf8_unicode_ci NOT NULL DEFAULT 'new',
PRIMARY KEY (`id`),
KEY `user` (`user_id`),
KEY `tag` (`tag`),
CONSTRAINT `news_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `account`.`account` (`id`) ON UPDATE CASCADE,
CONSTRAINT `news_ibfk_2` FOREIGN KEY (`tag`) REFERENCES `news_tag` (`name`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `news_tag`
--
DROP TABLE IF EXISTS `news_tag`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `news_tag` (
`name` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`description` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `order`
--
DROP TABLE IF EXISTS `order`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`date_send` date NOT NULL DEFAULT '0000-00-00',
`customer_id` int(11) NOT NULL,
`delivery_method_id` int(11) DEFAULT '3',
`agency_id` int(11) DEFAULT '2',
`address_id` int(11) DEFAULT NULL,
`company_id` smallint(5) unsigned DEFAULT '442',
`note` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`source_app` set('WEB','ANDROID','IOS','TPV','TABLET_VN','') COLLATE utf8_unicode_ci NOT NULL DEFAULT 'TPV',
`is_bionic` tinyint(1) NOT NULL DEFAULT '1',
`confirmed` tinyint(1) NOT NULL DEFAULT '0',
`date_make` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`first_row_stamp` datetime DEFAULT NULL,
`confirm_date` datetime DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `address` (`address_id`),
KEY `delivery_method` (`delivery_method_id`),
KEY `agency` (`agency_id`),
KEY `customer_id` (`customer_id`),
KEY `company_id` (`company_id`),
KEY `id` (`id`,`customer_id`),
KEY `source_app` (`source_app`),
CONSTRAINT `order_ibfk_5` FOREIGN KEY (`address_id`) REFERENCES `vn2008`.`Consignatarios` (`id_consigna`) ON UPDATE CASCADE,
CONSTRAINT `order_ibfk_8` FOREIGN KEY (`delivery_method_id`) REFERENCES `vn2008`.`Vistas` (`vista_id`) ON UPDATE CASCADE,
CONSTRAINT `order_ibfk_9` FOREIGN KEY (`agency_id`) REFERENCES `vn2008`.`Agencias` (`Id_Agencia`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `order_basket`
--
DROP TABLE IF EXISTS `order_basket`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_basket` (
`order_id` int(10) unsigned NOT NULL,
`customer_id` int(11) NOT NULL,
PRIMARY KEY (`order_id`,`customer_id`),
UNIQUE KEY `customer_id` (`customer_id`),
CONSTRAINT `order_basket_ibfk_1` FOREIGN KEY (`order_id`, `customer_id`) REFERENCES `order` (`id`, `customer_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `order_basket_ibfk_2` FOREIGN KEY (`order_id`) REFERENCES `order` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `order_basket_ibfk_3` FOREIGN KEY (`customer_id`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `order_check`
--
DROP TABLE IF EXISTS `order_check`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_check` (
`id` tinyint(1) unsigned NOT NULL AUTO_INCREMENT,
`max_time` time NOT NULL,
`deny_sunday` tinyint(1) unsigned NOT NULL,
`deny_day` date DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Conditions to check when an order is confirmed';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `order_check_festive`
--
DROP TABLE IF EXISTS `order_check_festive`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_check_festive` (
`id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`date` date NOT NULL,
`accept_orders` tinyint(1) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `date` (`date`)
) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `order_check_wday`
--
DROP TABLE IF EXISTS `order_check_wday`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_check_wday` (
`weekday` tinyint(3) unsigned NOT NULL COMMENT '0 = Monday, 6 = Sunday',
`max_time` time NOT NULL,
PRIMARY KEY (`weekday`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `order_component`
--
DROP TABLE IF EXISTS `order_component`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_component` (
`order_row_id` int(10) unsigned NOT NULL,
`component_id` int(11) NOT NULL,
`price` decimal(12,4) NOT NULL,
PRIMARY KEY (`order_row_id`,`component_id`),
KEY `component_id` (`component_id`),
CONSTRAINT `order_component_ibfk_1` FOREIGN KEY (`order_row_id`) REFERENCES `order_row` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `order_config`
--
DROP TABLE IF EXISTS `order_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_config` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`employee_id` int(11) NOT NULL,
`delivery_agency` int(11) NOT NULL,
`guest_method` varchar(45) COLLATE utf8_unicode_ci NOT NULL,
`guest_agency` int(11) NOT NULL,
`reserve_time` time NOT NULL,
PRIMARY KEY (`id`),
KEY `employee_id` (`employee_id`),
KEY `delivery_agency` (`delivery_agency`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `order_confirm_time`
--
DROP TABLE IF EXISTS `order_confirm_time`;
/*!50001 DROP VIEW IF EXISTS `order_confirm_time`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `order_confirm_time` AS SELECT
1 AS `date_make`,
1 AS `source_app`,
1 AS `customer_id`,
1 AS `confirm_date`,
1 AS `first_row_stamp`,
1 AS `minutos`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `order_row`
--
DROP TABLE IF EXISTS `order_row`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_row` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`order_id` int(10) unsigned NOT NULL DEFAULT '0',
`item_id` int(11) NOT NULL DEFAULT '0',
`warehouse_id` int(11) DEFAULT NULL,
`shipment` date DEFAULT NULL,
`amount` smallint(6) unsigned NOT NULL DEFAULT '0',
`price` decimal(12,2) DEFAULT NULL,
`rate` smallint(5) unsigned DEFAULT NULL,
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Id_Movimiento` int(11) DEFAULT NULL COMMENT 'Deprecated',
PRIMARY KEY (`id`),
KEY `item` (`item_id`),
KEY `order_id` (`order_id`),
KEY `created` (`created`),
KEY `warehouse_shipment` (`warehouse_id`,`shipment`),
CONSTRAINT `order_row_ibfk_2` FOREIGN KEY (`item_id`) REFERENCES `vn2008`.`Articles` (`Id_Article`) ON UPDATE CASCADE,
CONSTRAINT `order_row_ibfk_3` FOREIGN KEY (`order_id`) REFERENCES `order` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `order_row_bi` BEFORE INSERT ON `order_row`
FOR EACH ROW
BEGIN
DECLARE v_is_first BOOLEAN;
SELECT (first_row_stamp IS NULL) INTO v_is_first
FROM `order`
WHERE id = NEW.order_id;
IF v_is_first THEN
UPDATE `order` SET first_row_stamp = NOW()
WHERE id = NEW.order_id;
END IF;
END */;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Temporary view structure for view `order_row_view`
--
DROP TABLE IF EXISTS `order_row_view`;
/*!50001 DROP VIEW IF EXISTS `order_row_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `order_row_view` AS SELECT
1 AS `id`,
1 AS `order_id`,
1 AS `warehouse_id`,
1 AS `item_id`,
1 AS `amount`,
1 AS `price2`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `order_view`
--
DROP TABLE IF EXISTS `order_view`;
/*!50001 DROP VIEW IF EXISTS `order_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `order_view` AS SELECT
1 AS `id`,
1 AS `date_make`,
1 AS `date_send`,
1 AS `customer_id`,
1 AS `delivery_method_id`,
1 AS `agency_id`,
1 AS `note`,
1 AS `address_id`,
1 AS `company_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `restPriv`
--
DROP TABLE IF EXISTS `restPriv`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `restPriv` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`methodPath` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`role` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `role` (`role`),
CONSTRAINT `restPriv_ibfk_1` FOREIGN KEY (`role`) REFERENCES `account`.`role` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `shelf`
--
DROP TABLE IF EXISTS `shelf`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `shelf` (
`id` int(10) unsigned NOT NULL,
`name` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`nTrays` tinyint(3) unsigned NOT NULL,
`trayheight` mediumint(8) unsigned NOT NULL,
`topTrayHeight` mediumint(8) unsigned NOT NULL,
`width` mediumint(8) unsigned NOT NULL,
`depth` mediumint(8) unsigned NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Dimensiones de las estanterias';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `shelfConfig`
--
DROP TABLE IF EXISTS `shelfConfig`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `shelfConfig` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`namePrefix` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
`warehouse` smallint(5) unsigned NOT NULL,
`family` smallint(5) unsigned NOT NULL,
`shelf` int(10) unsigned NOT NULL,
`maxAmount` smallint(5) unsigned DEFAULT NULL,
`showPacking` tinyint(4) NOT NULL,
`stack` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `shelf_id` (`shelf`),
KEY `family_id` (`family`),
KEY `warehouse_id` (`warehouse`),
CONSTRAINT `shelfConfig_ibfk_1` FOREIGN KEY (`family`) REFERENCES `vn2008`.`Tipos` (`tipo_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `shelfConfig_ibfk_2` FOREIGN KEY (`shelf`) REFERENCES `shelf` (`id`) ON UPDATE CASCADE,
CONSTRAINT `shelfConfig_ibfk_3` FOREIGN KEY (`warehouse`) REFERENCES `vn2008`.`warehouse` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sms_config`
--
DROP TABLE IF EXISTS `sms_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sms_config` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uri` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`user` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`password` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`title` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='SMS configuration parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `social`
--
DROP TABLE IF EXISTS `social`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `social` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`link` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`icon` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`priority` tinyint(3) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `priority` (`priority`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sql_message`
--
DROP TABLE IF EXISTS `sql_message`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sql_message` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`code` char(35) COLLATE utf8_unicode_ci NOT NULL,
`description` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`)
) ENGINE=MyISAM AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `survey`
--
DROP TABLE IF EXISTS `survey`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `survey` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`question` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `survey_answer`
--
DROP TABLE IF EXISTS `survey_answer`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `survey_answer` (
`id` int(10) unsigned NOT NULL,
`survey_id` int(10) unsigned NOT NULL,
`answer` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`votes` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `survey` (`survey_id`),
CONSTRAINT `survey_answer_ibfk_1` FOREIGN KEY (`survey_id`) REFERENCES `survey` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `survey_vote`
--
DROP TABLE IF EXISTS `survey_vote`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `survey_vote` (
`survey_id` int(10) unsigned NOT NULL,
`user_id` int(10) unsigned NOT NULL,
PRIMARY KEY (`survey_id`,`user_id`),
KEY `user_id` (`user_id`),
CONSTRAINT `survey_vote_ibfk_1` FOREIGN KEY (`survey_id`) REFERENCES `survey` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `survey_vote_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `ticket_row_view`
--
DROP TABLE IF EXISTS `ticket_row_view`;
/*!50001 DROP VIEW IF EXISTS `ticket_row_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticket_row_view` AS SELECT
1 AS `id`,
1 AS `item_id`,
1 AS `ticket_id`,
1 AS `concept`,
1 AS `amount`,
1 AS `price`,
1 AS `fixed`,
1 AS `discount`,
1 AS `cost`,
1 AS `reserved`,
1 AS `ok`*/;
SET character_set_client = @saved_cs_client;
--
-- Temporary view structure for view `ticket_view`
--
DROP TABLE IF EXISTS `ticket_view`;
/*!50001 DROP VIEW IF EXISTS `ticket_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `ticket_view` AS SELECT
1 AS `id`,
1 AS `customer_id`,
1 AS `warehouse_id`,
1 AS `date`,
1 AS `delivery`,
1 AS `alias`,
1 AS `agency_id`,
1 AS `note`,
1 AS `invoice`,
1 AS `address_id`,
1 AS `employee_id`,
1 AS `comments`,
1 AS `signed`,
1 AS `packages`,
1 AS `location`,
1 AS `hour`,
1 AS `blocked`,
1 AS `solution`,
1 AS `company_id`,
1 AS `type`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `tpv_config`
--
DROP TABLE IF EXISTS `tpv_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tpv_config` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`currency` smallint(5) unsigned NOT NULL,
`terminal` tinyint(3) unsigned NOT NULL,
`transaction_type` tinyint(3) unsigned NOT NULL,
`employee_id` int(10) NOT NULL,
`url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The bank web service URL for production environment',
`test_mode` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT 'Whether test mode is enabled',
`test_url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The bank web service URL for test environment',
`test_key` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'The bank secret key for test environment',
`merchant_url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `employee_id` (`employee_id`),
CONSTRAINT `employee_id` FOREIGN KEY (`employee_id`) REFERENCES `vn2008`.`Trabajadores` (`Id_Trabajador`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Virtual TPV parameters';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tpv_error`
--
DROP TABLE IF EXISTS `tpv_error`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tpv_error` (
`code` char(7) COLLATE utf8_unicode_ci NOT NULL,
`message` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT=' List of possible TPV errors';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tpv_imap_config`
--
DROP TABLE IF EXISTS `tpv_imap_config`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tpv_imap_config` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`host` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
`user` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`pass` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`clean_period` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`success_folder` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,
`error_folder` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='IMAP configuration parameters for virtual TPV';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tpv_merchant`
--
DROP TABLE IF EXISTS `tpv_merchant`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tpv_merchant` (
`id` int(10) unsigned NOT NULL COMMENT 'Merchant identifier',
`description` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Small description',
`company_id` smallint(6) unsigned DEFAULT NULL COMMENT 'Company associated with the merchant',
`bank_id` int(10) NOT NULL COMMENT 'The bank where merchant receipts are created',
`secret_key` varchar(50) COLLATE utf8_unicode_ci NOT NULL COMMENT 'The merchant secret key to sign transactions',
PRIMARY KEY (`id`),
KEY `bank_id` (`bank_id`),
KEY `company_id` (`company_id`),
KEY `id` (`id`,`company_id`),
CONSTRAINT `company_id` FOREIGN KEY (`company_id`) REFERENCES `vn2008`.`empresa` (`id`) ON UPDATE CASCADE,
CONSTRAINT `tpv_merchant_ibfk_1` FOREIGN KEY (`bank_id`) REFERENCES `vn2008`.`Bancos` (`Id_Banco`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Virtual TPV users and its associated company';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tpv_merchant_enable`
--
DROP TABLE IF EXISTS `tpv_merchant_enable`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tpv_merchant_enable` (
`merchant_id` int(10) unsigned NOT NULL DEFAULT '0',
`company_id` smallint(6) unsigned NOT NULL,
PRIMARY KEY (`merchant_id`,`company_id`),
UNIQUE KEY `company_id` (`company_id`),
CONSTRAINT `tpv_merchant_enable_ibfk_1` FOREIGN KEY (`merchant_id`, `company_id`) REFERENCES `tpv_merchant` (`id`, `company_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Virtual TPV enabled users';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tpv_response`
--
DROP TABLE IF EXISTS `tpv_response`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tpv_response` (
`id` smallint(5) unsigned NOT NULL,
`message` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='List of possible TPV reponses';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `tpv_transaction`
--
DROP TABLE IF EXISTS `tpv_transaction`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tpv_transaction` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`merchant_id` int(10) unsigned NOT NULL,
`customer_id` int(11) NOT NULL,
`receipt_id` int(11) DEFAULT NULL,
`amount` int(10) unsigned NOT NULL,
`response` smallint(5) unsigned DEFAULT NULL COMMENT 'Status notified by bank: NULL if no notification, 0 if success, error otherwise',
`error_code` char(7) COLLATE utf8_unicode_ci DEFAULT NULL,
`status` enum('started','ok','ko') COLLATE utf8_unicode_ci NOT NULL DEFAULT 'started',
`date_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `merchant_id` (`merchant_id`),
KEY `receipt_id` (`receipt_id`),
KEY `user_id` (`customer_id`),
KEY `response` (`response`),
KEY `error_code` (`error_code`),
CONSTRAINT `receipt_id` FOREIGN KEY (`receipt_id`) REFERENCES `vn2008`.`Recibos` (`Id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `tpv_transaction_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `vn2008`.`Clientes` (`id_cliente`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `tpv_transaction_ibfk_2` FOREIGN KEY (`merchant_id`) REFERENCES `tpv_merchant` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='Transactions realized through the virtual TPV';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `tpv_transaction_view`
--
DROP TABLE IF EXISTS `tpv_transaction_view`;
/*!50001 DROP VIEW IF EXISTS `tpv_transaction_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `tpv_transaction_view` AS SELECT
1 AS `id`,
1 AS `merchant_id`,
1 AS `customer_id`,
1 AS `receipt_id`,
1 AS `amount`,
1 AS `response`,
1 AS `status`,
1 AS `date_time`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `userSession`
--
DROP TABLE IF EXISTS `userSession`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `userSession` (
`created` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`lastUpdate` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`ssid` char(64) COLLATE utf8_unicode_ci DEFAULT NULL,
`data` text COLLATE utf8_unicode_ci,
`userVisit` int(10) unsigned DEFAULT NULL,
UNIQUE KEY `ssid` (`ssid`),
KEY `userVisit` (`userVisit`),
KEY `lastUpdate` (`lastUpdate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `user_android`
--
DROP TABLE IF EXISTS `user_android`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `user_android` (
`user_id` int(10) unsigned NOT NULL,
`android_id` varchar(200) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`user_id`,`android_id`),
CONSTRAINT `user_android_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `account`.`user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Temporary view structure for view `user_android_view`
--
DROP TABLE IF EXISTS `user_android_view`;
/*!50001 DROP VIEW IF EXISTS `user_android_view`*/;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
/*!50001 CREATE VIEW `user_android_view` AS SELECT
1 AS `user_id`,
1 AS `android_id`*/;
SET character_set_client = @saved_cs_client;
--
-- Table structure for table `visit`
--
DROP TABLE IF EXISTS `visit`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `visit` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`firstAgent` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `firstAgent` (`firstAgent`),
CONSTRAINT `visit_ibfk_1` FOREIGN KEY (`firstAgent`) REFERENCES `visitAgent` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `visitAccess`
--
DROP TABLE IF EXISTS `visitAccess`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `visitAccess` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`agent` int(10) unsigned NOT NULL,
`stamp` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`ip` int(10) unsigned DEFAULT NULL,
`referer` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `visit_access_idx_agent` (`agent`),
KEY `stamp` (`stamp`),
CONSTRAINT `visitAccess_ibfk_1` FOREIGN KEY (`agent`) REFERENCES `visitAgent` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `visitAgent`
--
DROP TABLE IF EXISTS `visitAgent`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `visitAgent` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`visit` int(10) unsigned NOT NULL,
`firstAccess` int(10) unsigned DEFAULT NULL,
`platform` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
`browser` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
`version` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL,
`javascript` tinyint(3) unsigned DEFAULT NULL,
`cookies` tinyint(3) unsigned DEFAULT NULL,
`agent` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `visit_id` (`visit`),
KEY `firstAccess` (`firstAccess`),
CONSTRAINT `visitAgent_ibfk_1` FOREIGN KEY (`visit`) REFERENCES `visit` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `visitAgent_ibfk_2` FOREIGN KEY (`firstAccess`) REFERENCES `visitAccess` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `visitUser`
--
DROP TABLE IF EXISTS `visitUser`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `visitUser` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`access` int(10) unsigned NOT NULL,
`user` int(10) unsigned DEFAULT NULL,
`stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `access_id` (`access`),
KEY `date_time` (`stamp`),
KEY `user_id` (`user`),
CONSTRAINT `visitUser_ibfk_1` FOREIGN KEY (`access`) REFERENCES `visitAccess` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping events for database 'hedera'
--
--
-- Dumping routines for database 'hedera'
--
/*!50003 DROP FUNCTION IF EXISTS `basketGetId` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `basketGetId`() RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE v_order INT;
SELECT order_id INTO v_order FROM order_basket
WHERE customer_id = account.userGetId();
RETURN v_order;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `customer_get_debt` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `customer_get_debt`() RETURNS double
BEGIN
DECLARE v_debt DOUBLE;
CALL customer_get_debt_by_company ();
SELECT SUM(amount) INTO v_debt
FROM t_customer_debt;
DROP TEMPORARY TABLE t_customer_debt;
RETURN v_debt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `invoice_get_path` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `invoice_get_path`(v_invoice INT) RETURNS varchar(255) CHARSET utf8
BEGIN
DECLARE v_issued DATE;
DECLARE v_serial VARCHAR(15);
SELECT Fecha, Id_Factura
INTO v_issued, v_serial
FROM vn2008.Facturas WHERE factura_id = v_invoice;
RETURN CONCAT_WS('/'
,'invoice'
,YEAR(v_issued)
,MONTH(v_issued)
,DAY(v_issued)
,CONCAT(YEAR(v_issued), v_serial, '.pdf')
);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `orderRowCheckAmount` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `orderRowCheckAmount`(vOrder INT, vItem INT, vAmount INT) RETURNS int(11)
BEGIN
DECLARE vGroup INT;
DECLARE vMod INT;
DECLARE vIsBionic BOOLEAN;
SELECT CASE caja WHEN 0 THEN 1 WHEN 2 THEN packing ELSE grouping END, o.is_bionic
INTO vGroup, vIsBionic
FROM `order` o
JOIN vn2008.v_compres c ON c.warehouse_id = o.wh_id
WHERE Id_Article = vItem AND o.id = vOrder AND c.landing <= o.date_send
ORDER BY landing DESC LIMIT 1;
IF !vIsBionic
THEN
SET vMod = MOD(vAmount, vGroup);
IF vMod
THEN
SET vAmount = vAmount + vGroup - vMod;
END IF;
END IF;
RETURN vAmount;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `order_get_total` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `order_get_total`(v_order INT) RETURNS double
BEGIN
DECLARE v_total DOUBLE;
CALL order_get_vat (v_order);
SELECT SUM(tax_base) + SUM(vat) + SUM(surcharge) INTO v_total
FROM t_order_vat;
DROP TEMPORARY TABLE t_order_vat;
RETURN v_total;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP FUNCTION IF EXISTS `userCheckRestPriv` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` FUNCTION `userCheckRestPriv`(vMethodPath VARCHAR(255)) RETURNS tinyint(1)
DETERMINISTIC
BEGIN
DECLARE vRole INT DEFAULT NULL;
SELECT role INTO vRole FROM restPriv
WHERE methodPath = vMethodPath;
RETURN vRole IS NULL
OR account.userHasRoleId (vRole);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `agency_list_from_date` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `agency_list_from_date`(v_date DATE, v_address INT)
BEGIN
DECLARE v_agency INT;
DECLARE v_done BOOLEAN;
DECLARE cur CURSOR FOR
SELECT agency_id FROM vn2008.agency;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET v_done = TRUE;
DROP TEMPORARY TABLE IF EXISTS t_agency;
CREATE TEMPORARY TABLE t_agency
(
agency_id INT,
PRIMARY KEY (agency_id)
)
ENGINE = MEMORY;
OPEN cur;
l: LOOP
SET v_done = FALSE;
FETCH cur INTO v_agency;
IF v_done THEN
LEAVE l;
END IF;
CALL vn2008.travel_tree (v_date, v_address, v_agency);
INSERT INTO t_agency
SELECT a.Id_Agencia
FROM vn2008.Agencias a
JOIN vn2008.travel_tree t
JOIN vn2008.warehouse w on w.id = t.warehouse_id
WHERE a.agency_id = v_agency
ON DUPLICATE KEY UPDATE
agency_id = VALUES(agency_id);
END LOOP;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `basket_check` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `basket_check`()
BEGIN
DECLARE v_order INT;
DECLARE v_created DATETIME;
DECLARE v_status VARCHAR(15) DEFAULT 'OK';
DECLARE CONTINUE HANDLER FOR NOT FOUND SET v_status = 'NOT_EXISTS';
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET v_status = 'BAD_CONFIG';
SELECT id, date_make
INTO v_order, v_created
FROM basket;
IF v_status = 'OK'
THEN
CALL order_check_config (v_order);
IF v_status = 'OK' AND v_created < TIMESTAMPADD(DAY, -1, NOW())
THEN
CALL order_update (v_order);
SET v_status = 'UPDATED';
END IF;
END IF;
SELECT v_status stat;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `basket_configure` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `basket_configure`(
v_delivery DATE,
v_delivery_method VARCHAR(45),
v_agency INT,
v_address INT)
BEGIN
DECLARE v_order INT;
DECLARE v_company INT;
DECLARE v_delivery_method_id INT;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET v_order = NULL;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
SELECT vista_id INTO v_delivery_method_id
FROM vn2008.Vistas
WHERE code = v_delivery_method;
IF v_delivery_method = 'DELIVERY'
THEN
SELECT delivery_agency INTO v_agency
FROM order_config;
END IF;
IF v_delivery_method = 'PICKUP' AND v_address IS NULL
THEN
SELECT default_address INTO v_address
FROM customer_view;
END IF;
SET v_order = basketGetId();
IF v_order IS NULL
THEN
SELECT empresa_id INTO v_company
FROM vn2008.Clientes_empresa
WHERE Id_Cliente = account.userGetId()
AND CURDATE() BETWEEN fecha_ini AND fecha_fin
LIMIT 1;
INSERT INTO `order`
SET
customer_id = account.userGetId(),
date_send = v_delivery,
delivery_method_id = v_delivery_method_id,
agency_id = v_agency,
address_id = v_address,
source_app = 'WEB',
company_id = IFNULL(v_company, 442);
SET v_order = LAST_INSERT_ID();
INSERT INTO order_basket SET
customer_id = account.userGetId(),
order_id = v_order;
ELSE
UPDATE `order`
SET
date_send = v_delivery,
delivery_method_id = v_delivery_method_id,
agency_id = v_agency,
address_id = v_address
WHERE
id = v_order;
CALL order_update (v_order);
END IF;
CALL order_check_config (v_order);
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `basket_configure_for_guest` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `basket_configure_for_guest`()
BEGIN
DECLARE v_method VARCHAR(45);
DECLARE v_agency INT;
SELECT guest_method, guest_agency
INTO v_method, v_agency
FROM order_config
LIMIT 1;
CALL basket_configure (CURDATE(), v_method, v_agency, NULL);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `basket_confirm` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `basket_confirm`()
BEGIN
DECLARE v_order INT DEFAULT basketGetId ();
IF v_order IS NOT NULL
THEN
CALL order_confirm_bionic (v_order);
DELETE FROM order_basket
WHERE order_id = v_order;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `basket_get_vat` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `basket_get_vat`()
BEGIN
CALL order_get_vat (basketGetId());
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `basket_item_add` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `basket_item_add`(
v_warehouse INT,
v_item INT,
v_amount INT)
BEGIN
DECLARE v_calc INT;
DECLARE v_order INT;
DECLARE v_type INT;
DECLARE v_row INT;
DECLARE v_add INT;
DECLARE v_available INT;
DECLARE v_done BOOLEAN;
DECLARE v_grouping INT;
DECLARE v_rate INT;
DECLARE v_shipment DATE;
DECLARE v_price DECIMAL(10,2);
DECLARE cur CURSOR FOR
SELECT grouping, price, rate
FROM tmp.bionic_price
WHERE warehouse_id = v_warehouse
AND item_id = v_item
ORDER BY grouping DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET v_done = TRUE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
CALL bionic_from_item (v_item);
START TRANSACTION;
SET v_order = basketGetId();
SELECT Fecha_envio INTO v_shipment
FROM tmp.travel_tree
WHERE warehouse_id = v_warehouse;
SELECT available INTO v_available
FROM tmp.bionic_lot
WHERE warehouse_id = v_warehouse
AND item_id = v_item;
IF v_amount > v_available
THEN
CALL util.throw ('ORDER_ROW_UNAVAILABLE');
END IF;
OPEN cur;
l: LOOP
SET v_done = FALSE;
FETCH cur INTO v_grouping, v_price, v_rate;
IF v_done THEN
LEAVE l;
END IF;
SET v_add = v_amount - MOD(v_amount, v_grouping);
SET v_amount = v_amount - v_add;
IF v_add = 0 THEN
ITERATE l;
END IF;
INSERT INTO order_row SET
order_id = v_order,
item_id = v_item,
warehouse_id = v_warehouse,
shipment = v_shipment,
rate = v_rate,
amount = v_add,
price = v_price;
SET v_row = LAST_INSERT_ID();
INSERT INTO order_component (order_row_id, component_id, price)
SELECT v_row, c.component_id, c.cost
FROM tmp.bionic_component c
JOIN bi.tarifa_componentes t
ON t.Id_Componente = c.component_id
AND (t.tarifa_class IS NULL OR t.tarifa_class = v_rate)
WHERE c.warehouse_id = v_warehouse
AND c.item_id = v_item;
END LOOP;
CLOSE cur;
COMMIT;
CALL vn2008.bionic_free ();
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_calc` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_calc`()
BEGIN
DECLARE v_date DATE;
DECLARE v_address INT;
DECLARE v_agency INT;
SELECT date_send, address_id, agency_id
INTO v_date, v_address, v_agency
FROM basket;
CALL vn2008.bionic_calc (v_date, v_address, v_agency);
IF account.userGetName () = 'visitor'
THEN
DROP TEMPORARY TABLE tmp.bionic_component;
UPDATE tmp.bionic_item SET price = NULL;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_from_basket` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_from_basket`()
BEGIN
DECLARE v_order INT;
DECLARE v_date DATE;
DECLARE v_address INT;
DECLARE v_agency INT;
SELECT id, date_send, address_id, agency_id
INTO v_order, v_date, v_address, v_agency
FROM basket;
CALL vn2008.bionic_from_order (v_date, v_address, v_agency, v_order);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_from_item` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_from_item`(v_item INT)
BEGIN
DECLARE v_date DATE;
DECLARE v_address INT;
DECLARE v_agency INT;
SELECT date_send, address_id, agency_id
INTO v_date, v_address, v_agency
FROM basket;
CALL vn2008.bionic_from_item (v_date, v_address, v_agency, v_item);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `bionic_from_type` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `bionic_from_type`(v_type INT)
BEGIN
DECLARE v_date DATE;
DECLARE v_address INT;
DECLARE v_agency INT;
SELECT date_send, address_id, agency_id
INTO v_date, v_address, v_agency
FROM basket;
CALL vn2008.bionic_from_type (v_date, v_address, v_agency, v_type);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `clean` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `clean`()
BEGIN
DECLARE v_i INT DEFAULT 0;
WHILE v_i < 5
DO
DROP TEMPORARY TABLE IF EXISTS tmp;
CREATE TEMPORARY TABLE tmp
ENGINE = MEMORY
SELECT id, COUNT(*) c
FROM order_component
GROUP BY order_row_id, component_id
HAVING c > 1;
DELETE c FROM order_component c JOIN tmp t ON t.id = c.id;
DROP TEMPORARY TABLE tmp;
SET v_i = v_i + 1;
END WHILE;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `customer_get_debt_by_company` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `customer_get_debt_by_company`()
BEGIN
DECLARE v_date_ini DATETIME DEFAULT TIMESTAMP(DATE_FORMAT(TIMESTAMPADD(YEAR, -1, CURDATE()), '%Y-01-01'));
DECLARE v_date_end DATETIME DEFAULT TIMESTAMP(CURDATE(), '23:59:59');
DROP TEMPORARY TABLE IF EXISTS vn2008.ticket_tmp;
CREATE TEMPORARY TABLE vn2008.ticket_tmp
(INDEX (ticket_id))
ENGINE = MEMORY
SELECT t.id ticket_id
FROM ticket_view t
JOIN ticket_row_view r ON t.id = r.ticket_id
JOIN tpv_merchant_enable m ON m.company_id = t.company_id
WHERE invoice IS NULL
AND date BETWEEN v_date_ini AND v_date_end
GROUP BY ticket_id
HAVING BIT_AND(fixed);
CALL vn2008.ticket_total ();
CREATE TEMPORARY TABLE t_customer_debt
ENGINE = MEMORY
SELECT e.id, e.abbreviation, IFNULL(SUM(t.amount), 0) amount
FROM vn2008.empresa e
JOIN tpv_merchant_enable m ON m.company_id = e.id
LEFT JOIN
(
SELECT SUM(t.total) amount, i.company_id
FROM vn2008.ticket_total t
JOIN ticket_view i ON i.id = t.ticket_id
GROUP BY i.company_id
UNION ALL
SELECT r.amount, r.company_id
FROM bi.customer_risk r
JOIN tpv_merchant_enable m ON m.company_id = r.company_id
WHERE customer_id = account.userGetId()
UNION ALL
SELECT -SUM(amount) / 100, company_id
FROM tpv_transaction_view t
JOIN tpv_merchant m ON m.id = t.merchant_id
WHERE t.receipt_id IS NULL AND t.status = 'ok'
GROUP BY company_id
) t
ON t.company_id = e.id
GROUP BY e.id;
DROP TEMPORARY TABLE vn2008.ticket_tmp;
DROP TEMPORARY TABLE vn2008.ticket_total;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `formList` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `formList`()
BEGIN
SELECT f.id, f.path, f.description, f.parent
FROM form f
WHERE role_id IN (SELECT id FROM account.userRole)
ORDER BY f.parent, f.display_order, f.id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `itemAllocator` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemAllocator`(
vWh TINYINT
,vDate DATE
,vType INT
,vPrefix VARCHAR(255)
,vUseIds BOOLEAN
)
BEGIN
DECLARE vPrefixLen SMALLINT;
DECLARE vFilter VARCHAR(255) DEFAULT NULL;
DECLARE vDateInv DATE DEFAULT vn2008.date_inv();
SET vPrefixLen = LENGTH(vPrefix);
IF vPrefix IS NOT NULL AND vPrefixLen > 0
THEN
SET vFilter = CONCAT(vPrefix, '%');
SET vPrefixLen = vPrefixLen + 1;
END IF;
DROP TEMPORARY TABLE IF EXISTS filter;
CREATE TEMPORARY TABLE filter
(INDEX (item_id))
ENGINE = MEMORY
SELECT Id_Article item_id FROM vn2008.Articles
WHERE tipo_id = vType
AND (vFilter IS NULL OR Article LIKE vFilter);
DROP TEMPORARY TABLE IF EXISTS current_stock;
CREATE TEMPORARY TABLE current_stock
(INDEX (item_id))
ENGINE = MEMORY
SELECT item_id, SUM(Cantidad) amount FROM
(
SELECT Id_Article item_id, Cantidad
FROM vn2008.Compres c
JOIN vn2008.Entradas e USING(Id_Entrada)
JOIN vn2008.travel t ON t.id = e.travel_id
WHERE landing BETWEEN vDateInv AND vDate
AND warehouse_id = vWh
AND NOT Redada
UNION ALL
SELECT Id_Article, -Cantidad
FROM vn2008.Compres c
JOIN vn2008.Entradas e USING(Id_Entrada)
JOIN vn2008.travel t ON t.id = e.travel_id
WHERE shipment BETWEEN vDateInv AND CURDATE()
AND warehouse_id_out = vWh
AND NOT Redada
AND delivered
UNION ALL
SELECT m.Id_Article, -m.Cantidad
FROM vn2008.Movimientos m
JOIN vn2008.Tickets t USING(Id_Ticket)
JOIN vn.ticketState s ON s.ticket = t.Id_Ticket
WHERE t.Fecha BETWEEN vDateInv AND CURDATE()
AND t.warehouse_id = vWh
AND (t.Etiquetasemitidas OR s.alertLevel = 3)
) t
GROUP BY item_id
HAVING amount > 0;
DROP TEMPORARY TABLE IF EXISTS tmp;
CREATE TEMPORARY TABLE tmp
(INDEX (item_id))
ENGINE = MEMORY
SELECT * FROM
(
SELECT c.Id_Article item_id, c.Id_Compra id, c.Id_Cubo, c.packing
FROM vn2008.Compres c
JOIN vn2008.Entradas e USING(Id_Entrada)
JOIN vn2008.travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN vDateInv AND vDate
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0
AND Id_Cubo IS NOT NULL
ORDER BY t.warehouse_id = 1 DESC, t.landing DESC
) t GROUP BY item_id;
DROP TEMPORARY TABLE IF EXISTS result;
CREATE TEMPORARY TABLE result
ENGINE = MEMORY
SELECT a.Id_Article, IF(vPrefixLen > 0, SUBSTRING(a.Article, vPrefixLen), a.Article) Article,
t.packing, CEIL(s.amount / t.packing) etiquetas, t.Id_Cubo, IF(c.z > 0, c.z, 0) z, c.x, c.y, a.Nicho
FROM vn2008.Articles a
JOIN filter f ON f.item_id = a.Id_Article
JOIN current_stock s ON s.item_id = a.Id_Article
LEFT JOIN tmp t ON t.item_id = a.Id_Article
LEFT JOIN vn2008.Cubos c ON c.Id_Cubo = t.Id_Cubo
WHERE CEIL(s.amount / t.packing) > 0
AND c.box;
IF vUseIds
THEN
SELECT * FROM result
ORDER BY Id_Article;
ELSE
SELECT * FROM result
ORDER BY Article, packing;
END IF;
DROP TEMPORARY TABLE
filter,
current_stock,
tmp,
result;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `itemListVisible` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `itemListVisible`(
vWh TINYINT
,vDate DATE
,vType VARCHAR(255)
,vPrefix VARCHAR(255)
)
BEGIN
DECLARE vPrefixLen SMALLINT;
DECLARE vFilter VARCHAR(255) DEFAULT NULL;
DECLARE vDateInv DATE DEFAULT vn2008.date_inv();
SET vPrefixLen = LENGTH(vPrefix);
IF vPrefix IS NOT NULL AND vPrefixLen > 0
THEN
SET vFilter = CONCAT(vPrefix, '%');
SET vPrefixLen = vPrefixLen + 1;
END IF;
DROP TEMPORARY TABLE IF EXISTS filter;
CREATE TEMPORARY TABLE filter
(INDEX (item_id))
ENGINE = MEMORY
SELECT a.Id_Article item_id
FROM vn2008.Articles a
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
WHERE t.Id_Tipo = vType
AND (vFilter IS NULL OR a.Article LIKE vFilter);
DROP TEMPORARY TABLE IF EXISTS current_stock;
CREATE TEMPORARY TABLE current_stock
(INDEX (item_id))
ENGINE = MEMORY
SELECT item_id, SUM(Cantidad) amount FROM
(
SELECT Id_Article item_id, Cantidad
FROM vn2008.Compres c
JOIN vn2008.Entradas e USING(Id_Entrada)
JOIN vn2008.travel t ON t.id = e.travel_id
WHERE landing BETWEEN vDateInv AND vDate
AND warehouse_id = vWh
AND NOT Redada
UNION ALL
SELECT Id_Article, -Cantidad
FROM vn2008.Compres c
JOIN vn2008.Entradas e USING(Id_Entrada)
JOIN vn2008.travel t ON t.id = e.travel_id
WHERE shipment BETWEEN vDateInv AND CURDATE()
AND warehouse_id_out = vWh
AND NOT Redada
AND delivered
UNION ALL
SELECT m.Id_Article, -m.Cantidad
FROM vn2008.Movimientos m
JOIN vn2008.Tickets t USING(Id_Ticket)
JOIN vn.ticketState s ON s.ticket = t.Id_Ticket
WHERE t.Fecha BETWEEN vDateInv AND CURDATE()
AND t.warehouse_id = vWh
AND (t.Etiquetasemitidas OR s.alertLevel = 3)
) t
GROUP BY item_id
HAVING amount > 0;
DROP TEMPORARY TABLE IF EXISTS tmp;
CREATE TEMPORARY TABLE tmp
(INDEX (item_id))
ENGINE = MEMORY
SELECT * FROM
(
SELECT c.Id_Article item_id, c.Id_Compra id, c.Id_Cubo, c.packing
FROM vn2008.Compres c
JOIN vn2008.Entradas e USING(Id_Entrada)
JOIN vn2008.travel t ON t.id = e.travel_id
WHERE t.landing BETWEEN vDateInv AND vDate
AND c.Novincular = FALSE
AND c.Tarifa2 >= 0
AND Id_Cubo IS NOT NULL
ORDER BY t.warehouse_id = 1 DESC, t.landing DESC
) t GROUP BY item_id;
DROP TEMPORARY TABLE IF EXISTS result;
CREATE TEMPORARY TABLE result
ENGINE = MEMORY
SELECT a.Id_Article itemId, IF(vPrefixLen > 0, SUBSTRING(a.Article, vPrefixLen), a.Article) item,
Medida size, CEIL(s.amount) amount, '' location
FROM vn2008.Articles a
JOIN filter f ON f.item_id = a.Id_Article
JOIN current_stock s ON s.item_id = a.Id_Article
LEFT JOIN tmp t ON t.item_id = a.Id_Article
LEFT JOIN vn2008.Cubos c ON c.Id_Cubo = t.Id_Cubo
WHERE s.amount > 0;
SELECT * FROM result
ORDER BY item, size;
DROP TEMPORARY TABLE
filter,
current_stock,
tmp,
result;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_available` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_available`()
BEGIN
DECLARE v_delivery DATE;
DECLARE v_address INT;
DECLARE v_agency INT;
SELECT date_send, address_id, agency_id
INTO v_delivery, v_address, v_agency
FROM basket;
CALL vn2008.bionic_available_ (v_delivery, v_address, v_agency);
DROP TEMPORARY TABLE IF EXISTS tmp.item_available;
CREATE TEMPORARY TABLE tmp.item_available
(INDEX (item_id))
ENGINE = MEMORY
SELECT c.item_id
FROM `cache`.available c
JOIN vn2008.t_bionic_available a ON c.calc_id = a.calc_id
WHERE c.available > 0
GROUP BY c.item_id;
DROP TEMPORARY TABLE vn2008.t_bionic_available;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `item_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `item_list`(v_warehouse SMALLINT, v_shipping DATE, v_realm INT, v_rate TINYINT)
BEGIN
DECLARE v_calc INT;
CALL cache.available_refresh (v_calc, TRUE, v_warehouse, v_shipping);
CALL vn2008.item_last_buy_ (v_warehouse, v_shipping);
SELECT a.Id_Article, a.Article, a.Categoria, a.Medida, a.Tallos,
c.available, a.Color, o.Abreviatura, t.Tipo, a.tipo_id, a.Foto,
CASE b.caja
WHEN 0 THEN 1
WHEN 2 THEN b.packing
ELSE b.grouping
END AS grouping,
CASE v_rate
WHEN 1 THEN b.Tarifa1
WHEN 2 THEN b.Tarifa2
WHEN 3 THEN b.Tarifa3
ELSE NULL
END AS price
FROM cache.available c
JOIN vn2008.Articles a ON a.Id_Article = c.item_id
JOIN vn2008.t_item_last_buy l ON l.item_id = c.item_id
JOIN vn2008.Tipos t ON t.tipo_id = a.tipo_id
JOIN vn2008.reinos r ON t.reino_id = r.id
JOIN vn2008.Compres b ON b.Id_Compra = l.buy_id
LEFT JOIN vn2008.Origen o ON a.id_origen = o.id
WHERE c.calc_id = v_calc
AND c.available > 0
AND c.item_id != 90
AND r.display
AND (v_realm IS NULL OR v_realm = r.id)
ORDER BY a.tipo_id, Article, Medida;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `orderCheckDate` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `orderCheckDate`(vDate DATE)
BEGIN
DECLARE vMaxTime TIME;
DECLARE vFestive BOOLEAN;
DECLARE vDenyDay DATE;
DECLARE vDenySunday BOOLEAN;
SELECT COUNT(*) INTO vFestive
FROM order_check_festive
WHERE TIMESTAMPADD(YEAR, -YEAR(vDate), vDate) = date
AND accept_orders = FALSE;
IF vDate < CURDATE()
THEN
CALL util.throw ('ORDER_DATE_PAST');
ELSEIF vFestive > 0
THEN
CALL util.throw ('ORDER_DATE_HOLIDAY');
ELSE
SELECT c.deny_sunday, c.deny_day, IFNULL(w.max_time, c.max_time)
INTO vDenySunday, vDenyDay, vMaxTime
FROM order_check c
LEFT JOIN order_check_wday w
ON w.weekday = WEEKDAY(CURDATE());
IF vDate = CURDATE() AND CURTIME() > vMaxTime
THEN
CALL util.throw ('ORDER_DATE_LAST');
ELSEIF WEEKDAY(vDate) = 6 AND vDenySunday
THEN
CALL util.throw ('ORDER_DATE_SUNDAY');
ELSEIF vDate = vDenyDay
THEN
CALL util.throw ('ORDER_DATE_SATURATED');
END IF;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `orderNew` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `orderNew`()
BEGIN
DECLARE vCount INT;
DECLARE vDeliveryMethod INT;
DECLARE vAgency INT;
DECLARE vAddress INT;
DECLARE vWarehouse INT DEFAULT NULL;
SELECT COUNT(*) INTO vCount FROM order_view;
IF vCount >= 3 THEN
CALL util.throw ('ORDER_MAX_EXCEEDED');
END IF;
SELECT co.Id_Consigna, co.Id_Agencia, a.Vista
INTO vAddress, vAgency, vDeliveryMethod
FROM vn2008.Clientes c
LEFT JOIN vn2008.Consignatarios co ON co.Id_Consigna = c.default_address
JOIN vn2008.Agencias a ON a.Id_Agencia = co.Id_Agencia
WHERE c.Id_cliente = user_id();
INSERT INTO `order`
SET
date_send = CURDATE(),
customer_id = user_id(),
delivery_method_id = IFNULL(vDeliveryMethod, DEFAULT(delivery_method_id)),
agency_id = IFNULL(vAgency, DEFAULT(agency_id)),
address_id = IFNULL(vAddress, DEFAULT(address_id)),
wh_id = IFNULL(vWarehouse, DEFAULT(wh_id)),
type_id = IFNULL(vAgency, DEFAULT(type_id)),
is_bionic = FALSE;
SELECT LAST_INSERT_ID() order_id;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `order_check_config` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `order_check_config`(v_order INT)
proc:
BEGIN
DECLARE v_delivery_method VARCHAR(45);
DECLARE v_delivery DATE;
DECLARE v_agency INT;
DECLARE v_address INT;
DECLARE v_ok BOOLEAN;
SELECT v.code, o.date_send, o.agency_id, o.address_id
INTO v_delivery_method, v_delivery, v_agency, v_address
FROM `order` o
JOIN vn2008.Vistas v ON v.vista_id = o.delivery_method_id
WHERE o.id = v_order;
IF v_delivery_method IN ('AGENCY', 'DELIVERY')
&& v_address IS NULL
THEN
CALL util.throw ('ORDER_EMPTY_ADDRESS');
END IF;
CALL agency_list_from_date (v_delivery, v_address);
SELECT COUNT(*) > 0 INTO v_ok
FROM t_agency
WHERE agency_id = v_agency;
DROP TEMPORARY TABLE t_agency;
IF !v_ok THEN
CALL util.throw ('ORDER_INVALID_AGENCY');
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `order_confirm_bionic` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `order_confirm_bionic`(v_order INT)
BEGIN
DECLARE v_ok BOOLEAN;
DECLARE v_done BOOLEAN DEFAULT FALSE;
DECLARE v_wh INT;
DECLARE v_shipment DATETIME;
DECLARE v_ticket INT;
DECLARE v_note VARCHAR(255);
DECLARE i_article INT;
DECLARE v_concepte VARCHAR(30);
DECLARE i_amount INT;
DECLARE d_price DOUBLE;
DECLARE i_movimiento INT;
DECLARE i_rate INT;
DECLARE i_worker INT;
DECLARE i_order_row INT;
DECLARE d_delivery DATE;
DECLARE i_address INT;
DECLARE i_agency INT;
DECLARE b_confirmed BOOLEAN;
DECLARE TICKET_FREE INT DEFAULT 2;
DECLARE SYSTEM_WORKER INT DEFAULT 20;
DECLARE cur_tick CURSOR FOR
SELECT t.Fecha_envio, r.warehouse_id
FROM `order` o
JOIN order_row r ON r.order_id = o.id
LEFT JOIN vn2008.travel_tree t ON t.warehouse_id = r.warehouse_id
WHERE o.id = v_order AND r.amount != 0
GROUP BY warehouse_id;
DECLARE cur_mov CURSOR FOR
SELECT r.id, r.item_id, a.Article, r.amount, r.price, r.rate
FROM order_row r
JOIN vn2008.Articles a ON a.Id_Article = r.item_id
WHERE r.amount != 0
AND r.warehouse_id = v_wh
AND r.order_id = v_order
ORDER BY r.rate DESC;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET v_done = TRUE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
SELECT o.date_send, o.address_id, o.note, a.agency_id, o.confirmed
INTO d_delivery, i_address, v_note, i_agency, b_confirmed
FROM `order` o
JOIN vn2008.Agencias a ON a.Id_Agencia = o.agency_id
WHERE id = v_order;
IF b_confirmed THEN
CALL util.throw ('ORDER_ALREADY_CONFIRMED');
END IF;
SELECT COUNT(*) > 0 INTO v_ok
FROM order_row WHERE order_id = v_order AND amount > 0;
IF !v_ok THEN
CALL util.throw ('ORDER_EMPTY');
END IF;
CALL vn2008.travel_tree (d_delivery, i_address, i_agency);
SELECT Id_Trabajador INTO i_worker
FROM vn2008.Trabajadores
WHERE user_id = account.userGetId();
IF i_worker IS NULL THEN
SELECT employee_id INTO i_worker FROM order_config;
END IF;
START TRANSACTION;
OPEN cur_tick;
tick_loop:
LOOP
SET v_ticket = NULL;
SET v_done = FALSE;
FETCH cur_tick INTO v_shipment, v_wh;
IF v_done THEN
LEAVE tick_loop;
END IF;
SELECT Id_Ticket INTO v_ticket
FROM vn2008.Tickets t
LEFT JOIN vn.ticketState tls on tls.ticket = t.Id_Ticket
JOIN `order` o
ON o.address_id = t.Id_Consigna
AND v_wh = t.warehouse_id
AND o.agency_id = t.Id_Agencia
AND t.landing = o.date_send
AND v_shipment = DATE(t.Fecha)
WHERE o.id = v_order
AND t.Factura IS NULL
AND IFNULL(tls.alertLevel,0) = 0
AND t.Id_Cliente <> 1118
LIMIT 1;
IF v_ticket IS NULL
THEN
INSERT INTO vn2008.Tickets (
Id_Cliente, Fecha, Alias, Id_Agencia, Id_Consigna,
Id_Trabajador, blocked, warehouse_id, Localizacion, landing
)
SELECT cs.Id_Cliente, IFNULL(v_shipment,CURDATE()), cs.Consignatario, o.agency_id, o.address_id,
i_worker, FALSE, v_wh, IF(v_shipment,'BIONIC','ERROR FECHA ENVIO'), o.date_send
FROM `order` o
JOIN vn2008.Consignatarios cs ON cs.Id_Consigna = o.address_id
WHERE o.id = v_order;
SET v_ticket = LAST_INSERT_ID();
ELSE
INSERT INTO vncontrol.inter(Id_Ticket, Id_Trabajador, state_id)
VALUES(v_ticket, SYSTEM_WORKER, TICKET_FREE);
END IF;
INSERT IGNORE INTO vn2008.order_Tickets (order_id, Id_Ticket)
VALUES (v_order, v_ticket);
IF v_note IS NOT NULL && v_note != ''
THEN
INSERT INTO vn2008.ticket_observation (Id_Ticket, observation_type_id, text)
VALUES (v_ticket, 4 , v_note)
ON DUPLICATE KEY UPDATE text = CONCAT(VALUES(text),'. ', text);
END IF;
OPEN cur_mov;
mov_loop:
LOOP
SET v_done = FALSE;
FETCH cur_mov INTO i_order_row, i_article, v_concepte, i_amount, d_price, i_rate;
IF v_done THEN
LEAVE mov_loop;
END IF;
INSERT INTO vn2008.Movimientos
SET
Id_Article = i_article,
Id_Ticket = v_ticket,
Concepte = v_concepte,
Cantidad = i_amount,
Preu = d_price,
CostFixat = 0,
PrecioFijado = TRUE;
SET i_movimiento = LAST_INSERT_ID();
INSERT INTO vn2008.Movimientos_componentes (Id_Movimiento, Id_Componente, Valor)
SELECT i_movimiento, cm.component_id, cm.price
FROM order_component cm
JOIN bi.tarifa_componentes tc ON tc.Id_Componente = cm.component_id
WHERE cm.order_row_id = i_order_row
GROUP BY i_movimiento, cm.component_id;
UPDATE order_row SET Id_Movimiento = i_movimiento
WHERE id = i_order_row;
END LOOP;
CLOSE cur_mov;
UPDATE vn2008.Movimientos m
JOIN (SELECT SUM(mc.Valor) sum_valor,mc.Id_Movimiento
FROM vn2008.Movimientos_componentes mc
join bi.tarifa_componentes tc using(Id_Componente)
join bi.tarifa_componentes_series tcs on tcs.tarifa_componentes_series_id = tc.tarifa_componentes_series_id AND tcs.base
JOIN vn2008.Movimientos m ON m.Id_Movimiento = mc.Id_Movimiento
where m.Id_Ticket = v_ticket
GROUP BY mc.Id_Movimiento) mc ON mc.Id_Movimiento = m.Id_Movimiento
SET m.CostFixat = sum_valor;
END LOOP;
CLOSE cur_tick;
DELETE FROM order_basket WHERE order_id = v_order;
UPDATE `order` SET confirmed = TRUE, confirm_date = NOW()
WHERE id = v_order;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `order_get_vat` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `order_get_vat`(v_order INT)
BEGIN
DECLARE v_billing_date DATE DEFAULT CURDATE();
DECLARE clean CONDITION FOR SQLSTATE 'HY000';
DECLARE CONTINUE HANDLER FOR clean
BEGIN
DROP TEMPORARY TABLE IF EXISTS t_vat_group;
DROP TEMPORARY TABLE IF EXISTS t_vat_tax;
END;
SIGNAL clean;
CREATE TEMPORARY TABLE t_vat_group
(INDEX (country_id, vat_group_id))
ENGINE = MEMORY
SELECT * FROM (
SELECT Id_Pais country_id, iva_group_id vat_group_id, c.tipo rate
FROM vn2008.iva_group_codigo g
JOIN vn2008.iva_codigo c ON g.iva_codigo_id = c.id
JOIN vn2008.iva_tipo t ON t.id = c.iva_tipo_id
WHERE date <= v_billing_date
ORDER BY date DESC
) t
GROUP BY country_id, vat_group_id;
CREATE TEMPORARY TABLE t_vat_tax
(INDEX (country_id, rate))
ENGINE = MEMORY
SELECT * FROM (
SELECT Id_Pais country_id, tipo rate,
CAST(iva / 100 AS DECIMAL(12, 2)) vat,
CAST(recargo / 100 AS DECIMAL(12, 2)) surcharge
FROM vn2008.iva_codigo
JOIN vn2008.iva_tipo t ON t.id = iva_tipo_id
WHERE Fecha <= v_billing_date AND iva
ORDER BY fecha DESC, recargo DESC
) t
GROUP BY country_id, rate;
DROP TEMPORARY TABLE IF EXISTS t_order_vat;
CREATE TEMPORARY TABLE t_order_vat
(INDEX (order_id))
ENGINE = MEMORY
SELECT order_id, t.rate, t.tax_base,
IF(t.has_vat, t.tax_base * x.vat, 0) vat,
IF(t.has_surcharge, t.tax_base * x.surcharge, 0) surcharge
FROM (
SELECT o.id order_id, g.country_id, g.rate
,SUM(m.amount * m.price) AS tax_base
,NOT(c.VIES AND p.pais_id <> c.Id_Pais) AS has_vat
,c.RE != FALSE AS has_surcharge
FROM `order` o
JOIN order_row m ON m.order_id = o.id
JOIN vn2008.Articles a ON a.Id_Article = m.item_id
JOIN vn2008.Clientes c ON c.Id_Cliente = o.customer_id
JOIN vn2008.Proveedores p ON p.Id_Proveedor = o.company_id
JOIN t_vat_group g ON g.country_id = p.pais_id AND g.vat_group_id = a.iva_group_id
WHERE o.id = v_order
GROUP BY order_id, rate
) t
JOIN t_vat_tax x ON x.country_id = t.country_id AND x.rate = t.rate;
SIGNAL clean;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `order_update` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `order_update`(v_order INT)
BEGIN
DECLARE v_date DATE;
DECLARE v_address INT;
DECLARE v_agency INT;
DECLARE v_nrows INT;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
SELECT COUNT(*) INTO v_nrows
FROM order_row WHERE order_id = v_order;
IF v_nrows > 0
THEN
SELECT date_send, address_id, agency_id
INTO v_date, v_address, v_agency
FROM `order`
WHERE id = v_order;
CALL vn2008.bionic_from_order (v_date, v_address, v_agency, v_order);
DELETE c
FROM order_row r
JOIN order_component c ON c.order_row_id = r.id
WHERE r.order_id = v_order;
UPDATE order_row r
LEFT JOIN tmp.bionic_price l
ON l.warehouse_id = r.warehouse_id
AND l.item_id = r.item_id
AND l.rate = r.rate
LEFT JOIN tmp.travel_tree t
ON t.warehouse_id = r.warehouse_id
SET
r.price = l.price,
r.amount = IF(l.item_id IS NOT NULL, r.amount + IF(@m := MOD(r.amount, l.grouping), l.grouping - @m, 0), 0),
r.shipment = t.Fecha_envio
WHERE r.order_id = v_order;
INSERT INTO order_component (order_row_id, component_id, price)
SELECT r.id, c.component_id, c.cost
FROM order_row r
JOIN tmp.bionic_component c
ON c.warehouse_id = r.warehouse_id
AND c.item_id = r.item_id
JOIN bi.tarifa_componentes t
ON t.Id_Componente = c.component_id
AND (t.tarifa_class IS NULL OR t.tarifa_class = r.rate)
WHERE r.order_id = v_order;
END IF;
UPDATE `order` SET date_make = NOW()
WHERE id = v_order;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `sql_query` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `sql_query`(IN v_sql TEXT)
BEGIN
SET @v_sql = v_sql;
PREPARE stmt FROM @v_sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `surveyVote` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `surveyVote`(vAnswer INT)
BEGIN
DECLARE vSurvey INT;
DECLARE vCount TINYINT;
DECLARE EXIT HANDLER FOR 1062
CALL util.throw ('SURVEY_MAX_ONE_VOTE');
SELECT survey_id INTO vSurvey
FROM survey_answer WHERE id = vAnswer;
INSERT INTO survey_vote
VALUES (vSurvey, account.userGetId());
UPDATE survey_answer SET votes = votes + 1
WHERE id = vAnswer;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticketLog` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticketLog`(vticket INT)
BEGIN
INSERT INTO vn2008.Tickets_dits
(idaccion_dits, Id_Trabajador, Id_Ticket)
SELECT 146, 4, id
FROM ticket_view WHERE id = vTicket;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `ticket_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8mb4 */ ;
/*!50003 SET character_set_results = utf8mb4 */ ;
/*!50003 SET collation_connection = utf8mb4_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `ticket_list`()
BEGIN
DROP TEMPORARY TABLE IF EXISTS vn2008.ticket_tmp;
CREATE TEMPORARY TABLE vn2008.ticket_tmp
(KEY (ticket_id))
ENGINE = MEMORY
SELECT t.id ticket_id FROM ticket_view t
WHERE date > TIMESTAMP(DATE_FORMAT(TIMESTAMPADD(DAY, -25, CURDATE()), '%Y-%m-01'));
CALL vn2008.ticket_total ();
DROP TEMPORARY TABLE IF EXISTS t_movement_fixed;
CREATE TEMPORARY TABLE t_movement_fixed
(KEY (ticket_id))
ENGINE = MEMORY
SELECT ticket_id, BIT_AND(fixed != FALSE) all_fixed
FROM ticket_row_view
JOIN vn2008.ticket_tmp USING(ticket_id)
GROUP BY ticket_id;
SELECT i.ticket_id, IFNULL(v.delivery, v.`date`) `date`, city, consignee, type, company_id,
IF(all_fixed, t.total, NULL) total,
IF(v.date >= CURDATE() AND v.invoice IS NULL AND all_fixed
,t.total
,NULL
) pending
FROM vn2008.ticket_tmp i
JOIN ticket_view v ON i.ticket_id = v.id
JOIN address_view c ON v.address_id = c.id
JOIN vn2008.ticket_total t USING(ticket_id)
LEFT JOIN t_movement_fixed m USING(ticket_id)
ORDER BY IFNULL(v.delivery, v.`date`) DESC, i.ticket_id DESC;
DROP TEMPORARY TABLE vn2008.ticket_tmp;
DROP TEMPORARY TABLE vn2008.ticket_total;
DROP TEMPORARY TABLE t_movement_fixed;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `transactionConfirm` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `transactionConfirm`(
vAmount INT
,vOrder INT
,vMerchant INT
,vCurrency INT
,vResponse INT
,vErrorCode VARCHAR(10)
)
BEGIN
DECLARE vReceipt INT;
DECLARE vStatus VARCHAR(10);
DECLARE vCustomer INT;
DECLARE vBank INT;
DECLARE vCompany INT;
DECLARE vEmployee INT;
DECLARE vIsDuplicated BOOLEAN;
DECLARE vDate DATE;
DECLARE vConcept VARCHAR(25) DEFAULT 'Cobro Web';
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
SELECT COUNT(*) > 0 INTO vIsDuplicated
FROM tpv_transaction
WHERE id = vOrder AND response IS NOT NULL
FOR UPDATE;
IF vIsDuplicated
THEN
CALL util.throw ('TRANSACTION_DUPLICATED');
END IF;
IF vResponse BETWEEN 0 AND 99
THEN
SELECT
t.customer_id
,m.bank_id
,m.company_id
,c.employee_id
,DATE(t.date_time)
INTO
vCustomer
,vBank
,vCompany
,vEmployee
,vDate
FROM tpv_merchant m
JOIN tpv_config c ON c.id = 1
LEFT JOIN tpv_transaction t ON t.id = vOrder
WHERE m.id = vMerchant;
INSERT INTO vn2008.Recibos
SET
Entregado = vAmount / 100
,Fechacobro = vDate
,Id_Trabajador = vEmployee
,Id_Banco = vBank
,Id_Cliente = vCustomer
,empresa_id = vCompany
,Id_Factura = vConcept
,conciliado = TRUE;
SET vReceipt = LAST_INSERT_ID();
SET vStatus = 'ok';
DO vn2008.till_entry
(
vCustomer
,vBank
,vAmount / 100
,vConcept
,vDate
,'A'
,TRUE
,vCustomer
,vCompany
,vEmployee
);
ELSE
SET vReceipt = NULL;
SET vStatus = 'ko';
END IF;
UPDATE tpv_transaction
SET
merchant_id = vMerchant
,receipt_id = vReceipt
,amount = vAmount
,response = vResponse
,error_code = vErrorCode
,status = vStatus
WHERE id = vOrder;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `transactionConfirmAll` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `transactionConfirmAll`(vDate DATE)
BEGIN
DECLARE vOrder INT;
DECLARE vDone BOOLEAN DEFAULT FALSE;
DECLARE vDateIni DATETIME DEFAULT TIMESTAMP(vDate, '00:00:00');
DECLARE vDateEnd DATETIME DEFAULT TIMESTAMP(vDate, '23:59:59');
DECLARE transactions CURSOR FOR
SELECT id
FROM tpv_transaction
WHERE date_time BETWEEN vDateIni AND vDateEnd
AND status = 'ok'
AND response IS NULL;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
OPEN transactions;
l: LOOP
FETCH transactions INTO vOrder;
IF vDone THEN
LEAVE l;
END IF;
CALL transactionConfirmById (vOrder);
END LOOP l;
CLOSE transactions;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `transactionConfirmById` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `transactionConfirmById`(
vOrder INT
)
BEGIN
DECLARE vAmount INT;
DECLARE vMerchant INT;
DECLARE vCurrency INT;
SELECT amount, merchant_id, currency
INTO vAmount, vMerchant, vCurrency
FROM tpv_transaction t
JOIN tpv_merchant m ON t.merchant_id = m.id
JOIN tpv_config c
WHERE t.id = vOrder;
CALL transactionConfirm (
vAmount
,vOrder
,vMerchant
,vCurrency
,0
,NULL
);
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `transactionEnd` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `transactionEnd`(vTransaction INT, vStatus VARCHAR(12))
BEGIN
IF vStatus IN ('ok', 'ko')
THEN
UPDATE tpv_transaction_view SET status = vStatus
WHERE id = vTransaction AND response IS NULL;
END IF;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `transactionStart` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `transactionStart`(vAmount INT, vCompany INT)
BEGIN
DECLARE vTransaction CHAR(12);
DECLARE vMerchant INT;
DECLARE vUrl VARCHAR(255);
DECLARE vKey VARCHAR(50);
DECLARE vTestMode BOOLEAN;
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
IF vCompany IS NULL
THEN
SELECT company_id INTO vCompany
FROM tpv_merchant_enable LIMIT 1;
END IF;
SELECT merchant_id INTO vMerchant
FROM tpv_merchant_enable WHERE company_id = vCompany;
SELECT test_mode INTO vTestMode
FROM tpv_config;
IF NOT vTestMode
THEN
SELECT c.url, m.secret_key INTO vUrl, vKey
FROM tpv_merchant m
JOIN tpv_config c
WHERE m.id = vMerchant;
ELSE
SELECT test_url, test_key INTO vUrl, vKey
FROM tpv_config;
END IF;
INSERT INTO tpv_transaction_view
SET
merchant_id = vMerchant
,customer_id = account.userGetId()
,amount = vAmount;
SET vTransaction = LAST_INSERT_ID();
SELECT
vAmount amount
,vTransaction transactionId
,vMerchant merchant
,currency
,transaction_type transactionType
,terminal
,merchant_url merchantUrl
,vUrl url
,vKey secretKey
FROM tpv_config;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `transactionUndo` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `transactionUndo`(
vOrder INT
)
BEGIN
DECLARE vCustomer INT;
DECLARE vAmount DOUBLE;
DECLARE vReceipt INT;
DECLARE vDate DATE;
DECLARE vBank INT;
DECLARE vAccount VARCHAR(12);
DECLARE vSubaccount VARCHAR(12);
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
SELECT
t.customer_id
,t.amount / 100
,t.receipt_id
,DATE(t.date_time)
,m.bank_id
INTO
vCustomer
,vAmount
,vReceipt
,vDate
,vBank
FROM tpv_transaction t
JOIN tpv_merchant m ON m.id = t.merchant_id
JOIN tpv_config c
WHERE t.id = vOrder
FOR UPDATE;
DELETE FROM vn2008.Recibos
WHERE Id = vReceipt LIMIT 1;
DELETE FROM vn2008.Cajas
WHERE Id_Banco = vBank
AND DATE(CajaFecha) = vDate
AND Entrada = vAmount
LIMIT 1;
SELECT Cuenta INTO vSubaccount
FROM vn2008.Clientes WHERE Id_Cliente = vCustomer;
SELECT Cuenta INTO vAccount
FROM vn2008.Bancos WHERE Id_Banco = vBank;
DELETE FROM vn2008.XDiario
WHERE SUBCTA = vSubaccount
AND CONTRA = vAccount
AND DATE(FECHA) = vDate
AND EUROHABER = vAmount
LIMIT 1;
DELETE FROM vn2008.XDiario
WHERE CONTRA = vSubaccount
AND SUBCTA = vAccount
AND DATE(FECHA) = vDate
AND EURODEBE = vAmount
LIMIT 1;
UPDATE tpv_transaction
SET response = NULL, status = 'started'
WHERE id = vOrder;
COMMIT;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `type_list` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = '' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `type_list`(v_realm INT)
BEGIN
DECLARE v_date DATE;
DECLARE v_address INT;
DECLARE v_agency INT;
SELECT date_send, address_id, agency_id
INTO v_date, v_address, v_agency
FROM basket;
CALL vn2008.bionic_available_types_ (v_date, v_address, v_agency);
SELECT t.tipo_id, t.Tipo
FROM vn2008.Tipos t
JOIN vn2008.t_bionic_available_types bt ON bt.tipo_id = t.tipo_id
WHERE t.reino_id = v_realm
ORDER BY t.Orden DESC, t.Tipo;
DROP TEMPORARY TABLE vn2008.t_bionic_available_types;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `visitRegister` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `visitRegister`(
vVisit INT
,vPlatform VARCHAR(30)
,vBrowser VARCHAR(30)
,vVersion VARCHAR(15)
,vJavascript TINYINT
,vCookies TINYINT
,vAgent VARCHAR(255)
,vIp INT
,vReferer VARCHAR(255)
)
BEGIN
DECLARE vFirstVisit TINYINT DEFAULT FALSE;
DECLARE vFirstAgent TINYINT DEFAULT FALSE;
DECLARE vAgentId INT DEFAULT NULL;
DECLARE vAccessId INT DEFAULT NULL;
IF vVisit IS NULL || (SELECT COUNT(*) FROM visit WHERE id = vVisit) = 0
THEN
INSERT INTO visit SET id = DEFAULT;
SET vVisit = LAST_INSERT_ID();
SET vFirstVisit = TRUE;
END IF;
SELECT id INTO vAgentId FROM visitAgent
WHERE visit = vVisit
AND (agent = vAgent OR (vAgent IS NULL AND agent IS NULL))
LIMIT 1;
IF vAgentId IS NULL
THEN
INSERT INTO visitAgent SET
visit = vVisit
,platform = vPlatform
,browser = vBrowser
,version = vVersion
,javascript = vJavascript
,cookies = vCookies
,agent = vAgent;
SET vAgentId = LAST_INSERT_ID();
SET vFirstAgent = TRUE;
END IF;
IF vFirstVisit
THEN
UPDATE visit SET firstAgent = vAgentId
WHERE id = vVisit;
END IF;
INSERT INTO visitAccess SET
agent = vAgentId
,ip = vIp
,referer = vReferer;
SET vAccessId = LAST_INSERT_ID();
IF vFirstAgent
THEN
UPDATE visitAgent SET firstAccess = vAccessId
WHERE id = vAgentId;
END IF;
SELECT vVisit visit, vAccessId access;
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
/*!50003 DROP PROCEDURE IF EXISTS `visitUserNew` */;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
/*!50003 SET character_set_client = utf8 */ ;
/*!50003 SET character_set_results = utf8 */ ;
/*!50003 SET collation_connection = utf8_general_ci */ ;
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
/*!50003 SET sql_mode = 'NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `visitUserNew`(
vAccess INT
,vSsid VARCHAR(64)
)
BEGIN
DECLARE vUserVisit INT;
INSERT INTO visitUser SET
access = vAccess,
user = account.userGetId();
SET vUserVisit = LAST_INSERT_ID();
UPDATE userSession SET userVisit = vUserVisit
WHERE ssid = vSsid;
DELETE FROM userSession
WHERE lastUpdate < TIMESTAMPADD(HOUR, -1, NOW());
END ;;
DELIMITER ;
/*!50003 SET sql_mode = @saved_sql_mode */ ;
/*!50003 SET character_set_client = @saved_cs_client */ ;
/*!50003 SET character_set_results = @saved_cs_results */ ;
/*!50003 SET collation_connection = @saved_col_connection */ ;
--
-- Current Database: `vncontrol`
--
USE `vncontrol`;
--
-- Current Database: `edi`
--
USE `edi`;
--
-- Current Database: `vn2008`
--
USE `vn2008`;
--
-- Final view structure for view `V_edi_item_track`
--
/*!50001 DROP VIEW IF EXISTS `V_edi_item_track`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `V_edi_item_track` AS select `edi`.`item_track`.`item_id` AS `item_id`,`edi`.`item_track`.`s1` AS `s1`,`edi`.`item_track`.`s2` AS `s2`,`edi`.`item_track`.`s3` AS `s3`,`edi`.`item_track`.`s4` AS `s4`,`edi`.`item_track`.`s5` AS `s5`,`edi`.`item_track`.`s6` AS `s6`,`edi`.`item_track`.`kop` AS `kop`,`edi`.`item_track`.`pac` AS `pac`,`edi`.`item_track`.`cat` AS `cat`,`edi`.`item_track`.`ori` AS `ori`,`edi`.`item_track`.`pro` AS `pro`,`edi`.`item_track`.`sub` AS `sub`,`edi`.`item_track`.`package` AS `package` from `edi`.`item_track` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `VerEspionaje`
--
/*!50001 DROP VIEW IF EXISTS `VerEspionaje`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `VerEspionaje` AS select `Trabajadores`.`CodigoTrabajador` AS `CodigoTrabajador`,`Espionajes`.`Fecha` AS `Fecha`,`Espionajes`.`HoraEntrada` AS `HoraEntrada`,`Espionajes`.`HoraSalida` AS `HoraSalida`,`Espionajes`.`Id_Equipo` AS `Id_Equipo`,`Trabajadores`.`Id_Trabajador` AS `Id_Trabajador` from (`Espionajes` join `Trabajadores` on((`Espionajes`.`Id_Trabajador` = `Trabajadores`.`Id_Trabajador`))) order by `Trabajadores`.`CodigoTrabajador`,`Espionajes`.`Fecha` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `account_customer`
--
/*!50001 DROP VIEW IF EXISTS `account_customer`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `account_customer` AS select `e`.`description` AS `description`,`vn2008`.`cc_to_iban`(concat(`a`.`entity_id`,`a`.`office`,`a`.`DC`,`a`.`number`)) AS `iban`,`a`.`entity_id` AS `entity_id`,`a`.`office` AS `office`,`a`.`DC` AS `dc`,`a`.`number` AS `number` from ((`provider_account_customer` `c` join `Proveedores_account` `a` on((`a`.`Id_Proveedores_account` = `c`.`account_id`))) join `entity` `e` on((`a`.`entity_id` = `e`.`entity_id`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `awb_volume`
--
/*!50001 DROP VIEW IF EXISTS `awb_volume`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `awb_volume` AS select `ar`.`awb_id` AS `awb_id`,(((`c`.`Etiquetas` * `t`.`density`) * if((`cu`.`Volumen` > 0),`cu`.`Volumen`,((`cu`.`X` * `cu`.`Y`) * if((`cu`.`Z` = 0),(`a`.`Medida` + 10),`cu`.`Z`)))) / 167000) AS `volume` from (((((((`Compres` `c` join `Articles` `a` on((`c`.`Id_Article` = `a`.`Id_Article`))) join `Tipos` `t` on((`a`.`tipo_id` = `t`.`tipo_id`))) join `Cubos` `cu` on((`cu`.`Id_Cubo` = `c`.`Id_Cubo`))) join `Entradas` `e` on((`c`.`Id_Entrada` = `e`.`Id_Entrada`))) join `travel` `tr` on((`tr`.`id` = `e`.`travel_id`))) join `recibida_entrada` `re` on((`c`.`Id_Entrada` = `re`.`Id_Entrada`))) join `awb_recibida` `ar` on((`re`.`awb_recibida` = `ar`.`recibida_id`))) where (`tr`.`shipment` > makedate((year(curdate()) - 1),1)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `cdr`
--
/*!50001 DROP VIEW IF EXISTS `cdr`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `cdr` AS select `c`.`call_date` AS `calldate`,`c`.`clid` AS `clid`,`c`.`src` AS `src`,`c`.`dst` AS `dst`,`c`.`dcontext` AS `dcontext`,`c`.`channel` AS `channel`,`c`.`dst_channel` AS `dstchannel`,`c`.`last_app` AS `lastapp`,`c`.`last_data` AS `lastdata`,`c`.`duration` AS `duration`,`c`.`billsec` AS `billsec`,`c`.`disposition` AS `disposition`,`c`.`ama_flags` AS `amaflags`,`c`.`account_code` AS `accountcode`,`c`.`unique_id` AS `uniqueid`,`c`.`user_field` AS `userfield` from `pbx`.`cdr` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `clientMana`
--
/*!50001 DROP VIEW IF EXISTS `clientMana`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `clientMana` AS select `t`.`Id_Cliente` AS `Id_Cliente`,`mc`.`Valor` AS `ManaUnitario`,(`mc`.`Valor` * `m`.`Cantidad`) AS `ManaTotal`,`t`.`Id_Ticket` AS `Id_Ticket`,`m`.`Id_Article` AS `Id_Article`,`m`.`Concepte` AS `Concepte`,`m`.`Cantidad` AS `Cantidad`,`m`.`Preu` AS `Preu`,`t`.`Fecha` AS `Fecha`,`m`.`Id_Movimiento` AS `Id_Movimiento` from ((((`vn2008`.`Tickets` `t` join `vn2008`.`Movimientos` `m` on((`m`.`Id_Ticket` = `t`.`Id_Ticket`))) join `vn2008`.`Movimientos_componentes` `mc` on((`mc`.`Id_Movimiento` = `m`.`Id_Movimiento`))) join `vn2008`.`tarifa_componentes` `tc` on((`tc`.`Id_Componente` = `mc`.`Id_Componente`))) join `vn2008`.`tarifa_componentes_series` `tcs` on((`tc`.`tarifa_componentes_series_id` = `tcs`.`tarifa_componentes_series_id`))) where ((`t`.`Fecha` >= '2016-01-01') and (`tcs`.`Serie` = 'cartera_comercial') and (`mc`.`Valor` <> 0)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_article`
--
/*!50001 DROP VIEW IF EXISTS `edi_article`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_article` AS select `edi`.`item`.`id` AS `id`,`edi`.`item`.`product_name` AS `product_name`,`edi`.`item`.`name` AS `name`,`edi`.`item`.`plant_id` AS `plant_id`,`edi`.`item`.`group_id` AS `group_id`,`edi`.`item`.`entry_date` AS `entry_date`,`edi`.`item`.`expiry_date` AS `expiry_date`,`edi`.`item`.`change_date_time` AS `change_date_time` from `edi`.`item` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_bucket`
--
/*!50001 DROP VIEW IF EXISTS `edi_bucket`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_bucket` AS select (cast(`edi`.`bucket`.`bucket_id` as char charset utf8) collate utf8_general_ci) AS `bucket_id`,`edi`.`bucket`.`bucket_type_id` AS `bucket_type_id`,`edi`.`bucket`.`description` AS `description`,`edi`.`bucket`.`x_size` AS `x_size`,`edi`.`bucket`.`y_size` AS `y_size`,`edi`.`bucket`.`z_size` AS `z_size`,`edi`.`bucket`.`entry_date` AS `entry_date`,`edi`.`bucket`.`expiry_date` AS `expiry_date`,`edi`.`bucket`.`change_date_time` AS `change_date_time` from `edi`.`bucket` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_bucket_type`
--
/*!50001 DROP VIEW IF EXISTS `edi_bucket_type`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_bucket_type` AS select `edi`.`bucket_type`.`bucket_type_id` AS `bucket_type_id`,`edi`.`bucket_type`.`description` AS `description`,`edi`.`bucket_type`.`entry_date` AS `entry_date`,`edi`.`bucket_type`.`expiry_date` AS `expiry_date`,`edi`.`bucket_type`.`change_date_time` AS `change_date_time` from `edi`.`bucket_type` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_feature`
--
/*!50001 DROP VIEW IF EXISTS `edi_feature`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_feature` AS select `edi`.`feature`.`item_id` AS `item_id`,`edi`.`feature`.`feature_type_id` AS `feature_type_id`,`edi`.`feature`.`feature_value` AS `feature_value`,`edi`.`feature`.`entry_date` AS `entry_date`,`edi`.`feature`.`expiry_date` AS `expiry_date`,`edi`.`feature`.`change_date_time` AS `change_date_time` from `edi`.`feature` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_genus`
--
/*!50001 DROP VIEW IF EXISTS `edi_genus`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_genus` AS select `edi`.`genus`.`genus_id` AS `genus_id`,`edi`.`genus`.`latin_genus_name` AS `latin_genus_name`,`edi`.`genus`.`entry_date` AS `entry_date`,`edi`.`genus`.`expiry_date` AS `expiry_date`,`edi`.`genus`.`change_date_time` AS `change_date_time` from `edi`.`genus` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_item_feature`
--
/*!50001 DROP VIEW IF EXISTS `edi_item_feature`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_item_feature` AS select `edi`.`item_feature`.`item_id` AS `item_id`,`edi`.`item_feature`.`presentation_order` AS `presentation_order`,`edi`.`item_feature`.`feature` AS `feature`,`edi`.`item_feature`.`regulation_type` AS `regulation_type`,`edi`.`item_feature`.`entry_date` AS `entry_date`,`edi`.`item_feature`.`expiry_date` AS `expiry_date`,`edi`.`item_feature`.`change_date_time` AS `change_date_time` from `edi`.`item_feature` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_plant`
--
/*!50001 DROP VIEW IF EXISTS `edi_plant`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_plant` AS select `edi`.`plant`.`plant_id` AS `plant_id`,`edi`.`plant`.`genus_id` AS `genus_id`,`edi`.`plant`.`specie_id` AS `specie_id`,`edi`.`plant`.`entry_date` AS `entry_date`,`edi`.`plant`.`expiry_date` AS `expiry_date`,`edi`.`plant`.`change_date_time` AS `change_date_time` from `edi`.`plant` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_specie`
--
/*!50001 DROP VIEW IF EXISTS `edi_specie`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_specie` AS select `edi`.`specie`.`specie_id` AS `specie_id`,`edi`.`specie`.`genus_id` AS `genus_id`,`edi`.`specie`.`latin_species_name` AS `latin_species_name`,`edi`.`specie`.`entry_date` AS `entry_date`,`edi`.`specie`.`expiry_date` AS `expiry_date`,`edi`.`specie`.`change_date_time` AS `change_date_time` from `edi`.`specie` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_supplier`
--
/*!50001 DROP VIEW IF EXISTS `edi_supplier`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_supplier` AS select `edi`.`supplier`.`supplier_id` AS `supplier_id`,`edi`.`supplier`.`company_name` AS `company_name` from `edi`.`supplier` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_type`
--
/*!50001 DROP VIEW IF EXISTS `edi_type`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_type` AS select `edi`.`type`.`type_id` AS `type_id`,`edi`.`type`.`type_group_id` AS `type_group_id`,`edi`.`type`.`description` AS `description`,`edi`.`type`.`entry_date` AS `entry_date`,`edi`.`type`.`expiry_date` AS `expiry_date`,`edi`.`type`.`change_date_time` AS `change_date_time` from `edi`.`type` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `edi_value`
--
/*!50001 DROP VIEW IF EXISTS `edi_value`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `edi_value` AS select `edi`.`value`.`type_id` AS `type_id`,`edi`.`value`.`type_value` AS `type_value`,`edi`.`value`.`type_description` AS `type_description`,`edi`.`value`.`entry_date` AS `entry_date`,`edi`.`value`.`expiry_date` AS `expiry_date`,`edi`.`value`.`change_date_time` AS `change_date_time` from `edi`.`value` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `itemTagArranged`
--
/*!50001 DROP VIEW IF EXISTS `itemTagArranged`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `itemTagArranged` AS select `i`.`itemFk` AS `itemFk`,`i`.`tag1` AS `tag1`,`i`.`val1` AS `val1`,`i`.`tag2` AS `tag2`,`i`.`val2` AS `val2`,`i`.`tag3` AS `tag3`,`i`.`val3` AS `val3`,`i`.`tag4` AS `tag4`,`i`.`val4` AS `val4`,`i`.`tag5` AS `tag5`,`i`.`val5` AS `val5`,`i`.`tag6` AS `tag6`,`i`.`val6` AS `val6`,`i`.`description` AS `description` from `vn`.`itemTagArranged` `i` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `item_entry_in`
--
/*!50001 DROP VIEW IF EXISTS `item_entry_in`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `item_entry_in` AS select `t`.`warehouse_id` AS `warehouse_id`,`t`.`landing` AS `dat`,`m`.`Id_Article` AS `item_id`,`m`.`Cantidad` AS `amount`,`t`.`received` AS `received` from ((`Compres` `m` join `Entradas` `e` on((`m`.`Id_Entrada` = `e`.`Id_Entrada`))) join `travel` `t` on((`e`.`travel_id` = `t`.`id`))) where ((`e`.`Inventario` = 0) and (`m`.`Cantidad` <> 0)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `item_entry_out`
--
/*!50001 DROP VIEW IF EXISTS `item_entry_out`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `item_entry_out` AS select `t`.`warehouse_id_out` AS `warehouse_id`,`t`.`shipment` AS `dat`,`m`.`Id_Article` AS `item_id`,-(`m`.`Cantidad`) AS `amount`,`t`.`delivered` AS `delivered` from ((`Compres` `m` join `Entradas` `e` on((`m`.`Id_Entrada` = `e`.`Id_Entrada`))) join `travel` `t` on((`e`.`travel_id` = `t`.`id`))) where ((`e`.`Inventario` = 0) and (`e`.`Redada` = 0) and (`m`.`Cantidad` <> 0)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `item_out`
--
/*!50001 DROP VIEW IF EXISTS `item_out`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `item_out` AS select `t`.`warehouse_id` AS `warehouse_id`,`t`.`Fecha` AS `dat`,`m`.`Id_Article` AS `item_id`,-(`m`.`Cantidad`) AS `amount`,`m`.`OK` AS `ok`,`m`.`Reservado` AS `Reservado`,(`ts`.`alertLevel` = 3) AS `ready`,`t`.`Factura` AS `invoice`,ifnull(`ts`.`alertLevel`,0) AS `alertLevel` from ((`vn2008`.`Movimientos` `m` join `vn2008`.`Tickets` `t` on((`m`.`Id_Ticket` = `t`.`Id_Ticket`))) left join `vn`.`ticketState` `ts` on((`t`.`Id_Ticket` = `ts`.`ticket`))) where (`m`.`Cantidad` <> 0) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `new_view`
--
/*!50001 DROP VIEW IF EXISTS `new_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `new_view` AS select `vn`.`workerDocument`.`id` AS `id`,`vn`.`workerDocument`.`worker` AS `worker`,`vn`.`workerDocument`.`document` AS `document` from `vn`.`workerDocument` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `order`
--
/*!50001 DROP VIEW IF EXISTS `order`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `order` AS select `hedera`.`order`.`id` AS `id`,`hedera`.`order`.`date_make` AS `date_make`,`hedera`.`order`.`date_send` AS `date_send`,`hedera`.`order`.`customer_id` AS `customer_id`,`hedera`.`order`.`delivery_method_id` AS `delivery_method_id`,`hedera`.`order`.`agency_id` AS `agency_id`,`hedera`.`order`.`address_id` AS `address_id`,`hedera`.`order`.`note` AS `note`,`hedera`.`order`.`confirmed` AS `confirmed`,`hedera`.`order`.`is_bionic` AS `is_bionic`,`hedera`.`order`.`source_app` AS `source_app` from `hedera`.`order` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `order_component`
--
/*!50001 DROP VIEW IF EXISTS `order_component`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `order_component` AS select `c`.`order_row_id` AS `order_row_id`,`c`.`component_id` AS `component_id`,`c`.`price` AS `price` from `hedera`.`order_component` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `order_row`
--
/*!50001 DROP VIEW IF EXISTS `order_row`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `order_row` AS select `hedera`.`order_row`.`id` AS `id`,`hedera`.`order_row`.`order_id` AS `order_id`,`hedera`.`order_row`.`item_id` AS `item_id`,`hedera`.`order_row`.`warehouse_id` AS `warehouse_id`,`hedera`.`order_row`.`shipment` AS `shipment`,`hedera`.`order_row`.`amount` AS `amount`,`hedera`.`order_row`.`price` AS `price`,`hedera`.`order_row`.`rate` AS `rate`,`hedera`.`order_row`.`created` AS `created`,`hedera`.`order_row`.`Id_Movimiento` AS `Id_Movimiento` from `hedera`.`order_row` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `person_user`
--
/*!50001 DROP VIEW IF EXISTS `person_user`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `person_user` AS select `u`.`id` AS `id`,`u`.`role` AS `mysql_user_id`,`u`.`name` AS `name`,`u`.`password` AS `password`,`u`.`active` AS `active`,`u`.`lastPassChange` AS `last_pass_change` from `account`.`user` `u` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `person_user_idtrabajador`
--
/*!50001 DROP VIEW IF EXISTS `person_user_idtrabajador`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `person_user_idtrabajador` AS select `t`.`Id_Trabajador` AS `Id_Trabajador` from (`vn2008`.`person_user` `p` join `vn2008`.`Trabajadores` `t` on((`p`.`id` = `t`.`user_id`))) where (`t`.`user_id` = `account`.`userGetId`()) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `proveedores_clientes`
--
/*!50001 DROP VIEW IF EXISTS `proveedores_clientes`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `proveedores_clientes` AS select `Proveedores`.`Id_Proveedor` AS `Id_Proveedor`,`Proveedores`.`Proveedor` AS `Proveedor`,`Clientes`.`id_cliente` AS `Id_Cliente`,`Clientes`.`cliente` AS `Cliente` from (`Proveedores` join `Clientes` on((`Proveedores`.`NIF` = `Clientes`.`if`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `root`
--
/*!50001 DROP VIEW IF EXISTS `root`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`z-developer`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `root` AS select dayname(`h`.`confirm_date`) AS `DiadelaSemana`,hour(`h`.`confirm_date`) AS `Hora`,cast(`h`.`confirm_date` as date) AS `Fecha`,`h`.`source_app` AS `Dispositivo` from `hedera`.`order` `h` where `h`.`confirm_date` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `tarifa_componentes`
--
/*!50001 DROP VIEW IF EXISTS `tarifa_componentes`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `tarifa_componentes` AS select `bi`.`tarifa_componentes`.`Id_Componente` AS `Id_Componente`,`bi`.`tarifa_componentes`.`Componente` AS `Componente`,`bi`.`tarifa_componentes`.`tarifa_componentes_series_id` AS `tarifa_componentes_series_id`,`bi`.`tarifa_componentes`.`tarifa_class` AS `tarifa_class`,`bi`.`tarifa_componentes`.`tax` AS `tax`,`bi`.`tarifa_componentes`.`is_renewable` AS `is_renewable` from `bi`.`tarifa_componentes` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `tarifa_componentes_series`
--
/*!50001 DROP VIEW IF EXISTS `tarifa_componentes_series`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `tarifa_componentes_series` AS select `bi`.`tarifa_componentes_series`.`tarifa_componentes_series_id` AS `tarifa_componentes_series_id`,`bi`.`tarifa_componentes_series`.`Serie` AS `Serie`,`bi`.`tarifa_componentes_series`.`base` AS `base` from `bi`.`tarifa_componentes_series` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticketCreationData`
--
/*!50001 DROP VIEW IF EXISTS `ticketCreationData`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`z-developer`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticketCreationData` AS select dayname(`h`.`confirm_date`) AS `DiadelaSemana`,hour(`h`.`confirm_date`) AS `Hora`,cast(`h`.`confirm_date` as date) AS `Fecha`,`h`.`source_app` AS `Dispositivo` from `hedera`.`order` `h` where `h`.`confirm_date` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_Agenda`
--
/*!50001 DROP VIEW IF EXISTS `v_Agenda`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_Agenda` AS select 'P' AS `Tipo`,`Proveedores`.`Id_Proveedor` AS `Id`,`Proveedores`.`Proveedor` AS `Nombre`,`Proveedores`.`Telefono` AS `Telephone` from `Proveedores` where (`Proveedores`.`Telefono` is not null) union select 'C' AS `Tipo`,`Clientes`.`id_cliente` AS `Id`,`Clientes`.`cliente` AS `Cliente`,`Clientes`.`telefono` AS `Telefono` from `Clientes` where (`Clientes`.`telefono` is not null) union select 'C' AS `Tipo`,`Clientes`.`id_cliente` AS `Id`,`Clientes`.`cliente` AS `Cliente`,`Clientes`.`movil` AS `Movil` from `Clientes` where (`Clientes`.`movil` is not null) union select if(isnull(`Relaciones`.`Id_Proveedor`),'C','P') AS `Tipo`,if(isnull(`Relaciones`.`Id_Proveedor`),`Relaciones`.`Id_Cliente`,`Relaciones`.`Id_Proveedor`) AS `Id`,`Contactos`.`Nombre` AS `Nombre`,`Contactos`.`Telefono` AS `Telefono` from (`Contactos` join `Relaciones` on((`Contactos`.`Id_Contacto` = `Relaciones`.`Id_Contacto`))) where (`Contactos`.`Telefono` is not null) union select if(isnull(`Relaciones`.`Id_Proveedor`),'C','P') AS `Tipo`,if(isnull(`Relaciones`.`Id_Proveedor`),`Relaciones`.`Id_Cliente`,`Relaciones`.`Id_Proveedor`) AS `Id`,`Contactos`.`Nombre` AS `Nombre`,`Contactos`.`Movil` AS `Movil` from (`Contactos` join `Relaciones` on((`Contactos`.`Id_Contacto` = `Relaciones`.`Id_Contacto`))) where (`Contactos`.`Movil` is not null) union select 'T' AS `Tipo`,`Trabajadores`.`Id_Trabajador` AS `Id_Trabajador`,`Trabajadores`.`CodigoTrabajador` AS `CodigoTrabajador`,`Trabajadores`.`extension` AS `extension` from `Trabajadores` where (`Trabajadores`.`extension` is not null) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_Agenda2`
--
/*!50001 DROP VIEW IF EXISTS `v_Agenda2`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_Agenda2` AS select `v_Agenda`.`Tipo` AS `Tipo`,`v_Agenda`.`Id` AS `Id`,`v_Agenda`.`Nombre` AS `Nombre`,replace(`v_Agenda`.`Telephone`,' ','') AS `Telefono` from `v_Agenda` where `v_Agenda`.`Telephone` group by replace(`v_Agenda`.`Telephone`,' ','') */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_Articles_botanical`
--
/*!50001 DROP VIEW IF EXISTS `v_Articles_botanical`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_Articles_botanical` AS select `ab`.`Id_Article` AS `Id_Article`,ifnull(`ab`.`botanical`,concat(`g`.`latin_genus_name`,' ',ifnull(`s`.`latin_species_name`,''))) AS `edi_botanic` from ((`vn2008`.`Articles_botanical` `ab` left join `edi`.`genus` `g` on((`ab`.`genus_id` = `g`.`genus_id`))) left join `edi`.`specie` `s` on((`s`.`specie_id` = `ab`.`specie_id`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_Movimientos_Volumen_shipping_charge`
--
/*!50001 DROP VIEW IF EXISTS `v_Movimientos_Volumen_shipping_charge`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_Movimientos_Volumen_shipping_charge` AS select `M`.`Id_Ticket` AS `Id_Ticket`,`M`.`Id_Movimiento` AS `Id_Movimiento`,`t`.`Fecha` AS `Fecha`,`az`.`price` AS `price`,((`M`.`Cantidad` * ((`CM3`(`b`.`Id_Compra`) / 1000000) / `C`.`Packing`)) * (`az`.`price` / 0.08)) AS `freight` from (((((((`vn2008`.`Movimientos` `M` join `vn2008`.`Tickets` `t` on((`t`.`Id_Ticket` = `M`.`Id_Ticket`))) join `vn2008`.`Consignatarios` `c` on((`c`.`id_consigna` = `t`.`Id_Consigna`))) join `bi`.`Last_buy_id` `b` on(((`M`.`Id_Article` = `b`.`Id_Article`) and (`t`.`warehouse_id` = `b`.`warehouse_id`)))) join `vn2008`.`Compres` `C` on((`b`.`Id_Compra` = `C`.`Id_Compra`))) join `vn2008`.`Agencias` `a` on((`a`.`Id_Agencia` = `t`.`Id_Agencia`))) join `vn2008`.`Agencias_province` `ap` on(((`t`.`warehouse_id` = `ap`.`warehouse_id`) and (`ap`.`province_id` = `c`.`province_id`) and (`ap`.`agency_id` = `a`.`agency_id`)))) join `vn2008`.`Agencias_zonas` `az` on(((`az`.`Id_Agencia` = `t`.`Id_Agencia`) and (`az`.`zona` = `ap`.`zona`) and (`t`.`warehouse_id` = `az`.`warehouse_id`) and (`az`.`Id_Article` = 71)))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_Ordenes`
--
/*!50001 DROP VIEW IF EXISTS `v_Ordenes`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_Ordenes` AS select `Ordenes`.`Id_ORDEN` AS `Id_ORDEN`,`Ordenes`.`ORDEN` AS `ORDEN`,`Ordenes`.`datORDEN` AS `datORDEN`,`Ordenes`.`datTICKET` AS `datTICKET`,`Ordenes`.`CodVENDEDOR` AS `CodVENDEDOR`,`Ordenes`.`CodCOMPRADOR` AS `CodCOMPRADOR`,`Ordenes`.`CANTIDAD` AS `CANTIDAD`,`Ordenes`.`PRECIOMAX` AS `PRECIOMAX`,`Ordenes`.`PREU` AS `PREU`,`Ordenes`.`Id_ARTICLE` AS `Id_ARTICLE`,`Ordenes`.`Id_CLIENTE` AS `Id_CLIENTE`,`Ordenes`.`COMENTARIO` AS `COMENTARIO`,`Ordenes`.`OK` AS `OK`,`Ordenes`.`TOTAL` AS `TOTAL`,`Ordenes`.`datCOMPRA` AS `datCOMPRA`,`Ordenes`.`KO` AS `KO`,`Ordenes`.`Id_Movimiento` AS `Id_Movimiento`,`Ordenes`.`odbc_date` AS `odbc_date` from `Ordenes` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_XDiario_ALL`
--
/*!50001 DROP VIEW IF EXISTS `v_XDiario_ALL`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_XDiario_ALL` AS select `bi`.`XDiario_ALL`.`empresa_id` AS `empresa_id`,`bi`.`XDiario_ALL`.`SUBCTA` AS `SUBCTA`,`bi`.`XDiario_ALL`.`Eurodebe` AS `Eurodebe`,`bi`.`XDiario_ALL`.`Eurohaber` AS `Eurohaber`,`bi`.`XDiario_ALL`.`Fecha` AS `Fecha`,`bi`.`XDiario_ALL`.`FECHA_EX` AS `FECHA_EX` from `bi`.`XDiario_ALL` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_accion`
--
/*!50001 DROP VIEW IF EXISTS `v_accion`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_accion` AS select `vncontrol`.`accion`.`accion_id` AS `accion_id`,`vncontrol`.`accion`.`accion` AS `accion` from `vncontrol`.`accion` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_account`
--
/*!50001 DROP VIEW IF EXISTS `v_account`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_account` AS select `a`.`id` AS `user_id` from `account`.`account` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_analisis_ventas`
--
/*!50001 DROP VIEW IF EXISTS `v_analisis_ventas`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_analisis_ventas` AS select `bi`.`analisis_ventas`.`Familia` AS `Familia`,`bi`.`analisis_ventas`.`Reino` AS `Reino`,`bi`.`analisis_ventas`.`Comercial` AS `Comercial`,`bi`.`analisis_ventas`.`Comprador` AS `Comprador`,`bi`.`analisis_ventas`.`Provincia` AS `Provincia`,`bi`.`analisis_ventas`.`almacen` AS `almacen`,`bi`.`analisis_ventas`.`Año` AS `Año`,`bi`.`analisis_ventas`.`Mes` AS `Mes`,`bi`.`analisis_ventas`.`Semana` AS `Semana`,`bi`.`analisis_ventas`.`Vista` AS `Vista`,`bi`.`analisis_ventas`.`Importe` AS `Importe` from `bi`.`analisis_ventas` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_awb_volumen`
--
/*!50001 DROP VIEW IF EXISTS `v_awb_volumen`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_awb_volumen` AS select `a`.`id` AS `awb_id`,`a`.`codigo` AS `codigo`,`a`.`importe` AS `importe`,cast(sum(`v`.`volume`) as signed) AS `Vol_Total` from (`awb` `a` join `awb_volume` `v` on((`v`.`awb_id` = `a`.`id`))) group by `a`.`id` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_barcodes`
--
/*!50001 DROP VIEW IF EXISTS `v_barcodes`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_barcodes` AS select `Articles`.`Id_Article` AS `code`,`Articles`.`Id_Article` AS `Id_Article` from `Articles` union all select `barcodes`.`code` AS `code`,`barcodes`.`Id_Article` AS `Id_Article` from `barcodes` union all select `c`.`Id_Compra` AS `Id_Compra`,`c`.`Id_Article` AS `Id_Article` from ((`Compres` `c` join `Entradas` `e` on((`c`.`Id_Entrada` = `e`.`Id_Entrada`))) join `travel` `tr` on((`tr`.`id` = `e`.`travel_id`))) where (`tr`.`landing` >= (curdate() + interval -(15) day)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_barcodes_plus`
--
/*!50001 DROP VIEW IF EXISTS `v_barcodes_plus`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_barcodes_plus` AS select `cache`.`barcodes`.`code` AS `code`,`cache`.`barcodes`.`Id_Article` AS `Id_Article`,`cache`.`barcodes`.`Article` AS `Article`,`cache`.`barcodes`.`Medida` AS `Medida`,`cache`.`barcodes`.`Color` AS `Color`,`cache`.`barcodes`.`Categoria` AS `Categoria`,`cache`.`barcodes`.`Producer` AS `Producer` from `cache`.`barcodes` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_botanic_export`
--
/*!50001 DROP VIEW IF EXISTS `v_botanic_export`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_botanic_export` AS select concat(ifnull(concat(`eg`.`latin_genus_name`,' '),''),ifnull(`es`.`latin_species_name`,'')) AS `Nom_botanic`,`be`.`Id_Paises` AS `Id_Paises`,`be`.`restriction` AS `restriction`,`be`.`description` AS `description` from ((`vn2008`.`botanic_export` `be` left join `vn2008`.`edi_genus` `eg` on((`be`.`edi_genus_id` = `eg`.`genus_id`))) left join `vn2008`.`edi_specie` `es` on((`be`.`edi_specie_id` = `es`.`specie_id`))) order by concat(`eg`.`latin_genus_name`,' ',`es`.`latin_species_name`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_compres`
--
/*!50001 DROP VIEW IF EXISTS `v_compres`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_compres` AS select `TP`.`Id_Tipo` AS `Familia`,`RN`.`id` AS `reino_id`,`C`.`Id_Compra` AS `Id_Compra`,`C`.`Id_Entrada` AS `Id_Entrada`,`C`.`Id_Article` AS `Id_Article`,`C`.`Cantidad` AS `Cantidad`,`C`.`Costefijo` AS `Costefijo`,`C`.`Portefijo` AS `Portefijo`,`C`.`Novincular` AS `Novincular`,`C`.`Etiquetas` AS `Etiquetas`,`C`.`Packing` AS `Packing`,`C`.`grouping` AS `grouping`,`C`.`Comisionfija` AS `Comisionfija`,`C`.`Embalajefijo` AS `Embalajefijo`,`an`.`nicho` AS `Nicho`,`C`.`Id_Cubo` AS `Id_Cubo`,`C`.`Tarifa1` AS `Tarifa1`,`C`.`Tarifa2` AS `Tarifa2`,`C`.`Tarifa3` AS `Tarifa3`,`C`.`PVP` AS `PVP`,`C`.`Vida` AS `Vida`,`C`.`Id_Trabajador` AS `Id_Trabajador`,`C`.`punteo` AS `punteo`,`C`.`odbc_date` AS `odbc_date`,`E`.`Inventario` AS `Inventario`,`E`.`Id_Proveedor` AS `Id_Proveedor`,`E`.`Fecha` AS `Fecha`,`E`.`Confirmada` AS `Confirmada`,`E`.`Redada` AS `Redada`,`E`.`empresa_id` AS `empresa_id`,`E`.`travel_id` AS `travel_id`,`E`.`Pedida` AS `Pedida`,`E`.`recibida_id` AS `recibida_id`,`TR`.`id` AS `id`,`TR`.`shipment` AS `shipment`,`TR`.`landing` AS `landing`,`TR`.`warehouse_id` AS `warehouse_id`,`TR`.`warehouse_id_out` AS `warehouse_id_out`,`TR`.`agency_id` AS `agency_id`,`TR`.`ref` AS `ref`,`TR`.`delivered` AS `delivered`,`TR`.`received` AS `received`,`A`.`Article` AS `Article`,`A`.`Medida` AS `Medida`,`A`.`Tallos` AS `Tallos`,`C`.`caja` AS `caja`,`A`.`Categoria` AS `Categoria`,`A`.`id_origen` AS `id_origen`,`TP`.`Id_Tipo` AS `Tipo`,`A`.`tipo_id` AS `tipo_id`,`A`.`Color` AS `Color`,`A`.`Min` AS `Min`,(((`C`.`Costefijo` + `C`.`Embalajefijo`) + `C`.`Comisionfija`) + `C`.`Portefijo`) AS `Coste`,`W_OUT`.`fuente` AS `fuente`,`A`.`iva_group_id` AS `iva_group_id`,(if((`cb`.`Volumen` > 0),`cb`.`Volumen`,((`cb`.`X` * `cb`.`Y`) * if((`cb`.`Z` = 0),(`A`.`Medida` + 10),`cb`.`Z`))) * `C`.`Etiquetas`) AS `cm3`,`A`.`producer_id` AS `producer_id` from (((((((((`Compres` `C` join `Entradas` `E` on((`C`.`Id_Entrada` = `E`.`Id_Entrada`))) join `travel` `TR` on((`TR`.`id` = `E`.`travel_id`))) join `warehouse` `W_IN` on((`W_IN`.`id` = `TR`.`warehouse_id`))) join `warehouse` `W_OUT` on((`W_OUT`.`id` = `TR`.`warehouse_id_out`))) join `Articles` `A` on((`C`.`Id_Article` = `A`.`Id_Article`))) join `Tipos` `TP` on((`A`.`tipo_id` = `TP`.`tipo_id`))) join `reinos` `RN` on((`RN`.`id` = `TP`.`reino_id`))) join `Cubos` `cb` on((`cb`.`Id_Cubo` = `C`.`Id_Cubo`))) left join `Articles_nicho` `an` on(((`A`.`Id_Article` = `an`.`Id_Article`) and (`an`.`warehouse_id` = `W_IN`.`id`)))) where ((not(`W_IN`.`fuente`)) and (not(`E`.`Inventario`)) and (not(`E`.`Redada`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_departure_limit`
--
/*!50001 DROP VIEW IF EXISTS `v_departure_limit`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_departure_limit` AS select `cache`.`departure_limit`.`warehouse_id` AS `warehouse_id`,`cache`.`departure_limit`.`fecha` AS `fecha`,`cache`.`departure_limit`.`hora` AS `hora`,`cache`.`departure_limit`.`minSpeed` AS `minSpeed` from `cache`.`departure_limit` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_descuadre_bionic`
--
/*!50001 DROP VIEW IF EXISTS `v_descuadre_bionic`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_descuadre_bionic` AS select `t`.`Id_Ticket` AS `Id_Ticket`,`t`.`Alias` AS `Alias`,`m`.`Concepte` AS `Concepte`,sum(`mc`.`Valor`) AS `suma_componente`,`m`.`Preu` AS `Preu`,`m`.`Descuento` AS `Descuento`,(((`m`.`Preu` * (100 - `m`.`Descuento`)) / 100) - sum(`mc`.`Valor`)) AS `diferencia`,`t`.`Fecha` AS `Fecha`,((`m`.`Preu` > 0) and (`tp`.`reino_id` <> 6) and (`a`.`tipo_id` not in (7,115)) and (`t`.`warehouse_id` <> 41)) AS `benvenut` from ((((((`Movimientos` `m` join `Tickets` `t` on((`m`.`Id_Ticket` = `t`.`Id_Ticket`))) join `Clientes` `c` on((`t`.`Id_Cliente` = `c`.`id_cliente`))) join `warehouse` `w` on((`w`.`id` = `t`.`warehouse_id`))) join `Articles` `a` on((`m`.`Id_Article` = `a`.`Id_Article`))) join `Tipos` `tp` on((`a`.`tipo_id` = `tp`.`tipo_id`))) left join `Movimientos_componentes` `mc` on((`m`.`Id_Movimiento` = `mc`.`Id_Movimiento`))) where ((`t`.`Fecha` >= '2015-09-01') and (`t`.`empresa_id` in (442,791,567)) and `w`.`reserve` and `c`.`real` and (`tp`.`reino_id` <> 6)) group by `m`.`Id_Movimiento` having ((abs(`diferencia`) > 0.01) or isnull(`diferencia`)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_descuadre_porte`
--
/*!50001 DROP VIEW IF EXISTS `v_descuadre_porte`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_descuadre_porte` AS select `t`.`Id_Ticket` AS `Id_Ticket`,round(sum((`mc`.`Valor` * `m`.`Cantidad`)),2) AS `suma_componente`,round(`es`.`shipping_charge`,2) AS `teorico_agencia`,round((sum((`mc`.`Valor` * `m`.`Cantidad`)) - `es`.`shipping_charge`),2) AS `diferencia`,`t`.`Fecha` AS `Fecha` from ((((`vn2008`.`Movimientos` `m` left join `vn2008`.`Movimientos_componentes` `mc` on((`m`.`Id_Movimiento` = `mc`.`Id_Movimiento`))) join `vn2008`.`tarifa_componentes` `tc` on(((`tc`.`Id_Componente` = `mc`.`Id_Componente`) and (`tc`.`tarifa_componentes_series_id` = 6)))) join `vn2008`.`Tickets` `t` on((`t`.`Id_Ticket` = `m`.`Id_Ticket`))) left join `vn2008`.`v_expeditions_shipping_charge` `es` on((`es`.`Id_Ticket` = `t`.`Id_Ticket`))) where ((`t`.`Fecha` >= '2015-09-01') and (`t`.`empresa_id` in (442,791,567))) group by `t`.`Id_Ticket` having ((abs(`diferencia`) > 0.01) or isnull(`diferencia`)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_descuadre_porte2`
--
/*!50001 DROP VIEW IF EXISTS `v_descuadre_porte2`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_descuadre_porte2` AS select `t`.`Id_Ticket` AS `Id_Ticket`,(`mc`.`Valor` * `m`.`Cantidad`) AS `suma_componente`,`t`.`Fecha` AS `Fecha` from (((`vn2008`.`Movimientos` `m` left join `vn2008`.`Movimientos_componentes` `mc` on((`m`.`Id_Movimiento` = `mc`.`Id_Movimiento`))) join `vn2008`.`tarifa_componentes` `tc` on(((`tc`.`Id_Componente` = `mc`.`Id_Componente`) and (`tc`.`tarifa_componentes_series_id` = 6)))) join `vn2008`.`Tickets` `t` on((`t`.`Id_Ticket` = `m`.`Id_Ticket`))) where ((`t`.`Fecha` >= '2015-09-01') and (`t`.`empresa_id` in (442,791,567))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_empresa`
--
/*!50001 DROP VIEW IF EXISTS `v_empresa`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_empresa` AS select `e`.`logo` AS `logo`,`e`.`id` AS `id`,`e`.`registro` AS `registro`,`e`.`gerente_id` AS `gerente_id`,`e`.`alta` AS `alta`,`t`.`Nombre` AS `Nombre`,`t`.`Apellidos` AS `Apellidos`,`p`.`Proveedor` AS `Proveedor`,`p`.`Domicilio` AS `Domicilio`,`p`.`CP` AS `CP`,`p`.`Localidad` AS `Localidad`,`p`.`NIF` AS `NIF`,`p`.`Telefono` AS `Telefono`,`p`.`Alias` AS `Alias`,`e`.`abbreviation` AS `abbreviation` from ((`empresa` `e` join `Trabajadores` `t` on((`t`.`Id_Trabajador` = `e`.`gerente_id`))) join `Proveedores` `p` on((`p`.`Id_Proveedor` = `e`.`id`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_encajado`
--
/*!50001 DROP VIEW IF EXISTS `v_encajado`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_encajado` AS select hour(`e`.`odbc_date`) AS `hora`,minute(`e`.`odbc_date`) AS `minuto`,ifnull(`c`.`Volumen`,94500) AS `cm3`,`t`.`warehouse_id` AS `warehouse_id` from ((`expeditions` `e` left join `Cubos` `c` on((`c`.`item_id` = `e`.`EsBulto`))) join `Tickets` `t` on((`t`.`Id_Ticket` = `e`.`ticket_id`))) where (`e`.`odbc_date` between curdate() and `DAYEND`(curdate())) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_encajado_ultima_hora`
--
/*!50001 DROP VIEW IF EXISTS `v_encajado_ultima_hora`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_encajado_ultima_hora` AS select sum((ifnull(`c`.`Volumen`,94500) / 1000000)) AS `m3`,`t`.`warehouse_id` AS `warehouse_id` from ((`expeditions` `e` left join `Cubos` `c` on((`c`.`item_id` = `e`.`EsBulto`))) join `Tickets` `t` on((`t`.`Id_Ticket` = `e`.`ticket_id`))) where ((`e`.`odbc_date` > (now() + interval -(1) hour)) and (`t`.`warehouse_id` in (1,44))) group by `t`.`warehouse_id` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_expeditions_shipping_charge`
--
/*!50001 DROP VIEW IF EXISTS `v_expeditions_shipping_charge`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_expeditions_shipping_charge` AS select `t`.`Id_Ticket` AS `Id_Ticket`,sum((`az`.`price` * if(((`e`.`EsBulto` = 71) and isnull(`e`.`Id_Article`) and (`a`.`Vista` = 2)),0.75,1))) AS `shipping_charge`,`t`.`Fecha` AS `Fecha` from ((((((`Tickets` `t` join `Clientes` `cli` on((`cli`.`id_cliente` = `t`.`Id_Cliente`))) left join `expeditions` `e` on((`e`.`ticket_id` = `t`.`Id_Ticket`))) join `Consignatarios` `c` on((`c`.`id_consigna` = `t`.`Id_Consigna`))) join `Agencias` `a` on((`a`.`Id_Agencia` = `t`.`Id_Agencia`))) join `Agencias_province` `ap` on(((`t`.`warehouse_id` = `ap`.`warehouse_id`) and (`ap`.`province_id` = `c`.`province_id`) and (`ap`.`agency_id` = `a`.`agency_id`)))) join `Agencias_zonas` `az` on(((`az`.`Id_Agencia` = `t`.`Id_Agencia`) and (`az`.`zona` = `ap`.`zona`) and (`t`.`warehouse_id` = `az`.`warehouse_id`) and (`az`.`Id_Article` = `e`.`EsBulto`)))) where ((`t`.`Fecha` >= '2015-10-01') and (`cli`.`real` <> 0) and (`t`.`empresa_id` in (442,791,567))) group by `t`.`Id_Ticket` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_expeditions_shipping_charge2`
--
/*!50001 DROP VIEW IF EXISTS `v_expeditions_shipping_charge2`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_expeditions_shipping_charge2` AS select `t`.`Id_Ticket` AS `Id_Ticket`,(`az`.`price` * if(((`e`.`EsBulto` = 71) and isnull(`e`.`Id_Article`) and (`a`.`Vista` = 2)),0.75,1)) AS `shipping_charge`,`t`.`Fecha` AS `Fecha`,`t`.`warehouse_id` AS `warehouse_id` from (((((`Tickets` `t` left join `expeditions` `e` on((`e`.`ticket_id` = `t`.`Id_Ticket`))) join `Consignatarios` `c` on((`c`.`id_consigna` = `t`.`Id_Consigna`))) join `Agencias` `a` on((`a`.`Id_Agencia` = `t`.`Id_Agencia`))) join `Agencias_province` `ap` on(((`t`.`warehouse_id` = `ap`.`warehouse_id`) and (`ap`.`province_id` = `c`.`province_id`) and (`ap`.`agency_id` = `a`.`agency_id`)))) join `Agencias_zonas` `az` on(((`az`.`Id_Agencia` = `t`.`Id_Agencia`) and (`az`.`zona` = `ap`.`zona`) and (`t`.`warehouse_id` = `az`.`warehouse_id`) and (`az`.`Id_Article` = `e`.`EsBulto`)))) where ((`t`.`Fecha` >= '2016-01-01') and (`t`.`empresa_id` in (442,567))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_fallo`
--
/*!50001 DROP VIEW IF EXISTS `v_fallo`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_fallo` AS select `vncontrol`.`fallo`.`queja_id` AS `queja_id`,`vncontrol`.`fallo`.`accion_id` AS `accion_id` from `vncontrol`.`fallo` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_inter`
--
/*!50001 DROP VIEW IF EXISTS `v_inter`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_inter` AS select `vncontrol`.`inter`.`inter_id` AS `inter_id`,`vncontrol`.`inter`.`state_id` AS `state_id`,`vncontrol`.`inter`.`nota` AS `nota`,`vncontrol`.`inter`.`odbc_date` AS `odbc_date`,`vncontrol`.`inter`.`Id_Ticket` AS `Id_Ticket`,`vncontrol`.`inter`.`Id_Trabajador` AS `Id_Trabajador`,`vncontrol`.`inter`.`Id_Supervisor` AS `Id_supervisor` from `vncontrol`.`inter` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_jerarquia`
--
/*!50001 DROP VIEW IF EXISTS `v_jerarquia`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_jerarquia` AS select `jerarquia`.`worker_id` AS `Id_Trabajador`,`jerarquia`.`boss_id` AS `boss_id` from `jerarquia` union all select distinct `jerarquia`.`boss_id` AS `Id_Trabajador`,`jerarquia`.`boss_id` AS `boss_id` from `jerarquia` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_location`
--
/*!50001 DROP VIEW IF EXISTS `v_location`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_location` AS select `tl`.`longitude` AS `longitude`,`tl`.`latitude` AS `latitude`,`t`.`Id_Consigna` AS `Id_Consigna` from (`ticket_location` `tl` join `Tickets` `t` on((`t`.`Id_Ticket` = `tl`.`Id_Ticket`))) where (`t`.`Fecha` >= (curdate() + interval -(3) month)) group by `t`.`Id_Consigna` order by `t`.`Id_Ticket` desc */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_mana_spellers`
--
/*!50001 DROP VIEW IF EXISTS `v_mana_spellers`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_mana_spellers` AS select `bs`.`mana_spellers`.`Id_Trabajador` AS `Id_Trabajador`,`bs`.`mana_spellers`.`size` AS `size`,`bs`.`mana_spellers`.`used` AS `used` from `bs`.`mana_spellers` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_miriam`
--
/*!50001 DROP VIEW IF EXISTS `v_miriam`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_miriam` AS select `M`.`Id_Article` AS `Id_Article`,`M`.`Concepte` AS `Concepte`,`M`.`Cantidad` AS `Cantidad`,`M`.`Preu` AS `Preu`,`M`.`Descuento` AS `Descuento`,`T`.`Fecha` AS `Fecha`,`T`.`Id_Cliente` AS `Id_Cliente`,(((`M`.`Cantidad` * `M`.`Preu`) * (100 - `M`.`Descuento`)) / 100) AS `Importe` from (((`Tickets` `T` join `Movimientos` `M` on((`T`.`Id_Ticket` = `M`.`Id_Ticket`))) join `Articles` `A` on((`M`.`Id_Article` = `A`.`Id_Article`))) join `Tipos` `TP` on((`A`.`tipo_id` = `TP`.`tipo_id`))) where ((`T`.`Fecha` >= '2011-01-01') and (`A`.`tipo_id` = 7)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_movimientos_log`
--
/*!50001 DROP VIEW IF EXISTS `v_movimientos_log`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_movimientos_log` AS select `bi`.`movimientos_log`.`idmovimientos_log` AS `idmovimientos_log`,`bi`.`movimientos_log`.`Id_Movimiento` AS `Id_Movimiento`,`bi`.`movimientos_log`.`odbc_date` AS `odbc_date`,`bi`.`movimientos_log`.`Id_Trabajador` AS `Id_Trabajador`,`bi`.`movimientos_log`.`field_name` AS `field_name`,`bi`.`movimientos_log`.`new_value` AS `new_value` from `bi`.`movimientos_log` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_movimientos_mark`
--
/*!50001 DROP VIEW IF EXISTS `v_movimientos_mark`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_movimientos_mark` AS select `Movimientos_mark`.`Id_Movimiento` AS `Id_Movimiento`,max(`Movimientos_mark`.`Id_Accion`) AS `Accion` from `Movimientos_mark` group by `Movimientos_mark`.`Id_Movimiento` having ((max(`Movimientos_mark`.`Id_Accion`) = '6') or (max(`Movimientos_mark`.`Id_Accion`) = '7')) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_pedidos_auto_preparados`
--
/*!50001 DROP VIEW IF EXISTS `v_pedidos_auto_preparados`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_pedidos_auto_preparados` AS select `t`.`CodigoTrabajador` AS `CodigoTrabajador`,`i`.`Id_Ticket` AS `Id_Ticket`,`i`.`odbc_date` AS `Momento` from ((`vn2008`.`v_jerarquia` `j` left join `vn2008`.`v_inter` `i` on((`j`.`Id_Trabajador` = `i`.`Id_Trabajador`))) join `vn2008`.`Trabajadores` `t` on((`t`.`Id_Trabajador` = `j`.`Id_Trabajador`))) where (`i`.`state_id` = 20) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_pedidos_auto_preparadoskk`
--
/*!50001 DROP VIEW IF EXISTS `v_pedidos_auto_preparadoskk`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_pedidos_auto_preparadoskk` AS select `t`.`CodigoTrabajador` AS `CodigoTrabajador`,`TK`.`Fecha` AS `Fecha`,`TK`.`Id_Ticket` AS `Id_Ticket`,`i`.`odbc_date` AS `Momento` from (((`vn2008`.`v_jerarquia` `j` left join `vn2008`.`v_inter` `i` on((`j`.`Id_Trabajador` = `i`.`Id_Trabajador`))) join `vn2008`.`Trabajadores` `t` on((`t`.`Id_Trabajador` = `j`.`Id_Trabajador`))) left join `vn2008`.`Tickets` `TK` on((`TK`.`Id_Ticket` = `i`.`Id_Ticket`))) where (`i`.`state_id` = 5) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_phonebook`
--
/*!50001 DROP VIEW IF EXISTS `v_phonebook`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_phonebook` AS select `Clientes`.`id_cliente` AS `Id_Cliente`,replace(`Clientes`.`telefono`,' ','') AS `Telefono` from `Clientes` where (`Clientes`.`telefono` and `Clientes`.`activo`) union select `Clientes`.`id_cliente` AS `Id_Cliente`,replace(`Clientes`.`movil`,' ','') AS `Movil` from `Clientes` where (`Clientes`.`movil` and `Clientes`.`activo`) union select `Consignatarios`.`Id_cliente` AS `Id_Cliente`,replace(`Consignatarios`.`telefono`,' ','') AS `TRIM(telefono)` from (`Consignatarios` join `Clientes` `c` on((`Consignatarios`.`Id_cliente` = `c`.`id_cliente`))) where (`Consignatarios`.`telefono` and `c`.`activo`) union select `Consignatarios`.`Id_cliente` AS `Id_Cliente`,replace(`Consignatarios`.`movil`,' ','') AS `TRIM(movil)` from (`Consignatarios` join `Clientes` `c` on((`Consignatarios`.`Id_cliente` = `c`.`id_cliente`))) where (`Consignatarios`.`movil` and `c`.`activo`) union select `r`.`Id_Cliente` AS `Id_Cliente`,replace(`c`.`Telefono`,' ','') AS `REPLACE(c.telefono,' ','')` from ((`Clientes` `cl` join `Relaciones` `r` on((`cl`.`id_cliente` = `r`.`Id_Cliente`))) join `Contactos` `c` on((`r`.`Id_Contacto` = `c`.`Id_Contacto`))) where (`cl`.`telefono` and `cl`.`activo`) union select `r`.`Id_Cliente` AS `Id_Cliente`,replace(`c`.`Movil`,' ','') AS `REPLACE(c.Movil,' ','')` from ((`Clientes` `cl` join `Relaciones` `r` on((`cl`.`id_cliente` = `r`.`Id_Cliente`))) join `Contactos` `c` on((`r`.`Id_Contacto` = `c`.`Id_Contacto`))) where (`cl`.`movil` and `cl`.`activo`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_price_fixed`
--
/*!50001 DROP VIEW IF EXISTS `v_price_fixed`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_price_fixed` AS select `pf`.`warehouse_id` AS `warehouse_id`,`pf`.`item_id` AS `item_id`,`pf`.`rate_0` AS `rate_0`,`pf`.`rate_1` AS `rate_1`,`pf`.`rate_2` AS `rate_2`,`pf`.`rate_3` AS `rate_3`,`pf`.`date_start` AS `date_start`,`pf`.`date_end` AS `date_end`,`pf`.`bonus` AS `bonus`,`pf`.`grouping` AS `grouping`,`pf`.`Packing` AS `Packing`,`pf`.`caja` AS `caja` from `price_fixed` `pf` where (`pf`.`warehouse_id` < 1000) union all select `wg`.`warehouse_id` AS `warehouse_id`,`pf`.`item_id` AS `item_id`,`pf`.`rate_0` AS `rate_0`,`pf`.`rate_1` AS `rate_1`,`pf`.`rate_2` AS `rate_2`,`pf`.`rate_3` AS `rate_3`,`pf`.`date_start` AS `date_start`,`pf`.`date_end` AS `date_end`,`pf`.`bonus` AS `bonus`,`pf`.`grouping` AS `grouping`,`pf`.`Packing` AS `Packing`,`pf`.`caja` AS `caja` from (`price_fixed` `pf` join `warehouse_group` `wg`) where ((`wg`.`warehouse_alias_id` + 1000) = `pf`.`warehouse_id`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_price_fixed_group`
--
/*!50001 DROP VIEW IF EXISTS `v_price_fixed_group`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_price_fixed_group` AS select `pf`.`warehouse_id` AS `warehouse_id`,`pf`.`item_id` AS `item_id`,`pf`.`rate_0` AS `rate_0`,`pf`.`rate_1` AS `rate_1`,`pf`.`rate_2` AS `rate_2`,`pf`.`rate_3` AS `rate_3`,`pf`.`date_start` AS `date_start`,`pf`.`date_end` AS `date_end`,`pf`.`bonus` AS `bonus`,`pf`.`grouping` AS `grouping`,`pf`.`Packing` AS `Packing`,`pf`.`caja` AS `caja` from `v_price_fixed` `pf` group by `pf`.`warehouse_id`,`pf`.`item_id`,`pf`.`date_start`,`pf`.`date_end` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_session`
--
/*!50001 DROP VIEW IF EXISTS `v_session`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_session` AS select 1 AS `id`,`t`.`CodigoTrabajador` AS `CodigoTrabajador`,if(isnull(`sc`.`Id_Suplente`),`c`.`Id_Trabajador`,`sc`.`Id_Suplente`) AS `Id_Trabajador`,`c`.`id_cliente` AS `Id_Cliente`,`c`.`cliente` AS `Cliente`,`s`.`lastUpdate` AS `Fecha` from ((((`hedera`.`userSession` `s` join `hedera`.`visitUser` `v` on((`v`.`id` = `s`.`userVisit`))) join `vn2008`.`Clientes` `c` on((`c`.`id_cliente` = `v`.`user`))) left join `vn2008`.`Trabajadores` `t` on((`c`.`Id_Trabajador` = `t`.`Id_Trabajador`))) left join `vn2008`.`sharingcart` `sc` on(((`sc`.`Id_Trabajador` = `c`.`Id_Trabajador`) and (curdate() between `sc`.`datSTART` and `sc`.`datEND`)))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_ticket_amount`
--
/*!50001 DROP VIEW IF EXISTS `v_ticket_amount`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_ticket_amount` AS select `Movimientos`.`Id_Ticket` AS `Id_Ticket`,sum((((`Movimientos`.`Cantidad` * `Movimientos`.`Preu`) * (100 - `Movimientos`.`Descuento`)) / 100)) AS `amount` from (`Movimientos` join `Tickets` on((`Movimientos`.`Id_Ticket` = `Tickets`.`Id_Ticket`))) where (`Tickets`.`Fecha` >= (curdate() + interval -(6) month)) group by `Movimientos`.`Id_Ticket` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_trabajadores`
--
/*!50001 DROP VIEW IF EXISTS `v_trabajadores`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_trabajadores` AS select `t`.`CodigoTrabajador` AS `CodigoTrabajador`,`t`.`Nombre` AS `Nombre`,`t`.`Fecha_Inicio` AS `Fecha_Inicio`,`t`.`Password` AS `Password`,`t`.`user` AS `user`,`t`.`Apellidos` AS `Apellidos`,`t`.`Id_Trabajador` AS `Id_Trabajador`,`t`.`Foto` AS `Foto` from `vn2008`.`Trabajadores` `t` where (`t`.`Id_Cliente_Interno` = `account`.`userGetId`()) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_user`
--
/*!50001 DROP VIEW IF EXISTS `v_user`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_user` AS select `u`.`id` AS `id`,`u`.`role` AS `mysql_user_id`,`u`.`name` AS `name`,`u`.`password` AS `password`,`u`.`active` AS `active` from `account`.`user` `u` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_ventes`
--
/*!50001 DROP VIEW IF EXISTS `v_ventes`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_ventes` AS select `Agencias`.`Agencia` AS `Agencia`,`A`.`Categoria` AS `Categoria`,`A`.`tipo_id` AS `tipo_id`,`A`.`Medida` AS `Medida`,`A`.`Article` AS `Article`,`A`.`Color` AS `Color`,`CS`.`Id_cliente` AS `Id_Cliente`,`TP`.`Id_Tipo` AS `Tipo`,`T`.`Factura` AS `Factura`,`T`.`warehouse_id` AS `warehouse_id`,`M`.`Id_Movimiento` AS `Id_Movimiento`,`M`.`Id_Article` AS `Id_Article`,`TP`.`Id_Tipo` AS `Familia`,`M`.`Id_Ticket` AS `Id_Ticket`,`M`.`Concepte` AS `Concepte`,`M`.`Cantidad` AS `Cantidad`,`M`.`quantity` AS `quantity`,`M`.`Preu` AS `Preu`,`M`.`Descuento` AS `Descuento`,if((`T`.`Fecha` >= '2015-10-01'),`M`.`CostFixat`,((`M`.`Preu` * (100 - `M`.`Descuento`)) / 100)) AS `CostFixat`,`M`.`Reservado` AS `Reservado`,`M`.`OK` AS `OK`,`M`.`PrecioFijado` AS `PrecioFijado`,`M`.`odbc_date` AS `odbc_date`,cast(`T`.`Fecha` as date) AS `Fecha`,`T`.`Fecha` AS `FechaCompleta`,`CS`.`consignatario` AS `Alias`,`T`.`Id_Consigna` AS `Id_Consigna`,(((`M`.`Cantidad` * `M`.`Preu`) * (100 - `M`.`Descuento`)) / 100) AS `Importe`,`O`.`Origen` AS `Origen`,`TP`.`reino_id` AS `reino_id`,`C`.`invoice` AS `invoice`,`A`.`producer_id` AS `producer_id` from ((((((((`Movimientos` `M` join `Tickets` `T` on((`M`.`Id_Ticket` = `T`.`Id_Ticket`))) join `Consignatarios` `CS` on((`CS`.`id_consigna` = `T`.`Id_Consigna`))) join `Clientes` `C` on((`CS`.`Id_cliente` = `C`.`id_cliente`))) join `Articles` `A` on((`M`.`Id_Article` = `A`.`Id_Article`))) join `Origen` `O` on((`O`.`id` = `A`.`id_origen`))) join `Tipos` `TP` on((`A`.`tipo_id` = `TP`.`tipo_id`))) join `reinos` `r` on((`TP`.`reino_id` = `r`.`id`))) join `Agencias` on((`Agencias`.`Id_Agencia` = `T`.`Id_Agencia`))) where ((`T`.`Fecha` >= '2013-01-01') and (`C`.`real` > 0) and (`r`.`id` <> 6)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_venteskk`
--
/*!50001 DROP VIEW IF EXISTS `v_venteskk`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_venteskk` AS select `Agencias`.`Agencia` AS `Agencia`,`A`.`Categoria` AS `Categoria`,`A`.`tipo_id` AS `tipo_id`,`A`.`Medida` AS `Medida`,`A`.`Article` AS `Article`,`A`.`Color` AS `Color`,`CS`.`Id_cliente` AS `Id_Cliente`,`TP`.`Id_Tipo` AS `Tipo`,`T`.`Factura` AS `Factura`,`T`.`warehouse_id` AS `warehouse_id`,`M`.`Id_Movimiento` AS `Id_Movimiento`,`M`.`Id_Article` AS `Id_Article`,`TP`.`Id_Tipo` AS `Familia`,`M`.`Id_Ticket` AS `Id_Ticket`,`M`.`Concepte` AS `Concepte`,`M`.`Cantidad` AS `Cantidad`,`M`.`quantity` AS `quantity`,`M`.`Preu` AS `Preu`,`M`.`Descuento` AS `Descuento`,if((`T`.`Fecha` >= '2015-10-01'),`M`.`CostFixat`,((`M`.`Preu` * (100 - `M`.`Descuento`)) / 100)) AS `CostFixat`,`M`.`Reservado` AS `Reservado`,`M`.`OK` AS `OK`,`M`.`PrecioFijado` AS `PrecioFijado`,`M`.`odbc_date` AS `odbc_date`,cast(`T`.`Fecha` as date) AS `Fecha`,`T`.`Fecha` AS `FechaCompleta`,`CS`.`consignatario` AS `Alias`,`T`.`Id_Consigna` AS `Id_Consigna`,(((`M`.`Cantidad` * `M`.`Preu`) * (100 - `M`.`Descuento`)) / 100) AS `Importe`,`O`.`Origen` AS `Origen`,`TP`.`reino_id` AS `reino_id`,`C`.`invoice` AS `invoice`,`A`.`producer_id` AS `producer_id` from ((((((((`Movimientos` `M` join `Tickets` `T` on((`M`.`Id_Ticket` = `T`.`Id_Ticket`))) join `Consignatarios` `CS` on((`CS`.`id_consigna` = `T`.`Id_Consigna`))) join `Clientes` `C` on((`CS`.`Id_cliente` = `C`.`id_cliente`))) join `Articles` `A` on((`M`.`Id_Article` = `A`.`Id_Article`))) join `Origen` `O` on((`O`.`id` = `A`.`id_origen`))) join `Tipos` `TP` on((`A`.`tipo_id` = `TP`.`tipo_id`))) join `reinos` `r` on((`TP`.`reino_id` = `r`.`id`))) join `Agencias` on((`Agencias`.`Id_Agencia` = `T`.`Id_Agencia`))) where ((`T`.`Fecha` >= '2013-01-01') and (`C`.`real` > 0) and (`r`.`id` <> 6)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_warehouse`
--
/*!50001 DROP VIEW IF EXISTS `v_warehouse`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_warehouse` AS select `warehouse`.`id` AS `id`,`warehouse`.`name` AS `almacen` from `warehouse` union all select (1000 + `warehouse_alias`.`warehouse_alias_id`) AS `warehouse_alias_id`,concat(`warehouse_alias`.`alias`,'(G)') AS `concat(alias, '(G)')` from `warehouse_alias` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_xsubclien`
--
/*!50001 DROP VIEW IF EXISTS `v_xsubclien`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_xsubclien` AS select distinct `Facturas`.`Id_Cliente` AS `Id_Cliente`,`Facturas`.`empresa_id` AS `empresa_id` from `Facturas` where (`Facturas`.`Fecha` > (curdate() + interval -(2) month)) union select `Recibos`.`Id_Cliente` AS `Id_Cliente`,`Recibos`.`empresa_id` AS `empresa_id` from `Recibos` where (`Recibos`.`Fechacobro` > (curdate() + interval -(2) month)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_xsubcuentas`
--
/*!50001 DROP VIEW IF EXISTS `v_xsubcuentas`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_xsubcuentas` AS select `Clientes`.`Cuenta` AS `COD`,`Clientes`.`razonSocial` AS `TITULO`,trim(`Clientes`.`if`) AS `NIF`,`Clientes`.`domicilio` AS `DOMICILIO`,`Clientes`.`poblacion` AS `POBLACION`,`province`.`name` AS `PROVINCIA`,`Clientes`.`codPostal` AS `CODPOSTAL`,`p`.`Codigo` AS `country_code`,`v_xsubclien`.`empresa_id` AS `empresa_id`,substr(`Clientes`.`e-mail`,1,(coalesce(nullif(locate(',',`Clientes`.`e-mail`),0),99) - 1)) AS `EMAIL`,`Clientes`.`cplusTerIdNifFk` AS `IDNIF` from (((`Clientes` join `v_xsubclien` on((`Clientes`.`id_cliente` = `v_xsubclien`.`Id_Cliente`))) left join `Paises` `p` on((`p`.`Id` = `Clientes`.`Id_Pais`))) join `province` on((`Clientes`.`province_id` = `province`.`province_id`))) where (`Clientes`.`oficial` <> 0) group by `Clientes`.`id_cliente`,`v_xsubclien`.`empresa_id` union all select `Proveedores`.`cuenta` AS `Cuenta`,`Proveedores`.`Proveedor` AS `Proveedor`,trim(`Proveedores`.`NIF`) AS `NIF`,`Proveedores`.`Domicilio` AS `Domicilio`,`Proveedores`.`Localidad` AS `Localidad`,`prov`.`name` AS `Provincia`,`Proveedores`.`CP` AS `CP`,`p`.`Codigo` AS `country_code`,`v_xsubprov`.`empresa_id` AS `empresa_id`,substr(`c`.`email`,1,(coalesce(nullif(locate(',',`c`.`email`),0),99) - 1)) AS `EMAIL`,if((`p`.`CEE` = 0),1,if((`p`.`CEE` = 1),2,4)) AS `IDNIF` from (((((`Proveedores` join `v_xsubprov` on((`Proveedores`.`Id_Proveedor` = `v_xsubprov`.`proveedor_id`))) left join `Paises` `p` on((`p`.`Id` = `Proveedores`.`pais_id`))) left join `province` `prov` on((`prov`.`province_id` = `Proveedores`.`province_id`))) left join `Relaciones` `r` on((`r`.`Id_Proveedor` = `Proveedores`.`Id_Proveedor`))) left join `Contactos` `c` on((`c`.`Id_Contacto` = `r`.`Id_Contacto`))) where (`Proveedores`.`oficial` <> 0) group by `v_xsubprov`.`proveedor_id`,`v_xsubprov`.`empresa_id` union all select `Gastos`.`Id_Gasto` AS `Id_Gasto`,`Gastos`.`Gasto` AS `Gasto`,NULL AS `NULL`,NULL AS `My_exp_NULL`,NULL AS `My_exp_1_NULL`,NULL AS `My_exp_2_NULL`,NULL AS `My_exp_3_NULL`,NULL AS `country_code`,`e`.`id` AS `id`,NULL AS `EMAIL`,1 AS `IDNIF` from (`Gastos` join `empresa` `e` on((`e`.`id` = 442))) union all select `Bancos`.`Cuenta` AS `Cuenta`,`Bancos`.`Banco` AS `Banco`,NULL AS `NULL`,NULL AS `My_exp_NULL`,NULL AS `My_exp_1_NULL`,NULL AS `My_exp_2_NULL`,NULL AS `My_exp_3_NULL`,NULL AS `country_code`,`e`.`id` AS `id`,NULL AS `EMAIL`,1 AS `IDNIF` from (`Bancos` join `empresa` `e` on((`e`.`id` = 442))) union all select lpad(right(`Proveedores`.`cuenta`,5),10,'47510000') AS `Cuenta`,`Proveedores`.`Proveedor` AS `Proveedor`,`Proveedores`.`NIF` AS `NIF`,`Proveedores`.`Domicilio` AS `Domicilio`,`Proveedores`.`Localidad` AS `Localidad`,`prov`.`name` AS `Provincia`,`Proveedores`.`CP` AS `CP`,`p`.`Codigo` AS `country_code`,`v_xsubprov`.`empresa_id` AS `empresa_id`,substr(`c`.`email`,1,(coalesce(nullif(locate(',',`c`.`email`),0),99) - 1)) AS `EMAIL`,if((`p`.`CEE` = 0),1,if((`p`.`CEE` = 1),2,4)) AS `IDNIF` from (((((`Proveedores` join `v_xsubprov` on((`Proveedores`.`Id_Proveedor` = `v_xsubprov`.`proveedor_id`))) left join `Paises` `p` on((`p`.`Id` = `Proveedores`.`pais_id`))) left join `province` `prov` on((`prov`.`province_id` = `Proveedores`.`province_id`))) left join `Relaciones` `r` on((`r`.`Id_Proveedor` = `Proveedores`.`Id_Proveedor`))) left join `Contactos` `c` on((`c`.`Id_Contacto` = `r`.`Id_Contacto`))) where (((`Proveedores`.`cuenta` like '_____3____') or (`Proveedores`.`cuenta` like '_____2____')) and (`Proveedores`.`oficial` = 1)) group by `v_xsubprov`.`proveedor_id`,`v_xsubprov`.`empresa_id` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_xsubprov`
--
/*!50001 DROP VIEW IF EXISTS `v_xsubprov`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_xsubprov` AS select `recibida`.`proveedor_id` AS `proveedor_id`,`recibida`.`empresa_id` AS `empresa_id` from `recibida` where (`recibida`.`fecha` > (curdate() + interval -(3) month)) group by `recibida`.`proveedor_id`,`recibida`.`empresa_id` union all select `pago`.`id_proveedor` AS `id_proveedor`,`pago`.`empresa_id` AS `empresa_id` from `pago` where (`pago`.`fecha` > (curdate() + interval -(3) month)) group by `pago`.`id_proveedor`,`pago`.`empresa_id` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `vnCreditClassification`
--
/*!50001 DROP VIEW IF EXISTS `vnCreditClassification`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `vnCreditClassification` AS select `vn`.`creditClassification`.`id` AS `id`,`vn`.`creditClassification`.`client` AS `client`,`vn`.`creditClassification`.`dateStart` AS `dateStart`,`vn`.`creditClassification`.`dateEnd` AS `dateEnd` from `vn`.`creditClassification` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `vnCreditInsurance`
--
/*!50001 DROP VIEW IF EXISTS `vnCreditInsurance`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `vnCreditInsurance` AS select `vn`.`creditInsurance`.`id` AS `id`,`vn`.`creditInsurance`.`creditClassification` AS `creditClassification`,`vn`.`creditInsurance`.`credit` AS `credit`,`vn`.`creditInsurance`.`creationDate` AS `creationDate`,`vn`.`creditInsurance`.`grade` AS `grade` from `vn`.`creditInsurance` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `vnSolunionCAP`
--
/*!50001 DROP VIEW IF EXISTS `vnSolunionCAP`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `vnSolunionCAP` AS select `vn`.`solunionCAP`.`creditInsurance` AS `creditInsurance`,`vn`.`solunionCAP`.`dateStart` AS `dateStart`,`vn`.`solunionCAP`.`dateEnd` AS `dateEnd`,`vn`.`solunionCAP`.`dateLeaving` AS `dateLeaving` from `vn`.`solunionCAP` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `workerDocument`
--
/*!50001 DROP VIEW IF EXISTS `workerDocument`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `workerDocument` AS select `vn`.`workerDocument`.`id` AS `id`,`vn`.`workerDocument`.`worker` AS `worker`,`vn`.`workerDocument`.`document` AS `document` from `vn`.`workerDocument` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `workerTeamCollegues`
--
/*!50001 DROP VIEW IF EXISTS `workerTeamCollegues`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `workerTeamCollegues` AS select distinct `w`.`Id_Trabajador` AS `workerId`,`t`.`Id_Trabajador` AS `collegueId` from (`vn`.`workerTeam` `w` join `vn`.`workerTeam` `t` on((`w`.`team` = `t`.`team`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `workerTeam_kk`
--
/*!50001 DROP VIEW IF EXISTS `workerTeam_kk`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `workerTeam_kk` AS select `w`.`team` AS `team`,`w`.`user` AS `user`,`w`.`id` AS `id`,`t`.`Id_Trabajador` AS `Id_Trabajador` from (`vn`.`workerTeam` `w` left join `vn2008`.`Trabajadores` `t` on((`t`.`user_id` = `w`.`user`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Current Database: `bi`
--
USE `bi`;
--
-- Final view structure for view `analisis_grafico_ventas`
--
/*!50001 DROP VIEW IF EXISTS `analisis_grafico_ventas`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `analisis_grafico_ventas` AS select `analisis_ventas`.`Año` AS `Año`,`analisis_ventas`.`Semana` AS `Semana`,sum(`analisis_ventas`.`Importe`) AS `Importe` from `analisis_ventas` group by `analisis_ventas`.`Año`,`analisis_ventas`.`Semana` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `analisis_ventas_simple`
--
/*!50001 DROP VIEW IF EXISTS `analisis_ventas_simple`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `analisis_ventas_simple` AS select `analisis_ventas`.`Año` AS `Año`,`analisis_ventas`.`Semana` AS `Semana`,sum(`analisis_ventas`.`Importe`) AS `Importe` from `analisis_ventas` group by `analisis_ventas`.`Año`,`analisis_ventas`.`Semana` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `customerRiskOverdue`
--
/*!50001 DROP VIEW IF EXISTS `customerRiskOverdue`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `customerRiskOverdue` AS select `cr`.`customer_id` AS `customer_id`,`cr`.`amount` AS `amount`,`cr`.`company_id` AS `company_id` from (((`bi`.`customer_risk` `cr` join `vn2008`.`empresa` `e` on((`e`.`id` = `cr`.`company_id`))) join `vn2008`.`Clientes` `c` on((`cr`.`customer_id` = `c`.`id_cliente`))) join `vn2008`.`pay_met` `pm` on((`pm`.`id` = `c`.`pay_met_id`))) where (`cr`.`amount` and `e`.`morosidad` and `pm`.`deudaviva`) union all select `f`.`Id_Cliente` AS `Id_Cliente`,-(round(`f`.`Importe`,2)) AS `importe`,`f`.`empresa_id` AS `empresa_id` from (((`vn2008`.`Facturas` `f` join `vn2008`.`Clientes` `c` on((`f`.`Id_Cliente` = `c`.`id_cliente`))) join `vn2008`.`empresa` `e` on((`e`.`id` = `f`.`empresa_id`))) join `vn2008`.`pay_met` `pm` on((`pm`.`id` = `c`.`pay_met_id`))) where ((`f`.`Fecha` > (curdate() + interval -(101) day)) and ((`vn2008`.`paymentday`(`f`.`Fecha`,`c`.`vencimiento`) + interval `pm`.`graceDays` day) > curdate()) and (`f`.`Importe` > 0) and `e`.`morosidad` and `pm`.`deudaviva`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `last_Id_Cubo`
--
/*!50001 DROP VIEW IF EXISTS `last_Id_Cubo`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `last_Id_Cubo` AS select `C`.`Id_Compra` AS `Id_Compra`,`C`.`Id_Article` AS `Id_Article`,`tr`.`warehouse_id` AS `warehouse_id`,`C`.`Id_Cubo` AS `Id_Cubo`,`C`.`Packing` AS `Packing` from ((`vn2008`.`Compres` `C` join `vn2008`.`Entradas` `E` on((`C`.`Id_Entrada` = `E`.`Id_Entrada`))) join `vn2008`.`travel` `tr` on((`E`.`travel_id` = `tr`.`id`))) where ((`C`.`Id_Cubo` is not null) and (`C`.`Id_Cubo` <> '--') and (`tr`.`landing` > (curdate() - interval 18 month))) order by `C`.`Id_Compra` desc */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_clientes_jerarquia`
--
/*!50001 DROP VIEW IF EXISTS `v_clientes_jerarquia`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_clientes_jerarquia` AS select `c`.`id_cliente` AS `Id_Cliente`,`c`.`cliente` AS `Cliente`,`t`.`CodigoTrabajador` AS `Comercial`,`tj`.`CodigoTrabajador` AS `Jefe` from (((`vn2008`.`Clientes` `c` join `vn2008`.`Trabajadores` `t` on((`t`.`Id_Trabajador` = `c`.`Id_Trabajador`))) join `vn2008`.`jerarquia` on((`vn2008`.`jerarquia`.`worker_id` = `c`.`Id_Trabajador`))) join `vn2008`.`Trabajadores` `tj` on((`tj`.`Id_Trabajador` = `vn2008`.`jerarquia`.`boss_id`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_ventas_contables`
--
/*!50001 DROP VIEW IF EXISTS `v_ventas_contables`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_ventas_contables` AS select `vn2008`.`time`.`year` AS `year`,`vn2008`.`time`.`month` AS `month`,cast(sum((((`m`.`Cantidad` * `m`.`Preu`) * (100 - `m`.`Descuento`)) / 100)) as decimal(10,0)) AS `importe` from (((`vn2008`.`Tickets` `t` join `bi`.`f_tvc` on((`t`.`Id_Ticket` = `bi`.`f_tvc`.`Id_Ticket`))) join `vn2008`.`Movimientos` `m` on((`t`.`Id_Ticket` = `m`.`Id_Ticket`))) join `vn2008`.`time` on((`vn2008`.`time`.`date` = cast(`t`.`Fecha` as date)))) where (`t`.`Fecha` >= '2014-01-01') group by `vn2008`.`time`.`year`,`vn2008`.`time`.`month` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Current Database: `vn`
--
USE `vn`;
--
-- Final view structure for view `accounting`
--
/*!50001 DROP VIEW IF EXISTS `accounting`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `accounting` AS select `b`.`Id_Banco` AS `id`,`b`.`Banco` AS `bank`,`b`.`Cuenta` AS `account`,`b`.`cash` AS `accountingTypeFk`,`b`.`entity_id` AS `entityFk`,`b`.`activo` AS `isActive` from `vn2008`.`Bancos` `b` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `address`
--
/*!50001 DROP VIEW IF EXISTS `address`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `address` AS select `cs`.`Id_cliente` AS `customer`,`cs`.`warehouse_id` AS `warehouse`,`cs`.`domicilio` AS `street`,`cs`.`poblacion` AS `city`,`cs`.`province_id` AS `province`,`cs`.`codPostal` AS `postalCode`,`cs`.`telefono` AS `phone`,`cs`.`movil` AS `celular`,`cs`.`consignatario` AS `nickname`,`cs`.`id_consigna` AS `id`,`cs`.`predeterminada` AS `defaultAddress`,`cs`.`Id_Agencia` AS `agency`,`cs`.`active` AS `active`,`cs`.`longitude` AS `longitude`,`cs`.`latitude` AS `latitude`,`cs`.`Id_cliente` AS `clientFk`,`cs`.`warehouse_id` AS `warehouseFk`,`cs`.`province_id` AS `provinceFk`,`cs`.`movil` AS `mobile`,`cs`.`Id_Agencia` AS `agencyFk`,`cs`.`isEqualizated` AS `isEqualizated` from `vn2008`.`Consignatarios` `cs` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `addressObservation`
--
/*!50001 DROP VIEW IF EXISTS `addressObservation`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `addressObservation` AS select `co`.`consignatarios_observation_id` AS `id`,`co`.`Id_Consigna` AS `addressFk`,`co`.`observation_type_id` AS `observationTypeFk`,`co`.`text` AS `description` from `vn2008`.`consignatarios_observation` `co` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `agency`
--
/*!50001 DROP VIEW IF EXISTS `agency`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `agency` AS select `a`.`agency_id` AS `id`,`a`.`name` AS `name`,`a`.`warehouse_id` AS `warehouse`,`a`.`warehouse_id` AS `warehouseFk`,`a`.`por_volumen` AS `isVolumetric`,`a`.`Id_Banco` AS `bank`,`a`.`Id_Banco` AS `bankFk`,`a`.`warehouse_alias_id` AS `warehouseNickname`,`a`.`warehouse_alias_id` AS `warehouseAliasFk`,`a`.`propios` AS `own`,`a`.`zone_label` AS `labelZone` from `vn2008`.`agency` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `agencyHour`
--
/*!50001 DROP VIEW IF EXISTS `agencyHour`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `agencyHour` AS select `h`.`agency_hour_id` AS `id`,`h`.`agency_id` AS `agency`,`h`.`week_day` AS `weekDay`,`h`.`warehouse_id` AS `warehouse`,`h`.`province_id` AS `province`,`h`.`subtract_day` AS `substractDay`,`h`.`max_hour` AS `maxHour` from `vn2008`.`agency_hour` `h` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `agencyMode`
--
/*!50001 DROP VIEW IF EXISTS `agencyMode`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `agencyMode` AS select `a`.`Id_Agencia` AS `id`,`a`.`Agencia` AS `name`,`a`.`description` AS `description`,`a`.`Vista` AS `view`,`a`.`Vista` AS `deliveryMethod`,`a`.`m3` AS `m3`,`a`.`cod71` AS `cod71`,`a`.`web` AS `web`,`a`.`agency_id` AS `agency`,`a`.`agency_id` AS `agencyFk`,`a`.`agency_service_id` AS `agencyService`,`a`.`agency_service_id` AS `agencyServiceFk`,`a`.`inflacion` AS `inflacion`,`a`.`is_volumetric` AS `isVolumetric`,`a`.`send_mail` AS `reportMail` from `vn2008`.`Agencias` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `agencyWarehouse`
--
/*!50001 DROP VIEW IF EXISTS `agencyWarehouse`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `agencyWarehouse` AS select `a`.`agency_id` AS `agencyFk`,`a`.`warehouse_id` AS `warehouseFk`,`a`.`Vista` AS `agencyType` from `vn2008`.`agency_warehouse` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `awb`
--
/*!50001 DROP VIEW IF EXISTS `awb`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `awb` AS select `a`.`id` AS `id`,`a`.`codigo` AS `code`,`a`.`bultos` AS `package`,`a`.`peso` AS `weight`,`a`.`MYSQL_TIME` AS `created`,`a`.`transitario_id` AS `transitoryFk`,`a`.`iva_id` AS `taxFk`,`a`.`gestdoc_id` AS `docFk`,`a`.`importe` AS `amount`,`a`.`carguera_id` AS `freightFk`,`a`.`m3` AS `m3`,`a`.`stems` AS `stems`,`a`.`flight_id` AS `flightFk`,`a`.`volume_weight` AS `volumeWeight`,`a`.`hb` AS `hb`,`a`.`rate` AS `rate`,`a`.`booked` AS `booked`,`a`.`issued` AS `issued`,`a`.`operated` AS `operated` from `vn2008`.`awb` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `bank`
--
/*!50001 DROP VIEW IF EXISTS `bank`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `bank` AS select `b`.`Id_Banco` AS `id`,`b`.`Banco` AS `bank`,`b`.`Cuenta` AS `account`,`b`.`cash` AS `cash`,`b`.`entity_id` AS `entityFk`,`b`.`activo` AS `isActive` from `vn2008`.`Bancos` `b` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `botanicExport`
--
/*!50001 DROP VIEW IF EXISTS `botanicExport`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `botanicExport` AS select `be`.`botanic_export_id` AS `id`,`be`.`edi_genus_id` AS `ediGenusFk`,`be`.`edi_specie_id` AS `ediSpecieFk`,`be`.`Id_Paises` AS `countryFk`,`be`.`restriction` AS `restriction`,`be`.`description` AS `description` from `vn2008`.`botanic_export` `be` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `buy`
--
/*!50001 DROP VIEW IF EXISTS `buy`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `buy` AS select `c`.`Id_Compra` AS `id`,`c`.`Id_Entrada` AS `entryFk`,`c`.`Id_Article` AS `itemFk`,`c`.`Cantidad` AS `amount`,`c`.`Costefijo` AS `buyingValue`,`c`.`Cantidad` AS `quantity`,`c`.`Id_Cubo` AS `packageFk`,`c`.`Etiquetas` AS `stickers`,`c`.`Portefijo` AS `freightValue`,`c`.`Embalajefijo` AS `packageValue`,`c`.`Comisionfija` AS `comissionValue`,`c`.`Packing` AS `packing`,`c`.`grouping` AS `grouping`,`c`.`caja` AS `groupingMode`,`c`.`Nicho` AS `location`,`c`.`Tarifa1` AS `price1`,`c`.`Tarifa2` AS `price2`,`c`.`Tarifa3` AS `price3`,`c`.`PVP` AS `minPrice`,`c`.`Productor` AS `producer`,`c`.`Vida` AS `printedStickers`,`c`.`punteo` AS `isChecked` from `vn2008`.`Compres` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `city`
--
/*!50001 DROP VIEW IF EXISTS `city`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `city` AS select `c`.`city_id` AS `id`,`c`.`name` AS `name`,`c`.`province_id` AS `provinceFk` from `vn2008`.`city` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `client`
--
/*!50001 DROP VIEW IF EXISTS `client`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `client` AS select `c`.`id_cliente` AS `id`,`c`.`cliente` AS `name`,`c`.`if` AS `fi`,`c`.`razonSocial` AS `socialName`,`c`.`contacto` AS `contact`,`c`.`domicilio` AS `street`,`c`.`poblacion` AS `city`,`c`.`codPostal` AS `postcode`,`c`.`telefono` AS `phone`,`c`.`movil` AS `mobile`,`c`.`fax` AS `fax`,`c`.`real` AS `isRelevant`,`c`.`e-mail` AS `email`,`c`.`iban` AS `iban`,`c`.`vencimiento` AS `dueDay`,`c`.`Cuenta` AS `accountingAccount`,`c`.`RE` AS `isEqualizated`,`c`.`province_id` AS `provinceFk`,`c`.`invoice` AS `hasToInvoice`,`c`.`credito` AS `credit`,`c`.`Id_Pais` AS `countryFk`,`c`.`activo` AS `isActive`,`c`.`gestdoc_id` AS `gestdocFk`,`c`.`calidad` AS `quality`,`c`.`pay_met_id` AS `payMethodFk`,`c`.`created` AS `created`,`c`.`mail` AS `isToBeMailed`,`c`.`chanel_id` AS `contactChannelFk`,`c`.`sepaVnl` AS `hasSepaVnl`,`c`.`coreVnl` AS `hasCoreVnl`,`c`.`coreVnh` AS `hasCoreVnh`,`c`.`risk_calculated` AS `riskCalculated`,`c`.`clientes_tipo_id` AS `clientTypeFk`,`c`.`mail_address` AS `mailAddress`,`c`.`cplusTerIdNifFk` AS `cplusTerIdNifFk`,`c`.`invoiceByAddress` AS `hasToInvoiceByAddress`,`c`.`contabilizado` AS `isTaxDataChecked`,`c`.`congelado` AS `isFreezed`,`c`.`creditInsurance` AS `creditInsurance`,`c`.`isCreatedAsServed` AS `isCreatedAsServed`,`c`.`hasInvoiceSimplified` AS `hasInvoiceSimplified`,`c`.`Id_Trabajador` AS `salesPersonFk`,`c`.`vies` AS `isVies`,`c`.`EYPBC` AS `eypbc` from `vn2008`.`Clientes` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `clientManaCache`
--
/*!50001 DROP VIEW IF EXISTS `clientManaCache`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `clientManaCache` AS select `mc`.`Id_Cliente` AS `clientFk`,`mc`.`Mana` AS `mana`,`mc`.`dated` AS `dated` from `bs`.`manaCustomer` `mc` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `clientObservation`
--
/*!50001 DROP VIEW IF EXISTS `clientObservation`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `clientObservation` AS select `vn2008`.`client_observation`.`client_observation_id` AS `id`,`vn2008`.`client_observation`.`Id_Cliente` AS `client`,`vn2008`.`client_observation`.`Id_Trabajador` AS `worker`,`vn2008`.`client_observation`.`text` AS `text`,`vn2008`.`client_observation`.`odbc_date` AS `creationDate` from `vn2008`.`client_observation` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `clientType`
--
/*!50001 DROP VIEW IF EXISTS `clientType`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `clientType` AS select `ct`.`clientes_tipo_id` AS `id`,`ct`.`code` AS `code`,`ct`.`tipo` AS `type` from `vn2008`.`clientes_tipo` `ct` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `company`
--
/*!50001 DROP VIEW IF EXISTS `company`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `company` AS select `e`.`id` AS `id`,`e`.`abbreviation` AS `code` from `vn2008`.`empresa` `e` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `country`
--
/*!50001 DROP VIEW IF EXISTS `country`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `country` AS select `p`.`Id` AS `id`,`p`.`Pais` AS `country`,`p`.`CEE` AS `CEE`,if((`p`.`CEE` < 2),1,0) AS `isUeeMember`,`p`.`Codigo` AS `Code`,`p`.`Id_Moneda` AS `currencyFk`,`p`.`Id_Paisreal` AS `politicalCountryFk`,`p`.`geoFk` AS `geoFk` from `vn2008`.`Paises` `p` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `deliveryMethod`
--
/*!50001 DROP VIEW IF EXISTS `deliveryMethod`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `deliveryMethod` AS select `d`.`vista_id` AS `id`,`d`.`code` AS `code`,`d`.`vista` AS `description` from `vn2008`.`Vistas` `d` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ediGenus`
--
/*!50001 DROP VIEW IF EXISTS `ediGenus`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ediGenus` AS select `g`.`genus_id` AS `id`,`g`.`latin_genus_name` AS `latinGenusName`,`g`.`entry_date` AS `entried`,`g`.`expiry_date` AS `dued`,`g`.`change_date_time` AS `modified` from `edi`.`genus` `g` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ediSpecie`
--
/*!50001 DROP VIEW IF EXISTS `ediSpecie`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ediSpecie` AS select `s`.`specie_id` AS `id`,`s`.`genus_id` AS `genusFk`,`s`.`latin_species_name` AS `latinSpeciesName`,`s`.`entry_date` AS `entried`,`s`.`expiry_date` AS `dued`,`s`.`change_date_time` AS `modified` from `edi`.`specie` `s` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `entry`
--
/*!50001 DROP VIEW IF EXISTS `entry`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `entry` AS select `e`.`Id_Entrada` AS `id`,`e`.`Id_Proveedor` AS `supplierFk`,`e`.`Referencia` AS `ref`,`e`.`Inventario` AS `isInventory`,`e`.`Confirmada` AS `isConfirmed`,`e`.`Pedida` AS `isOrdered`,`e`.`Redada` AS `isRaid`,`e`.`comision` AS `commission`,`e`.`odbc_date` AS `created`,`e`.`Notas_Eva` AS `evaNotes`,`e`.`travel_id` AS `travelFk`,`e`.`Id_Moneda` AS `currencyFk`,`e`.`empresa_id` AS `companyFk`,`e`.`gestdoc_id` AS `gestDocFk`,`e`.`recibida_id` AS `invoiceReceivedFk` from `vn2008`.`Entradas` `e` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `especialPrice`
--
/*!50001 DROP VIEW IF EXISTS `especialPrice`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `especialPrice` AS select `p`.`Id_PrecioEspecial` AS `id`,`p`.`Id_Cliente` AS `clientFk`,`p`.`Id_Article` AS `itemFk`,`p`.`PrecioEspecial` AS `value` from `vn2008`.`PreciosEspeciales` `p` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `expedition`
--
/*!50001 DROP VIEW IF EXISTS `expedition`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `expedition` AS select `e`.`expeditions_id` AS `id`,`e`.`agency_id` AS `agency`,`e`.`agency_id` AS `agencyFk`,`e`.`ticket_id` AS `ticket`,`e`.`ticket_id` AS `ticketFk`,`e`.`EsBulto` AS `isBox`,`e`.`odbc_date` AS `printingTime`,`e`.`Id_Article` AS `item`,`e`.`Id_Article` AS `itemFk`,`e`.`counter` AS `counter`,`e`.`checked` AS `checked`,`e`.`workerFk` AS `workerFk` from `vn2008`.`expeditions` `e` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `expence`
--
/*!50001 DROP VIEW IF EXISTS `expence`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `expence` AS select `g`.`Id_Gasto` AS `id`,`g`.`iva_tipo_id` AS `taxTypeFk`,`g`.`Gasto` AS `name`,`g`.`isWithheld` AS `isWithheld` from `vn2008`.`Gastos` `g` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `family`
--
/*!50001 DROP VIEW IF EXISTS `family`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `family` AS select `t`.`tipo_id` AS `id`,`t`.`Tipo` AS `name`,`t`.`life` AS `life` from `vn2008`.`Tipos` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `grant`
--
/*!50001 DROP VIEW IF EXISTS `grant`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `grant` AS select `vn2008`.`Permisos`.`Id_Grupo` AS `group`,`vn2008`.`Permisos`.`Id_Trabajador` AS `worker`,`vn2008`.`Permisos`.`empresa_id` AS `company` from `vn2008`.`Permisos` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `grantGroup`
--
/*!50001 DROP VIEW IF EXISTS `grantGroup`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `grantGroup` AS select `vn2008`.`Grupos`.`id` AS `id`,`vn2008`.`Grupos`.`Grupo` AS `description`,`vn2008`.`Grupos`.`observation_type_id` AS `observationType` from `vn2008`.`Grupos` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ink`
--
/*!50001 DROP VIEW IF EXISTS `ink`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ink` AS select `c`.`Id_Tinta` AS `id`,`c`.`name` AS `name`,`c`.`Tinta` AS `picture` from `vn2008`.`Tintas` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `intrastat`
--
/*!50001 DROP VIEW IF EXISTS `intrastat`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `intrastat` AS select `i`.`Codintrastat` AS `id`,`i`.`Definicion` AS `description`,`i`.`iva_group_id` AS `taxGroupFk`,`i`.`iva_codigo_id` AS `taxCodeFk` from `vn2008`.`Intrastat` `i` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceCorrection`
--
/*!50001 DROP VIEW IF EXISTS `invoiceCorrection`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceCorrection` AS select `ic`.`correctingFk` AS `correctingFk`,`ic`.`correctedFk` AS `correctedFk`,`ic`.`cplusRectificationTypeFk` AS `cplusRectificationTypeFk`,`ic`.`cplusInvoiceType477Fk` AS `cplusInvoiceType477Fk`,`ic`.`invoiceCorrectionTypeFk` AS `invoiceCorrectionTypeFk` from `vn2008`.`invoiceCorrection` `ic` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceCorrectionDataSource`
--
/*!50001 DROP VIEW IF EXISTS `invoiceCorrectionDataSource`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceCorrectionDataSource` AS select `s`.`itemFk` AS `itemFk`,`s`.`quantity` AS `quantity`,`s`.`concept` AS `concept`,`s`.`price` AS `price`,`s`.`discount` AS `discount`,`t`.`refFk` AS `refFk`,`s`.`id` AS `saleFk` from (`vn`.`sale` `s` join `vn`.`ticket` `t` on((`t`.`id` = `s`.`ticketFk`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceIn`
--
/*!50001 DROP VIEW IF EXISTS `invoiceIn`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceIn` AS select `r`.`id` AS `id`,`r`.`num_recibida` AS `serialNumber`,`r`.`serie` AS `serial`,`r`.`proveedor_id` AS `supplierFk`,`r`.`fecha` AS `issued`,`r`.`sref` AS `supplierRef`,`r`.`contabilizada` AS `isBooked`,`r`.`moneda_id` AS `currencyFk`,`r`.`MYSQL_TIME` AS `created`,`r`.`empresa_id` AS `companyFk`,`r`.`gestdoc_id` AS `docFk`,`r`.`dateBooking` AS `booked`,`r`.`dateOperation` AS `operated`,`r`.`cplusInvoiceType472Fk` AS `cplusInvoiceType472Fk`,`r`.`cplusRectificationTypeFk` AS `cplusRectificationTypeFk`,`r`.`cplusSubjectOpFk` AS `cplusSubjectOpFk`,`r`.`cplusTaxBreakFk` AS `cplusTaxBreakFk`,`r`.`cplusTrascendency472Fk` AS `cplusTrascendency472Fk` from `vn2008`.`recibida` `r` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceInAwb`
--
/*!50001 DROP VIEW IF EXISTS `invoiceInAwb`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceInAwb` AS select `a`.`recibida_id` AS `invoiceInFk`,`a`.`awb_id` AS `awbFk`,`a`.`dua` AS `dua` from `vn2008`.`awb_recibida` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceInEntry`
--
/*!50001 DROP VIEW IF EXISTS `invoiceInEntry`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceInEntry` AS select `i`.`recibida_entrada_id` AS `id`,`i`.`recibida_id` AS `invoiceInFk`,`i`.`Id_Entrada` AS `entryFk`,`i`.`percentage` AS `percentage`,`i`.`awb_recibida` AS `invoiceInAwbFk`,`i`.`Contabilizado` AS `isBooked` from `vn2008`.`recibida_entrada` `i` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceInIntrastat`
--
/*!50001 DROP VIEW IF EXISTS `invoiceInIntrastat`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceInIntrastat` AS select `r`.`recibida_id` AS `invoiceInFk`,`r`.`Codintrastat` AS `intrastatFk`,`r`.`importe` AS `amount` from `vn2008`.`recibida_intrastat` `r` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceInTax`
--
/*!50001 DROP VIEW IF EXISTS `invoiceInTax`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceInTax` AS select `r`.`id` AS `id`,`r`.`recibida_id` AS `invoiceInFk`,`r`.`iva_id` AS `taxCodeFk`,`r`.`bi` AS `taxableBase`,`r`.`gastos_id` AS `expenceFk`,`r`.`divisa` AS `foreignValue`,`r`.`MYSQL_TIME` AS `created` from `vn2008`.`recibida_iva` `r` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoiceOut`
--
/*!50001 DROP VIEW IF EXISTS `invoiceOut`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoiceOut` AS select `f`.`factura_id` AS `id`,`f`.`Id_Factura` AS `ref`,`f`.`Serie` AS `serial`,`f`.`Fecha` AS `issued`,`f`.`Importe` AS `amount`,`f`.`Id_Cliente` AS `clientFk`,`f`.`odbc_date` AS `created`,`f`.`empresa_id` AS `companyFk`,`f`.`Vencimiento` AS `dued`,`f`.`booked` AS `booked`,`f`.`cplusInvoiceType477Fk` AS `cplusInvoiceType477Fk`,`f`.`cplusTaxBreakFk` AS `cplusTaxBreakFk`,`f`.`cplusSubjectOpFk` AS `cplusSubjectOpFk`,`f`.`cplusTrascendency477Fk` AS `cplusTrascendency477Fk`,`f`.`pdf` AS `pdf` from `vn2008`.`Facturas` `f` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `item`
--
/*!50001 DROP VIEW IF EXISTS `item`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `item` AS select `t`.`Id_Article` AS `id`,`t`.`Article` AS `name`,`t`.`tipo_id` AS `familyFk`,`t`.`Medida` AS `size`,`t`.`Color` AS `inkFk`,`t`.`Categoria` AS `category`,`t`.`Tallos` AS `stems`,`t`.`id_origen` AS `originFk`,`t`.`description` AS `description`,`t`.`producer_id` AS `producerFk`,`t`.`Codintrastat` AS `intrastatFk`,`t`.`expenceFk` AS `expenceFk` from `vn2008`.`Articles` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `itemBotanical`
--
/*!50001 DROP VIEW IF EXISTS `itemBotanical`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `itemBotanical` AS select `ab`.`Id_Article` AS `itemFk`,`ab`.`botanical` AS `botanical`,`ab`.`genus_id` AS `genusFk`,`ab`.`specie_id` AS `specieFk` from `vn2008`.`Articles_botanical` `ab` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `itemBotanicalWithGenus`
--
/*!50001 DROP VIEW IF EXISTS `itemBotanicalWithGenus`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `itemBotanicalWithGenus` AS select `ib`.`itemFk` AS `itemFk`,ifnull(`ib`.`botanical`,concat(`g`.`latinGenusName`,' ',ifnull(`s`.`latinSpeciesName`,''))) AS `ediBotanic` from ((`vn`.`itemBotanical` `ib` left join `vn`.`ediGenus` `g` on((`g`.`id` = `ib`.`genusFk`))) left join `vn`.`ediSpecie` `s` on((`s`.`id` = `ib`.`specieFk`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `itemTag`
--
/*!50001 DROP VIEW IF EXISTS `itemTag`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `itemTag` AS select `t`.`id` AS `id`,`t`.`itemFk` AS `itemFk`,`t`.`tagFk` AS `tagFk`,`t`.`value` AS `value`,`t`.`priority` AS `priority` from `vn2008`.`itemTag` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `itemTagged`
--
/*!50001 DROP VIEW IF EXISTS `itemTagged`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `itemTagged` AS select distinct `itemTag`.`itemFk` AS `itemFk` from `vn`.`itemTag` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `mail`
--
/*!50001 DROP VIEW IF EXISTS `mail`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `mail` AS select `vn2008`.`mail`.`id` AS `id`,`vn2008`.`mail`.`senderFk` AS `senderFk`,`vn2008`.`mail`.`recipientFk` AS `recipientFk`,`vn2008`.`mail`.`to` AS `sender`,`vn2008`.`mail`.`reply_to` AS `replyTo`,`vn2008`.`mail`.`subject` AS `subject`,`vn2008`.`mail`.`text` AS `body`,`vn2008`.`mail`.`plainTextBody` AS `plainTextBody`,`vn2008`.`mail`.`path` AS `attachment`,`vn2008`.`mail`.`DATE_ODBC` AS `creationDate`,`vn2008`.`mail`.`sent` AS `sent`,`vn2008`.`mail`.`error` AS `status` from `vn2008`.`mail` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `manaSpellers`
--
/*!50001 DROP VIEW IF EXISTS `manaSpellers`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `manaSpellers` AS select `bs`.`mana_spellers`.`Id_Trabajador` AS `worker`,`bs`.`mana_spellers`.`size` AS `size`,`bs`.`mana_spellers`.`used` AS `used`,`bs`.`mana_spellers`.`prices_modifier_rate` AS `pricesModifierRate`,`bs`.`mana_spellers`.`prices_modifier_activated` AS `pricesModifierActivated`,`vn2008`.`Trabajadores`.`CodigoTrabajador` AS `workerCode`,`vn2008`.`Trabajadores`.`Nombre` AS `firstname`,`vn2008`.`Trabajadores`.`Apellidos` AS `name` from (`bs`.`mana_spellers` join `vn2008`.`Trabajadores` on((`bs`.`mana_spellers`.`Id_Trabajador` = `vn2008`.`Trabajadores`.`Id_Trabajador`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `movement`
--
/*!50001 DROP VIEW IF EXISTS `movement`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `movement` AS select `m`.`Id_Movimiento` AS `id`,`m`.`Id_Article` AS `item`,`m`.`Id_Ticket` AS `ticket`,`m`.`Concepte` AS `concept`,`m`.`Cantidad` AS `amount`,`m`.`quantity` AS `quantity`,`m`.`Preu` AS `price`,`m`.`Descuento` AS `discount`,`m`.`CostFixat` AS `cost`,`m`.`Reservado` AS `reservado`,`m`.`OK` AS `od`,`m`.`PrecioFijado` AS `priceFixed`,`m`.`odbc_date` AS `lastUpdate` from `vn2008`.`Movimientos` `m` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `observationType`
--
/*!50001 DROP VIEW IF EXISTS `observationType`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `observationType` AS select `ot`.`observation_type_id` AS `id`,`ot`.`description` AS `description` from `vn2008`.`observation_type` `ot` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `origin`
--
/*!50001 DROP VIEW IF EXISTS `origin`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `origin` AS select `o`.`id` AS `id`,`o`.`Abreviatura` AS `code`,`o`.`Origen` AS `name` from `vn2008`.`Origen` `o` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `outgoingInvoice`
--
/*!50001 DROP VIEW IF EXISTS `outgoingInvoice`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `outgoingInvoice` AS select `vn2008`.`Facturas`.`Id_Factura` AS `id`,`vn2008`.`Facturas`.`Serie` AS `serie`,`vn2008`.`Facturas`.`Fecha` AS `dateInvoice`,`vn2008`.`Facturas`.`Importe` AS `total`,`vn2008`.`Facturas`.`Vencimiento` AS `dueDate`,`vn2008`.`Facturas`.`Id_Banco` AS `bank`,`vn2008`.`Facturas`.`Id_Cliente` AS `client`,`vn2008`.`Facturas`.`Id_Remesa` AS `remittance`,`vn2008`.`Facturas`.`Remesar` AS `remit`,`vn2008`.`Facturas`.`Id_Trabajador` AS `worker`,`vn2008`.`Facturas`.`odbc_date` AS `creationDate`,`vn2008`.`Facturas`.`empresa_id` AS `company`,`vn2008`.`Facturas`.`liquidacion` AS `liquidacion?`,`vn2008`.`Facturas`.`pdf` AS `isPdf` from `vn2008`.`Facturas` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `package`
--
/*!50001 DROP VIEW IF EXISTS `package`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `package` AS select `c`.`Id_Cubo` AS `id`,`c`.`Volumen` AS `volume`,`c`.`X` AS `width`,`c`.`Y` AS `height`,`c`.`Z` AS `depth`,`c`.`Retornable` AS `isPackageReturnable`,`c`.`odbc_date` AS `created`,`c`.`item_id` AS `itemFk` from `vn2008`.`Cubos` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `payMethod`
--
/*!50001 DROP VIEW IF EXISTS `payMethod`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `payMethod` AS select `pm`.`id` AS `id`,`pm`.`name` AS `name` from `vn2008`.`pay_met` `pm` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `plantpassport`
--
/*!50001 DROP VIEW IF EXISTS `plantpassport`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `plantpassport` AS select `pp`.`producer_id` AS `producerFk`,`pp`.`plantpassport_authority_id` AS `plantpassportAuthorityFk`,`pp`.`number` AS `number` from `vn2008`.`plantpassport` `pp` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `plantpassportAuthority`
--
/*!50001 DROP VIEW IF EXISTS `plantpassportAuthority`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `plantpassportAuthority` AS select `ppa`.`plantpassport_authority_id` AS `id`,`ppa`.`denomination` AS `denomination`,`ppa`.`Paises_Id` AS `countryFk` from `vn2008`.`plantpassport_authority` `ppa` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `priceFixed`
--
/*!50001 DROP VIEW IF EXISTS `priceFixed`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `priceFixed` AS select `p`.`item_id` AS `itemFk`,`p`.`rate_0` AS `rate0`,`p`.`rate_1` AS `rate1`,`p`.`rate_2` AS `rate2`,`p`.`rate_3` AS `rate3`,`p`.`date_start` AS `started`,`p`.`date_end` AS `ended`,`p`.`bonus` AS `bonus`,`p`.`warehouse_id` AS `warehouseFk`,`p`.`odbc_date` AS `created`,`p`.`price_fixed_id` AS `id`,`p`.`grouping` AS `grouping`,`p`.`Packing` AS `packing`,`p`.`caja` AS `box` from `vn2008`.`price_fixed` `p` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `printServerQueue`
--
/*!50001 DROP VIEW IF EXISTS `printServerQueue`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `printServerQueue` AS select `c`.`Id_Cola` AS `id`,`c`.`Id_Impresora` AS `printerFk`,`c`.`Id_Prioridad` AS `priorityFk`,`c`.`Id_Informe` AS `reportFk`,`c`.`Id_Estado` AS `statusFk`,`c`.`Hora_Inicio` AS `started`,`c`.`Hora_Fin` AS `finished`,`c`.`Cola` AS `param1`,`c`.`Id_Trabajador` AS `workerFk`,`c`.`Cola2` AS `param2`,`c`.`Cola3` AS `param3`,`c`.`error` AS `error` from `vn2008`.`Colas` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `printingQueue`
--
/*!50001 DROP VIEW IF EXISTS `printingQueue`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `printingQueue` AS select `c`.`Id_Cola` AS `id`,`c`.`Id_Impresora` AS `printer`,`c`.`Id_Prioridad` AS `priority`,`c`.`Id_Informe` AS `report`,`c`.`Id_Estado` AS `state`,`c`.`Hora_Inicio` AS `startingTime`,`c`.`Hora_Fin` AS `endingTime`,`c`.`Cola` AS `text`,`c`.`Id_Trabajador` AS `worker`,`c`.`Cola2` AS `text2`,`c`.`Cola3` AS `text3` from `vn2008`.`Colas` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `producer`
--
/*!50001 DROP VIEW IF EXISTS `producer`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `producer` AS select `p`.`producer_id` AS `id`,`p`.`name` AS `name` from `vn2008`.`producer` `p` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `province`
--
/*!50001 DROP VIEW IF EXISTS `province`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `province` AS select `t`.`province_id` AS `id`,`t`.`name` AS `name`,`t`.`Paises_Id` AS `countryFk` from `vn2008`.`province` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `referenceRate`
--
/*!50001 DROP VIEW IF EXISTS `referenceRate`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `referenceRate` AS select `r`.`moneda_id` AS `currencyFk`,`r`.`date` AS `dated`,`r`.`rate` AS `value` from `vn2008`.`reference_rate` `r` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `role`
--
/*!50001 DROP VIEW IF EXISTS `role`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `role` AS select `account`.`role`.`id` AS `id`,`account`.`role`.`name` AS `name`,`account`.`role`.`description` AS `description`,`account`.`role`.`hasLogin` AS `hasLogin` from `account`.`role` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `route`
--
/*!50001 DROP VIEW IF EXISTS `route`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `route` AS select `a`.`Id_Ruta` AS `id`,`a`.`Id_Trabajador` AS `workerFk`,`a`.`Fecha` AS `created`,`a`.`Id_Vehiculo` AS `vehicleFk`,`a`.`Id_Agencia` AS `agencyFk`,`a`.`Id_Agencia` AS `agencyModeFk`,`a`.`Hora` AS `time`,`a`.`ok` AS `isOk`,`a`.`km_start` AS `kmStart`,`a`.`km_end` AS `kmEnd`,`a`.`date_start` AS `started`,`a`.`date_end` AS `finished`,`a`.`gestdoc_id` AS `gestdocFk`,`a`.`cost` AS `cost`,`a`.`m3` AS `m3` from `vn2008`.`Rutas` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `sale`
--
/*!50001 DROP VIEW IF EXISTS `sale`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `sale` AS select `m`.`Id_Movimiento` AS `id`,`m`.`Id_Article` AS `itemFk`,`m`.`Id_Ticket` AS `ticketFk`,`m`.`Concepte` AS `concept`,`m`.`Cantidad` AS `quantity`,`m`.`Preu` AS `price`,`m`.`Descuento` AS `discount`,`m`.`Reservado` AS `reserved`,`m`.`OK` AS `isPicked`,`m`.`odbc_date` AS `created` from `vn2008`.`Movimientos` `m` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `saleComponent`
--
/*!50001 DROP VIEW IF EXISTS `saleComponent`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `saleComponent` AS select `mc`.`Id_Movimiento` AS `saleFk`,`mc`.`Id_Componente` AS `componentFk`,`mc`.`Valor` AS `value` from `vn2008`.`Movimientos_componentes` `mc` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `state`
--
/*!50001 DROP VIEW IF EXISTS `state`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `state` AS select `s`.`id` AS `id`,`s`.`name` AS `name`,`s`.`order` AS `order`,`s`.`alert_level` AS `alertLevel`,`s`.`code` AS `code` from `vn2008`.`state` `s` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `supplier`
--
/*!50001 DROP VIEW IF EXISTS `supplier`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `supplier` AS select `p`.`Id_Proveedor` AS `id`,`p`.`Proveedor` AS `name`,`p`.`cuenta` AS `account`,`p`.`pais_id` AS `countryFk`,`p`.`NIF` AS `nif`,`p`.`Agricola` AS `isFarmer`,`p`.`cuentaret` AS `retAccount`,`p`.`ComisionProveedor` AS `commission`,`p`.`odbc_time` AS `created`,`p`.`postcode_id` AS `postcodeFk`,`p`.`active` AS `isActive` from `vn2008`.`Proveedores` `p` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `tag`
--
/*!50001 DROP VIEW IF EXISTS `tag`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `tag` AS select `t`.`id` AS `id`,`t`.`name` AS `name`,`t`.`free` AS `free` from `vn2008`.`tag` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `taxClass`
--
/*!50001 DROP VIEW IF EXISTS `taxClass`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `taxClass` AS select `c`.`iva_group_id` AS `id`,`c`.`description` AS `description`,`c`.`code` AS `code` from `vn2008`.`iva_group` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `taxClassCode`
--
/*!50001 DROP VIEW IF EXISTS `taxClassCode`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `taxClassCode` AS select `c`.`iva_group_id` AS `taxClassFk`,`c`.`date` AS `effectived`,`c`.`iva_codigo_id` AS `taxCodeFk` from `vn2008`.`iva_group_codigo` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `taxCode`
--
/*!50001 DROP VIEW IF EXISTS `taxCode`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `taxCode` AS select `ic`.`id` AS `id`,`ic`.`fecha` AS `dated`,`ic`.`codigo` AS `code`,`ic`.`iva_tipo_id` AS `taxTypeFk`,`ic`.`iva` AS `rate`,`ic`.`recargo` AS `equalizationTax`,`ic`.`tipo` AS `type`,`ic`.`link` AS `linkFk`,`ic`.`isActive` AS `isActive` from `vn2008`.`iva_codigo` `ic` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `taxType`
--
/*!50001 DROP VIEW IF EXISTS `taxType`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `taxType` AS select `t`.`id` AS `id`,`t`.`alias` AS `nickname`,`t`.`serie_id` AS `serial`,`t`.`TIPOOPE` AS `TIPOOPE`,`t`.`descripcion` AS `description`,`t`.`Id_Pais` AS `countryFk` from `vn2008`.`iva_tipo` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticket`
--
/*!50001 DROP VIEW IF EXISTS `ticket`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticket` AS select `t`.`Id_Ticket` AS `id`,`t`.`Id_Cliente` AS `clientFk`,`t`.`warehouse_id` AS `warehouseFk`,`t`.`Fecha` AS `shipped`,`t`.`landing` AS `landed`,`t`.`Alias` AS `nickname`,`t`.`Factura` AS `refFk`,`t`.`Id_Consigna` AS `addressFk`,`t`.`Firmado` AS `isSigned`,`t`.`Localizacion` AS `location`,`t`.`blocked` AS `blocked`,`t`.`Solucion` AS `solution`,`t`.`Id_Ruta` AS `path`,`t`.`Id_Ruta` AS `routeFk`,`t`.`empresa_id` AS `company`,`t`.`empresa_id` AS `companyFk`,`t`.`Id_Agencia` AS `agencyModeFk`,`t`.`Prioridad` AS `loadingOrder`,`t`.`odbc_date` AS `created`,`t`.`Fecha` AS `shipment`,`t`.`landing` AS `landing`,`t`.`Id_Cliente` AS `customer`,`t`.`warehouse_id` AS `warehouse`,`t`.`Id_Cliente` AS `client`,`t`.`Id_Consigna` AS `address`,`t`.`Id_Agencia` AS `agencyMode`,`t`.`Firmado` AS `signed`,`t`.`odbc_date` AS `creationDate` from `vn2008`.`Tickets` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticketObservation`
--
/*!50001 DROP VIEW IF EXISTS `ticketObservation`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticketObservation` AS select `to`.`ticket_observation_id` AS `id`,`to`.`Id_Ticket` AS `ticketFk`,`to`.`observation_type_id` AS `observationTypeFk`,`to`.`text` AS `description` from `vn2008`.`ticket_observation` `to` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticketState`
--
/*!50001 DROP VIEW IF EXISTS `ticketState`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticketState` AS select `ts`.`Id_Ticket` AS `ticketFk`,`ts`.`Id_Ticket` AS `ticket`,`s`.`id` AS `state`,`s`.`order` AS `productionOrder`,`s`.`alert_level` AS `alertLevel`,`s`.`code` AS `code`,`i`.`Id_Trabajador` AS `worker`,`i`.`Id_Trabajador` AS `workerFk` from ((`vn2008`.`Tickets_state` `ts` join `vncontrol`.`inter` `i` on((`i`.`inter_id` = `ts`.`inter_id`))) join `vn2008`.`state` `s` on((`s`.`id` = `i`.`state_id`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticketStateToday`
--
/*!50001 DROP VIEW IF EXISTS `ticketStateToday`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticketStateToday` AS select `ts`.`ticket` AS `ticket`,`ts`.`state` AS `state`,`ts`.`productionOrder` AS `productionOrder`,`ts`.`alertLevel` AS `alertLevel`,`ts`.`worker` AS `worker`,`ts`.`code` AS `code` from (`vn`.`ticketState` `ts` join `vn`.`ticket` `t` on((`t`.`id` = `ts`.`ticket`))) where (`t`.`shipment` between curdate() and `midnight`(curdate())) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticketTracking`
--
/*!50001 DROP VIEW IF EXISTS `ticketTracking`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticketTracking` AS select `i`.`inter_id` AS `id`,`i`.`state_id` AS `stateFk`,`i`.`odbc_date` AS `created`,`i`.`Id_Ticket` AS `ticketFk`,`i`.`Id_Trabajador` AS `workerFk` from `vncontrol`.`inter` `i` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `time`
--
/*!50001 DROP VIEW IF EXISTS `time`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `time` AS select `t`.`date` AS `dated`,`t`.`period` AS `period`,`t`.`month` AS `month`,`t`.`year` AS `year`,`t`.`day` AS `day`,`t`.`week` AS `week` from `vn2008`.`time` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `travel`
--
/*!50001 DROP VIEW IF EXISTS `travel`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `travel` AS select `t`.`id` AS `id`,`t`.`shipment` AS `shipped`,`t`.`shipment_hour` AS `shipmentHour`,`t`.`landing` AS `landed`,`t`.`landing_hour` AS `landingHour`,`t`.`warehouse_id` AS `warehouseInFk`,`t`.`warehouse_id_out` AS `warehouseOutFk`,`t`.`agency_id` AS `agencyFk`,`t`.`ref` AS `ref`,`t`.`delivered` AS `isDelivered`,`t`.`received` AS `isReceived`,`t`.`m3` AS `m3` from `vn2008`.`travel` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `unary`
--
/*!50001 DROP VIEW IF EXISTS `unary`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `unary` AS select `a`.`id` AS `id`,`a`.`parent` AS `parent` from `vn2008`.`unary` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `unaryScan`
--
/*!50001 DROP VIEW IF EXISTS `unaryScan`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `unaryScan` AS select `u`.`unary_id` AS `unaryFk`,`u`.`name` AS `name`,`u`.`odbc_date` AS `created`,`u`.`type` AS `type` from `vn2008`.`unary_scan` `u` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `unaryScanLine`
--
/*!50001 DROP VIEW IF EXISTS `unaryScanLine`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `unaryScanLine` AS select `u`.`id` AS `id`,`u`.`code` AS `code`,`u`.`odbc_date` AS `created`,`u`.`unary_id` AS `unaryScanFk` from `vn2008`.`unary_scan_line` `u` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `unaryScanLineBuy`
--
/*!50001 DROP VIEW IF EXISTS `unaryScanLineBuy`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `unaryScanLineBuy` AS select `u`.`scan_line_id` AS `unaryScanLineFk`,`u`.`Id_Article` AS `itemFk` from `vn2008`.`unary_scan_line_buy` `u` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `unaryScanLineExpedition`
--
/*!50001 DROP VIEW IF EXISTS `unaryScanLineExpedition`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `unaryScanLineExpedition` AS select `u`.`scan_line_id` AS `unaryScanLineFk`,`u`.`expedition_id` AS `expeditionFk` from `vn2008`.`unary_scan_line_expedition` `u` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `user`
--
/*!50001 DROP VIEW IF EXISTS `user`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `user` AS select `account`.`user`.`id` AS `id`,`account`.`user`.`name` AS `name`,`account`.`user`.`password` AS `password`,`account`.`user`.`role` AS `role`,`account`.`user`.`active` AS `active`,`account`.`user`.`recoverPass` AS `recoverPass`,`account`.`user`.`lastPassChange` AS `lastPassChange` from `account`.`user` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `vehicle`
--
/*!50001 DROP VIEW IF EXISTS `vehicle`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `vehicle` AS select `v`.`Id_Vehiculo` AS `id`,`v`.`Matricula` AS `numberPlate`,`v`.`Marca` AS `tradeMark`,`v`.`Modelo` AS `model`,`v`.`empresa_id` AS `companyFk`,`v`.`warehouseFk` AS `warehouseFk`,`v`.`description` AS `description`,`v`.`m3` AS `m3`,`v`.`active` AS `isActive` from `vn2008`.`Vehiculos` `v` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `warehouse`
--
/*!50001 DROP VIEW IF EXISTS `warehouse`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `warehouse` AS select `t`.`id` AS `id`,`t`.`name` AS `name`,`t`.`inventario` AS `isInventory`,`t`.`comisionantes` AS `hasComission` from `vn2008`.`warehouse` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `warehouseAlias`
--
/*!50001 DROP VIEW IF EXISTS `warehouseAlias`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `warehouseAlias` AS select `wa`.`warehouse_alias_id` AS `id`,`wa`.`alias` AS `name` from `vn2008`.`warehouse_alias` `wa` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `worker`
--
/*!50001 DROP VIEW IF EXISTS `worker`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `worker` AS select `t`.`Id_Trabajador` AS `id`,`t`.`CodigoTrabajador` AS `workerCode`,`t`.`Nombre` AS `firstName`,`t`.`Apellidos` AS `name`,`t`.`user_id` AS `userFk`,`t`.`boss` AS `bossFk` from `vn2008`.`Trabajadores` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `workerTeam`
--
/*!50001 DROP VIEW IF EXISTS `workerTeam`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `workerTeam` AS select `w`.`team` AS `team`,`w`.`user` AS `user`,`w`.`id` AS `id`,`t`.`Id_Trabajador` AS `Id_Trabajador` from (`vn2008`.`workerTeam` `w` left join `vn2008`.`Trabajadores` `t` on((`t`.`user_id` = `w`.`user`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Current Database: `salix`
--
USE `salix`;
--
-- Final view structure for view `Account`
--
/*!50001 DROP VIEW IF EXISTS `Account`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Account` AS select `u`.`id` AS `id`,`u`.`name` AS `name`,`u`.`password` AS `password`,`u`.`role` AS `roleFk`,`u`.`active` AS `active`,`u`.`email` AS `email`,`u`.`created` AS `created`,`u`.`updated` AS `updated` from `account`.`user` `u` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Accounting`
--
/*!50001 DROP VIEW IF EXISTS `Accounting`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Accounting` AS select `b`.`Id_Banco` AS `id`,`b`.`Banco` AS `bank`,`b`.`Cuenta` AS `account`,`b`.`cash` AS `accountingTypeFk`,`b`.`entity_id` AS `entityFk`,`b`.`activo` AS `isActive` from `vn2008`.`Bancos` `b` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Address`
--
/*!50001 DROP VIEW IF EXISTS `Address`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Address` AS select `a`.`id_consigna` AS `id`,`a`.`consignatario` AS `consignee`,`a`.`domicilio` AS `street`,`a`.`poblacion` AS `city`,`a`.`codPostal` AS `postcode`,`a`.`province_id` AS `provinceFk`,`a`.`telefono` AS `phone`,`a`.`movil` AS `mobile`,`a`.`active` AS `isEnabled`,`a`.`predeterminada` AS `isDefaultAddress`,`a`.`Id_cliente` AS `clientFk`,`a`.`Id_Agencia` AS `defaultAgencyFk`,`a`.`longitude` AS `longitude`,`a`.`latitude` AS `latitude`,`a`.`isEqualizated` AS `isEqualizated` from `vn2008`.`Consignatarios` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Agency`
--
/*!50001 DROP VIEW IF EXISTS `Agency`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Agency` AS select `a`.`agency_id` AS `id`,`a`.`name` AS `name`,`a`.`warehouse_id` AS `warehouseFk`,`a`.`por_volumen` AS `isVolumetric`,`a`.`Id_Banco` AS `bankFk`,`a`.`warehouse_alias_id` AS `warehouseAliasFk` from `vn2008`.`agency` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `AgencyMode`
--
/*!50001 DROP VIEW IF EXISTS `AgencyMode`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `AgencyMode` AS select `a`.`Id_Agencia` AS `id`,`a`.`Agencia` AS `name`,`a`.`description` AS `description`,`a`.`Vista` AS `agencyTypeFk`,`a`.`m3` AS `m3`,`a`.`agency_id` AS `agencyFk`,`a`.`inflacion` AS `inflation`,`a`.`send_mail` AS `sendMailTo`,`a`.`tpv` AS `isForTicket` from `vn2008`.`Agencias` `a` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Bank`
--
/*!50001 DROP VIEW IF EXISTS `Bank`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Bank` AS select `b`.`Id_Banco` AS `id`,`b`.`Banco` AS `bank`,`b`.`Cuenta` AS `account`,`b`.`cash` AS `cash`,`b`.`entity_id` AS `entityFk`,`b`.`activo` AS `isActive` from `vn2008`.`Bancos` `b` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `City`
--
/*!50001 DROP VIEW IF EXISTS `City`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `City` AS select `c`.`city_id` AS `id`,`c`.`name` AS `name`,`c`.`province_id` AS `provinceFk` from `vn2008`.`city` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Client`
--
/*!50001 DROP VIEW IF EXISTS `Client`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Client` AS select `c`.`id_cliente` AS `id`,`c`.`cliente` AS `name`,`c`.`if` AS `fi`,`c`.`razonSocial` AS `socialName`,`c`.`contacto` AS `contact`,`c`.`domicilio` AS `street`,`c`.`poblacion` AS `city`,`c`.`codPostal` AS `postcode`,`c`.`province_id` AS `provinceFk`,`c`.`Id_Pais` AS `countryFk`,`c`.`e-mail` AS `email`,`c`.`telefono` AS `phone`,`c`.`movil` AS `mobile`,`c`.`fax` AS `fax`,`c`.`activo` AS `active`,`c`.`descuento` AS `discount`,`c`.`credito` AS `credit`,`c`.`creditInsurance` AS `creditInsurance`,`c`.`cc` AS `iban`,`c`.`vencimiento` AS `dueDay`,`c`.`RE` AS `equalizationTax`,`c`.`invoice` AS `hasToInvoice`,`c`.`mail` AS `isToBeMailed`,`c`.`pay_met_id` AS `payMethodFk`,`c`.`Id_Trabajador` AS `salesPersonFk`,`c`.`chanel_id` AS `contactChannelFk`,`c`.`sepaVnl` AS `sepaVnl`,`c`.`coreVnl` AS `coreVnl`,`c`.`coreVnh` AS `coreVnh`,`c`.`EYPBC` AS `eypbc`,`c`.`calidad` AS `quality`,`c`.`vies` AS `vies`,`c`.`real` AS `isRelevant`,`c`.`clientes_tipo_id` AS `typeFk`,`c`.`Cuenta` AS `accountingAccount`,`c`.`created` AS `created` from `vn2008`.`Clientes` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ClientCredit`
--
/*!50001 DROP VIEW IF EXISTS `ClientCredit`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ClientCredit` AS select `c`.`id` AS `id`,`c`.`Id_Cliente` AS `clientFk`,`c`.`Id_Trabajador` AS `employeeFk`,`c`.`amount` AS `amount`,`c`.`odbc_date` AS `created` from `vn2008`.`credit` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ClientCreditLimit`
--
/*!50001 DROP VIEW IF EXISTS `ClientCreditLimit`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ClientCreditLimit` AS select `l`.`id` AS `id`,`l`.`maxAmount` AS `maxAmount`,`l`.`roleFk` AS `roleFk` from `vn`.`clientCreditLimit` `l` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ClientObservation`
--
/*!50001 DROP VIEW IF EXISTS `ClientObservation`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ClientObservation` AS select `o`.`client_observation_id` AS `id`,`o`.`Id_Cliente` AS `clientFk`,`o`.`Id_Trabajador` AS `employeeFk`,`o`.`text` AS `text`,`o`.`odbc_date` AS `created` from `vn2008`.`client_observation` `o` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ClientType`
--
/*!50001 DROP VIEW IF EXISTS `ClientType`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ClientType` AS select `ct`.`clientes_tipo_id` AS `id`,`ct`.`code` AS `code`,`ct`.`tipo` AS `type` from `vn2008`.`clientes_tipo` `ct` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ContactChannel`
--
/*!50001 DROP VIEW IF EXISTS `ContactChannel`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ContactChannel` AS select `c`.`chanel_id` AS `id`,`c`.`name` AS `name` from `vn2008`.`chanel` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Country`
--
/*!50001 DROP VIEW IF EXISTS `Country`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Country` AS select `c`.`Id` AS `id`,`c`.`Pais` AS `name`,`c`.`CEE` AS `inCee`,`c`.`Codigo` AS `code`,`c`.`Id_Moneda` AS `currencyFk`,`c`.`Id_Paisreal` AS `realCountryFk` from `vn2008`.`Paises` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `CreditClassification`
--
/*!50001 DROP VIEW IF EXISTS `CreditClassification`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `CreditClassification` AS select `vn`.`creditClassification`.`id` AS `id`,`vn`.`creditClassification`.`client` AS `clientFk`,`vn`.`creditClassification`.`dateStart` AS `started`,`vn`.`creditClassification`.`dateEnd` AS `ended` from `vn`.`creditClassification` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Employee`
--
/*!50001 DROP VIEW IF EXISTS `Employee`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Employee` AS select `e`.`Id_Trabajador` AS `id`,`e`.`Nombre` AS `name`,`e`.`Apellidos` AS `surname`,`e`.`user_id` AS `userFk` from `vn2008`.`Trabajadores` `e` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `PayMethod`
--
/*!50001 DROP VIEW IF EXISTS `PayMethod`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `PayMethod` AS select `m`.`id` AS `id`,`m`.`name` AS `name`,`m`.`graceDays` AS `graceDays`,`m`.`deudaviva` AS `outstandingDebt`,`m`.`ibanRequired` AS `ibanRequired` from `vn2008`.`pay_met` `m` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Province`
--
/*!50001 DROP VIEW IF EXISTS `Province`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Province` AS select `p`.`province_id` AS `id`,`p`.`name` AS `name`,`p`.`Paises_Id` AS `countryFk`,`p`.`warehouse_id` AS `warehouseFk`,`p`.`zone` AS `zoneFk` from `vn2008`.`province` `p` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Role`
--
/*!50001 DROP VIEW IF EXISTS `Role`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Role` AS select `r`.`id` AS `id`,`r`.`name` AS `name`,`r`.`description` AS `description`,`r`.`created` AS `created`,`r`.`modified` AS `modified` from `account`.`role` `r` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `RoleMapping`
--
/*!50001 DROP VIEW IF EXISTS `RoleMapping`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `RoleMapping` AS select ((`u`.`id` * 1000) + `r`.`inheritsFrom`) AS `id`,'USER' AS `principalType`,`u`.`id` AS `principalId`,`r`.`inheritsFrom` AS `roleId` from (`account`.`user` `u` join `account`.`roleRole` `r` on((`r`.`role` = `u`.`role`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Route`
--
/*!50001 DROP VIEW IF EXISTS `Route`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Route` AS select `r`.`Id_Ruta` AS `id`,`r`.`Fecha` AS `date` from `vn2008`.`Rutas` `r` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `State`
--
/*!50001 DROP VIEW IF EXISTS `State`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `State` AS select `s`.`id` AS `id`,`s`.`name` AS `name`,`s`.`order` AS `order`,`s`.`alert_level` AS `alertLevel`,`s`.`code` AS `code` from `vn2008`.`state` `s` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Ticket`
--
/*!50001 DROP VIEW IF EXISTS `Ticket`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Ticket` AS select `t`.`Id_Ticket` AS `id`,`t`.`Id_Agencia` AS `agencyFk`,`t`.`Id_Trabajador` AS `employeeFk`,`t`.`Fecha` AS `date`,`t`.`Hora` AS `hour`,`t`.`Id_Cliente` AS `clientFk`,`t`.`Id_Consigna` AS `addressFk` from `vn2008`.`Tickets` `t` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `TicketState`
--
/*!50001 DROP VIEW IF EXISTS `TicketState`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `TicketState` AS select `i`.`inter_id` AS `id`,`i`.`Id_Ticket` AS `ticketFk`,`i`.`state_id` AS `stateFk`,`i`.`Id_Trabajador` AS `employeeFk`,`i`.`odbc_date` AS `updated` from `vncontrol`.`inter` `i` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Vehicle`
--
/*!50001 DROP VIEW IF EXISTS `Vehicle`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Vehicle` AS select `v`.`Id_Vehiculo` AS `id`,`v`.`Matricula` AS `numberPlate`,`v`.`Marca` AS `tradeMark`,`v`.`Modelo` AS `model`,`v`.`empresa_id` AS `companyFk`,`v`.`warehouseFk` AS `warehouseFk`,`v`.`description` AS `description`,`v`.`m3` AS `m3`,`v`.`active` AS `isActive` from `vn2008`.`Vehiculos` `v` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Warehouse`
--
/*!50001 DROP VIEW IF EXISTS `Warehouse`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Warehouse` AS select `w`.`id` AS `id`,`w`.`name` AS `name`,`w`.`tpv` AS `tpv`,`w`.`inventario` AS `inventory`,`w`.`isManaged` AS `isManaged` from `vn2008`.`warehouse` `w` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `WarehouseAlias`
--
/*!50001 DROP VIEW IF EXISTS `WarehouseAlias`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `WarehouseAlias` AS select `wa`.`warehouse_alias_id` AS `id`,`wa`.`alias` AS `name` from `vn2008`.`warehouse_alias` `wa` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Worker`
--
/*!50001 DROP VIEW IF EXISTS `Worker`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Worker` AS select `e`.`Id_Trabajador` AS `id`,`e`.`Nombre` AS `name`,`e`.`Apellidos` AS `surname`,`e`.`user_id` AS `userFk` from `vn2008`.`Trabajadores` `e` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `Zone`
--
/*!50001 DROP VIEW IF EXISTS `Zone`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `Zone` AS select `z`.`zone_id` AS `id`,`z`.`name` AS `name`,`z`.`printingOrder` AS `printingOrder` from `vn2008`.`zones` `z` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Current Database: `bs`
--
USE `bs`;
--
-- Final view structure for view `VentasPorCliente`
--
/*!50001 DROP VIEW IF EXISTS `VentasPorCliente`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `VentasPorCliente` AS select `v`.`Id_Cliente` AS `Id_Cliente`,round(sum(`v`.`importe`),0) AS `VentaBasica`,`t`.`year` AS `year`,`t`.`month` AS `month` from (`vn2008`.`time` `t` join `bs`.`ventas` `v` on((`v`.`fecha` = `t`.`date`))) group by `v`.`Id_Cliente`,`t`.`year`,`t`.`month` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `v_ventas`
--
/*!50001 DROP VIEW IF EXISTS `v_ventas`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `v_ventas` AS select (`bs`.`ventas`.`importe` * `vn2008`.`Movimientos`.`Cantidad`) AS `importe`,`bs`.`ventas`.`recargo` AS `recargo`,`vn2008`.`time`.`year` AS `year`,`vn2008`.`time`.`month` AS `month`,`vn2008`.`time`.`week` AS `week`,`vn2008`.`time`.`day` AS `day` from ((`bs`.`ventas` join `vn2008`.`time` on((`vn2008`.`time`.`date` = `bs`.`ventas`.`fecha`))) join `vn2008`.`Movimientos` on((`bs`.`ventas`.`Id_Movimiento` = `vn2008`.`Movimientos`.`Id_Movimiento`))) group by `vn2008`.`time`.`date` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Current Database: `account`
--
USE `account`;
--
-- Final view structure for view `accountDovecot`
--
/*!50001 DROP VIEW IF EXISTS `accountDovecot`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `accountDovecot` AS select `u`.`name` AS `name`,`u`.`password` AS `password` from (`user` `u` join `account` `a` on((`a`.`id` = `u`.`id`))) where `u`.`active` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `accountNss`
--
/*!50001 DROP VIEW IF EXISTS `accountNss`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `accountNss` AS select `u`.`name` AS `surname`,`u`.`name` AS `name`,`u`.`password` AS `password`,concat(`c`.`homedir`,'/',`u`.`name`) AS `home`,`c`.`shell` AS `shell`,`c`.`min` AS `min`,`c`.`max` AS `max`,`c`.`warn` AS `warn`,`c`.`inact` AS `inact` from ((`user` `u` join `account` `a` on((`u`.`id` = `a`.`id`))) join `accountConfig` `c`) where (`u`.`active` <> 0) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `accountPam`
--
/*!50001 DROP VIEW IF EXISTS `accountPam`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `accountPam` AS select `u`.`name` AS `name`,`u`.`password` AS `password` from (`user` `u` join `account` `a` on((`u`.`id` = `a`.`id`))) where (`u`.`active` <> 0) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `userRole`
--
/*!50001 DROP VIEW IF EXISTS `userRole`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `userRole` AS select `r`.`inheritsFrom` AS `id` from (`roleRole` `r` join `user` `u` on((`u`.`role` = `r`.`role`))) where (`u`.`id` = `USERGETID`()) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `userView`
--
/*!50001 DROP VIEW IF EXISTS `userView`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `userView` AS select `u`.`id` AS `id`,`u`.`name` AS `name`,`u`.`active` AS `active`,`u`.`email` AS `email`,`u`.`role` AS `role`,`u`.`recoverPass` AS `recoverPass` from `user` `u` where (`u`.`name` = `account`.`userGetName`()) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Current Database: `cache`
--
USE `cache`;
--
-- Current Database: `pbx`
--
USE `pbx`;
--
-- Final view structure for view `cdrConf`
--
/*!50001 DROP VIEW IF EXISTS `cdrConf`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `cdrConf` AS select `c`.`call_date` AS `calldate`,`c`.`clid` AS `clid`,`c`.`src` AS `src`,`c`.`dst` AS `dst`,`c`.`dcontext` AS `dcontext`,`c`.`channel` AS `channel`,`c`.`dst_channel` AS `dstchannel`,`c`.`last_app` AS `lastapp`,`c`.`last_data` AS `lastdata`,`c`.`duration` AS `duration`,`c`.`billsec` AS `billsec`,`c`.`disposition` AS `disposition`,`c`.`ama_flags` AS `amaflags`,`c`.`account_code` AS `accountcode`,`c`.`unique_id` AS `uniqueid`,`c`.`user_field` AS `userfield` from `cdr` `c` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `followmeConf`
--
/*!50001 DROP VIEW IF EXISTS `followmeConf`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `followmeConf` AS select `f`.`extension` AS `name`,`c`.`music` AS `music`,`c`.`context` AS `context`,`c`.`takeCall` AS `takecall`,`c`.`declineCall` AS `declinecall` from (`followme` `f` join `followmeConfig` `c`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `followmeNumberConf`
--
/*!50001 DROP VIEW IF EXISTS `followmeNumberConf`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `followmeNumberConf` AS select `f`.`extension` AS `name`,1 AS `ordinal`,`f`.`phone` AS `phonenumber`,`c`.`timeout` AS `timeout` from (`followme` `f` join `followmeConfig` `c`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `queueConf`
--
/*!50001 DROP VIEW IF EXISTS `queueConf`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `queueConf` AS select `q`.`name` AS `name`,`c`.`strategy` AS `strategy`,`c`.`timeout` AS `timeout`,`c`.`retry` AS `retry`,`c`.`weight` AS `weight`,`c`.`maxLen` AS `maxlen`,`c`.`ringInUse` AS `ringinuse` from (`queue` `q` join `queueConfig` `c` on((`q`.`config` = `c`.`id`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `queueMemberConf`
--
/*!50001 DROP VIEW IF EXISTS `queueMemberConf`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `queueMemberConf` AS select `m`.`id` AS `uniqueid`,`m`.`queue` AS `queue_name`,concat('SIP/',`m`.`extension`) AS `interface` from `queueMember` `m` union all select `p`.`id` AS `id`,`p`.`queue` AS `queue`,concat('Local/',`p`.`phone`,'@outgoing') AS `phone` from `queuePhone` `p` */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `sipConf`
--
/*!50001 DROP VIEW IF EXISTS `sipConf`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `sipConf` AS select `s`.`user_id` AS `id`,`s`.`extension` AS `name`,`s`.`secret` AS `secret`,`s`.`caller_id` AS `callerid`,`c`.`host` AS `host`,`c`.`deny` AS `deny`,`c`.`permit` AS `permit`,`c`.`type` AS `type`,`c`.`context` AS `context`,`c`.`incomingLimit` AS `incominglimit`,`c`.`pickupGroup` AS `pickupgroup`,`c`.`careInvite` AS `careinvite`,`r`.`ipAddr` AS `ipaddr`,`r`.`regSeconds` AS `regseconds`,`r`.`port` AS `port`,`r`.`defaultUser` AS `defaultuser`,`r`.`userAgent` AS `useragent`,`r`.`lastMs` AS `lastms`,`r`.`fullContact` AS `fullcontact`,`r`.`regServer` AS `regserver` from ((`sip` `s` left join `sipReg` `r` on((`s`.`user_id` = `r`.`userId`))) join `sipConfig` `c`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Current Database: `hedera`
--
USE `hedera`;
--
-- Final view structure for view `address_view`
--
/*!50001 DROP VIEW IF EXISTS `address_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `address_view` AS select `a`.`id_consigna` AS `id`,`a`.`Id_cliente` AS `customer_id`,`a`.`warehouse_id` AS `warehouse_id`,`a`.`domicilio` AS `name`,`a`.`poblacion` AS `city`,`a`.`province_id` AS `province_id`,`a`.`codPostal` AS `zip_code`,`a`.`consignatario` AS `consignee`,`a`.`predeterminada` AS `default`,`a`.`Id_Agencia` AS `type_id`,`a`.`especificaciones` AS `specs`,`a`.`seguro` AS `insurance`,`a`.`porte` AS `postage`,`a`.`active` AS `active` from `vn2008`.`Consignatarios` `a` where (`a`.`Id_cliente` = `account`.`userGetId`()) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `basket`
--
/*!50001 DROP VIEW IF EXISTS `basket`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `basket` AS select `o`.`id` AS `id`,`o`.`date_make` AS `date_make`,`o`.`date_send` AS `date_send`,`o`.`customer_id` AS `customer_id`,`o`.`delivery_method_id` AS `delivery_method_id`,`o`.`agency_id` AS `agency_id`,`o`.`address_id` AS `address_id`,`o`.`company_id` AS `company_id`,`o`.`note` AS `note` from `hedera`.`order` `o` where (`o`.`id` = `basketGetId`()) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `basket_defaults`
--
/*!50001 DROP VIEW IF EXISTS `basket_defaults`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `basket_defaults` AS select `ad`.`id_consigna` AS `address_id`,`ad`.`Id_Agencia` AS `agency_id`,`v`.`code` AS `delivery_method` from (((`vn2008`.`Clientes` `c` left join `vn2008`.`Consignatarios` `ad` on((`ad`.`id_consigna` = `c`.`default_address`))) join `vn2008`.`Agencias` `a` on((`a`.`Id_Agencia` = `ad`.`Id_Agencia`))) join `vn2008`.`Vistas` `v` on((`v`.`vista_id` = `a`.`Vista`))) where (`c`.`id_cliente` = `account`.`userGetId`()) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `basket_item`
--
/*!50001 DROP VIEW IF EXISTS `basket_item`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `basket_item` AS select `r`.`id` AS `id`,`r`.`order_id` AS `order_id`,`r`.`warehouse_id` AS `warehouse_id`,`r`.`item_id` AS `item_id`,`r`.`amount` AS `amount`,`r`.`price` AS `price` from `hedera`.`order_row` `r` where (`r`.`order_id` = `basketGetId`()) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `customer_user`
--
/*!50001 DROP VIEW IF EXISTS `customer_user`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `customer_user` AS select `c`.`id_cliente` AS `user_id`,`c`.`cliente` AS `name` from `vn2008`.`Clientes` `c` where (`c`.`id_cliente` = `account`.`userGetId`()) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `customer_view`
--
/*!50001 DROP VIEW IF EXISTS `customer_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `customer_view` AS select `c`.`id_cliente` AS `user_id`,`c`.`cliente` AS `name`,`c`.`e-mail` AS `email`,`c`.`mail` AS `mail`,`c`.`default_address` AS `default_address`,`c`.`credito` AS `credit` from `vn2008`.`Clientes` `c` where (`c`.`id_cliente` = `account`.`userGetId`()) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `invoice_view`
--
/*!50001 DROP VIEW IF EXISTS `invoice_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `invoice_view` AS select `i`.`factura_id` AS `invoice_id`,`i`.`Id_Factura` AS `serial_num`,`i`.`Fecha` AS `issued`,`i`.`Importe` AS `amount` from `vn2008`.`Facturas` `i` where ((`i`.`Id_Cliente` = `account`.`userGetId`()) and `i`.`pdf`) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `order_confirm_time`
--
/*!50001 DROP VIEW IF EXISTS `order_confirm_time`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `order_confirm_time` AS select `o`.`date_make` AS `date_make`,`o`.`source_app` AS `source_app`,`o`.`customer_id` AS `customer_id`,`o`.`confirm_date` AS `confirm_date`,`o`.`first_row_stamp` AS `first_row_stamp`,(ceiling((((unix_timestamp(`o`.`confirm_date`) - unix_timestamp(`o`.`first_row_stamp`)) / 60) / 5)) * 5) AS `minutos` from `order` `o` where ((`o`.`confirm_date` is not null) and (`o`.`first_row_stamp` is not null)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `order_row_view`
--
/*!50001 DROP VIEW IF EXISTS `order_row_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `order_row_view` AS select `r`.`id` AS `id`,`r`.`order_id` AS `order_id`,`r`.`warehouse_id` AS `warehouse_id`,`r`.`item_id` AS `item_id`,`r`.`amount` AS `amount`,`r`.`price` AS `price2` from `hedera`.`order_row` `r` where `r`.`order_id` in (select `order_view`.`id` AS `id` from `hedera`.`order_view`) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `order_view`
--
/*!50001 DROP VIEW IF EXISTS `order_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `order_view` AS select `o`.`id` AS `id`,`o`.`date_make` AS `date_make`,`o`.`date_send` AS `date_send`,`o`.`customer_id` AS `customer_id`,`o`.`delivery_method_id` AS `delivery_method_id`,`o`.`agency_id` AS `agency_id`,`o`.`note` AS `note`,`o`.`address_id` AS `address_id`,`o`.`company_id` AS `company_id` from `hedera`.`order` `o` where ((`o`.`customer_id` = `account`.`userGetId`()) and (`o`.`is_bionic` = 0)) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticket_row_view`
--
/*!50001 DROP VIEW IF EXISTS `ticket_row_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticket_row_view` AS select `m`.`Id_Movimiento` AS `id`,`m`.`Id_Article` AS `item_id`,`m`.`Id_Ticket` AS `ticket_id`,`m`.`Concepte` AS `concept`,`m`.`Cantidad` AS `amount`,`m`.`Preu` AS `price`,`m`.`PrecioFijado` AS `fixed`,`m`.`Descuento` AS `discount`,`m`.`CostFixat` AS `cost`,`m`.`Reservado` AS `reserved`,`m`.`OK` AS `ok` from (`vn2008`.`Movimientos` `m` join `hedera`.`ticket_view` `t` on((`m`.`Id_Ticket` = `t`.`id`))) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `ticket_view`
--
/*!50001 DROP VIEW IF EXISTS `ticket_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `ticket_view` AS select `t`.`Id_Ticket` AS `id`,`t`.`Id_Cliente` AS `customer_id`,`t`.`warehouse_id` AS `warehouse_id`,`t`.`Fecha` AS `date`,`t`.`landing` AS `delivery`,`t`.`Alias` AS `alias`,`t`.`Id_Agencia` AS `agency_id`,`t`.`Notas` AS `note`,`t`.`Factura` AS `invoice`,`t`.`Id_Consigna` AS `address_id`,`t`.`Id_Trabajador` AS `employee_id`,`t`.`Observaciones` AS `comments`,`t`.`Firmado` AS `signed`,`t`.`Bultos` AS `packages`,`t`.`Localizacion` AS `location`,`t`.`Hora` AS `hour`,`t`.`blocked` AS `blocked`,`t`.`Solucion` AS `solution`,`t`.`empresa_id` AS `company_id`,`a`.`Agencia` AS `type` from (`vn2008`.`Tickets` `t` join `vn2008`.`Agencias` `a` on((`t`.`Id_Agencia` = `a`.`Id_Agencia`))) where (`t`.`Id_Cliente` = `account`.`userGetId`()) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `tpv_transaction_view`
--
/*!50001 DROP VIEW IF EXISTS `tpv_transaction_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `tpv_transaction_view` AS select `t`.`id` AS `id`,`t`.`merchant_id` AS `merchant_id`,`t`.`customer_id` AS `customer_id`,`t`.`receipt_id` AS `receipt_id`,`t`.`amount` AS `amount`,`t`.`response` AS `response`,`t`.`status` AS `status`,`t`.`date_time` AS `date_time` from `hedera`.`tpv_transaction` `t` where (`t`.`customer_id` = `account`.`userGetId`()) */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
--
-- Final view structure for view `user_android_view`
--
/*!50001 DROP VIEW IF EXISTS `user_android_view`*/;
/*!50001 SET @saved_cs_client = @@character_set_client */;
/*!50001 SET @saved_cs_results = @@character_set_results */;
/*!50001 SET @saved_col_connection = @@collation_connection */;
/*!50001 SET character_set_client = utf8 */;
/*!50001 SET character_set_results = utf8 */;
/*!50001 SET collation_connection = utf8_general_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `user_android_view` AS select `a`.`user_id` AS `user_id`,`a`.`android_id` AS `android_id` from `hedera`.`user_android` `a` where (`a`.`user_id` = `account`.`userGetId`()) */
/*!50002 WITH CASCADED CHECK OPTION */;
/*!50001 SET character_set_client = @saved_cs_client */;
/*!50001 SET character_set_results = @saved_cs_results */;
/*!50001 SET collation_connection = @saved_col_connection */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2017-12-18 14:16:38