Skip to content

iDempiere 勘定科目組合せの使い方|会計 操作マニュアル・技術仕様

This content is not available in your language yet.

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

勘定科目組合せは、勘定科目エレメントと会計ディメンション(組織・取引先・品目・プロジェクト等)の有効な組合せを管理するウィンドウです。iDempiere の仕訳はすべて単一の勘定科目ではなく、この「組合せ」(C_ValidCombination)に対して転記されます。

📌 ポイント: 通常の運用では組合せは伝票転記時に自動生成されるため、手動登録は必須ではありません。よく使う組合せに**別名(Alias)**を付けておくと、GL仕訳の入力時に別名だけで組合せを呼び出せます。

  • 勘定科目+ディメンションの有効な組合せの照会・登録
  • 別名(Alias)の定義による仕訳入力の省力化
  • 組織・取引先・品目・プロジェクト・活動等のディメンション指定
  • 組合せ文字列(Combination)と説明の自動生成・確認
  • クオリファイ済み(必須エレメントがすべて埋まっているか)の確認

単一タブのシンプルな構成です。

タブ名テーブル項目数役割
組合せC_ValidCombination約24項目勘定科目とディメンションの組合せ・別名

💡 ヒント: どのディメンションが必須になるかは、会計スキーマの「会計スキーマエレメント」の設定(バランス必須/必須フラグ)で決まります。

graph TD
    A["🚀 メニューから開く<br/>会計管理 > 会計設定 > 勘定科目組合せ"] --> B{目的}
    B -->|既存組合せの照会| C["🔍 検索条件で絞り込み<br/>(勘定科目・組織等)"]
    B -->|別名の登録| D["➕ 新規で会計スキーマ<br/>組織・勘定科目を入力"]
    D --> E["📝 必要なディメンションを指定<br/>(取引先・品目・プロジェクト等)"]
    E --> F["🏷️ 別名(Alias)を入力"]
    F --> G["💾 保存<br/>(組合せ文字列は自動生成)"]
    G --> H["🔗 GL仕訳で別名を指定して<br/>組合せを呼び出し"]

メニューから開く 会計管理 > 会計設定 > 勘定科目組合せ 検索条件で絞り込み (勘定科目・組織等) 新規で会計スキーマ 組織・勘定科目を入力 必要なディメンションを指定 (取引先・品目・プロジェクト等) 別名(Alias)を入力 保存 (組合せ文字列は自動生成) GL仕訳で別名を指定して 組合せを呼び出し 目的 既存組合せの照会 別名の登録

メニューから「会計管理 > 会計設定 > 勘定科目組合せ」を開きます。

  1. ツールバーの「新規」ボタンをクリック
  2. 基本情報を入力:
    • 会計スキーマ: 対象の会計スキーマ
    • 組織: 計上組織
    • 勘定科目: 勘定科目エレメント(必須)
    • 別名(Alias): 呼び出し用の短縮名(例: TRAVEL-HQ
  3. 必要に応じてディメンションを指定:
    • 取引先/品目/プロジェクト/活動/営業活動/販売地域
  4. 保存」をクリック — 組合せ文字列(Combination)と説明が自動生成されます

⚠️ 注意: 会計スキーマで「別名使用」が有効になっている場合のみ、仕訳入力画面で Alias による呼び出しができます。

項目名必須説明
会計スキーマ必須選択組合せが属する会計スキーマ
組織必須選択計上組織
勘定科目必須検索勘定科目エレメント(C_ElementValue)
別名-文字列(40)組合せの短縮呼び出し名
組合せ自動文字列エレメント値を連結した組合せ文字列
説明自動文字列エレメント名を連結した説明
クオリファイ済み自動チェック必須エレメントがすべて指定済みか
サブアカウント-選択勘定科目配下のサブアカウント
取引先/品目/プロジェクト-検索会計ディメンション
取引組織/活動/営業活動/販売地域-選択会計ディメンション
ユーザー1/ユーザー2-検索ユーザー定義リストエレメント

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

Q. 組合せは事前に全部登録しておく必要がありますか?

Section titled “Q. 組合せは事前に全部登録しておく必要がありますか?”

いいえ。伝票の転記処理は必要な組合せを自動生成します(MAccount.get() は既存組合せを検索し、無ければ新規作成します)。手動登録が必要なのは、別名を定義したい場合や、GL仕訳で新しい組合せを事前に用意したい場合だけです。

Q. 「組合せ」「説明」欄が入力できません。

Section titled “Q. 「組合せ」「説明」欄が入力できません。”

これらは保存時に MAccount.setValueDescription() が各エレメント値から自動生成する項目です。手入力はできません。エレメント(勘定科目や取引先)の検索キーを変更した場合は、既存組合せの表記が自動で更新されます。

Q. サブアカウントを指定したらエラーになりました。

Section titled “Q. サブアカウントを指定したらエラーになりました。”

サブアカウント(C_SubAcct)は勘定科目エレメントに従属します。保存時の validate() で、指定したサブアカウントの親エレメントが「勘定科目」欄のエレメントと一致するかを検証しており、不一致の場合は保存できません。

Q. クオリファイ済み(Fully Qualified)とは何ですか?

Section titled “Q. クオリファイ済み(Fully Qualified)とは何ですか?”

会計スキーマエレメントで必須と定義されたディメンションがすべて埋まっている状態を示す自動判定フラグです。転記にはクオリファイ済みの組合せが使用されます。

🛠 技術仕様(開発者向け)

勘定科目組合せは C_ValidCombination テーブルに格納され、MAccount クラス(888行)が管理します。MAccount は転記エンジン(Doc/Fact)から最も頻繁に呼ばれるクラスの一つで、組合せの検索・自動生成・妥当性検証を担います。レコード削除は不可(IsDeleteable=N)です。

classDiagram
    class MAccount {
        +get(ctx, ...) MAccount
        +get(ctx, C_AcctSchema_ID, alias) MAccount
        +get(Fact_Acct) MAccount
        +getDefault(acctSchema, optionalNull) MAccount
        +updateValueDescription(ctx, where, trxName)
        +validate() boolean
        +setValueDescription()
        #beforeSave(newRecord) boolean
        +markImmutable() MAccount
    }
    class X_C_ValidCombination {
        <<generated>>
    }
    class PO {
        <<abstract>>
    }
    MAccount --|> X_C_ValidCombination
    X_C_ValidCombination --|> PO
    MAccount --> MAcctSchema : belongs to
    MAccount --> MFactAcct : posted to

+get(ctx, ...) MAccount +get(ctx, C_AcctSchema_ID, alias) MAccount +get(Fact_Acct) MAccount +getDefault(acctSchema, optionalNull) MAccount +updateValueDescription(ctx, where, trxName) +validate() boolean +setValueDescription() #beforeSave(newRecord) boolean +markImmutable() MAccount <> <> > X_C_ValidCombination X_C_ValidCombination --

パッケージ: org.compiere.model ソースファイル: org.adempiere.base/src/org/compiere/model/MAccount.java(生成クラス: X_C_ValidCombination.java・673行)

C_ValidCombination(勘定科目組合せ)

Section titled “C_ValidCombination(勘定科目組合せ)”
カラム名必須説明備考
C_ValidCombination_IDIDPK組合せID主キー
C_AcctSchema_IDTableDirectY会計スキーマFK
AD_Org_IDTableDirectY組織デフォルト @#AD_Org_ID@
Account_IDSearchY勘定科目エレメントC_ElementValue
AliasString(40)N別名仕訳入力の短縮呼び出し
CombinationString(60)N組合せ文字列beforeSave で自動生成
DescriptionString(255)N説明beforeSave で自動生成
IsFullyQualifiedYesNoYクオリファイ済みvalidate() が設定
C_SubAcct_IDTableDirectNサブアカウント親エレメント一致を検証
C_BPartner_ID / M_Product_IDSearchN取引先/品目ディメンション
C_Project_ID / C_Activity_ID / C_Campaign_IDTableNプロジェクト/活動/営業活動ディメンション
AD_OrgTrx_ID / C_SalesRegion_IDTableN取引組織/販売地域ディメンション
C_LocFrom_ID / C_LocTo_IDTableN送り元/送り先ディメンション
User1_ID / User2_IDSearchNユーザーリスト1/2
UserElement1_ID / UserElement2_IDIDNユーザーエレメント1/2

MAccount.beforeSave():

  1. setValueDescription() — 会計スキーマエレメントの並び順に従い、各エレメントの検索キーを連結した Combination と、名称を連結した Description を再生成
  2. validate() — 妥当性検証を実行し IsFullyQualified を判定。サブアカウント指定時は C_SubAcct.C_ElementValue_ID = Account_ID の一致を検証し、不一致なら保存エラー

主要 static メソッド:

  • MAccount.get(ctx, AD_Client_ID, AD_Org_ID, C_AcctSchema_ID, Account_ID, ...) — 指定ディメンションの組合せを検索し、存在しなければ自動生成(転記エンジンが使用)
  • MAccount.get(ctx, C_AcctSchema_ID, alias) — 別名から組合せを取得(仕訳入力の Alias 解決)
  • MAccount.getDefault(acctSchema, optionalNull) — 会計スキーマのデフォルト組合せを取得
  • MAccount.updateValueDescription(ctx, where, trxName) — エレメント変更時に既存組合せの表記を一括更新(MElementValue 等から呼ばれる)
  • Model Validator: 組合せ生成時の命名規則や、特定勘定科目とディメンションの組合せ禁止ルールは C_ValidCombination への TYPE_BEFORE_NEW バリデータで実装できます
  • このテーブルに標準の callout はありません(gw_column.tsv 上 callout 定義なし)
  • 独自ディメンション追加は会計スキーマの UserElement1/2 の活用が第一選択です(カスタム列追加より安全)

勘定科目組合せの自動生成ルールやディメンション必須制御は、Model Validator でコア改変なしに拡張できます。

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

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