📦 T3_4_出貨空間.vb - 詳細說明

📋 概述

本檔案為物流管理系統中負責出貨空間計算的 Visual Basic 表單類別。主要進行紙箱包裝與貨櫃裝載的最佳化,並根據卡車運輸及運輸設備的規格制定出貨計畫。

主要功能:
  • 讀取與處理出貨包裝物量資料
  • 紙箱包裝計算與棧板化
  • 貨櫃裝載最佳化
  • 基於卡車/運輸設備規格的裝載計畫
  • 碼頭數計算與出貨空間最佳化

🔧 依賴關係

Imports OfficeOpenXml

使用 EPPlus 函式庫進行 Excel 檔案的讀寫操作。

📊 主要類別與成員

類別: T3_4出貨空間From

繼承自 Windows 表單,用於出貨空間計算的表單類別。

🔹 重要全域變數

變數名稱 說明
貨櫃型號 (コンテナ型式) 使用的貨櫃型號(如 20ft、40ft 等)
出貨貨櫃裝填率 (出荷コンテナ充填率) 貨櫃的裝填效率(%)
紙箱裝填率 (脱ボール充填率) 紙箱的棧板裝填效率(%)
紙箱數計 (段ボール数計) 總紙箱數
出貨貨櫃數計 (出荷コンテナ数計) 所需的總貨櫃數
出貨貨櫃容積計 (出荷コンテナ容積計) 貨櫃的總容積
空運輸設備面積 (空輸送機面積) 空的運輸設備面積

🎯 主要方法

1. 表單載入處理

Private Sub 空間計算2B出貨空間_Load(sender As Object, e As EventArgs)

處理內容:

2. 出貨空間與碼頭數計算

Private Sub 出貨空間與碼頭數計算()

處理流程:

  1. 執行出貨紙箱計算
  2. 執行出貨貨櫃計算
  3. 彙總出貨空間與碼頭數

3. 紙箱包裝計算

Private Sub 出貨紙箱計算()

功能:

注意: 根據包裝方式不同,紙箱尺寸與裝載方式將會改變。
・出貨資料的區分: 使用更詳細的分類
・合併紙箱包裝: 使用合併後的包裝

4. 貨櫃計算

Private Sub 出貨貨櫃計算()

計算內容:

5. 彙總處理

Private Sub 出貨空間與碼頭數彙總()

彙總項目:

📥 Excel 資料讀取

讀取空間計算2A計算結果

Private Sub 空間計算2A計算結果_Excel讀取()

讀取資料:

檔案路徑: Dat儲存Path & "\SoftData\空間計算.xlsx"
工作表名稱: 出貨包裝物量

讀取卡車及運輸設備規格

Private Sub 卡車及運輸設備規格_Excel讀取()

讀取的工作表:

工作表名稱 DataGridView 用途
卡車規格 卡車規格Dgv 各種卡車的裝載容量與尺寸
運輸設備規格 運輸設備規格Dgv 棧板、籠車等規格
紙箱PL化卡車裝載容量 紙箱PL化卡車裝載容量Dgv 棧板化時的裝載容量
出貨貨櫃直堆數 出貨貨櫃直堆數Dgv 直接裝載至貨櫃的數量
出貨貨櫃PL化裝載數 出貨貨櫃PL化裝載數Dgv 棧板裝載至貨櫃的數量
依卡車分類之搬運設備裝載數 依卡車分類之搬運設備裝載數Dgv 各卡車的搬運設備裝載能力
依運輸設備分類之出貨貨櫃裝載數 依運輸設備分類之出貨貨櫃裝載數Dgv 運輸設備對貨櫃的裝載能力
檔案路徑: Dat儲存Path & "\SoftData\出貨空間計算.xlsx"

🚛 運輸設備選擇功能

全紙箱包裝模式

Private Sub 全紙箱包裝()

可選擇的運輸設備:

出貨資料區分時:
  • 直堆運輸
  • 棧板1100*1100
  • 籠車850*650
  • 籠車1100*800
  • 推車(Dolly)
  • 雙扶手台車1260*425
  • 雙扶手台車900*600
合併紙箱包裝時:
  • 直堆運輸
  • 棧板1100*1100
  • 籠車850*650
  • 籠車1100*800
  • 雙扶手台車1260*425
  • 雙扶手台車900*600
  • (不包含推車(Dolly))
自動轉換: 若選擇推車(Dolly),系統將自動轉換為籠車850*650。

🔍 輔助函數 (Helper Functions)

取得卡車規格函數

Private Function 卡車規格(ByVal 車種名 As String, 列 As Integer) As Double

透過欄位編號取得指定車型的規格數值。

取得運輸設備規格函數

Private Function 運輸設備規格(ByVal 設備名 As String, 列 As Integer) As Double

透過欄位編號取得指定運輸設備的規格數值。

計算裝載容量函數

Private Function 紙箱PL化卡車裝載容量(車種名 As String, 設備名 As String) As Double

回傳由卡車與運輸設備組合而成的裝載容量。

計算貨櫃裝載數函數

函數名稱 說明
出貨貨櫃直堆數() 紙箱直接裝載於貨櫃的可裝載數
出貨貨櫃PL化裝載數() 棧板裝載於貨櫃的可裝載數
依卡車分類之搬運設備裝載數() 卡車可裝載的運輸設備數量
依卡車分類之搬運設備裝載時間() 裝載所需時間

📐 計算邏輯

貨櫃計算基本流程

  1. 判斷有無貨櫃
    • 貨櫃數計 > 0 時: 進入貨櫃使用模式
    • 貨櫃數計 = 0 時: 進入紙箱直送模式
  2. 選擇裝載方式
    • 直堆: 直接裝載紙箱
    • PL化: 使用棧板等運輸設備
  3. 計算所需數量
    • 計算運輸設備數
    • 計算卡車台數
    • 計算碼頭數
  4. 空間計算
    • 計算待機面積
    • 計算暫存面積
    • 計算作業空間

碼頭數計算

碼頭數 = 總裝載時間 / (出貨天數 × 每日作業時間)

面積計算

待機面積 = 卡車台數 × 卡車佔用面積
暫存面積 = 運輸設備數 × 運輸設備面積
總空間 = 待機面積 + 暫存面積 + 作業空間

🎨 UI 元件

DataGridView 列表

ComboBox(運輸設備選擇)

TextBox(資料顯示)

按鈕

⚠️ 錯誤處理

檔案存在確認

If fi.Exists = False Then
MessageBox.Show("找不到檔案,請從空間計算2A出貨包裝物量開始處理,結束程式")
Me.Close()
End If

若所需的 Excel 檔案不存在,將顯示錯誤訊息並關閉表單。

重要: 若前置作業(空間計算2A)未正常完成,本模組將無法執行。

🔄 處理流程全圖

┌─────────────────────────────────────┐
│   表單載入                          │
└──────────┬──────────────────────────┘
           │
           ├→ 檔案確認
           ├→ 版權顯示
           ├→ Excel 讀取(計算結果)
           ├→ Excel 讀取(規格資料)
           │
           ▼
┌─────────────────────────────────────┐
│   出貨空間與碼頭數計算              │
└──────────┬──────────────────────────┘
           │
           ├→ 出貨紙箱計算
           │   ├─ 計算紙箱數
           │   ├─ 棧板化計算
           │   ├─ 計算卡車台數
           │   └─ 計算碼頭數
           │
           ├→ 出貨貨櫃計算
           │   ├─ 貨櫃直堆計算
           │   ├─ 貨櫃PL化計算
           │   ├─ 運輸設備選擇
           │   └─ 裝載效率計算
           │
           └→ 出貨空間與碼頭數彙總
               ├─ 碼頭數彙總
               ├─ 卡車台數彙總
               ├─ 待機面積計算
               ├─ 暫存面積計算
               └─ 總空間計算

📈 DataGridView 格式設定

儲存格樣式

樣式 設定 用途
cstyle1 Alignment = MiddleCenter 置中對齊(標題等)
cstyle2 Alignment = MiddleRight
Format = "N1"
靠右對齊,顯示小數點後1位
cstyle3 Alignment = MiddleRight
Format = "N3"
靠右對齊,顯示小數點後3位

共通設定

💾 資料流程

輸入資料

  1. 空間計算.xlsx
    • 出貨包裝物量工作表
    • 前置作業(T3_2)所產生的資料
  2. 出貨空間計算.xlsx
    • 主檔資料(卡車規格、運輸設備規格等)

輸出資料

🔧 技術規格

使用函式庫

開發語言與框架

主要技術要素

📝 附註解的程式碼區塊

#Region 指示詞

程式碼使用以下 Region 進行結構化:

維護性: Region 指示詞可提升程式碼的可讀性與可維護性。

🚀 最佳化重點

1. 裝填率的最佳化

2. 運輸設備選擇

3. 碼頭分配

⚙️ 可設定的參數

參數 說明 影響範圍
貨櫃型號 使用的貨櫃種類 裝載容量、所需台數
裝填率 貨櫃/棧板的裝填效率 所需數量、空間
運輸設備 使用的運輸設備種類 裝載效率、作業時間
卡車車型 使用的卡車種類 裝載容量、台數、待機面積
出貨天數 總出貨天數 碼頭數、每日作業量

🔗 相關模組

資料整合: 透過 空間計算.xlsx 與前置作業進行資料整合。

📚 總結

T3_4_出貨空間.vb 是物流管理系統中負責出貨計畫最佳化的重要模組。

主要特色

應用場景 (Use Cases)

重要: 為了讓本模組正常運作,必須先完成前置作業(T3_2)並備妥必要的主檔資料(出貨空間計算.xlsx)。

📞 支援資訊

文件建立日期: 自動產生

目標檔案: T3_4_出貨空間.vb

語言: Visual Basic .NET (VB.NET)

總行數: 2047行