You are on page 1of 7

WITH VIVO_STOCK_PE AS(

SELECT

p.warehouseId warehouse_id,

sr.sku,

CONCAT(p.warehouseId,'_',sr.sku) as KEY_ID,

sr.name sku_description,

SUM(p.stock) current_stock

FROM

FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Product p

INNER JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.StoreReference sr ON


p.storeReferenceId = sr.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Warehouse w ON p.warehouseId =


w.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Location l ON w.locationId = l.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.City c ON l.cityId = c.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Country pe ON c.countryId = pe.id

WHERE p.deletedAt IS NULL

AND pe.countryISOcode = 'PE'

GROUP BY p.warehouseId,sr.name, sr.sku, CONCAT(p.warehouseId,sr.sku)

), VIVO_SALES_PE_ALL AS (

SELECT DISTINCT

o.warehouseId warehouse_id,

od.sku sku,

CONCAT(o.warehouseId,'_',od.sku) key_id,

sr.name sku_description,

SUM(od.quantity) quantity

FROM
FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.OrderDetail od

INNER JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API."ORDER" o ON od.orderId = o.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.StoreReference sr ON


od.STOREREFERENCEID = sr.Id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Warehouse w ON o.warehouseId =


w.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Location l ON w.locationId = l.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.City c ON l.cityId = c.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Country co ON c.countryId = co.id

WHERE o.statusId = 5

AND od.quantity > 0

AND co.countryISOcode = 'PE'

GROUP BY o.warehouseId, od.sku, CONCAT(o.warehouseId,'_',od.sku),sr.name

ORDER BY warehouse_id

),

VIVO_SALES_PE_14 AS (

SELECT DISTINCT

o.warehouseId warehouse_id,

od.sku sku,

CONCAT(o.warehouseId,'_',od.sku) key_id,

sr.name sku_description,

SUM(od.quantity) quantity

FROM

FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.OrderDetail od

INNER JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API."ORDER" o ON od.orderId = o.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.StoreReference sr ON


od.STOREREFERENCEID = sr.Id
LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Warehouse w ON o.warehouseId =
w.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Location l ON w.locationId = l.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.City c ON l.cityId = c.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Country co ON c.countryId = co.id

WHERE o.statusId = 5

AND od.quantity > 0

AND od.createdAt >= DATEADD(day, -14, CAST(GETDATE() AS date)) AND od.createdAt <
CURRENT_DATE() --OMIT TODAY;

AND co.countryISOcode = 'PE'

GROUP BY o.warehouseId, od.sku, CONCAT(o.warehouseId,'_',od.sku),sr.name

ORDER BY warehouse_id

),

VIVO_KEY_ID_CROSS AS (

WITH a AS (

SELECT DISTINCT ID

FROM FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Warehouse

WHERE LOCATIONID = 15

AND ID NOT IN ('251','98')

),

b AS (

SELECT DISTINCT sku

FROM FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.StoreReference

WHERE CHIPERMERCHANTID = 15

SELECT a.ID, b.sku, CONCAT(a.ID,'_',b.sku) as key_id

FROM a

CROSS JOIN b
),

VIVO_SALES_PE_7 AS (

SELECT DISTINCT

o.warehouseId warehouse_id,

od.sku sku,

CONCAT(o.warehouseId,'_',od.sku) key_id,

sr.name sku_description,

SUM(od.quantity) quantity

FROM

FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.OrderDetail od

INNER JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API."ORDER" o ON od.orderId = o.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.StoreReference sr ON


od.STOREREFERENCEID = sr.Id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Warehouse w ON o.warehouseId =


w.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Location l ON w.locationId = l.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.City c ON l.cityId = c.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Country co ON c.countryId = co.id

WHERE o.statusId = 5

AND od.quantity > 0

AND od.createdAt >= DATEADD(day, -7, CAST(GETDATE() AS date)) AND od.createdAt <
CURRENT_DATE() --OMIT TODAY;

AND co.countryISOcode = 'PE'

GROUP BY o.warehouseId, od.sku, CONCAT(o.warehouseId,'_',od.sku),sr.name

ORDER BY warehouse_id

),
VIVO_SALES_PE_YESTERDAY AS (

SELECT DISTINCT

o.warehouseId warehouse_id,

od.sku sku,

CONCAT(o.warehouseId,'_',od.sku) key_id,

sr.name sku_description,

SUM(od.quantity) quantity

FROM

FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.OrderDetail od

INNER JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API."ORDER" o ON od.orderId = o.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.StoreReference sr ON


od.STOREREFERENCEID = sr.Id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Warehouse w ON o.warehouseId =


w.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Location l ON w.locationId = l.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.City c ON l.cityId = c.id

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Country co ON c.countryId = co.id

WHERE o.statusId = 5

AND od.quantity > 0

AND od.createdAt >= DATEADD(day, -1, CAST(GETDATE() AS date)) AND od.createdAt <
CURRENT_DATE() --OMIT TODAY;

AND co.countryISOcode = 'PE'

GROUP BY o.warehouseId, od.sku, CONCAT(o.warehouseId,'_',od.sku),sr.name

ORDER BY warehouse_id

),

VIVO_TRANSITO_PE AS(

SELECT
pod.sku sku,

po.warehouseId warehouse_id,

CONCAT(po.warehouseId,'_',pod.sku) as key_id,

sr.name sku_description,

sum(pod.quantity) incoming_stock

FROM

FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.PurchaseOrderDetail pod

JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.PurchaseOrder po ON
pod.purchaseOrderId = po.id

JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.StoreReference sr ON
pod.STOREREFERENCEID = sr.Id

JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.PurchaseOrderStatus pos ON po.statusId


= pos.id

WHERE po.statusId In (2) and po.createdAt >= Dateadd('day',-16,current_Date()) and


po.entryDate is null

group by 1,2,3,4

order by 1,2,3

SELECT

wh.name,

cr.id,

cr.sku,

CONCAT(cr.sku,' - ',cr.id) key_id,

stock.sku_description,

stock.current_stock,

sa.quantity all_sales,

sf.quantity last_14_days_sales,

ss.quantity last_7_days_sales,

so.quantity yesterday_sales,
transito.incoming_stock

FROM VIVO_KEY_ID_CROSS cr

LEFT JOIN VIVO_STOCK_PE AS stock ON stock.KEY_ID = cr.KEY_ID

LEFT JOIN VIVO_SALES_PE_ALL AS sa ON cr.KEY_ID = sa.KEY_ID

LEFT JOIN VIVO_SALES_PE_14 AS sf ON cr.KEY_ID = sf.KEY_ID

LEFT JOIN VIVO_SALES_PE_7 AS ss ON cr.KEY_ID = ss.KEY_ID

LEFT JOIN VIVO_SALES_PE_YESTERDAY AS so ON cr.KEY_ID = so.KEY_ID

LEFT JOIN VIVO_TRANSITO_PE AS transito ON cr.KEY_ID = transito.KEY_ID

LEFT JOIN FIVETRAN.PE_AMYSQL_TURBO_VIVO_CORE_API.Warehouse AS wh ON wh.ID = cr.id

GROUP BY 1,2,3,4,5,6,7,8,9,10,11

You might also like