iDempiere 料金タイプ区分の使い方|会計 操作マニュアル・技術仕様
📖 会計の全体像: 会計の全体図 も合わせてご覧ください。
料金タイプ区分は、料金(Charge)を分類するための設定マスタです。料金マスタに任意で設定でき、「どの伝票タイプでこのタイプの料金を使えるか」「プラス金額・マイナス金額を許可するか」を伝票タイプ単位で定義します。
📌 ポイント: 料金タイプ区分そのものは分類ラベルであり、実際の制御は子タブ「料金タイプを使用する伝票タイプ」の設定(伝票タイプ × プラス許可/マイナス許可)で行います。値引き用の料金はマイナスのみ許可する、といった誤使用防止に使えます。
料金タイプ区分でできること
Section titled “料金タイプ区分でできること”- 料金(Charge)の分類(検索キー・名称による区分の定義)
- 料金タイプごとに使用を許可する伝票タイプの定義
- 伝票タイプ単位でのプラス金額の許可/禁止
- 伝票タイプ単位でのマイナス金額の許可/禁止
- 有効フラグによる区分の一時停止
料金タイプ区分はシンプルな 2 タブ構成です。
| タブ名 | テーブル | 項目数 | 役割 |
|---|---|---|---|
| 料金タイプ区分 | C_ChargeType | 約7項目 | 区分の基本情報(検索キー・名称) |
| 料金タイプを使用する伝票タイプ | C_ChargeType_DocType | 約7項目 | 伝票タイプ別の使用許可と正負の許可 |
基本操作手順
Section titled “基本操作手順”graph TD
A["🚀 メニューから開く<br/>会計管理 > 会計設定 > 料金タイプ区分"] --> B["➕ 新規で基本情報を入力<br/>(検索キー・名称)"]
B --> C["💾 保存"]
C --> D["📋 伝票タイプタブへ移動<br/>使用を許可する伝票タイプを登録"]
D --> E["⚖️ プラス許可 / マイナス許可を設定<br/>(デフォルトは両方 Yes)"]
E --> F["💾 保存"]
F --> G["🔗 料金マスタ(Charge)で<br/>料金タイプ区分を選択"]
アクセス方法
Section titled “アクセス方法”メニューから「会計管理 > 会計設定 > 料金タイプ区分」を開きます。
- ツールバーの「新規」ボタンをクリック
- 基本情報を入力:
- 検索キー: 区分の一意コード(例:
DISCOUNT) - 名称: 区分名(例:
値引き) - 説明・コメント: 必要に応じて入力
- 検索キー: 区分の一意コード(例:
- 「保存」をクリック
- 「料金タイプを使用する伝票タイプ」タブに移動
- 伝票タイプごとの許可を登録:
- 伝票タイプ: この区分の料金を使用できる伝票タイプ
- プラス許可: プラス金額の入力を許可(デフォルト: チェックあり)
- マイナス許可: マイナス金額の入力を許可(デフォルト: チェックあり)
- 「保存」をクリック
- 料金マスタ(Charge)側で、対象の料金に本区分を設定
項目リファレンス
Section titled “項目リファレンス”料金タイプ区分タブ
Section titled “料金タイプ区分タブ”| 項目名 | 必須 | 型 | 説明 |
|---|---|---|---|
| 検索キー | 必須 | 文字列 | 区分の一意コード |
| 名称 | 必須 | 文字列 | 区分の名称 |
| 説明 | - | 文字列 | 補足説明 |
| コメント | - | テキスト | コメント・ヒント |
| 有効 | 必須 | チェック | レコードの有効フラグ |
料金タイプを使用する伝票タイプタブ
Section titled “料金タイプを使用する伝票タイプタブ”| 項目名 | 必須 | 型 | 説明 |
|---|---|---|---|
| 料金タイプ | 必須 | 選択 | 親の料金タイプ区分(自動セット) |
| 伝票タイプ | 必須 | 選択 | 使用を許可する伝票タイプ |
| プラス許可 | 必須 | チェック | プラス金額の許可(デフォルト Y) |
| マイナス許可 | 必須 | チェック | マイナス金額の許可(デフォルト Y) |
| 有効 | 必須 | チェック | レコードの有効フラグ |
全項目は 画面リファレンス を参照してください。
よくある質問(FAQ)
Section titled “よくある質問(FAQ)”Q. 料金タイプ区分はどこで使われますか?
Section titled “Q. 料金タイプ区分はどこで使われますか?”料金マスタ(C_Charge)に「料金タイプ」(C_ChargeType_ID)として設定します。区分を付けた料金は、子タブで定義した伝票タイプ・正負の許可設定の対象になります。
Q. 料金タイプ区分の設定は必須ですか?
Section titled “Q. 料金タイプ区分の設定は必須ですか?”任意です。料金マスタ側の C_ChargeType_ID カラムは必須ではないため、区分を設定しなくても料金自体は使用できます。伝票タイプ別の使用制限や正負の制御を行いたい料金にのみ設定してください。
Q. プラス許可・マイナス許可は何を制御しますか?
Section titled “Q. プラス許可・マイナス許可は何を制御しますか?”その伝票タイプでこの区分の料金に入力できる金額の符号です。例えば値引き専用の区分では「マイナス許可」のみチェックを残すことで、プラス金額での誤入力を防ぐ運用ができます。両方ともデフォルトはチェックあり(許可)です。
🛠 技術仕様(開発者向け)
料金タイプ区分は C_ChargeType(ヘッダ)と C_ChargeType_DocType(伝票タイプ別許可)の 2 テーブルで構成される設定マスタです。専用の M クラスは存在せず、自動生成クラス X_C_ChargeType(218行)・X_C_ChargeType_DocType(237行)のみが提供されます。アクセスレベルは両テーブルとも 3(クライアント+組織)、削除可能、Document 型ではありません(DocAction/DocStatus カラムなし)。C_ChargeType_DocType はテーブル定義上「Configuration table for charges to be used by document type(伝票タイプ別に使用する料金の設定テーブル)」と説明されています。
アーキテクチャ概要
Section titled “アーキテクチャ概要”classDiagram
class X_C_ChargeType {
<<generated>>
+getValue() String
+getName() String
}
class X_C_ChargeType_DocType {
<<generated>>
+getC_DocType_ID() int
+isAllowPositive() boolean
+isAllowNegative() boolean
}
class PO {
<<abstract>>
}
X_C_ChargeType --|> PO
X_C_ChargeType_DocType --|> PO
X_C_ChargeType --> X_C_ChargeType_DocType : has many
MCharge --> X_C_ChargeType : C_ChargeType_ID 参照
パッケージ: org.compiere.model
ソースファイル: org.adempiere.base/src/org/compiere/model/X_C_ChargeType.java / X_C_ChargeType_DocType.java
関連DBテーブル
Section titled “関連DBテーブル”C_ChargeType(料金タイプ区分)
Section titled “C_ChargeType(料金タイプ区分)”| カラム名 | 型 | 必須 | 説明 | 備考 |
|---|---|---|---|---|
| C_ChargeType_ID | ID | PK | 料金タイプID | 主キー |
| AD_Client_ID | TableDirect | Y | クライアント | デフォルト @#AD_Client_ID@ |
| AD_Org_ID | TableDirect | Y | 組織 | デフォルト @#AD_Org_ID@ |
| Value | String(40) | Y | 検索キー | 一意 |
| Name | String(60) | Y | 名称 | 識別子 |
| Description | String(255) | N | 説明 | |
| Help | Text(2000) | N | コメント | |
| IsActive | YesNo | Y | 有効フラグ | デフォルト Y |
C_ChargeType_DocType(料金タイプ別伝票タイプ)
Section titled “C_ChargeType_DocType(料金タイプ別伝票タイプ)”| カラム名 | 型 | 必須 | 説明 | 備考 |
|---|---|---|---|---|
| C_ChargeType_ID | TableDirect | Y | 料金タイプFK | 親リンク |
| C_DocType_ID | TableDirect | Y | 伝票タイプFK | 親リンク |
| IsAllowPositive | YesNo | Y | プラス許可 | デフォルト Y |
| IsAllowNegative | YesNo | Y | マイナス許可 | デフォルト Y |
| IsActive | YesNo | Y | 有効フラグ | デフォルト Y |
| C_ChargeType_DocType_UU | UUID | N | UUID |
erDiagram
C_ChargeType ||--o{ C_ChargeType_DocType : "allowed doc types"
C_ChargeType_DocType }o--|| C_DocType : "document type"
C_ChargeType ||--o{ C_Charge : "classifies"
ビジネスロジック
Section titled “ビジネスロジック”C_ChargeType / C_ChargeType_DocType には専用の Java ビジネスロジック(beforeSave / afterSave のカスタム実装)はありません。ソースコード上の参照は料金マスタのインターフェース I_C_Charge の外部キー C_ChargeType_ID(任意項目)のみです。伝票タイプ別の許可設定が伝票入力時にどのように適用されるかの詳細は、Java モデル層ではなくアプリケーション辞書側の設定に依存します(要確認)。
拡張ポイント(カスタマイズ箇所)
Section titled “拡張ポイント(カスタマイズ箇所)”このテーブルに登録済みの Callout はありません(AD カラム定義上 callout 未設定)。拡張は OSGi プラグインで行います:
- Model Validator:
C_Chargeを対象に、料金タイプ区分の許可設定(IsAllowPositive/IsAllowNegative)を伝票明細の保存時に強制するバリデーションを追加できます。 - 区分の必須化: 標準では料金マスタの区分設定は任意のため、運用上必須にしたい場合は
C_Chargeの保存時チェックを Model Validator で追加します。
関連ドキュメント
Section titled “関連ドキュメント”iDempiereカスタマイズのご相談
Section titled “iDempiereカスタマイズのご相談”料金の誤使用防止ルールは、Model Validator により伝票保存時の強制チェックとして拡張できます。
As-Link株式会社では、OSGiプラグインによる安全なカスタマイズを提供しています。