📋 システム概要
Tera計算1は、物流業務における出荷データ分析、在庫管理、機器設備の最適配置を支援する統合物流計算システムです。 Visual Basic .NETで開発され、Microsoft AccessデータベースとExcel連携により、効率的なデータ処理と可視化を実現します。
- 出荷データの多角的分析により、物流業務の最適化を支援
- 在庫・入荷量の推定により、適切な在庫管理を実現
- 機器設備の効率的な割付により、リソースの最適配置を支援
- 物流機器の必要能力を算出し、設備投資計画を支援
- 視覚的なフロー図により、業務プロセスの理解を促進
開発元: 物流技術研究所
著作権者: 寺本敏幸
⚙️ 主要機能
| 機能モジュール | 概要 | 対応画面 |
|---|---|---|
| 1. 出荷データ分析 | 出荷データの集計・分析、ケース/バラ別の統計情報、EIQ分析、ランク別分類 | 出荷データ分析F |
| 2. 在庫入荷量の推定 | 在庫量・入荷量の推定、ケース/バラ別の物流量集計、保管設備別アイテム数算出 | 在庫入荷量の推定From |
| 3. 機器設備割付 | 保管設備・出荷設備への割付、ランク別設備配置、EIQ分析データの活用 | 設備割付From |
| 4. 物流機器設備の必要能力 | 入荷物量・在庫物量・出荷物量の統合表示、設備必要能力の算出 | 物流機器設備の必要能力From |
| 5. フロー図で確認 | 業務フローの視覚化、プロセス全体の確認 | フロー図確認画面 |
💻 システム要件
動作環境
| 項目 | 仕様 |
|---|---|
| OS | Windows 7 以降(推奨: Windows 10/11) |
| .NET Framework | .NET Framework 4.5 以降 |
| データベース | Microsoft Access 2010 以降(.accdb形式) |
| Office製品 | Microsoft Excel 2010 以降(データ入出力用) |
| メモリ | 4GB以上推奨 |
| ディスク容量 | 500MB以上の空き容量 |
必要なライブラリ
System.Data.OleDb- Accessデータベース接続ADODB- ActiveX Data ObjectsOfficeOpenXml (EPPlus)- Excel操作ライブラリ
初回起動時には、
Tera計算Dataフォルダが任意のドライブ(A~F)に配置されている必要があります。
システムは自動的にこのフォルダを検索し、見つからない場合はエラーメッセージを表示します。
📊 機能1: 出荷データ分析
概要
出荷データを多角的に分析し、物流業務の最適化に必要な情報を提供します。 ケース出荷とバラ出荷を分離して分析し、EIQ分析によるランク付けを行います。
主要機能
📈 データ分析機能
- 全データ集計: 全出荷データの統計情報を表示
- 日別集計: 出荷日ごとの物量集計(T220_ケース日別集計、T240_バラ日別集計)
- ランク別集計: I・E・Qランク別の物量分析
- EIQ分析:
- E (Entry): 出荷頻度分析
- I (Item): アイテム特性分析
- Q (Quantity): 物量分析
主要データテーブル
| テーブル名 | 用途 |
|---|---|
T200 |
出荷データマスタ(基本データ) |
T210_指定出荷日 |
分析対象出荷日の設定 |
T220_ケース日別集計 |
ケース出荷の日別集計データ |
T230_ケースバラ全集計 |
ケース・バラ出荷の総合集計 |
T240_バラ日別集計 |
バラ出荷の日別集計データ |
T050_日別仮集計 |
出荷日数のカウント用 |
画面操作フロー
- システム起動時に
T200テーブルの存在確認 - 画面表示: 全データ集計から見た特性の表示
- 指定出荷日の設定と条件抽出
- データ分析集計画面への遷移
- 各種分析結果の確認(グリッドビュー表示)
📦 機能2: 在庫入荷量の推定
概要
出荷データを基に、必要な在庫量と入荷量を推定します。 ケース物流とバラ物流を分離して集計し、保管設備別のアイテム数を算出します。
主要機能
📊 推定機能
- ケース物流量集計:
- ケース出荷全アイテム数の集計
- 保管設備別のアイテム数集計
- 出荷物量の統計(行数、バラ、ケース、PL、容積、重量)
- バラ物流量集計:
- バラ出荷全アイテム数の集計
- Iランク・Eランク別の集計
- 保管設備別のアイテム数集計
- 出荷日数算出: 分析対象期間の出荷日数カウント
使用クエリ
| クエリ名 | 用途 |
|---|---|
QH10__ケース出荷全アイテム数1/2 |
ケース出荷のアイテムカウント |
QH10__ケース出荷全物量1 |
ケース出荷の物量集計 |
QH10__バラ出荷全アイテム数1/2 |
バラ出荷のアイテムカウント |
QH10__バラ出荷全物量1 |
バラ出荷の物量集計 |
関連テーブル
TS10_機器割付- 機器割付テーブル(本機能で作成)TS30_ケース出荷保管設備- ケース出荷の保管設備情報TS30_バラ出荷保管設備- バラ出荷の保管設備情報
本機能では、既存の
T200データと保管設備テーブル(TS30系)を結合し、
各IランクとEランクに応じた物流量を算出します。出荷日数も考慮されるため、
日あたりの平均物量も把握できます。
🏭 機能3: 機器設備割付
概要
出荷データのランク情報を基に、ケース出荷とバラ出荷の保管設備・出荷設備を割り付けます。 EIQ分析の結果を活用し、効率的な設備配置を実現します。
主要機能
🔧 割付機能
- ケース出荷設備割付:
- CIランクに基づく保管設備の割付
- ケースキー(CPL等)による設備分類
- 保管設備DGVと出荷設備DGVの作成
- バラ出荷設備割付:
- BIランクに基づく保管設備の割付
- Eランクとの組み合わせによる設備判定
- バラキーによる設備分類
- 日別集計表示: 出荷日別のデータ表示(DataGridView)
- 指定出荷日設定: ComboBoxによる出荷日選択
EIQテーブル
本機能では、EIQテーブル作成()メソッドにより、機器割付用のテーブルを生成します。
このテーブルは、出荷データ分析の結果を基に、各アイテムに対する最適な設備を判定するために使用されます。
設備割付ロジック
T200テーブルからCIランク・BIランクを抽出- ランクキーの先頭2文字を取得(例: "CP" → CPL)
設備DGv作成()メソッドで、各ランクキーに対応する設備DataGridViewを生成- 保管設備と出荷設備を別々に割り付け
- Excelファイル(
設定.xlsx)から設定情報を読み込み
関連ファイル
| ファイル名 | 用途 |
|---|---|
設定.xlsx |
出荷ランクキー設定ファイル(シート: 設定1) |
Help_機器設備割付.html |
本機能の詳細操作マニュアル |
設備割付を行う前に、必ず「1. 出荷データ分析」が完了し、
T200テーブルが存在することを確認してください。
また、Accessプロセスは自動的に終了処理されますが、ExcelプロセスはExcel閉じる()メソッドで適切に終了されます。
⚡ 機能4: 物流機器設備の必要能力
概要
入荷物量、在庫物量、出荷物量を統合的に表示し、物流機器設備に必要な処理能力を算出します。
Excelファイル(在庫入荷量.xlsx)からデータを読み込み、各種物流指標を表示します。
主要機能
📊 必要能力算出
- 入荷物量開始:
- ケース出荷分入荷量DGVの読み込み(48行)
- バラ出荷分入荷量DGVの読み込み(48行)
- Excelシート: 「ケース出荷物量」「バラ出荷物量」
- 在庫物量開始:
- ケース出荷分在庫量DGVの読み込み(22行)
- バラ出荷分在庫量DGVの読み込み(22行)
- Excelシート: 「ケース出荷物量」「バラ出荷物量」
- 出荷物量開始:
- 出荷物量の集計と表示
- ケース・バラ統合データの処理
データ読み込み仕様
| 処理 | Excelシート | 読込行数 | 対象DataGridView |
|---|---|---|---|
| 入荷物量(ケース) | ケース出荷物量 | 48行 | ケース出荷分入荷量Dgv |
| 入荷物量(バラ) | バラ出荷物量 | 48行 | バラ出荷分入荷量Dgv |
| 在庫物量(ケース) | ケース出荷物量 | 22行 | ケース出荷分在庫量Dgv |
| 在庫物量(バラ) | バラ出荷物量 | 22行 | バラ出荷分在庫量Dgv |
操作手順
- 「入荷物量開始」ボタンをクリック → 入荷量データをExcelから読み込み
- 「在庫物量開始」ボタンをクリック → 在庫量データをExcelから読み込み
- 「出荷物量開始」ボタンをクリック → 出荷物量の集計処理を実行
- 各DataGridViewで結果を確認
Excel読込在庫入荷量(MyDgv, MySheet, gyo)メソッドを使用してデータを読み込みます。
パラメータ:
MyDgv: 対象DataGridViewMySheet: Excelシート名gyo: 読み込む行数
📈 機能5: フロー図で確認
概要
物流業務プロセス全体をフロー図として視覚化し、業務の流れを確認できます。 各工程間の関係性や、データの流れを一目で把握できます。
主要機能
- 業務プロセスの視覚化
- 各機能モジュール間の関連表示
- データフローの確認
- 処理順序の理解促進
フロー図の詳細は、
Tera計算1_出荷データ分析_flow.htmlを参照してください。
🏗️ システム構成
アーキテクチャ概要
Tera計算1は、3層アーキテクチャを基本とした設計になっています。
| レイヤー | 構成要素 | 役割 |
|---|---|---|
| プレゼンテーション層 | Windows Forms DataGridView TabControl |
ユーザーインターフェース、データ表示、入力受付 |
| ビジネスロジック層 | Tera計算1K1モジュール 各Formクラス |
業務ロジック、データ処理、演算処理 |
| データアクセス層 | OleDb接続 ADODB EPPlus |
Access/Excel データアクセス、SQL実行 |
データフロー
Excel入力データ
↓
[T000_出荷データ] (Tera計算0で処理)
↓
[T200] 出荷データマスタ
↓
┌────────────────┬────────────────┬────────────────┐
│ 1.出荷データ分析 │ 2.在庫入荷量推定 │ 3.機器設備割付 │
└────────────────┴────────────────┴────────────────┘
↓ ↓ ↓
┌─────────────────────────────────────┐
│ 4. 物流機器設備の必要能力 │
└─────────────────────────────────────┘
↓
Excel出力・レポート生成
💾 データベース仕様
データベース構成
データベースファイル: Tera計算Data\Tera計算.accdb
形式: Microsoft Access 2010以降 (.accdb形式)
主要テーブル一覧
| テーブル名 | 用途 | キーフィールド |
|---|---|---|
T000_出荷データ |
元データ(Tera計算0で作成) | - |
T200 |
出荷データマスタ(加工済み) | アイテム、出荷日 |
T050_日別仮集計 |
日別の出荷日リスト | 出荷日 |
T210_指定出荷日 |
分析対象出荷日 | 指定出荷日 |
T220_ケース日別集計 |
ケース出荷日別集計 | 出荷日 |
T230_ケースバラ全集計 |
ケース・バラ総合集計 | - |
T240_バラ日別集計 |
バラ出荷日別集計 | 出荷日 |
TS10_機器割付 |
機器割付情報(動的生成) | - |
TS20_* |
バラ物流関連(動的生成) | - |
TS30_ケース出荷保管設備 |
ケース保管設備マスタ | Iランク |
TS30_バラ出荷保管設備 |
バラ保管設備マスタ | Iランク, Eランク |
主要クエリ一覧
| クエリ名 | 用途 |
|---|---|
QH10__ケース出荷全アイテム数1 |
ケース出荷アイテム抽出 |
QH10__ケース出荷全アイテム数2 |
ケース出荷アイテム集計 |
QH10__ケース出荷全物量1 |
ケース出荷物量集計 |
QH10__バラ出荷全アイテム数1 |
バラ出荷アイテム抽出 |
QH10__バラ出荷全アイテム数2 |
バラ出荷アイテム集計 |
QH10__バラ出荷全物量1 |
バラ出荷物量集計 |
データ型定義
| フィールド分類 | データ型 | 例 |
|---|---|---|
| アイテムコード | テキスト型 | "ITEM001" |
| 出荷日 | 日付/時刻型 | 2024/01/01 |
| 物量(行・バラ・ケース等) | 数値型(倍精度浮動小数点) | 123.45 |
| ランク(I・E・Q) | テキスト型 | "CIPLA", "BEA" |
| 保管設備名 | テキスト型 | "自動倉庫A" |
- Accessデータベースは32bit版を使用してください(64bit版では動作しない場合があります)
- 同時アクセスは避け、複数ユーザーでの利用時は排他制御に注意してください
- 定期的なバックアップを推奨します(
Tera計算.accdbファイル)
📁 ファイル構成
プロジェクトファイル構成
Tera計算1.vbproj
├── 1出荷データ分析.vb / .Designer.vb / .resx
├── 2在庫入荷量の推定.vb / .Designer.vb / .resx
├── 3機器設備割付.vb / .Designer.vb / .resx
├── 4物流機器設備の必要能力.vb / .Designer.vb / .resx
├── 5フロー図で確認.vb / .Designer.vb / .resx
├── Tera計算1K1.vb (共通モジュール)
├── App.config
├── packages.config
├── My Project/
│ ├── Application.myapp / .Designer.vb
│ ├── AssemblyInfo.vb
│ ├── Resources.resx / .Designer.vb
│ └── Settings.settings / .Designer.vb
└── Tera計算1/
├── Help_機器設備割付.html
├── Tera計算1_出荷データ分析_flow.html
└── Tera計算1_出荷データ分析_manual.html
データフォルダ構成
[ドライブ]:\Tera計算Data\
├── Tera計算.accdb (Accessデータベース)
├── 出荷データ.xlsx (出荷データ入力ファイル)
├── 在庫入荷量.xlsx (在庫・入荷量データ)
└── SoftData\
└── 設定.xlsx (システム設定ファイル)
Tera計算Dataフォルダは、システムが自動検索します(A~Fドライブ)。
複数のドライブに存在する場合はエラーとなるため、1つのドライブのみに配置してください。
⚙️ インストール手順
1. 前提条件の確認
- .NET Framework 4.5以降がインストールされていることを確認
- Microsoft Access 2010以降がインストールされていることを確認
- Microsoft Excel 2010以降がインストールされていることを確認
2. データフォルダの配置
Tera計算Dataフォルダを任意のドライブ(C~Fドライブ推奨)にコピー- フォルダ内に以下のファイルが存在することを確認:
Tera計算.accdbSoftData\設定.xlsx
3. アプリケーションの配置
Tera計算1.exeとその関連DLLを任意のフォルダに配置- EPPlusライブラリ(
EPPlus.dll)が同じフォルダに存在することを確認
4. 初回起動
Tera計算1.exeを実行- システムが自動的に
Tera計算Dataフォルダを検索 - メニュー画面が表示されれば、インストール成功
- 「[Tera計算Data]フォルダが存在しません」エラー → データフォルダの配置を確認
- 「[Tera計算Data]フォルダが複数存在します」エラー → 不要なフォルダを削除または名前変更
- 「Tera計算0_データ加工が必要」エラー → 先にTera計算0で
T200テーブルを作成
📖 操作ガイド
基本操作フロー
- データ準備:
- Tera計算0で出荷データを加工し、
T200テーブルを作成 - 必要に応じて
設定.xlsxで設備設定を調整
- Tera計算0で出荷データを加工し、
- 出荷データ分析:
- 「1. 出荷データ分析」を起動
- 全データ集計、日別集計、ランク別分析を確認
- 分析対象出荷日を設定
- 在庫入荷量の推定:
- 「2. 在庫入荷量の推定」を起動
- ケース・バラ別の物流量を確認
- 保管設備別のアイテム数を確認
- 機器設備割付:
- 「3. 機器設備割付」を起動
- ケース/バラ出荷の保管設備・出荷設備を割付
- 設定結果をExcelに保存(オプション)
- 必要能力算出:
- 「4. 物流機器設備の必要能力」を起動
- 入荷物量、在庫物量、出荷物量を読み込み
- 必要能力を確認
- フロー確認:
- 「5. フロー図で確認」で全体の流れを確認
DataGridView操作
- ソート: 列ヘッダーをクリックで昇順/降順切り替え
- フィルタ: 一部の画面では、ComboBoxでフィルタ条件を設定可能
- Excel出力: 「Excel保存」ボタンで現在のデータをExcelに出力
ComboBox操作
- 出荷日指定: 分析対象の出荷日を選択
- 設備選択: 機器設備割付画面で、割付対象設備を選択
ボタン操作
| ボタン名 | 機能 |
|---|---|
| 条件抽出_計算 | 指定条件でデータを抽出・計算 |
| データ分析集計画面へ | 分析集計画面に遷移 |
| メニュー画面へ | メニュー画面に戻る |
| 入荷物量開始 | 入荷物量データを読み込み |
| 在庫物量開始 | 在庫物量データを読み込み |
| 出荷物量開始 | 出荷物量の集計を実行 |
| 閉じる | 現在の画面を閉じる |
🔧 トラブルシューティング
起動時のエラー
❌ エラー: 「[Tera計算Data]フォルダが存在しません」
原因: Tera計算DataフォルダがA~Fドライブに存在しない
対処法:
- データフォルダを任意のドライブ(A~F)に配置
- フォルダ名が正確に「Tera計算Data」であることを確認
❌ エラー: 「[Tera計算Data]フォルダが複数存在します」
原因: 複数のドライブにTera計算Dataフォルダが存在
対処法:
- 不要なフォルダを削除
- または、フォルダ名を変更して1つのみ有効にする
❌ エラー: 「Tera計算0_データ加工が必要」
原因: T200テーブルが存在しない
対処法:
- Tera計算0を起動
- 出荷データを加工し、
T200テーブルを作成 - 再度Tera計算1を起動
データ読み込みエラー
❌ エラー: 「Accessデータベースに接続できません」
原因: Accessデータベースが破損、またはアクセス権限不足
対処法:
- Accessで
Tera計算.accdbを開いて、「データベースの最適化と修復」を実行 - ファイルのアクセス権限を確認
- ファイルが読み取り専用になっていないか確認
❌ エラー: 「Excelファイルが見つかりません」
原因: 参照先Excelファイルが存在しない
対処法:
在庫入荷量.xlsxがTera計算Dataフォルダに存在することを確認設定.xlsxがTera計算Data\SoftDataフォルダに存在することを確認
パフォーマンス問題
⚠️ 問題: 処理が遅い・応答なし
原因: 大量データの処理、またはメモリ不足
対処法:
- データ量を削減(分析対象期間を短縮)
- 不要なアプリケーションを終了してメモリを確保
- Accessデータベースの最適化を実行
- 定期的に一時テーブル(T*、TS*、Q*)を削除
Excel関連の問題
⚠️ 問題: Excelプロセスが残る
原因: Excel操作後の正常終了処理の失敗
対処法:
- タスクマネージャーでEXCEL.EXEプロセスを手動終了
- システムには
Excel閉じる()メソッドでバックグラウンドExcelを終了する機能あり - 問題が頻発する場合は、システムを再起動
サポート情報
開発元: 物流技術研究所
担当: 寺本敏幸
📚 参考資料
Help_機器設備割付.html- 機器設備割付の詳細マニュアルTera計算1_出荷データ分析_manual.html- 出荷データ分析マニュアルTera計算1_出荷データ分析_flow.html- フロー図資料
📚 補足情報
用語集
| 用語 | 説明 |
|---|---|
| EIQ分析 | Entry(出荷頻度)、Item(アイテム特性)、Quantity(物量)の3軸で分析する手法 |
| Iランク | Item(アイテム)の特性によるランク分類(アイテム単位の分類) |
| Eランク | Entry(出荷頻度)によるランク分類(出荷回数・頻度による分類) |
| Qランク | Quantity(物量)によるランク分類(数量による分類) |
| CIランク | ケース(Case)出荷のIランク |
| BIランク | バラ(Bara)出荷のIランク |
| PL(パレット) | パレット単位の物流ユニット |
| SKU | Stock Keeping Unit - 在庫管理単位(アイテムの最小管理単位) |
| DGV | DataGridView - データ表示用グリッドコントロール |
| バラ出荷 | ケース未満の単位での出荷(ピース単位) |
| ケース出荷 | ケース単位での出荷(複数個をまとめた単位) |
データ単位の説明
| 略称 | 正式名称 | 説明 |
|---|---|---|
| 行 | 出庫回数 | アイテムが出荷された回数(レコード数) |
| バ | バラ数 | バラ(ピース)単位の個数 |
| ケ | ケース数 | ケース単位の個数 |
| PL | パレット数 | パレット単位の個数 |
| 容 | 容積 | 物品の体積(㎥等) |
| 重 | 重量 | 物品の重さ(kg等) |
更新履歴
| バージョン | リリース日 | 変更内容 |
|---|---|---|
| 1.0 | - | 初版リリース |
このマニュアルは総合版です。各機能の詳細操作については、個別のヘルプファイル(HTML形式)を参照してください。