ファイル名:Tera計算_従来計算.vb
行数:約1,182行
クラス名:Tera計算4_参考従来計算F
継承:Form (Windows Forms)
目的:従来型の統計的分析手法による物流データの集計・分析
主要機能:全データ集計、出荷単位別集計、ABC分析、日別チャート表示
System.Data.OleDb - Access データベース接続System.Windows.Forms.DataVisualization.Charting - グラフ描画(時系列・パレート図)| 表示項目 | 説明 | データソース |
|---|---|---|
| 日別集計 | 出荷日ごとの詳細集計(13項目) | T230_日別集計 |
| 発送先数・アイテム数 | 実際の出荷先/商品の総数 | T130_全出荷集計 |
| 延べ発送先数 | 日別の発送先数の合計 | T230_日別集計の合計 |
| 延べアイテム数 | 日別のアイテム数の合計 | T230_日別集計の合計 |
以下の項目の平均・最大・最小を算出:
容積と重量データから標準的なケースサイズを推定:
Windows Forms Chartコントロールで時系列グラフを描画:
| 集計名 | 説明 | 表示内容 |
|---|---|---|
| 出荷単位別集計1 | 日別×出荷単位のクロス集計 | 各日の出荷単位ごとの詳細データ |
| 出荷単位別集計2 | 出荷単位の総合集計 | 全期間を通じた出荷単位別の合計 |
| 出荷単位別Chart | チャート表示 | 3種類のグラフ表示モード |
| 表示モード | SQL | 表示項目 |
|---|---|---|
| 表示1 | 全出荷単位の集計 | 出荷日、出荷先数、アイテム数、行数 |
| 表示2 | ケース単位のみ | 出荷日、バラ数、ケース換算 |
| 表示3 | 特定出荷単位 | 選択した出荷単位の詳細推移 |
出荷単位別集計2では、実数値と全体比率(%)の切替表示が可能
| 分析軸 | テーブル | ランク列 |
|---|---|---|
| アイテム集計 | TABC010_アイテム集計 | 行数Iランク / バラ数Iランク |
| 出荷先集計 | TABC010_出荷先集計 | 行数Eランク / バラ数Eランク |
GDI+ を使用してPictureBoxに直接描画:
| ランク | 累積比率 | 意味 | 対応策 |
|---|---|---|---|
| A | 0~70% | 超重要商品/出荷先 | 最優先管理、在庫常備 |
| B | 70~90% | 中程度の重要度 | 通常管理 |
| C | 90~100% | 低頻度商品/出荷先 | 最小限の在庫 |
ChartData読込(MySQL)メソッド:
Chart表示()メソッド:
| 設定項目 | 内容 |
|---|---|
| ChartType | Line(折れ線グラフ) |
| 凡例位置 | 右側(Right) |
| 軸ラベル | X軸: 日付, Y軸: 数量 |
| マーカー | Circle(丸) |
| テーブル名 | 説明 | 使用箇所 |
|---|---|---|
| T130_全出荷集計 | 全期間の総合集計 | 全データ集計タブ |
| T230_日別集計 | 日ごとの集計データ | 全データ集計タブ、日別Chart |
| T330_日別出荷単位別集計 | 日別×出荷単位のクロス集計 | 出荷単位別集計タブ |
| TABC010_アイテム集計 | 商品別ABC分析データ | ABC分析タブ |
| TABC010_出荷先集計 | 出荷先別ABC分析データ | ABC分析タブ |
| メソッド名 | 説明 |
|---|---|
Form1_Load |
フォーム初期化時の処理 - ファイル確認 - 全データ集計 - 特性分析 - ケース寸法推定 - Chart初期設定 |
tera計算1_従来計算Tc_SelectedIndexChanged |
タブ切替時の処理 - 各タブの初回表示チェック - 必要に応じてデータ読込 |
| メソッド名 | 説明 |
|---|---|
全データ集計() |
T230_日別集計を読込み、集計表示 - 実数 or 比率の切替対応 - 合計行の算出 |
全データ集計から見た特性() |
ケース入数、容積、重量等の平均・最大・最小を算出 |
ケース寸法推定() |
容積データから標準的なケース寸法(W×D×H)を推定 |
日別集計Chart初期設定() |
日別推移のChart初期表示 |
| メソッド名 | 説明 |
|---|---|
出荷単位別集計1() |
日別×出荷単位のクロス集計を表示 - 日別ソート or 出荷単位ソート |
出荷単位別集計2() |
出荷単位の総合集計 - GROUP BY 出荷単位 - 実数 or 比率表示 |
出荷単位別集計Chart初期設定() |
出荷単位別の推移Chart表示 |
| メソッド名 | 説明 |
|---|---|
ABC_Data作成() |
AccessマクロでABC分析テーブルを作成 - CreateObject("Access.Application") - appAccess.Run("ABC分析開始") |
ABCデータDgv表示() |
ABC分析結果をDataGridViewに表示 - アイテム集計 or 出荷先集計 - 行数 or バラ数基準 |
ABCパレート図作成() |
GDI+でパレート図を描画 - A/B/Cランクの可視化 - 累積曲線の表示 |
| メソッド名 | 説明 |
|---|---|
ChartData読込(MySQL) |
SQLクエリでデータを取得し、作業Dgvに格納 |
Chart表示() |
作業DgvからChartコントロールにデータをバインド - 系列の動的生成 - データポイント追加 - 凡例・軸の設定 |
GetData() |
ChartのDataSourceとしてDataSetを返す ※現在は未使用 |
| メソッド名 | 説明 |
|---|---|
作業Dgv読込1(MyTable, MySQL) |
SQLで取得したデータを作業用のDataGridViewに格納 |
Dgv書式(Dgv名, 列数, 行数, 表Type) |
DataGridViewの列・行を作成し、書式を設定 - セルスタイル(中央/右揃え) - 数値フォーマット(N0, N1) |
Dgv書式2(Dgv名) |
より柔軟な書式設定 - 列数・行数を自動判定 - 数値/文字列の自動判定 |
Dgv_ABCデータ書式(Dgv名) |
ABC分析専用のDataGridView書式設定 |
Form1_Load イベント発火
ファイル確認() - Tera計算Dataフォルダの検証
全データ集計() - T230_日別集計を読込
全データ集計から見た特性() - 平均・最大・最小算出
ケース寸法推定() - W×D×Hの推定
日別集計Chart初期設定() - 時系列グラフ表示
ABC_Data作成() - Accessの「ABC分析開始」マクロを実行
ABCデータDgv表示() - TABC010テーブルからデータ取得
ABCパレート図作成() - GDI+で累積曲線を描画
| 条件 | ランク | 処理 |
|---|---|---|
Rank.IndexOf("_A") >= 0 |
A | YA70累積, XA70累積 |
Rank.IndexOf("_B") >= 0 |
B | YB90累積, XB90累積 |
Rank.IndexOf("_C") >= 0 |
C | YC100累積, XC100累積 |
各処理の最後に以下を実行してメモリーを解放:
DataTable.Dispose()Graphics.Dispose()Font.Dispose()| 変数名 | 型 | 説明 |
|---|---|---|
| 全データ発送先数 | Double | 実際の発送先総数 |
| 全データアイテム数 | Double | 実際の商品総数 |
| 全データ延べ発送先数 | Double | 日別の延べ発送先数合計 |
| 全データ延べアイテム数 | Double | 日別の延べアイテム数合計 |
| 全データ行数 | Double | 総伝票行数 |
| 全データバラ数 | Double | 総バラ個数 |
| 全データケース換算 | Double | 総ケース数 |
| 全データPL換算 | Double | 総パレット数 |
| 全データ容積換算 | Double | 総容積(m³) |
| 全データ重量換算 | Double | 総重量(kg) |
| フラグ名 | 説明 |
|---|---|
| Chk1 | 全データ集計の初回読込完了フラグ |
| Chk2 | ABC分析データ作成完了フラグ |
| 全データ集計Chk | 全データ集計タブの初回表示チェック |
| 出荷単位別集計Chk | 出荷単位別集計タブの初回表示チェック |
| ABC分析Chk | ABC分析タブの初回表示チェック |
| 項目 | 従来計算 | EIQ分析 |
|---|---|---|
| 分析視点 | 時系列、ABC、単位別 | Entry×Item の組合せ |
| 難易度 | 初心者向け | 中級~上級者向け |
| グラフ | Chart Control使用 | Chart + GDI+ 手動描画 |
| 処理速度 | 高速 | やや時間がかかる |
| 分析深度 | 基本統計 | 詳細な出荷パターン分析 |
| 用途 | 概要把握、日次報告 | 倉庫設計、レイアウト最適化 |
| ファイル名 | 説明 | 関係 |
|---|---|---|
Tera計算_K1.vb |
共通変数・関数モジュール | Public変数、ファイル確認処理を使用 |
Tera計算_EIQ.vb |
EIQ詳細分析フォーム | より高度な分析を提供 |
Tera計算_参考メニュー.vb |
メニュー画面 | このフォームを起動 |
SQLによるEIQ分析.accdb |
Accessデータベース | データ格納、マクロ実行 |
#Regionによる機能ブロック分割Withステートメントによる可読性向上| 要素 | 規則 | 例 |
|---|---|---|
| DataGridView | 〇〇Dgv | T230_日別集計Dgv |
| Chart | 〇〇Chart | 日別集計Chart |
| ボタン | 〇〇Bt | 出荷単位別集計Bt |
| ラジオボタン | 〇〇Rb | 全データ集計_実数Rb |
| チェックボックス | 〇〇Cb | 詳細分析日指定Cb |