コンテンツにスキップ

iDempiere 料金タイプ区分の使い方|会計 操作マニュアル・技術仕様

📖 会計の全体像: 会計の全体図 も合わせてご覧ください。

料金タイプ区分は、料金(Charge)を分類するための設定マスタです。料金マスタに任意で設定でき、「どの伝票タイプでこのタイプの料金を使えるか」「プラス金額・マイナス金額を許可するか」を伝票タイプ単位で定義します。

📌 ポイント: 料金タイプ区分そのものは分類ラベルであり、実際の制御は子タブ「料金タイプを使用する伝票タイプ」の設定(伝票タイプ × プラス許可/マイナス許可)で行います。値引き用の料金はマイナスのみ許可する、といった誤使用防止に使えます。

  • 料金(Charge)の分類(検索キー・名称による区分の定義)
  • 料金タイプごとに使用を許可する伝票タイプの定義
  • 伝票タイプ単位でのプラス金額の許可/禁止
  • 伝票タイプ単位でのマイナス金額の許可/禁止
  • 有効フラグによる区分の一時停止

料金タイプ区分はシンプルな 2 タブ構成です。

タブ名テーブル項目数役割
料金タイプ区分C_ChargeType約7項目区分の基本情報(検索キー・名称)
料金タイプを使用する伝票タイプC_ChargeType_DocType約7項目伝票タイプ別の使用許可と正負の許可
graph TD
    A["🚀 メニューから開く<br/>会計管理 > 会計設定 > 料金タイプ区分"] --> B["➕ 新規で基本情報を入力<br/>(検索キー・名称)"]
    B --> C["💾 保存"]
    C --> D["📋 伝票タイプタブへ移動<br/>使用を許可する伝票タイプを登録"]
    D --> E["⚖️ プラス許可 / マイナス許可を設定<br/>(デフォルトは両方 Yes)"]
    E --> F["💾 保存"]
    F --> G["🔗 料金マスタ(Charge)で<br/>料金タイプ区分を選択"]

メニューから開く 会計管理 > 会計設定 > 料金タイプ区分 新規で基本情報を入力 (検索キー・名称) 保存 伝票タイプタブへ移動 使用を許可する伝票タイプを登録 プラス許可 / マイナス許可を設定 (デフォルトは両方 Yes) 料金マスタ(Charge)で 料金タイプ区分を選択

メニューから「会計管理 > 会計設定 > 料金タイプ区分」を開きます。

  1. ツールバーの「新規」ボタンをクリック
  2. 基本情報を入力:
    • 検索キー: 区分の一意コード(例: DISCOUNT
    • 名称: 区分名(例: 値引き
    • 説明・コメント: 必要に応じて入力
  3. 保存」をクリック
  4. 料金タイプを使用する伝票タイプ」タブに移動
  5. 伝票タイプごとの許可を登録:
    • 伝票タイプ: この区分の料金を使用できる伝票タイプ
    • プラス許可: プラス金額の入力を許可(デフォルト: チェックあり)
    • マイナス許可: マイナス金額の入力を許可(デフォルト: チェックあり)
  6. 保存」をクリック
  7. 料金マスタ(Charge)側で、対象の料金に本区分を設定
項目名必須説明
検索キー必須文字列区分の一意コード
名称必須文字列区分の名称
説明-文字列補足説明
コメント-テキストコメント・ヒント
有効必須チェックレコードの有効フラグ

料金タイプを使用する伝票タイプタブ

Section titled “料金タイプを使用する伝票タイプタブ”
項目名必須説明
料金タイプ必須選択親の料金タイプ区分(自動セット)
伝票タイプ必須選択使用を許可する伝票タイプ
プラス許可必須チェックプラス金額の許可(デフォルト Y)
マイナス許可必須チェックマイナス金額の許可(デフォルト Y)
有効必須チェックレコードの有効フラグ

全項目は 画面リファレンス を参照してください。

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(伝票タイプ別に使用する料金の設定テーブル)」と説明されています。

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 参照

<> +getValue() String +getName() String <> +getC_DocType_ID() int +isAllowPositive() boolean +isAllowNegative() boolean <> > PO X_C_ChargeType_DocType --

パッケージ: org.compiere.model ソースファイル: org.adempiere.base/src/org/compiere/model/X_C_ChargeType.java / X_C_ChargeType_DocType.java

カラム名必須説明備考
C_ChargeType_IDIDPK料金タイプID主キー
AD_Client_IDTableDirectYクライアントデフォルト @#AD_Client_ID@
AD_Org_IDTableDirectY組織デフォルト @#AD_Org_ID@
ValueString(40)Y検索キー一意
NameString(60)Y名称識別子
DescriptionString(255)N説明
HelpText(2000)Nコメント
IsActiveYesNoY有効フラグデフォルト Y

C_ChargeType_DocType(料金タイプ別伝票タイプ)

Section titled “C_ChargeType_DocType(料金タイプ別伝票タイプ)”
カラム名必須説明備考
C_ChargeType_IDTableDirectY料金タイプFK親リンク
C_DocType_IDTableDirectY伝票タイプFK親リンク
IsAllowPositiveYesNoYプラス許可デフォルト Y
IsAllowNegativeYesNoYマイナス許可デフォルト Y
IsActiveYesNoY有効フラグデフォルト Y
C_ChargeType_DocType_UUUUIDNUUID
erDiagram
    C_ChargeType ||--o{ C_ChargeType_DocType : "allowed doc types"
    C_ChargeType_DocType }o--|| C_DocType : "document type"
    C_ChargeType ||--o{ C_Charge : "classifies"

allowed doc types document type

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 で追加します。

料金の誤使用防止ルールは、Model Validator により伝票保存時の強制チェックとして拡張できます。

As-Link株式会社では、OSGiプラグインによる安全なカスタマイズを提供しています。

OSS ERP導入・カスタマイズサービスの詳細はこちら