Tera計算マニュアル メニューへ

eng tw Email MAP___ By 物流技術研究所
Tera計算_EIQ.vb モジュール仕様

Tera計算_EIQ.vb 詳細説明書

EIQ詳細分析モジュール - 完全技術仕様書

約2,479行 / Visual Basic .NET

📊 ファイル基本情報

ファイル名: Tera計算_EIQ.vb

行数: 約2,479行

クラス名: tera計算4_参考EIQF

継承: Form (Windows Forms)

実装インターフェース: IDisposable(メモリー開放対応)

目的: 物流倉庫のEIQ分析(Entry-Item-Quantity分析)の詳細機能を提供

更新履歴: 2022年6月1日に「SQL によるEIQ分析VBNet」から「従来計算とEIQ詳細分析」へ名称変更

1. プログラム構成概要

💡 このファイルの役割
Tera計算システムのメインとなるEIQ分析機能を実装。出荷データの読込から、 集計、分析、可視化(グラフ・表・散布図)まで一貫して処理します。

主要な機能ブロック(#Region構成)

1️⃣ タブコントロール

7つのタブ画面の切り替えと初期化を制御

2️⃣ My_DATA関連

分析設定データの更新・読込(ランク設定、単位設定など)

3️⃣ 共通使用SUB及びUTY

DataGridView表示、データ整形などの共通処理

4️⃣ EIQデータ作成画面

Excelデータのインポートと基礎集計テーブルの作成

5️⃣ tera計算_EIQ曲線

時系列グラフの描画と表示

6️⃣ tera計算_EIQ散布図

Entry×Item の散布図可視化とランク分析

7️⃣ tera計算_EIQ表

集計結果を表形式で詳細表示

8️⃣ tera計算_EiQマトリクス

出荷先×商品のクロス集計表示

9️⃣ 条件抽出

特定条件でのデータフィルタリングと再分析

🔟 バラ出荷コンテナ換算

バラ出荷をコンテナ単位に換算

2. 名前空間と主要メソッド

使用している名前空間

Imports System.Data.OleDb Imports System.Windows.Forms.DataVisualization.Charting

📥 フォーム初期化

メソッド名 説明 処理内容
tera計算EIQ_Load フォーム読込時の初期処理 ・ファイル確認
・全集計データの表示
・EIQ散布図ランクデータの表示
・Tera推奨設定の適用

🔄 タブコントロール

メソッド名 タブIndex 処理内容
EIQTc_SelectedIndexChanged Case 0 EIQデータ作成タブ - データ作成済チェック
Case 1 EIQ曲線図タブ - 曲線図描画済チェック
Case 2 EIQ散布図タブ - 散布図初期画面表示
Case 3 EIQ表タブ - 表初期画面設定
Case 4 EIQマトリクスタブ - マトリクス描画済チェック
Case 5 条件抽出タブ - 抽出条件再設定
Case 6 バラ出荷コンテナ換算タブ

💾 データ管理

メソッド名 種類 説明
My_DATA更新() Sub 分析設定パラメータをMy_DATA1テーブルに保存
- データベース名、Excel名
- ランク設定(A1/A2/B/C/D)
- ケース/バラ出荷対象設定
- 分析日指定
My_DATA読込() Sub My_DATA1テーブルから設定を読込み、変数に格納

📊 DataGridView操作

メソッド名 パラメータ 説明
EIQ_Dgv表示 Dgv名, MySQL, MyTable SQLクエリ結果をDataGridViewに表示
- OleDbDataAdapterでデータ取得
- 列幅、行高さの自動調整
- 数値フォーマット自動設定
Dgv整形 Dgv名 DataGridViewの書式設定
- 数値の桁数判定と右揃え
- 小数点以下の桁数自動調整(n0~n6)
- 文字列は左揃え
DGV列行確保 Dgv名, 列数Max, 行数Max 大量データ表示用の列・行確保
※FillWeight制限対応(65535上限)

3. データベーステーブル構造

入力テーブル

テーブル名 説明 データ元
T000_出荷データ Excelからインポートした生データ 出荷データ.xlsx / Sheet1
My_DATA1 分析設定パラメータテーブル ユーザー設定

集計テーブル

テーブル名 説明 集計内容
T130_全出荷集計 全期間の総合集計 全データの合計値
T230_日別集計 日別集計データ 出荷日ごとの集計
T610_EIQ表ケース単位出荷 ケース出荷のEIQ表データ Entry × Item のマトリクス
T620_EIQ表バラ単位出荷 バラ出荷のEIQ表データ Entry × Item のマトリクス
T670_EIQ散布図ランクData 散布図用ランク付けデータ A1/A2/B/C/Dランク分類

4. EIQデータ作成処理フロー

1️⃣ ファイル確認
ファイル確認() - Tera計算Dataフォルダの存在確認
⬇️
2️⃣ 設定読込
My_DATA読込() - 前回の分析設定を復元
⬇️
3️⃣ 推奨設定適用
EIQ_tera推奨設定() - ランク比率などの初期値設定
⬇️
4️⃣ 計算開始
ユーザーが「計算開始」ボタンをクリック
⬇️
5️⃣ データ作成
EIQデータ作成() - Access マクロ実行でテーブル作成
⬇️
6️⃣ 結果表示
各DataGridViewに集計結果を表示
⚠️ 処理時間について
大量データ(数万行以上)の場合、処理に数分かかることがあります。 特にEIQ表の作成は Entry × Item の組み合わせ数に依存します。

5. 分析指標と散布図・表の機能

ケース・バラ単位出荷の指標

出荷分類 UI制御 変数値 CRK/BRK記号 説明
ケース出荷 EIQ_ケース出荷行数Rb C行 C行 ケース出荷の伝票行数
EIQ_ケース出荷バラ数Rb Cバ Cバ ケースをバラに換算した個数
EIQ_ケース出荷ケース数Rb Cケ Cケ ケース出荷のケース数
EIQ_ケース出荷PL数Rb CPL CPL ケースをパレット換算
EIQ_ケース出荷容積Rb C容 C容 ケース出荷の総容積(m³)
EIQ_ケース出荷重量Rb C重 C重 ケース出荷の総重量(kg)
バラ出荷 EIQ_バラ出荷行数Rb B行 B行 バラ出荷の伝票行数
EIQ_バラ出荷バラ数Rb Bバ Bバ バラ個数
EIQ_バラ出荷ケース数Rb Bケ Bケ バラをケース換算
EIQ_バラ出荷PL数Rb BPL BPL バラをパレット換算
EIQ_バラ出荷容積Rb B容 B容 バラ出荷の総容積(m³)

🎯 EIQ散布図のランク設定

ランクA1 = 上位 10%(デフォルト) ランクA2 = 上位 20%(デフォルト) ランクB = 上位 30%(デフォルト) ランクC = 上位 30%(デフォルト) ランクD = 上位 10%(デフォルト) 合計 = 100%
💡 ランク設定の意味
- A1: 最重要(超高頻度/大量出荷)
- A2: 重要(高頻度/多量出荷)
- B: 中程度(中頻度/中量出荷)
- C: 低頻度(低頻度/少量出荷)
- D: 最低頻度(超低頻度/極少量出荷)

6. 技術仕様・エラーハンドリング

メモリー管理とデータベース接続

よくあるエラーと対処法

エラー症状 原因 対処法
FillWeight 65535超過 DataGridViewの列が多すぎる FillWeight=10に固定設定
ランク設定確認エラー ランク合計が100%でない 設定値を100%に修正してから実行
データベース接続エラー accdbファイルが開いている Accessを閉じてから実行
メモリー不足 大量データの連続処理 GC.Collect()でメモリー解放
← メニュー一覧へ戻る