iDempiere 原価タイプの使い方|会計 操作マニュアル・技術仕様
This content is not available in your language yet.
📖 会計の全体像: 会計の全体図 も合わせてご覧ください。
原価タイプは、原価計算で使用する「原価のセット」を定義するマスタです。現在原価(Current)・計画原価(Plan)・将来原価(Future)のように複数の原価タイプを定義でき、会計スキーマで選択した原価タイプが実際の会計処理(原価計上)に使用されます。
📌 ポイント: 原価タイプは複数定義できますが、会計に使われるのは会計スキーマに割り当てた 1 つだけです。会計スキーマから参照されている原価タイプは削除できません。
原価タイプでできること
Section titled “原価タイプでできること”- 原価セット(現在原価・計画原価・将来原価など)の定義
- 会計スキーマへの割り当てによる会計用原価の切り替え
- 品目原価(M_Cost)を原価タイプ別に保持するためのキー管理
- シミュレーション用の並行原価管理(会計に影響しない参考原価の維持)
シンプルな 1 タブ構成です。
| タブ名 | テーブル | 項目数 | 役割 |
|---|---|---|---|
| 原価タイプ | M_CostType | 約6項目 | 原価タイプの名称・説明の管理 |
基本操作手順
Section titled “基本操作手順”graph TD
A["🚀 メニューから開く<br/>会計管理 > 原価管理 > 原価タイプ"] --> B["➕ 新規で名称を入力<br/>(例: 現在原価 / 計画原価)"]
B --> C["💾 保存<br/>(組織は自動的に * になる)"]
C --> D["🔗 会計スキーマの原価設定で<br/>使用する原価タイプを選択"]
D --> E["📊 品目原価が<br/>原価タイプ別に管理される"]
アクセス方法(メニューパス)
Section titled “アクセス方法(メニューパス)”メニューから「会計管理 > 原価管理 > 原価タイプ」を開きます。
- ツールバーの「新規」ボタンをクリック
- 基本情報を入力:
- 名称: 原価タイプ名(例:
計画原価) - 説明 / コメント: 用途の説明(任意)
- 名称: 原価タイプ名(例:
- 「保存」をクリック
⚠️ 注意: 組織を指定して保存しても、保存時に自動的に組織「*」(全組織共通)に変更されます(
MCostType.beforeSave()の仕様)。原価タイプは組織別には持てません。
項目リファレンス
Section titled “項目リファレンス”| 項目名 | 必須 | 型 | 説明 |
|---|---|---|---|
| 名称 | 必須 | 文字列 | 原価タイプの名称(60文字以内) |
| 説明 | - | 文字列 | 補足説明 |
| コメント | - | テキスト | コメント・ヒント |
| 有効 | 必須 | チェック | レコードの有効/無効 |
よくある質問(FAQ)
Section titled “よくある質問(FAQ)”Q. 原価タイプを削除できないのはなぜですか?
Section titled “Q. 原価タイプを削除できないのはなぜですか?”その原価タイプが会計スキーマから参照されている場合、削除はブロックされます(MCostType.beforeDelete() が全会計スキーマの参照をチェックし、参照があるとエラーになります)。先に会計スキーマの原価タイプ設定を変更してください。
Q. 複数の原価タイプを作ったのに会計に反映されません。
Section titled “Q. 複数の原価タイプを作ったのに会計に反映されません。”会計処理に使用されるのは会計スキーマで選択された原価タイプのみです。それ以外の原価タイプは参考値(計画・シミュレーション用)として品目原価に保持されるだけで、転記金額には影響しません。
Q. 組織別に原価タイプを分けられますか?
Section titled “Q. 組織別に原価タイプを分けられますか?”できません。保存時に組織は強制的に「*」にリセットされます。原価を組織・倉庫レベルで細分化する場合は、会計スキーマ側の原価レベル設定(クライアント/組織/ロット単位)で制御します。
🛠 技術仕様(開発者向け)
原価タイプは M_CostType テーブル(アクセスレベル 2 = Organization、削除可)に格納されるマスタで、MCostType クラス(105行)が保存時・削除時の整合性チェックを担う小規模なモデルです。
アーキテクチャ概要
Section titled “アーキテクチャ概要”classDiagram
class MCostType {
+toString() String
#beforeSave(boolean) boolean
#beforeDelete() boolean
}
class X_M_CostType {
<<generated>>
}
class PO {
<<abstract>>
}
MCostType --|> X_M_CostType
X_M_CostType --|> PO
MCostType ..> MAcctSchema : referenced by
パッケージ: org.compiere.model
ソースファイル: org.adempiere.base/src/org/compiere/model/MCostType.java
関連DBテーブル
Section titled “関連DBテーブル”M_CostType(原価タイプ)
Section titled “M_CostType(原価タイプ)”| カラム名 | 型 | 必須 | 説明 | 備考 |
|---|---|---|---|---|
| M_CostType_ID | ID | PK | 原価タイプID | 主キー |
| AD_Client_ID | TableDirect | Y | クライアント | default @#AD_Client_ID@ |
| AD_Org_ID | TableDirect | Y | 組織 | beforeSave で 0(*)に強制 |
| Name | String(60) | Y | 名称 | |
| Description | String(255) | N | 説明 | |
| Help | Text(2000) | N | コメント | |
| IsActive | YesNo | Y | 有効 | default Y |
| M_CostType_UU | UUID | N | UUID |
ビジネスロジック
Section titled “ビジネスロジック”beforeSave()
Section titled “beforeSave()”AD_Org_ID != 0の場合、0(組織 *)に強制リセットします。原価タイプは常にクライアント共通です。
beforeDelete()
Section titled “beforeDelete()”MAcctSchema.getClientAcctSchema()でクライアントの全会計スキーマを取得し、M_CostType_IDを参照しているスキーマが 1 つでもあればCannotDeleteエラーで削除を拒否します。
拡張ポイント
Section titled “拡張ポイント”- Model Validator:
M_CostTypeの新規・変更時に命名規則や運用ルールを追加検証できます(コア改変不要) - Callout: このテーブルに標準 Callout の定義はありません(gw_column 上 callout なし)
- 原価計算ロジック自体の拡張は、原価計算方式(Costing Method)や
M_Cost側の仕組みで行うのが標準です
関連プロセス
Section titled “関連プロセス”このウィンドウに紐づくプロセスボタンはありません。
関連ドキュメント
Section titled “関連ドキュメント”iDempiereカスタマイズのご相談
Section titled “iDempiereカスタマイズのご相談”標準の原価タイプ運用(現在・計画・将来原価の並行管理)を、貴社の原価管理ポリシーに合わせて安全に拡張できます。
As-Link株式会社では、OSGiプラグインによる安全なカスタマイズを提供しています。