80 lines
2.1 KiB
SQL
80 lines
2.1 KiB
SQL
DELIMITER $$
|
|
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn2008`.`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) Entrada
|
|
, IF(Cantidad < 0, NULL, Cantidad) Salida
|
|
, 'T' Tabla
|
|
, t.id Registro
|
|
, t.shipped Fecha
|
|
, w.name Almacen
|
|
, cast(Preu as Decimal(5,2)) Precio
|
|
, c.Cliente Proveedor
|
|
, abbreviation Empresa
|
|
FROM Movimientos m
|
|
JOIN Articles a using(Id_Article)
|
|
JOIN vn.ticket t ON t.id = m.Id_Ticket
|
|
JOIN empresa e ON e.id = t.companyFk
|
|
JOIN vn.warehouse w ON w.id = t.warehouseFk
|
|
JOIN Consignatarios cs ON cs.Id_Consigna = t.addressFk
|
|
JOIN Clientes c ON c.Id_Cliente = cs.Id_Cliente
|
|
WHERE cs.Id_Cliente = idPEOPLE
|
|
AND m.Id_Article = idARTICLE
|
|
AND t.shipped > '2010-01-01';
|
|
|
|
ELSE
|
|
|
|
SELECT Id_Article,
|
|
Tabla,
|
|
Registro,
|
|
Fecha,
|
|
Article,
|
|
w.name Almacen,
|
|
Entrada,
|
|
Salida,
|
|
Proveedor,
|
|
cast(Precio as Decimal(5,2)) Precio
|
|
FROM
|
|
(SELECT Id_Article
|
|
, IF(Cantidad > 0, Cantidad, NULL) Entrada
|
|
, IF(Cantidad > 0, NULL,- Cantidad) Salida
|
|
, 'E' Tabla
|
|
, Id_Entrada Registro
|
|
, landing Fecha
|
|
, tr.warehouse_id
|
|
, Costefijo 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) Entrada
|
|
, IF(Cantidad < 0, NULL, Cantidad) Salida
|
|
, 'T'
|
|
, Id_Ticket
|
|
, Fecha
|
|
, t.warehouseFk warehouse_id
|
|
, Preu
|
|
FROM Movimientos m
|
|
JOIN vn.ticket t ON t.id = m.Id_Ticket
|
|
JOIN Consignatarios cs ON cs.Id_Consigna = t.addressFk
|
|
JOIN proveedores_clientes pc ON pc.Id_Cliente = cs.Id_Cliente
|
|
WHERE Id_Proveedor = idPEOPLE
|
|
AND Id_Article = idARTICLE
|
|
AND t.shipped > '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 ;
|