2026 Promotional Orders

Orders with promo_quantity > 0

Published

January 21, 2026

Code
import polars as pl
from great_tables import GT, loc, style
from python.db_connection import get_db_connection

con = get_db_connection()

Summary

Code
# Get summary stats
summary = con.sql("""
    SELECT
        COUNT(DISTINCT so.order_number) as total_orders,
        COUNT(*) as total_lines,
        SUM(sol.promo_quantity) as total_promo_qty,
        COUNT(DISTINCT so.customer_code) as unique_customers
    FROM cosmos_sync.sales_orders so
    JOIN cosmos_sync.sales_order_lines sol
        ON so.order_type = sol.order_type
        AND so.order_number = sol.order_number
    WHERE so.confirmed_code = 'Y'
        AND so.order_date >= '20260101'
        AND sol.promo_quantity > 0
""").to_polars()

print(f"Total orders with promos: {summary['total_orders'][0]:,}")
print(f"Total promo lines: {summary['total_lines'][0]:,}")
print(f"Total promo quantity: {summary['total_promo_qty'][0]:,.0f}")
print(f"Unique customers: {summary['unique_customers'][0]:,}")
Total orders with promos: 66
Total promo lines: 77
Total promo quantity: 155
Unique customers: 42

Promo Orders Detail

Code
# Get all promo order details
promo_orders = con.sql("""
    SELECT
        so.order_date,
        so.order_number,
        so.customer_code,
        c.trade_name,
        so.delivery_route,
        sol.item_code,
        sol.item_description,
        sol.quantity,
        sol.promo_quantity,
        sol.pretax_subtotal
    FROM cosmos_sync.sales_orders so
    JOIN cosmos_sync.sales_order_lines sol
        ON so.order_type = sol.order_type
        AND so.order_number = sol.order_number
    LEFT JOIN cosmos_sync.customers c
        ON so.customer_code = c.customer_code
    WHERE so.confirmed_code = 'Y'
        AND so.order_date >= '20260101'
        AND sol.promo_quantity > 0
    ORDER BY so.order_date DESC, so.order_number, sol.item_code
""").to_polars()

# Format order_date for display
promo_orders = promo_orders.with_columns(
    (pl.col("order_date").str.slice(0, 4) + "/" +
     pl.col("order_date").str.slice(4, 2) + "/" +
     pl.col("order_date").str.slice(6, 2)).alias("order_date")
)

print(f"Total promo lines: {len(promo_orders):,}")
Total promo lines: 77
Code
GT(promo_orders).tab_header(
    title="2026 Promotional Order Lines",
    subtitle="All order lines with promo_quantity > 0"
).cols_label(
    order_date="Order Date",
    order_number="Order #",
    customer_code="Customer Code",
    trade_name="Trade Name",
    delivery_route="Route",
    item_code="Item Code",
    item_description="Item Description",
    quantity="Qty",
    promo_quantity="Promo Qty",
    pretax_subtotal="Subtotal"
).fmt_number(
    columns=["pretax_subtotal"],
    decimals=0
).fmt_number(
    columns=["quantity", "promo_quantity"],
    decimals=0
)
2026 Promotional Order Lines
All order lines with promo_quantity > 0
Order Date Order # Customer Code Trade Name Route Item Code Item Description Qty Promo Qty Subtotal
2026/01/16 1150116033 2610066 枋寮-無尾熊包子2.5 K2 31099 二代紅450g 0 2 0
2026/01/16 1150116034 2410011 新埤-無尾熊包子W2 K2 31099 二代紅450g 0 1 0
2026/01/16 1150116036 0110911 飯糰(牛頭屋前) A-PT 23820 菜酥 600g(御品酥) 0 3 0
2026/01/16 1150116059 6210032 麥味登久堂中興店1.4 K2 41005 香Q蛋餅皮(蔥花)30入.(藍字) 0 1 0
2026/01/15 1150112014 4310037 王勻均1.4 K2 59142 補異常*香酥雞塊(HISUN) 3K. 0 1 0
2026/01/15 1150115001 1010037 美美早餐店(鹽埔)-1.4 A-PN 22020 特調咖啡紅茶(免濾)100g*5包. 0 8 0
2026/01/15 1150115002 5810247 鳳東早餐1.4 K1 31093 禾豐專用奶精900g# 0 8 0
2026/01/15 1150115002 0610012 繁華市場1.4 A-PN 31099 二代紅450g 0 1 0
2026/01/15 1150115002 0610012 繁華市場1.4 A-PN 31101 三代450g 0 1 0
2026/01/15 1150115012 0111140 樂活早點 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/15 1150115013 0110704 麥味登-屏東信義 A-PT 41005 香Q蛋餅皮(蔥花)30入.(藍字) 0 1 0
2026/01/15 1150115029 4210094 美而美-鼎祥街-4 K1 51365 讚岐烏龍麵240g*5片 0 1 0
2026/01/15 1150115035 1310060 幸運草-老埤1.4 A-PK 54057 黃金手工蔥抓餅10片. 0 1 0
2026/01/15 1150115037 1010037 美美早餐店(鹽埔)-1.4 A-PN 31099 二代紅450g 0 1 0
2026/01/15 1150115038 0610012 繁華市場1.4 A-PN 31099 二代紅450g 0 2 0
2026/01/15 1150115040 4480005 路邊12號飯糰 創始店2.5 K1 11087 新美式風味咖啡600g. 0 1 0
2026/01/15 1150115047 K1P K1外送 K1 25888 伊植麥玉米粒(易開)340g. 0 1 0
2026/01/15 1150115047 K1P K1外送 K1 26068 雙魚座鮪魚185g. 0 1 0
2026/01/13 1150113012 0110044 美而美屏東鶴聲 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/13 1150113017 5910033 恬芯快速早餐-大寮2.5 K1 56041 抓餅(禾)10片. 0 1 0
2026/01/13 1150113020 0110007 夏一跳-公裕街 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/13 1150113021 0111225 早安美芝城-屏東自由 A-PT 54057 黃金手工蔥抓餅10片. 0 1 0
2026/01/13 1150113021 0111225 早安美芝城-屏東自由 A-PT 54057 補12/30 黃金手工蔥抓餅10片. 0 1 0
2026/01/13 1150113026 0110167 光復-美而美 A-PT 51047 青蔥蛋餅皮30入 0 1 0
2026/01/13 1150113050 1910004 哈豆早點-2.5 K2 11011 金品拿鐵咖啡1k(橘). 0 1 0
2026/01/13 1150113053 0910114 尼寶食坊早午餐2.5 A-PN 11087 新美式風味咖啡600g. 0 1 0
2026/01/13 1150113057 2610066 枋寮-無尾熊包子2.5 K2 31099 二代紅450g 0 1 0
2026/01/12 1150112013 1310060 幸運草-老埤1.4 A-PK 54057 黃金手工蔥抓餅10片. 0 1 0
2026/01/12 1150112015 0110039 陸橋豆乳 A-PT 11002 草莓風味調味粉 1K 0 1 0
2026/01/12 1150112017 1110004 胖胖早點-1.4 A-PN 21037 美式傳統咖啡牛奶600g 0 1 0
2026/01/12 1150112021 1310176 林太太-1.4 A-PK 11041 花香奶茶1k 0 1 0
2026/01/12 1150112021 1310176 林太太-1.4 A-PK 11087 新美式風味咖啡600g. 0 5 0
2026/01/12 1150112030 5810247 鳳東早餐1.4 K1 41005 香Q蛋餅皮(蔥花)30入.(藍字) 0 1 0
2026/01/09 1150109010 0810009 美而美-東寧2.5 A-PN 71845 一杯袋(大)6兩 0 1 0
2026/01/09 1150109019 0110704 麥味登-屏東信義 A-PT 41005 香Q蛋餅皮(蔥花)30入.(藍字) 0 1 0
2026/01/09 1150109031 0110007 夏一跳-公裕街 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/09 1150109032 0110833 活力-公館2.5 A-PT 53037 補*精製漢堡肉丸20粒(英辰) 0 1 0
2026/01/09 1150109052 0110008 鍋貼叔叔 A-PT 57064 厚切蘿蔔糕 1K 0 2 0
2026/01/09 1150109054 6210033 粒粒飯糰1.4 K2 11087 新美式風味咖啡600g. 0 1 0
2026/01/09 1150109073 0610012 繁華市場1.4 A-PN 31099 二代紅450g 0 1 0
2026/01/08 1150108033 K2P K2外送 K2 25888 伊植麥玉米粒(易開)340g. 0 1 0
2026/01/08 1150108033 K2P K2外送 K2 26068 雙魚座鮪魚185g. 0 2 0
2026/01/08 1150108033 1310060 幸運草-老埤1.4 A-PK 54057 黃金手工蔥抓餅10片. 0 2 0
2026/01/08 1150108033 K2P K2外送 K2 S51299 薄脆蔥抓餅90g*1片 0 2 0
2026/01/08 1150108038 1310133 龍族1.4 A-PK 22348 立頓精選紅茶包20g*10入 0 1 0
2026/01/07 1150107006 0111144 小博的店-手工漢堡_3 A-PT 41005 香Q蛋餅皮(蔥花)30入.(藍字) 0 1 0
2026/01/07 1150107021 2810041 果恩早餐_3 PH 25888 伊植麥玉米粒(易開)340g. 0 1 0
2026/01/07 1150107021 2810041 果恩早餐_3 PH 26068 雙魚座鮪魚185g. 0 1 0
2026/01/07 1150107037 1730001 一品香飯糰W3 K2 11001 咖啡風味調味粉 1k(棕). 0 1 0
2026/01/06 1150106004 0111284 禾豐快速早餐 A-PT 31093 禾豐專用奶精900g# 0 4 0
2026/01/06 1150106005 0111144 小博的店-手工漢堡_3 A-PT 31093 禾豐專用奶精900g# 0 4 0
2026/01/06 1150106032 0110167 光復-美而美 A-PT 51047 青蔥蛋餅皮30入 0 1 0
2026/01/06 1150106043 0111225 早安美芝城-屏東自由 A-PT 54057 補*黃金手工蔥抓餅10片. 0 1 0
2026/01/05 1150105001 0110044 美而美屏東鶴聲 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/05 1150105005 0610012 繁華市場1.4 A-PN 22020 特調咖啡紅茶(免濾)100g*5包. 0 16 0
2026/01/05 1150105005 A-PKP 營業部-PK外送 A-PK 52191 經典原味雞胸肉100g 0 1 0
2026/01/05 1150105006 1010037 美美早餐店(鹽埔)-1.4 A-PN 22020 特調咖啡紅茶(免濾)100g*5包. 0 16 0
2026/01/05 1150105017 1310060 幸運草-老埤1.4 A-PK 54057 黃金手工蔥抓餅10片. 0 1 0
2026/01/05 1150105019 1010037 美美早餐店(鹽埔)-1.4 A-PN 22020 特調咖啡紅茶(免濾)100g*5包. 0 4 0
2026/01/05 1150105021 0110045 明蕙早餐 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/05 1150105022 0111225 早安美芝城-屏東自由 A-PT 54057 黃金手工蔥抓餅10片. 0 1 0
2026/01/05 1150105023 0110007 夏一跳-公裕街 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/05 1150105024 5410002 美味田園-梓官1.4 K2 21053 萊恩專用紅茶50g*60包(紅色) 0 1 0
2026/01/05 1150105025 2610032 美滋堡-枋寮2.5 K2 23098 金熊三明治鮪魚185g. 0 2 0
2026/01/05 1150105026 0111140 樂活早點 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/05 1150105032 K1P K1外送 K1 25888 伊植麥玉米粒(易開)340g. 0 5 0
2026/01/02 1150101001 5910033 恬芯快速早餐-大寮2.5 K1 56041 抓餅(禾)10片. 0 1 0
2026/01/02 1150101004 2410011 新埤-無尾熊包子W2 K2 31099 二代紅450g 0 1 0
2026/01/02 1150101005 2610066 枋寮-無尾熊包子2.5 K2 31099 二代紅450g 0 1 0
2026/01/02 1150102003 1310060 幸運草-老埤1.4 A-PK 54057 黃金手工蔥抓餅10片. 0 1 0
2026/01/02 1150102018 0110007 夏一跳-公裕街 A-PT 41018 香Q蛋餅皮(原)30入.(紅字) 0 1 0
2026/01/02 1150102021 0110704 麥味登-屏東信義 A-PT 41005 香Q蛋餅皮(蔥花)30入.(藍字) 0 1 0
2026/01/02 1150102026 0910021 卡醬-2.5 A-PN 22020 特調咖啡紅茶(免濾)100g*5包. 0 8 0
2026/01/02 1150102028 3810008 反轉奶酥-鹽埕2.5 K1 52191 經典原味雞胸肉100g 0 1 0
2026/01/02 1150102031 4410002 呷尚寶-中安-2.5 K1 52191 經典原味雞胸肉100g 0 2 0
2026/01/02 1150102036 2620008 百利冷飲店2.5 K2 23626 一番香Q意麵50入 0 1 0
2026/01/02 1150102036 1010037 美美早餐店(鹽埔)-1.4 A-PN 31099 二代紅450g 0 1 0

By Customer

Code
customer_summary = con.sql("""
    SELECT
        so.customer_code,
        c.trade_name,
        so.delivery_route,
        COUNT(DISTINCT so.order_number) as order_count,
        COUNT(*) as promo_lines,
        SUM(sol.promo_quantity) as total_promo_qty
    FROM cosmos_sync.sales_orders so
    JOIN cosmos_sync.sales_order_lines sol
        ON so.order_type = sol.order_type
        AND so.order_number = sol.order_number
    LEFT JOIN cosmos_sync.customers c
        ON so.customer_code = c.customer_code
    WHERE so.confirmed_code = 'Y'
        AND so.order_date >= '20260101'
        AND sol.promo_quantity > 0
    GROUP BY so.customer_code, c.trade_name, so.delivery_route
    ORDER BY total_promo_qty DESC
""").to_polars()

GT(customer_summary).tab_header(
    title="Promo Recipients by Customer",
    subtitle="Customers receiving promotional items in 2026"
).cols_label(
    customer_code="Customer Code",
    trade_name="Trade Name",
    delivery_route="Route",
    order_count="Orders",
    promo_lines="Promo Lines",
    total_promo_qty="Total Promo Qty"
).fmt_number(
    columns=["total_promo_qty"],
    decimals=0
)
Promo Recipients by Customer
Customers receiving promotional items in 2026
Customer Code Trade Name Route Orders Promo Lines Total Promo Qty
1010037 美美早餐店(鹽埔)-1.4 A-PN 5 5 30
0610012 繁華市場1.4 A-PN 4 5 21
5810247 鳳東早餐1.4 K1 2 2 9
0910021 卡醬-2.5 A-PN 1 1 8
K1P K1外送 K1 2 3 7
1310176 林太太-1.4 A-PK 1 2 6
1310060 幸運草-老埤1.4 A-PK 5 5 6
0111144 小博的店-手工漢堡_3 A-PT 2 2 5
K2P K2外送 K2 1 3 5
0110007 夏一跳-公裕街 A-PT 4 4 4
0111225 早安美芝城-屏東自由 A-PT 3 4 4
0111284 禾豐快速早餐 A-PT 1 1 4
2610066 枋寮-無尾熊包子2.5 K2 3 3 4
0110704 麥味登-屏東信義 A-PT 3 3 3
0110911 飯糰(牛頭屋前) A-PT 1 1 3
0110008 鍋貼叔叔 A-PT 1 1 2
0110044 美而美屏東鶴聲 A-PT 2 2 2
2610032 美滋堡-枋寮2.5 K2 1 1 2
2810041 果恩早餐_3 PH 1 2 2
0110167 光復-美而美 A-PT 2 2 2
0111140 樂活早點 A-PT 2 2 2
2410011 新埤-無尾熊包子W2 K2 2 2 2
5910033 恬芯快速早餐-大寮2.5 K1 2 2 2
4410002 呷尚寶-中安-2.5 K1 1 1 2
4210094 美而美-鼎祥街-4 K1 1 1 1
4310037 王勻均1.4 K2 1 1 1
4480005 路邊12號飯糰 創始店2.5 K1 1 1 1
5410002 美味田園-梓官1.4 K2 1 1 1
6210032 麥味登久堂中興店1.4 K2 1 1 1
6210033 粒粒飯糰1.4 K2 1 1 1
A-PKP 營業部-PK外送 A-PK 1 1 1
0110039 陸橋豆乳 A-PT 1 1 1
0810009 美而美-東寧2.5 A-PN 1 1 1
0110833 活力-公館2.5 A-PT 1 1 1
0910114 尼寶食坊早午餐2.5 A-PN 1 1 1
1110004 胖胖早點-1.4 A-PN 1 1 1
1310133 龍族1.4 A-PK 1 1 1
0110045 明蕙早餐 A-PT 1 1 1
1730001 一品香飯糰W3 K2 1 1 1
1910004 哈豆早點-2.5 K2 1 1 1
2620008 百利冷飲店2.5 K2 1 1 1
3810008 反轉奶酥-鹽埕2.5 K1 1 1 1

By Product

Code
product_summary = con.sql("""
    SELECT
        sol.item_code,
        sol.item_description,
        COUNT(DISTINCT so.customer_code) as customer_count,
        COUNT(*) as line_count,
        SUM(sol.promo_quantity) as total_promo_qty
    FROM cosmos_sync.sales_orders so
    JOIN cosmos_sync.sales_order_lines sol
        ON so.order_type = sol.order_type
        AND so.order_number = sol.order_number
    WHERE so.confirmed_code = 'Y'
        AND so.order_date >= '20260101'
        AND sol.promo_quantity > 0
    GROUP BY sol.item_code, sol.item_description
    ORDER BY total_promo_qty DESC
""").to_polars()

GT(product_summary).tab_header(
    title="Promo Items Summary",
    subtitle="Products given as promotional items in 2026"
).cols_label(
    item_code="Item Code",
    item_description="Item Description",
    customer_count="Customers",
    line_count="Lines",
    total_promo_qty="Total Promo Qty"
).fmt_number(
    columns=["total_promo_qty"],
    decimals=0
)
Promo Items Summary
Products given as promotional items in 2026
Item Code Item Description Customers Lines Total Promo Qty
22020 特調咖啡紅茶(免濾)100g*5包. 3 5 52
31093 禾豐專用奶精900g# 3 3 16
31099 二代紅450g 4 10 12
41018 香Q蛋餅皮(原)30入.(紅字) 4 9 9
25888 伊植麥玉米粒(易開)340g. 3 4 8
11087 新美式風味咖啡600g. 4 4 8
54057 黃金手工蔥抓餅10片. 2 7 8
41005 香Q蛋餅皮(蔥花)30入.(藍字) 4 6 6
26068 雙魚座鮪魚185g. 3 3 4
52191 經典原味雞胸肉100g 3 3 4
23820 菜酥 600g(御品酥) 1 1 3
S51299 薄脆蔥抓餅90g*1片 1 1 2
23098 金熊三明治鮪魚185g. 1 1 2
51047 青蔥蛋餅皮30入 1 2 2
56041 抓餅(禾)10片. 1 2 2
57064 厚切蘿蔔糕 1K 1 1 2
31101 三代450g 1 1 1
21037 美式傳統咖啡牛奶600g 1 1 1
11041 花香奶茶1k 1 1 1
59142 補異常*香酥雞塊(HISUN) 3K. 1 1 1
51365 讚岐烏龍麵240g*5片 1 1 1
11011 金品拿鐵咖啡1k(橘). 1 1 1
53037 補*精製漢堡肉丸20粒(英辰) 1 1 1
54057 補12/30 黃金手工蔥抓餅10片. 1 1 1
54057 補*黃金手工蔥抓餅10片. 1 1 1
11002 草莓風味調味粉 1K 1 1 1
71845 一杯袋(大)6兩 1 1 1
11001 咖啡風味調味粉 1k(棕). 1 1 1
23626 一番香Q意麵50入 1 1 1
22348 立頓精選紅茶包20g*10入 1 1 1
21053 萊恩專用紅茶50g*60包(紅色) 1 1 1