Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
SELECT `ORDER_ID` AS `ORDER_ID`,
`ORDER_NAME` AS `ORDER_NAME`,
`PRODUCT_ID` AS `PRODUCT_ID`,
`PRODUCT_TYPE_ID` AS `PRODUCT_TYPE_ID`,
`CREATED_DATE` AS `CREATED_DATE`,
`PRODUCT_NAME` AS `PRODUCT_NAME`
FROM
(SELECT OH.ORDER_ID,
OH.ORDER_NAME,
P.PRODUCT_ID,
P.PRODUCT_TYPE_ID,
P.PRODUCT_NAME,
P.CREATED_DATE
FROM ORDER_HEADER OH
JOIN ORDER_ITEM OI ON OH.ORDER_ID = OI.ORDER_ID
JOIN PRODUCT P ON OI.PRODUCT_ID = P.PRODUCT_ID
WHERE P.PRODUCT_TYPE_ID = 'DIGITAL_GOOD'
AND P.PRODUCT_ID NOT IN
(SELECT pa.product_id_to
FROM product_assoc pa
WHERE pa.product_id = "53051")) AS virtual_table
WHERE `CREATED_DATE` >= STR_TO_DATE('2024-05-03 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `CREATED_DATE` < STR_TO_DATE('2024-05-10 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `PRODUCT_NAME` != 'Test'
LIMIT 1000;Discover how HotWax Commerce OMS provides out-of-the-box pre-order reports to monitor and track pre-order operations, ensuring efficient management of all pre-orders.
Discover Netsuite synchronization reports provided by HotWax Commerce
SELECT order_id AS order_id,
product_sku_not_in_netsuite AS product_sku_not_in_netsuite
FROM
(SELECT oh.ORDER_NAME AS order_id ,
p.INTERNAL_NAME AS product_sku_not_in_netsuite
FROM order_header oh
JOIN order_item oi ON oh.ORDER_ID = oi.ORDER_ID
JOIN product p ON oi.PRODUCT_ID = p.PRODUCT_ID
LEFT JOIN order_identification oi2 ON oh.ORDER_ID = oi2.ORDER_ID
AND oi2.ORDER_IDENTIFICATION_TYPE_ID = 'NETSUITE_ORDER_ID'
AND (oi2.THRU_DATE IS NULL
OR oi2.THRU_DATE > NOW())
LEFT JOIN good_identification gi ON oi.PRODUCT_ID = gi.PRODUCT_ID
AND gi.GOOD_IDENTIFICATION_TYPE_ID = 'NETSUITE_PRODUCT_ID'
AND (gi.THRU_DATE IS NULL
OR gi.THRU_DATE > NOW())
WHERE oh.STATUS_ID NOT IN ('ORDER_CANCELLED')
AND oi2.ORDER_ID IS NULL
AND gi.PRODUCT_ID IS NULL
GROUP BY oh.ORDER_ID ,
oi.PRODUCT_ID) AS virtual_table
LIMIT 1000;SELECT sku AS sku,
shopify_product_id AS shopify_product_id,
hotwax_product_id AS hotwax_product_id
FROM
(SELECT p.INTERNAL_NAME AS sku ,
gi.ID_VALUE AS shopify_product_id ,
gi.PRODUCT_ID AS hotwax_product_id
FROM good_identification gi
LEFT JOIN good_identification gi2 ON gi.PRODUCT_ID = gi2.PRODUCT_ID
AND gi2.GOOD_IDENTIFICATION_TYPE_ID = 'NETSUITE_PRODUCT_ID'
AND (gi2.THRU_DATE IS NULL
OR gi2.THRU_DATE > NOW())
JOIN product p ON gi.PRODUCT_ID = p.PRODUCT_ID
WHERE gi.GOOD_IDENTIFICATION_TYPE_ID = 'SHOPIFY_PROD_ID'
AND (gi.THRU_DATE IS NULL
OR gi.THRU_DATE > NOW())
AND p.IS_VIRTUAL = 'N'
AND p.IS_VARIANT = 'Y'
AND gi2.PRODUCT_ID IS NULL
AND gi.ID_VALUE <> p.INTERNAL_NAME) AS virtual_table
LIMIT 1000;SELECT hotwax_product_id,
product_sku,
hotwax_discontinuation_date,
COMMENTS AS `My column`
FROM
(SELECT p.PRODUCT_ID AS hotwax_product_id ,
p.INTERNAL_NAME AS product_sku ,
DATE_FORMAT(p.SUPPORT_DISCONTINUATION_DATE, "%m-%d%-%Y") AS hotwax_discontinuation_date ,
p.COMMENTS
FROM product p
WHERE p.COMMENTS LIKE "%Deleted from Shopify:%") AS virtual_table
GROUP BY hotwax_product_id,
product_sku,
hotwax_discontinuation_date,
COMMENTS
LIMIT 1000;SELECT hotwax_customer_id AS hotwax_customer_id,
`FIRST_NAME` AS `FIRST_NAME`,
`LAST_NAME` AS `LAST_NAME`,
shopify_customer_id AS shopify_customer_id,
order_count AS order_count
FROM
(SELECT p.PARTY_ID as hotwax_customer_id ,
p2.FIRST_NAME ,
p2.LAST_NAME ,
pi3.ID_VALUE AS shopify_customer_id ,
COUNT(DISTINCT or2.ORDER_ID) AS order_count
FROM party p
JOIN party_role pr ON p.PARTY_ID = pr.PARTY_ID
JOIN party_identification pi3 ON p.PARTY_ID = pi3.PARTY_ID
AND pi3.PARTY_IDENTIFICATION_TYPE_ID = 'SHOPIFY_CUST_ID'
LEFT JOIN party_identification pi2 ON p.PARTY_ID = pi2.PARTY_ID
AND pi2.PARTY_IDENTIFICATION_TYPE_ID = 'NETSUITE_CUSTOMER_ID'
LEFT JOIN person p2 ON p.PARTY_ID = p2.PARTY_ID
LEFT JOIN order_role or2 ON p.PARTY_ID = or2.PARTY_ID
AND or2.ROLE_TYPE_ID = 'SHIP_TO_CUSTOMER'
AND (or2.THRU_DATE IS NULL
OR or2.THRU_DATE > NOW())
WHERE p.PARTY_TYPE_ID = 'PERSON'
AND pr.ROLE_TYPE_ID = 'CUSTOMER'
AND pi2.PARTY_ID IS NULL
GROUP BY p.PARTY_ID) AS virtual_table
GROUP BY hotwax_customer_id,
`FIRST_NAME`,
`LAST_NAME`,
shopify_customer_id,
order_count
LIMIT 1000;SELECT `ORDER_ID` AS `ORDER_ID`,
`ORDER_NAME` AS `ORDER_NAME`,
`ORDER_TYPE_ID` AS `ORDER_TYPE_ID`,
`ORDER_ITEM_SEQ_ID` AS `ORDER_ITEM_SEQ_ID`,
`SKU` AS `SKU`,
`STATUS_DATETIME` AS `STATUS_DATETIME`,
`IS_FULFILLMENT_EXPORTED` AS `IS_FULFILLMENT_EXPORTED`
FROM
(select oh.ORDER_ID ,
oh.ORDER_TYPE_ID ,
oh.ORDER_NAME ,
oi.ORDER_ITEM_SEQ_ID ,
p.INTERNAL_NAME SKU ,
os.STATUS_DATETIME ,
ofh.FULFILLMENT_LOG_ID ,
ofh.EXTERNAL_FULFILLMENT_ID ,
if(ofh.FULFILLMENT_LOG_ID is not null, "Y", "N") IS_FULFILLMENT_EXPORTED
from order_header oh
join order_item oi on oh.ORDER_ID = oi.ORDER_ID
join product p on p.PRODUCT_ID = oi.PRODUCT_ID
left join order_status os on os.ORDER_ID = oi.ORDER_ID
and os.ORDER_ITEM_SEQ_ID = oi.ORDER_ITEM_SEQ_ID
and os.STATUS_ID = "ITEM_COMPLETED"
left join order_fulfillment_history ofh on ofh.ORDER_ID = oi.ORDER_ID
and ofh.ORDER_ITEM_SEQ_ID = oi.ORDER_ITEM_SEQ_ID
where oi.STATUS_ID = "ITEM_COMPLETED") AS virtual_table
WHERE `IS_FULFILLMENT_EXPORTED` IN ('N')
ORDER BY `FULFILLMENT_LOG_ID` ASC,
`STATUS_DATETIME` DESC
LIMIT 1000;SELECT `ORDER_ID` AS `ORDER_ID`,
`ORDER_NAME` AS `ORDER_NAME`,
`ENTRY_DATE` AS `ENTRY_DATE`,
`SKU` AS `SKU`,
`SALES` AS `SALES`,
IFNULL(`QOH`, 0) AS `QOH variance`
FROM
(SELECT oh.ORDER_ID,
oh.ORDER_NAME,
oh.ENTRY_DATE,
sale.PRODUCT_ID,
p.INTERNAL_NAME SKU,
sale.SALES,
variance.QOH,
variance.ATP,
variance.INVENTORY_ID
FROM order_header oh
JOIN
(SELECT oi.ORDER_ID,
SUM(oi.QUANTITY) SALES,
oi.PRODUCT_ID
FROM order_item oi
JOIN order_item_ship_group_assoc oisga ON oisga.ORDER_ID = oi.ORDER_ID
AND oisga.ORDER_ITEM_SEQ_ID = oi.ORDER_ITEM_SEQ_ID
JOIN order_item_ship_group oisg ON oisg.ORDER_ID = oisga.ORDER_ID
AND oisg.SHIP_GROUP_SEQ_ID = oisga.SHIP_GROUP_SEQ_ID
AND oisg.SHIPMENT_METHOD_TYPE_ID = 'POS_COMPLETED'
GROUP BY oi.ORDER_ID,
oi.PRODUCT_ID) sale ON sale.ORDER_ID = oh.ORDER_ID
AND oh.ENTRY_DATE > '2024-03-24'
AND oh.SALES_CHANNEL_ENUM_ID = 'POS_SALES_CHANNEL'
LEFT JOIN
(SELECT iiv.COMMENTS,
ii.PRODUCT_ID,
ii.INVENTORY_ITEM_ID INVENTORY_ID,
SUM(iiv.quantity_on_hand_var) QOH,
SUM(iiv.available_to_promise_var) ATP
FROM inventory_item_variance iiv
JOIN inventory_item ii ON ii.INVENTORY_ITEM_ID = iiv.INVENTORY_ITEM_ID
AND iiv.VARIANCE_REASON_ID = 'POS_SALE'
GROUP BY iiv.COMMENTS,
ii.PRODUCT_ID) variance ON variance.COMMENTS LIKE CONCAT('%', sale.ORDER_ID, '%')
AND variance.PRODUCT_ID = sale.PRODUCT_ID
JOIN product p on sale.PRODUCT_ID = p.PRODUCT_ID) AS virtual_table
WHERE `SKU` != '9090909-999'
AND (((IF(`QOH`, `QOH`, 0) + `SALES`) <> 0))
ORDER BY `ORDER_ID` DESC
LIMIT 1000;SELECT `RETURN_ID` AS `RETURN_ID`,
`ENTRY_DATE` AS `ENTRY_DATE`,
`ORDER_NAME` AS `ORDER_ID`,
`INTERNAL_NAME` AS `INTERNAL_NAME`,
`FACILITY_ID` AS `FACILITY_ID`,
`RETURN_QUANTITY` AS `RETURNED_QUANTITY`,
IFNULL(`RECEIVED_QUANTITY`, 0) AS `RESTOCKED_QUANTITY`
FROM
(SELECT ri.RETURN_ID,
ri.RETURN_ITEM_SEQ_ID,
p.INTERNAL_NAME,
ri.RETURN_QUANTITY,
ri.RECEIVED_QUANTITY,
ri.STATUS_ID,
rh.DESTINATION_FACILITY_ID FACILITY_ID,
rh.RETURN_CHANNEL_ENUM_ID,
rh.ENTRY_DATE,
oh.ORDER_NAME,
oh.ORDER_ID
FROM return_header rh
JOIN return_item ri ON ri.return_id = rh.return_id
JOIN product p ON p.product_id = ri.product_id
JOIN order_header oh ON oh.order_id = ri.order_id
WHERE rh.DESTINATION_FACILITY_ID <> "_NA_") AS virtual_table
WHERE `FACILITY_ID` != 'BDC'
LIMIT 1000;SELECT `Facility Id` AS `Facility Id`,
`Facility` AS `Facility`,
`SKU` AS `SKU`,
DATE_FORMAT(`Adjustment Date`, "%Y-%m-%d %H:%i %p") AS `Adjustment date`,
`User` AS `User`,
`Quantity` AS `Quantity`,
`Description` AS `Description`,
`Enum ID` AS `Enum ID`,
`Comments` AS `Comments`
FROM
(SELECT fa.facility_id AS 'Facility Id',
fa.facility_id AS 'FACILITY_ID',
fa.facility_name AS 'Facility',
gi.id_value AS 'SKU',
iiv.quantity_on_hand_var AS 'Quantity',
iiv.change_by_user_login_id AS 'User',
iiv.CREATED_STAMP AS 'Adjustment Date',
vr.description AS 'Description',
iiv.comments AS 'Comments',
e.enum_type_id 'Enum ID'
FROM physical_inventory pi
LEFT JOIN inventory_item_variance iiv ON pi.physical_inventory_id = iiv.physical_inventory_id
LEFT JOIN inventory_item ii ON iiv.inventory_item_id = ii.inventory_item_id
LEFT JOIN product pr ON ii.product_id = pr.product_id
LEFT JOIN facility fa ON ii.facility_id = fa.facility_id
LEFT JOIN good_identification gi ON pr.product_id = gi.product_id
AND (GI.THRU_DATE > NOW()
OR GI.THRU_DATE IS NULL)
JOIN product_category_member pcm ON pr.product_id = pcm.product_id
AND product_category_id ='PURCHASE_ALLOW'
JOIN variance_reason vr ON vr.variance_reason_id = iiv.variance_reason_id
JOIN enumeration e ON e.enum_id = vr.variance_reason_id
WHERE gi.good_identification_type_id = "UPCA"
AND (PCM.THRU_DATE IS NULL
OR PCM.THRU_DATE > NOW())
AND e.enum_type_id = "IID_REASON"
AND iiv.variance_reason_id <> "POS_SALE"
AND fa.facility_id <> "BDC") AS virtual_table
WHERE `Description` != 'Adjustment'
AND `Adjustment Date` >= STR_TO_DATE('2024-05-01 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `Adjustment Date` < STR_TO_DATE('2024-05-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
LIMIT 50000;SELECT shipment_id AS shipment_id,
hotwax_shipment_id AS hotwax_shipment_id,
gobolt_order_name AS gobolt_order_name,
origin_facility AS origin_facility,
shipment_status AS shipment_status,
DATE(imported_date) AS imported_date,
destination_facility AS destination_facility,
tracking_number AS tracking_number,
sum(quantity) AS quantity
FROM
(SELECT s.External_Id AS shipment_id,
s.Shipment_Id AS hotwax_shipment_id,
sa.Attr_Value AS gobolt_order_name,
s.Origin_Facility_Id AS origin_facility_id,
s.Origin_Facility_Id AS 'FACILITY_ID',
f2.Facility_Name AS origin_facility,
s.DESTINATION_FACILITY_ID AS destination_facility_id,
f.Facility_Name AS destination_facility,
'Receiving Pending' AS shipment_status,
ss.STATUS_DATE AS imported_date,
IFNULL(srs.TRACKING_ID_NUMBER, "Not Available") AS tracking_number,
p.internal_name AS 'SKU',
si.quantity AS quantity
FROM shipment s
LEFT JOIN shipment_status ss ON s.SHIPMENT_ID = ss.SHIPMENT_ID
AND s.STATUS_ID = ss.STATUS_ID
LEFT JOIN shipment_attribute sa ON s.SHIPMENT_ID = sa.SHIPMENT_ID
AND sa.ATTR_NAME = 'EXTERNAL_ORDER_NAME'
LEFT JOIN shipment_route_segment srs ON srs.SHIPMENT_ID = s.SHIPMENT_ID
LEFT JOIN facility f ON s.DESTINATION_FACILITY_ID = f.FACILITY_ID
LEFT JOIN facility f2 ON s.ORIGIN_FACILITY_ID = f2.FACILITY_ID
JOIN shipment_item si ON si.SHIPMENT_ID = s.SHIPMENT_ID
JOIN product p ON p.product_id = si.product_id
WHERE S.SHIPMENT_TYPE_ID IN ('IN_TRANSFER')
AND s.STATUS_ID IN ('PURCH_SHIP_SHIPPED')) AS virtual_table
WHERE imported_date >= STR_TO_DATE('2024-05-01 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND imported_date < STR_TO_DATE('2024-05-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
GROUP BY shipment_id,
hotwax_shipment_id,
gobolt_order_name,
origin_facility,
shipment_status,
DATE(imported_date),
destination_facility,
tracking_number
ORDER BY quantity DESC
LIMIT 50000;SELECT DATE(`Received_Date`) AS `Received_Date`,
`Origin_Facility_Id` AS `Origin_Facility_Id`,
`Destination_Facility_Id` AS `Destination_Facility_Id`,
`Expected` AS `Expected`,
`Shipment_Id` AS `Shipment_Id`,
`Transfer_Order` AS `Transfer_Order`,
`SKU` AS `SKU`,
`Received` AS `Received`,
`Difference` AS `Difference`,
`Status` AS `Status`
FROM
(SELECT s.External_Id AS Shipment_Id,
s.Shipment_Id AS HotWax_Shipment_Id,
sa.Attr_Value AS Transfer_Order,
s.EXTERNAL_ID AS EXTERNAL_ID,
p.internal_name AS SKU,
s.Origin_Facility_Id AS Origin_Facility_Id,
f2.Facility_Name AS Origin_Facility,
s.DESTINATION_FACILITY_ID AS Destination_Facility_Id,
s.DESTINATION_FACILITY_ID AS FACILITY_ID,
f.Facility_Name AS Destination_Facility,
si.QUANTITY AS Expected,
sr.QUANTITY_ACCEPTED AS Received,
(IFNULL(sr.QUANTITY_ACCEPTED, 0) - si.QUANTITY) AS Difference,
CASE
WHEN (si.QUANTITY - sr.QUANTITY_ACCEPTED) = 0
AND s.external_id IS NOT NULL THEN 'Completed'
WHEN sr.QUANTITY_ACCEPTED IS NULL
AND s.external_id IS NOT NULL THEN 'NotReceived'
WHEN (si.QUANTITY - sr.QUANTITY_ACCEPTED) < 0
AND s.external_id IS NOT NULL
AND si.QUANTITY != 0 THEN 'OverReceived'
WHEN (si.QUANTITY - sr.QUANTITY_ACCEPTED) > 0
AND s.external_id IS NOT NULL THEN 'UnderReceived'
WHEN si.QUANTITY = 0
AND sr.QUANTITY_ACCEPTED IS NOT NULL THEN 'Manually added item to transfer order'
END AS Status,
ss.STATUS_DATE AS Received_Date
FROM shipment s
JOIN shipment_item si ON s.SHIPMENT_ID = si.SHIPMENT_ID
LEFT JOIN shipment_receipt sr ON si.SHIPMENT_ID = sr.SHIPMENT_ID
AND si.SHIPMENT_ITEM_SEQ_ID = sr.SHIPMENT_ITEM_SEQ_ID
LEFT JOIN shipment_attribute sa ON sa.SHIPMENT_ID = si.SHIPMENT_ID
LEFT JOIN product p ON p.PRODUCT_ID = si.PRODUCT_ID
LEFT JOIN facility f ON f.FACILITY_ID = s.DESTINATION_FACILITY_ID
LEFT JOIN facility f2 ON f2.FACILITY_ID = s.ORIGIN_FACILITY_ID
LEFT JOIN shipment_status ss ON s.SHIPMENT_ID = ss.SHIPMENT_ID
AND s.STATUS_ID = ss.STATUS_ID
WHERE s.SHIPMENT_TYPE_ID = 'IN_TRANSFER'
AND s.STATUS_ID = 'PURCH_SHIP_RECEIVED'
AND DATE(ss.STATUS_DATE) > DATE(NOW() - INTERVAL 1 MONTH)
AND sa.Attr_Name = 'EXTERNAL_ORDER_NAME') AS virtual_table
WHERE `Received_Date` >= STR_TO_DATE('2024-05-05 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `Received_Date` < STR_TO_DATE('2024-05-12 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
GROUP BY DATE(`Received_Date`),
`Origin_Facility_Id`,
`Destination_Facility_Id`,
`Expected`,
`Shipment_Id`,
`Transfer_Order`,
`SKU`,
`Received`,
`Difference`,
`Status`
LIMIT 100;Discover Order reports provided by HotWax Commerce
SELECT count(`EXTERNAL_ID`) AS `COUNT(EXTERNAL_ID)`
FROM
(SELECT oh.ORDER_ID ,
oh.EXTERNAL_ID ,
CASE
WHEN oh.SALES_CHANNEL_ENUM_ID = 'POS_SALES_CHANNEL' THEN 'POS'
ELSE 'Shopify'
END AS SALES_CHANNEL ,
oh.STATUS_ID ,
oh.ORDER_DATE
FROM order_header oh
WHERE oh.ORDER_TYPE_ID = 'SALES_ORDER') AS virtual_table
WHERE (`STATUS_ID` NOT IN ('ORDER_CANCELLED'))
AND `ORDER_DATE` >= STR_TO_DATE('2023-05-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `ORDER_DATE` < STR_TO_DATE('2024-05-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
LIMIT 100000;SELECT `SALES_CHANNEL` AS `SALES_CHANNEL`,
count(`EXTERNAL_ID`) AS `COUNT(EXTERNAL_ID)`
FROM
(SELECT oh.ORDER_ID ,
oh.EXTERNAL_ID ,
CASE
WHEN oh.SALES_CHANNEL_ENUM_ID = 'POS_SALES_CHANNEL' THEN 'POS'
ELSE 'Shopify'
END AS SALES_CHANNEL ,
oh.STATUS_ID ,
oh.ORDER_DATE
FROM order_header oh
WHERE oh.ORDER_TYPE_ID = 'SALES_ORDER') AS virtual_table
WHERE (`STATUS_ID` NOT IN ('ORDER_CANCELLED'))
AND `ORDER_DATE` >= STR_TO_DATE('2023-05-06 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `ORDER_DATE` < STR_TO_DATE('2024-05-06 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
GROUP BY `SALES_CHANNEL`
ORDER BY `COUNT(EXTERNAL_ID)` DESC
LIMIT 100;SELECT `ORDER_NAME` AS `ORDER_NAME`,
`HC_ORDER_ID` AS `HC_ORDER_ID`,
`HC_ENTRY_DATE` AS `HC_ENTRY_DATE`,
`TIME_SINCE_ENTRY` AS `TIME_SINCE_ENTRY`,
`SALES_CHANNEL` AS `SALES_CHANNEL`
FROM
(SELECT oh.ORDER_NAME ,
oh.ORDER_ID AS HC_ORDER_ID ,
DATE_FORMAT(oh.ENTRY_DATE, "%m-%d-%Y %h:%i %p") AS HC_ENTRY_DATE ,
CASE
WHEN (TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)) < 60 THEN CONCAT((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)), ' mins')
ELSE CONCAT(FLOOR((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)) / 60), ' hrs ', ((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)) % 60), ' mins')
END AS TIME_SINCE_ENTRY ,
e.DESCRIPTION AS SALES_CHANNEL ,
oh.ENTRY_DATE
FROM order_header oh
LEFT JOIN order_identification oid ON oh.ORDER_ID = oid.ORDER_ID
AND oid.ORDER_IDENTIFICATION_TYPE_ID = 'NETSUITE_ORDER_ID'
JOIN enumeration e ON oh.SALES_CHANNEL_ENUM_ID = e.ENUM_ID
WHERE oh.STATUS_ID IN ('ORDER_COMPLETED',
'ORDER_APPROVED')
AND oh.SALES_CHANNEL_ENUM_ID IN ('WEB_SALES_CHANNEL',
'POS_SALES_CHANNEL')
AND oid.ORDER_ID IS NULL) AS virtual_table
ORDER BY `ENTRY_DATE` ASC
LIMIT 1000;SELECT `ORDER_ID` AS `ORDER_ID`,
`EXTERNAL_ID` AS `EXTERNAL_ID`,
`SALES_CHANNEL` AS `SALES_CHANNEL`,
`DATE` AS `DATE`,
TIME_SINCE_ENTRY AS `TIME_SINCE_ENTRY`,
`CUSTOMER` AS `CUSTOMER`,
`SUBSIDIARY` AS `SUBSIDIARY`
FROM
(SELECT OH.ORDER_NAME AS "ORDER_ID",
OH.ORDER_ID AS "EXTERNAL_ID",
E.DESCRIPTION AS "SALES_CHANNEL",
F.EXTERNAL_ID AS "LOCATION",
DATE_FORMAT(oh.ENTRY_DATE, "%m-%d-%Y %h:%i %p") AS "DATE",
CASE
WHEN (TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)) < 60 THEN CONCAT((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)), ' mins')
ELSE CONCAT(FLOOR((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)) / 60), ' hrs ', ((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 5 HOUR)) % 60), ' mins')
END AS TIME_SINCE_ENTRY,
PI2.ID_VALUE AS "CUSTOMER",
CASE
WHEN F.EXTERNAL_ID = "376" THEN "5"
ELSE "1"
END AS "SUBSIDIARY",
oh.ENTRY_DATE
FROM ORDER_HEADER OH
JOIN ENUMERATION E ON OH.SALES_CHANNEL_ENUM_ID = E.ENUM_ID
JOIN ORDER_STATUS OS ON OH.ORDER_ID = OS.ORDER_ID
AND OH.STATUS_ID = OS.STATUS_ID
JOIN ORDER_ITEM_SHIP_GROUP OISG ON OH.ORDER_ID = OISG.ORDER_ID
JOIN FACILITY AS F ON OISG.ORDER_FACILITY_ID = F.FACILITY_ID
JOIN ORDER_ROLE ODR ON OH.ORDER_ID = ODR.ORDER_ID
AND ODR.ROLE_TYPE_ID = 'SHIP_TO_CUSTOMER'
AND (ODR.THRU_DATE IS NULL
OR ODR.THRU_DATE > NOW())
JOIN PARTY_IDENTIFICATION PI2 ON ODR.PARTY_ID = PI2.PARTY_ID
AND PI2.PARTY_IDENTIFICATION_TYPE_ID = 'NETSUITE_CUSTOMER_ID'
LEFT JOIN ORDER_IDENTIFICATION OID ON OH.ORDER_ID = OID.ORDER_ID
AND OID.ORDER_IDENTIFICATION_TYPE_ID = 'NETSUITE_ORDER_ID'
WHERE OH.STATUS_ID = 'ORDER_COMPLETED'
AND OH.SALES_CHANNEL_ENUM_ID = 'POS_SALES_CHANNEL'
AND OISG.SHIPMENT_METHOD_TYPE_ID = 'POS_COMPLETED'
AND OH.ORDER_TYPE_ID = 'SALES_ORDER'
AND oid.ORDER_ID IS NULL) AS virtual_table
LIMIT 1000;SELECT `ORDER_NAME` AS `ORDER_NAME`,
`COUNT` AS `COUNT`,
`HC_Order_Ids` AS `HC_Order_Ids`,
`Netsuite_Order_Ids` AS `Netsuite_Order_Ids`
FROM
(SELECT oh.ORDER_NAME,
COUNT(oh.EXTERNAL_ID) AS COUNT,
GROUP_CONCAT(oh.ORDER_ID ORDER BY oh.ENTRY_DATE SEPARATOR ', ') AS HC_Order_Ids,
GROUP_CONCAT(oid.ID_VALUE ORDER BY oh.ENTRY_DATE SEPARATOR ', ') AS Netsuite_Order_Ids,
MAX(oh.ENTRY_DATE) AS max_entry_date
FROM order_header oh
JOIN order_identification oid ON oh.ORDER_ID = oid.ORDER_ID
AND oid.ORDER_IDENTIFICATION_TYPE_ID = 'NETSUITE_ORDER_ID'
WHERE oh.STATUS_ID NOT IN ('ORDER_CANCELLED')
AND oh.ORDER_NAME <> '#11100672002'
GROUP BY oh.EXTERNAL_ID, oh.ORDER_NAME
HAVING COUNT(oh.EXTERNAL_ID) > 1) AS virtual_table
ORDER BY max_entry_date DESC
LIMIT 1000;SELECT `Shopify Website` AS `Shopify Website`,
`Error message` AS `Error message`,
`Shopify Order Name` AS `Shopify Order Name`,
`Order Created Date` AS `Order Created Date`
FROM
(SELECT site_txt_en AS `Shopify Website`,
docType,
errorMessage_txt_en AS `Error message`,
shopifyOrderName_txt_en AS `Shopify Order Name`,
tags_txt_en,
orderCreatedDate_dt AS `Order Created Date`
FROM logInsights
WHERE docType ='SHOPIFY_ORDER'
ORDER BY orderCreatedDate_dt DESC) AS virtual_table
LIMIT 1000;SELECT DATE(DATE_SUB(`CANCELLED_DATE`, INTERVAL DAYOFWEEK(`CANCELLED_DATE`) - 1 DAY)) AS `CANCELLED_DATE`,
count(DISTINCT `ORDER_ID`) AS `COUNT_DISTINCT(ORDER_ID)`
FROM
(SELECT oid.ID_VALUE AS ORDER_ID,
oi.ORDER_ID AS HC_ORDER_ID,
os.STATUS_DATETIME AS CANCELLED_DATE,
gi.ID_VALUE AS SKU,
oi.ITEM_DESCRIPTION,
oi.UNIT_PRICE AS Price,
en.DESCRIPTION AS REASON,
oi.EXTERNAL_ID AS External_Id
FROM order_item oi
JOIN order_status os ON oi.ORDER_ID = os.ORDER_ID
AND oi.ORDER_ITEM_SEQ_ID = os.ORDER_ITEM_SEQ_ID
AND os.STATUS_ID = 'ITEM_CANCELLED'
JOIN good_identification gi ON oi.PRODUCT_ID = gi.PRODUCT_ID
AND gi.GOOD_IDENTIFICATION_TYPE_ID = 'SHOPIFY_PROD_SKU'
JOIN order_identification oid ON oi.ORDER_ID = oid.ORDER_ID
AND oid.ORDER_IDENTIFICATION_TYPE_ID = 'SHOPIFY_ORD_NAME'
LEFT JOIN enumeration en ON os.CHANGE_REASON = en.ENUM_ID
JOIN order_header oh ON oi.ORDER_ID = oh.ORDER_ID
AND oh.product_store_id = 'STORE'
WHERE oi.STATUS_ID = 'ITEM_CANCELLED'
GROUP BY ORDER_ID,
HC_ORDER_ID,
CANCELLED_DATE,
SKU,
ITEM_DESCRIPTION,
Price,
REASON,
External_Id
LIMIT 1000) AS virtual_table
GROUP BY DATE(DATE_SUB(`CANCELLED_DATE`, INTERVAL DAYOFWEEK(`CANCELLED_DATE`) - 1 DAY))
LIMIT 100000;SELECT DATE(`ENTRY_DATE`) AS `ENTRY_DATE`,
AVG(`duration in sec`) / 60 AS `Average approval duration in minutes`,
count(DISTINCT `Order Id`) AS `Orders Volume`
FROM
(select oh.ORDER_ID "Order Id",
oh.ORDER_NAME "Shopify Order Id",
TIME_FORMAT(SEC_TO_TIME(TIMESTAMPDIFF(SECOND, oh.ORDER_DATE, max(os.status_datetime))), "%H:%i:%s") "Duration",
TIMESTAMPDIFF(SECOND, oh.ORDER_DATE, max(os.status_datetime)) "duration in sec",
oh.ENTRY_DATE,
oh.ORDER_DATE "Created At",
max(os.status_datetime) "Approved At"
from order_header oh
join order_status os on os.ORDER_ID = oh.ORDER_ID
and os.status_id = "ORDER_APPROVED"
where os.status_datetime
group by oh.ORDER_ID
order by oh.ORDER_ID desc) AS virtual_table
WHERE `Created At` >= STR_TO_DATE('2024-04-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `Created At` < STR_TO_DATE('2024-05-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `ENTRY_DATE` >= STR_TO_DATE('2024-04-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `ENTRY_DATE` < STR_TO_DATE('2024-05-08 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
GROUP BY DATE(`ENTRY_DATE`)
ORDER BY `Average approval duration in minutes` DESC
LIMIT 10000;SELECT `ORDER_NAME` AS `ORDER_NAME`,
`HC_ENTRY_DATE` AS `HC_ENTRY_DATE`,
`TIME_SINCE_ENTRY` AS `TIME_SINCE_ENTRY`,
`SALES_CHANNEL_ENUM_ID` AS `SALES_CHANNEL_ENUM_ID`,
`SIGNIFYD_APPROVED` AS `SIGNIFYD_APPROVED`,
`NETSUITE_ORDER_EXPORTED` AS `NETSUITE_ORDER_EXPORTED`,
`NETSUITE_CUSTOMER_ID` AS `NETSUITE_CUSTOMER_ID`
FROM
(SELECT oh.ORDER_NAME ,
DATE_FORMAT(oh.ENTRY_DATE, "%m-%d-%Y %h:%i %p") AS HC_ENTRY_DATE ,
CASE
WHEN (TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 4 HOUR)) < 60 THEN CONCAT((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 4 HOUR)), ' mins')
ELSE CONCAT(FLOOR((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 4 HOUR)) / 60), ' hrs ', ((TIMESTAMPDIFF(MINUTE, oh.ENTRY_DATE, NOW() - INTERVAL 4 HOUR)) % 60), ' mins')
END AS TIME_SINCE_ENTRY ,
oh.SALES_CHANNEL_ENUM_ID ,
temp1.SIGNIFYD_APPROVED ,
temp1.NETSUITE_ORDER_EXPORTED ,
pi2.ID_VALUE AS NETSUITE_CUSTOMER_ID ,
oh.ENTRY_DATE
FROM
(SELECT oa.ORDER_ID ,
MAX(CASE
WHEN oa.ATTR_NAME = 'SIGNIFYD_APPROVED' THEN oa.ATTR_VALUE
END) AS SIGNIFYD_APPROVED ,
MAX(CASE
WHEN oa.ATTR_NAME = 'NETSUITE_ORDER_EXPORTED' THEN oa.ATTR_VALUE
END) AS NETSUITE_ORDER_EXPORTED
FROM order_attribute oa
WHERE oa.ATTR_NAME IN ('SIGNIFYD_APPROVED',
'NETSUITE_ORDER_EXPORTED')
GROUP BY oa.ORDER_ID) temp1
JOIN order_header oh ON temp1.ORDER_ID = oh.ORDER_ID
JOIN order_role or2 ON temp1.ORDER_ID = or2.ORDER_ID
AND or2.ROLE_TYPE_ID = 'SHIP_TO_CUSTOMER'
AND (or2.THRU_DATE IS NULL
OR or2.THRU_DATE > NOW())
LEFT JOIN party_identification pi2 ON or2.PARTY_ID = pi2.party_id
AND pi2.PARTY_IDENTIFICATION_TYPE_ID = 'NETSUITE_CUSTOMER_ID'
WHERE oh.STATUS_ID = 'ORDER_CREATED'
AND oh.SALES_CHANNEL_ENUM_ID NOT IN ('LOOP_EXCH')
AND (SIGNIFYD_APPROVED IS NULL
OR NETSUITE_ORDER_EXPORTED IS NULL)
ORDER BY oh.ENTRY_DATE) AS virtual_table
ORDER BY `ENTRY_DATE` ASC
LIMIT 1000;Discover Fulfillment reports provided by HotWax Commerce
SELECT `Shopify Order ID` AS `Shopify Order ID`,
`Location` AS `Location`,
`HC Order Id` AS `HC Order Id`,
`Style` AS `Style`,
`SKU` AS `SKU`,
`Product Name` AS `Product Name`,
`ATP` AS `ATP`,
`Safety Stock ` AS `Safety Stock `,
`Rejected_Datetime` AS `Rejected_Datetime`,
`Reason` AS `Reason`,
`Comments` AS `Comments`
FROM
(SELECT OFC.FROM_FACILITY_ID AS 'Location',
OH.ORDER_NAME AS 'Shopify Order ID',
OH.ORDER_ID AS 'HC Order Id',
OI.ITEM_DESCRIPTION AS 'Style',
(SELECT giupca.ID_VALUE
FROM good_identification giupca
WHERE oi.PRODUCT_ID = giupca.PRODUCT_ID
AND giupca.GOOD_IDENTIFICATION_TYPE_ID = 'UPCA'
AND (giupca.THRU_DATE > NOW() OR giupca.THRU_DATE IS NULL)
LIMIT 1) AS SKU,
P.PRODUCT_NAME AS 'Product Name',
PF.LAST_INVENTORY_COUNT AS 'ATP',
PF.MINIMUM_STOCK AS 'Safety Stock ',
OFC.CHANGE_DATETIME AS Rejected_Datetime,
OFC.CHANGE_REASON_ENUM_ID AS 'Reason',
OFC.COMMENTS AS 'Comments',
F.FACILITY_ID AS FACILITY_ID,
OS.STATUS_DATETIME AS COMPLETED_DATETIME
FROM ORDER_HEADER OH
INNER JOIN ORDER_ITEM OI ON OH.ORDER_ID = OI.ORDER_ID
INNER JOIN ORDER_FACILITY_CHANGE OFC ON OFC.ORDER_ID = OI.ORDER_ID
AND OFC.ORDER_ITEM_SEQ_ID = OI.ORDER_ITEM_SEQ_ID
AND OFC.CHANGE_REASON_ENUM_ID NOT IN ('BROKERED', 'UNFILLABLE', 'RELEASED'
INNER JOIN PRODUCT P ON P.PRODUCT_ID = OI.PRODUCT_ID
INNER JOIN PRODUCT_FACILITY PF ON PF.PRODUCT_ID = OI.PRODUCT_ID
AND PF.FACILITY_ID = OFC.FROM_FACILITY_ID
INNER JOIN FACILITY F ON PF.FACILITY_ID = F.FACILITY_ID
AND F.FACILITY_TYPE_ID IN ('WAREHOUSE', 'RETAIL_STORE')
LEFT JOIN ORDER_STATUS OS ON OS.ORDER_ID = OI.ORDER_ID
AND OS.ORDER_ITEM_SEQ_ID = OI.ORDER_ITEM_SEQ_ID
AND OS.STATUS_ID = "ITEM_COMPLETED"
WHERE OH.PRODUCT_STORE_ID = 'STORE'
ORDER BY OFC.CHANGE_DATETIME DESC) AS virtual_table
WHERE `Rejected_Datetime` >= STR_TO_DATE('2024-05-06 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `Rejected_Datetime` < STR_TO_DATE('2024-05-13 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
LIMIT 50000;sql
SELECT `HC_ORDER_ID` AS `HC_ORDER_ID`,
`SHOPIFY_ORDER_ID` AS `SHOPIFY_ORDER_ID`,
`LOCATION` AS `LOCATION`,
`UPC` AS `UPC`,
`ITEM_DESCRIPTION` AS `ITEM_DESCRIPTION`,
cast(BROKERED_DATE as date) AS `BROKERED_DATE`,
date_format(BROKERED_DATE, "%H:%i %p") AS `BROKERED_TIME`,
`WMI_SENT_DATE` AS `WMI_SENT_DATE`,
`WMI_SENT_TIME` AS `WMI_SENT_TIME`,
`CUT_OFF` AS `CUT_OFF`,
`HC_PRODUCT_STORE_ID` AS `HC_PRODUCT_STORE_ID`
FROM
(SELECT OH.ORDER_ID AS 'HC_ORDER_ID',
IFNULL(
(SELECT OID.ID_VALUE
FROM ORDER_IDENTIFICATION OID
WHERE OID.ORDER_ID = OH.ORDER_ID
AND ORDER_IDENTIFICATION_TYPE_ID = 'SHOPIFY_ORD_NAME'
AND (OID.THRU_DATE > NOW()
OR OID.THRU_DATE IS NULL) ), '-') AS 'SHOPIFY_ORDER_ID',
OISG.FACILITY_ID AS 'LOCATION',
(SELECT DISTINCT(GI.ID_VALUE)
FROM GOOD_IDENTIFICATION GI
WHERE GI.GOOD_IDENTIFICATION_TYPE_ID = 'UPCA'
AND GI.PRODUCT_ID = OI.PRODUCT_ID
AND (GI.THRU_DATE IS NULL
OR GI.THRU_DATE > NOW())
ORDER BY GI.FROM_DATE DESC
LIMIT 1) AS 'UPC',
CONCAT(OI.ITEM_DESCRIPTION, ' ',
(SELECT PF.DESCRIPTION
FROM PRODUCT_FEATURE PF, PRODUCT_FEATURE_APPL PFA
WHERE PFA.PRODUCT_ID = OI.PRODUCT_ID
AND PFA.PRODUCT_FEATURE_APPL_TYPE_ID = 'STANDARD_FEATURE'
AND PFA.PRODUCT_FEATURE_ID = PF.PRODUCT_FEATURE_ID
AND PF.PRODUCT_FEATURE_TYPE_ID = 'SIZE'
AND (PFA.THRU_DATE > NOW()
OR PFA.THRU_DATE IS NULL) )) AS 'ITEM_DESCRIPTION',
CASE
WHEN (OFC.CHANGE_DATETIME IS NULL
AND OISG.SHIPMENT_METHOD_TYPE_ID = 'STOREPICKUP') THEN OISG.CREATED_STAMP
ELSE OFC.CHANGE_DATETIME
END AS 'BROKERED_DATE',
null AS 'WMI_SENT_DATE',
null AS 'WMI_SENT_TIME',
case
WHEN (OFC.CHANGE_DATETIME IS NULL
AND OISG.SHIPMENT_METHOD_TYPE_ID = 'STOREPICKUP')
AND cast(OISG.CREATED_STAMP as date) < cast(NOW() as date) THEN 'BEFORE TODAY'
when cast(OFC.CHANGE_DATETIME as date) < cast(NOW() as date) then 'BEFORE TODAY'
WHEN (OFC.CHANGE_DATETIME IS NULL
AND OISG.SHIPMENT_METHOD_TYPE_ID = 'STOREPICKUP')
AND cast(OISG.CREATED_STAMP as date) = cast(NOW() as date)
and HOUR(OISG.CREATED_STAMP) <= 14 then 'BEFORE 2PM Local Time'
when cast(OFC.CHANGE_DATETIME as date) = cast(NOW() as date)
and HOUR(OFC.CHANGE_DATETIME) <= 14 then 'BEFORE 2PM Local Time'
else 'AFTER 2PM LOCAL TIME'
end 'CUT_OFF',
OH.PRODUCT_STORE_ID AS 'HC_PRODUCT_STORE_ID'
FROM ORDER_HEADER OH
INNER JOIN ORDER_ITEM OI ON OH.ORDER_ID = OI.ORDER_ID
INNER JOIN ORDER_ITEM_SHIP_GROUP OISG ON OISG.ORDER_ID = OI.ORDER_ID
and OISG.SHIP_GROUP_SEQ_ID = OI.SHIP_GROUP_SEQ_ID
LEFT JOIN ORDER_FACILITY_CHANGE OFC ON OFC.ORDER_ID = OI.ORDER_ID
AND OFC.ORDER_ITEM_SEQ_ID = OI.ORDER_ITEM_SEQ_ID
AND OFC.SHIP_GROUP_SEQ_ID = OI.SHIP_GROUP_SEQ_ID
AND OFC.CHANGE_DATETIME =
(SELECT MAX(OFC1.CHANGE_DATETIME)
FROM ORDER_FACILITY_CHANGE OFC1
WHERE OFC1.ORDER_ID = OI.ORDER_ID
AND OFC1.SHIP_GROUP_SEQ_ID = OI.SHIP_GROUP_SEQ_ID
AND OFC1.ORDER_ITEM_SEQ_ID = OI.ORDER_ITEM_SEQ_ID )
AND OFC.CHANGE_REASON_ENUM_ID = 'BROKERED'
AND CAST(OFC.CHANGE_DATETIME AS DATE) > '${brokeredDate}'
INNER JOIN FACILITY F ON F.FACILITY_ID = OISG.FACILITY_ID
INNER JOIN FACILITY_TYPE FT ON FT.FACILITY_TYPE_ID = F.FACILITY_TYPE_ID
AND FT.PARENT_TYPE_ID IN ('DISTRIBUTION_CENTER')
WHERE OH.ORDER_TYPE_ID = 'SALES_ORDER'
AND OH.PRODUCT_STORE_ID = 'STORE'
AND OH.STATUS_ID IN ('ORDER_APPROVED')
AND OI.STATUS_ID IN ('ITEM_APPROVED')) AS virtual_table
GROUP BY `HC_ORDER_ID`,
`SHOPIFY_ORDER_ID`,
`LOCATION`,
`UPC`,
`ITEM_DESCRIPTION`,
cast(BROKERED_DATE as date),
date_format(BROKERED_DATE, "%H:%i %p"),
`WMI_SENT_DATE`,
`WMI_SENT_TIME`,
`CUT_OFF`,
`HC_PRODUCT_STORE_ID`
LIMIT 1000;SELECT `Location` AS `Location`,
`Reason` AS `Reason`,
count(`Shopify Order ID`) AS `COUNT(Shopify Order ID)`
FROM
(SELECT OFC.FROM_FACILITY_ID AS 'Location',
OH.ORDER_NAME AS 'Shopify Order ID',
OH.ORDER_ID AS 'HC Order Id',
OI.ITEM_DESCRIPTION AS 'Style',
(select giupca.ID_VALUE
from good_identification giupca
where oi.PRODUCT_ID = giupca.PRODUCT_ID
and giupca.GOOD_IDENTIFICATION_TYPE_ID = 'UPCA'
and (giupca.THRU_DATE > NOW()
OR giupca.THRU_DATE IS NULL)
limit 1) as SKU,
P.PRODUCT_NAME AS 'Product Name',
PF.LAST_INVENTORY_COUNT AS 'ATP',
PF.MINIMUM_STOCK AS 'Safety Stock ',
OFC.CHANGE_DATETIME AS Rejected_Datetime,
OFC.CHANGE_REASON_ENUM_ID AS 'Reason',
OFC.COMMENTS AS 'Comments',
F.FACILITY_ID AS FACILITY_ID,
OS.STATUS_DATETIME AS COMPLETED_DATETIME
FROM ORDER_HEADER OH
INNER JOIN ORDER_ITEM OI ON OH.ORDER_ID = OI.ORDER_ID
INNER JOIN ORDER_FACILITY_CHANGE OFC ON OFC.ORDER_ID=OI.ORDER_ID
AND OFC.ORDER_ITEM_SEQ_ID=OI.ORDER_ITEM_SEQ_ID
AND OFC.CHANGE_REASON_ENUM_ID NOT IN ('BROKERED',
'UNFILLABLE',
'RELEASED')
INNER JOIN PRODUCT P ON P.PRODUCT_ID=OI.PRODUCT_ID
INNER JOIN PRODUCT_FACILITY PF ON PF.PRODUCT_ID=OI.PRODUCT_ID
AND PF.FACILITY_ID=OFC.FROM_FACILITY_ID
INNER JOIN FACILITY F ON PF.FACILITY_ID=F.FACILITY_ID
and F.FACILITY_TYPE_ID IN('WAREHOUSE',
'RETAIL_STORE')
LEFT JOIN ORDER_STATUS OS ON OS.ORDER_ID = OI.ORDER_ID
AND OS.ORDER_ITEM_SEQ_ID=OI.ORDER_ITEM_SEQ_ID
AND OS.STATUS_ID = "ITEM_COMPLETED"
WHERE OH.PRODUCT_STORE_ID = 'STORE'
ORDER BY OFC.CHANGE_DATETIME DESC) AS virtual_table
WHERE `Rejected_Datetime` >= STR_TO_DATE('2024-05-06 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `Rejected_Datetime` < STR_TO_DATE('2024-05-13 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
GROUP BY `Location`,
`Reason`
ORDER BY `COUNT(Shopify Order ID)` DESC
LIMIT 5000;SELECT `Shopify Id` AS `Shopify Id`,
`Tracking Number` AS `Tracking Number`,
`Shipping Method` AS `Shipping Method`,
`Shipping Location` AS `Shipping Location`,
`Ship To Address` AS `Ship To Address`,
`UNITS SHIPPED` AS `UNITS SHIPPED`
FROM
(SELECT oh.ORDER_NAME AS 'Shopify Id',
trck.TRACKING_CODE AS 'Tracking Number',
oisg.SHIPMENT_METHOD_TYPE_ID AS 'Shipping Method',
oisg.FACILITY_ID AS 'Shipping Location',
concat(pa.ADDRESS1, ' ', pa.STATE_PROVINCE_GEO_ID, ' ', pa.POSTAL_CODE) AS 'Ship To Address',
count(oi.ORDER_ITEM_SEQ_ID) AS 'UNITS SHIPPED',
oh.PRODUCT_STORE_ID,
oh.ORDER_TYPE_ID
FROM order_item oi
JOIN order_header oh ON oi.order_id = oh.order_id
LEFT JOIN order_shipment osh ON oi.ORDER_ID = osh.ORDER_ID AND oi.ORDER_ITEM_SEQ_ID = osh.ORDER_ITEM_SEQ_ID
LEFT JOIN shipment_status ss ON osh.SHIPMENT_ID = ss.SHIPMENT_ID
LEFT JOIN shipment s ON osh.SHIPMENT_ID = s.SHIPMENT_ID
JOIN order_item_ship_group oisg ON oi.ORDER_ID = oisg.ORDER_ID AND oi.SHIP_GROUP_SEQ_ID = oisg.SHIP_GROUP_SEQ_ID
LEFT JOIN (SELECT oi.order_id,
oi.order_item_seq_id,
sprs.tracking_code AS 'TRACKING_CODE'
FROM order_item oi
INNER JOIN order_shipment os ON oi.ORDER_ID = os.ORDER_ID AND oi.ORDER_ITEM_SEQ_ID = os.ORDER_ITEM_SEQ_ID
INNER JOIN shipment_package_route_seg sprs ON os.SHIPMENT_ID = sprs.SHIPMENT_ID AND sprs.TRACKING_CODE IS NOT NULL) trck ON oi.ORDER_ID = trck.ORDER_ID AND oi.ORDER_ITEM_SEQ_ID = trck.ORDER_ITEM_SEQ_ID
LEFT JOIN order_contact_mech ocm ON oi.ORDER_ID = ocm.ORDER_ID
INNER JOIN postal_address pa ON ocm.CONTACT_MECH_ID = pa.CONTACT_MECH_ID
WHERE ss.STATUS_ID = 'SHIPMENT_SHIPPED'
AND oi.STATUS_ID = 'ITEM_COMPLETED'
AND oh.PRODUCT_STORE_ID = 'STORE'
AND trck.TRACKING_CODE IS NOT NULL
GROUP BY trck.TRACKING_CODE) AS virtual_table
WHERE `Shipped Date` >= STR_TO_DATE('2024-05-06 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `Shipped Date` < STR_TO_DATE('2024-05-13 00:00:00.000000', '%Y-%m-%d %H:%i:%s.%f')
AND `ORDER_TYPE_ID` = 'SALES_ORDER'
GROUP BY `Shopify Id`,
`Tracking Number`,
`Shipping Method`,
`Shipping Location`,
`Ship To Address`,
`UNITS SHIPPED`
LIMIT 10;SELECT shopify_fulfillment_status AS shopify_fulfillment_status,
COUNT(shopify_fulfillment_status) AS `COUNT(shopify_fulfillment_status)`
FROM
(SELECT ofh.ORDER_ID AS hotwax_order_id ,
oh.ORDER_NAME AS shopify_order_name ,
p.INTERNAL_NAME AS sku ,
f.FACILITY_NAME ,
f.FACILITY_ID AS FACILITY_ID ,
si.DESCRIPTION AS item_status ,
si2.DESCRIPTION AS hotwax_shipment_status ,
ss.STATUS_DATE AS hotwax_fulfillment_time ,
ofh.CREATED_DATE AS created_time ,
CASE
WHEN ofh.EXTERNAL_FULFILLMENT_ID = '_NA_' THEN NULL
ELSE ofh.EXTERNAL_FULFILLMENT_ID
END AS shopify_fulfillment_id ,
CASE
WHEN ofh.EXTERNAL_FULFILLMENT_ID = '_NA_' THEN 'pending'
ELSE 'success'
END AS shopify_fulfillment_status ,
CASE
WHEN ofh.EXTERNAL_FULFILLMENT_ID = '_NA_' THEN NULL
ELSE ofh.LAST_UPDATED_STAMP
END AS shopify_fulfillment_entry_time
FROM order_fulfillment_history ofh
JOIN order_header oh ON ofh.ORDER_ID = oh.ORDER_ID
AND oh.ORDER_TYPE_ID = "SALES_ORDER"
JOIN order_item oi ON ofh.ORDER_ID = oi.ORDER_ID
AND ofh.ORDER_ITEM_SEQ_ID = oi.ORDER_ITEM_SEQ_ID
JOIN status_item si ON oi.STATUS_ID = si.STATUS_ID
JOIN product p ON oi.PRODUCT_ID = p.PRODUCT_ID
JOIN shipment s ON ofh.SHIPMENT_ID = s.SHIPMENT_ID
JOIN status_item si2 ON s.STATUS_ID = si2.STATUS_ID
JOIN facility f ON s.ORIGIN_FACILITY_ID = f.FACILITY_ID
AND s.STATUS_ID = ss.STATUS_ID
JOIN shipment_status ss ON ofh.SHIPMENT_ID = ss.SHIPMENT_ID
WHERE ofh.SHIPMENT_ID IS NOT NULL
AND oi.EXTERNAL_ID IS NOT NULL) AS virtual_table
WHERE ((shopify_fulfillment_status = 'pending'
or cast(created_time as date) = cast((NOW() - Interval 1 day) as date)))
GROUP BY shopify_fulfillment_status
ORDER BY `COUNT(shopify_fulfillment_status)` DESC
LIMIT 100;SELECT `STORE` AS `STORE`,
`SKU` AS `SKU`,
`STYLE` AS `STYLE`,
`COLOR` AS `COLOR`,
`UNITS` AS `UNITS`,
`SIZE` AS `SIZE`
FROM
(SELECT ofc.facility_id 'STORE',
ofc.facility_id 'FACILITY_ID',
vp.PRODUCT_NAME 'STYLE',
(select giupca.ID_VALUE
from good_identification giupca
where oi.PRODUCT_ID = giupca.PRODUCT_ID
and giupca.GOOD_IDENTIFICATION_TYPE_ID = 'SHOPIFY_PROD_SKU') as SKU,
pf.color 'COLOR',
pf.size 'SIZE',
sum(oi.quantity) 'UNITS',
oh.PRODUCT_STORE_ID
FROM order_item oi
join order_header oh on oi.ORDER_ID = oh.ORDER_ID
JOIN order_facility_change ofc ON oi.order_id = ofc.order_id
AND oi.order_item_seq_id = ofc.order_item_seq_id
JOIN order_status os ON oi.order_id = os.ORDER_ID
AND oi.ORDER_ITEM_SEQ_ID = os.ORDER_ITEM_SEQ_ID
INNER JOIN
(SELECT ORDER_ID,
ORDER_ITEM_SEQ_ID,
max(CHANGE_DATETIME) 'MaxDate'
FROM order_facility_change ofc2
GROUP BY ORDER_ID,
ORDER_ITEM_SEQ_ID) tm ON ofc.ORDER_ID = tm.ORDER_ID
AND ofc.ORDER_ITEM_SEQ_ID = tm.ORDER_ITEM_SEQ_ID
AND ofc.CHANGE_DATETIME = tm.MaxDate
JOIN facility fac ON ofc.FACILITY_ID = fac.FACILITY_ID
LEFT JOIN
(SELECT PRODUCT_ID,
min(CASE
WHEN pf.PRODUCT_FEATURE_TYPE_ID = 'COLOR' THEN pf.DESCRIPTION
END) AS 'color' ,
min(CASE
WHEN pf.PRODUCT_FEATURE_TYPE_ID = 'SIZE' THEN pf.DESCRIPTION
END) AS 'size'
FROM product_feature_appl pfa
JOIN product_feature pf ON pf.PRODUCT_FEATURE_ID = pfa.PRODUCT_FEATURE_ID
AND pf.PRODUCT_FEATURE_TYPE_ID IN ('SIZE',
'COLOR')
GROUP BY PRODUCT_ID) pf ON pf.PRODUCT_ID = oi.PRODUCT_ID
JOIN product p ON oi.PRODUCT_ID = p.PRODUCT_ID
JOIN product_assoc pa ON p.PRODUCT_ID = pa.PRODUCT_ID_TO
JOIN product vp ON pa.PRODUCT_ID = vp.PRODUCT_ID
WHERE CAST(os.STATUS_DATETIME AS date) = (current_date() - INTERVAL 1 DAY)
AND os.STATUS_ID = 'ITEM_COMPLETED'
AND ofc.change_reason_enum_id = 'BROKERED'
AND fac.FACILITY_TYPE_ID = 'RETAIL_STORE'
GROUP BY ofc.FACILITY_ID,
pf.color,
pf.size,
p.product_id,
oh.PRODUCT_STORE_ID) AS virtual_table
LIMIT 1000;SELECT `STORE` AS `STORE`,
sum(`sum(oi.quantity)`) AS `SUM(sum(oi.quantity))`
FROM
(Select ofc.facility_id 'STORE',
ofc.facility_id 'FACILITY_ID',
count(ofc.ORDER_ITEM_SEQ_ID),
sum(oi.quantity)
from order_facility_change ofc
join order_status os on ofc.ORDER_ID = os.ORDER_ID
and ofc.ORDER_ITEM_SEQ_ID = os.ORDER_ITEM_SEQ_ID
inner join
(select ORDER_ID,
ORDER_ITEM_SEQ_ID,
max(CHANGE_DATETIME) 'MaxDate'
from order_facility_change ofc2
group by ORDER_ID,
ORDER_ITEM_SEQ_ID) tm on ofc.ORDER_ID = tm.ORDER_ID
and ofc.ORDER_ITEM_SEQ_ID = tm.ORDER_ITEM_SEQ_ID
and ofc.CHANGE_DATETIME = tm.MaxDate
join facility fac on ofc.FACILITY_ID = fac.FACILITY_ID
join order_header oh on ofc.ORDER_ID = oh.ORDER_ID
join order_item oi on ofc.ORDER_ID = oi.ORDER_ID
and ofc.ORDER_ITEM_SEQ_ID = oi.ORDER_ITEM_SEQ_ID
where cast(os.STATUS_DATETIME as date) =date(now() - INTERVAL 1 DAY)
and os.STATUS_ID='ITEM_COMPLETED'
and ofc.change_reason_enum_id ='BROKERED'
and fac.FACILITY_TYPE_ID='RETAIL_STORE'
and oh.PRODUCT_STORE_ID='STORE'
group by ofc.FACILITY_ID) AS virtual_table
GROUP BY `STORE`
ORDER BY `SUM(sum(oi.quantity))` DESC
LIMIT 100;