コンテンツにスキップ

iDempiere 伝票タイプの使い方|会計 操作マニュアル・技術仕様

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

伝票タイプは、システムで使用するすべての伝票(受注・請求書・仕訳等)の処理ルールを定義するウィンドウです。各伝票タイプが「どのベース伝票として処理されるか」「どのシーケンスで採番するか」「完了時に何を自動生成するか」を決める、伝票処理の中枢設定です。

📌 ポイント: 伝票の会計転記・番号採番・帳票印字名はすべて伝票タイプ経由で決まります。特に受注のサブタイプ(受発注サブ伝票タイプ)は出荷・請求の自動生成に直結するため、業務フローに合わせて慎重に選択してください。

  • 伝票の定義(名称・印刷テキスト・伝票メモ)
  • ベース伝票タイプの割当(会計処理の種別決定)
  • 伝票番号シーケンスの割当と完了時の番号上書き(確定番号)
  • 受注完了時の出荷・請求書の自動生成設定
  • GLカテゴリの割当(仕訳の分類)
  • カウンター伝票(組織間取引の相手伝票)の自動作成設定
  • 出荷確認・ピック/QA確認の要求設定
  • 印刷書式・印刷部数の指定
タブ名テーブル項目数役割
伝票タイプC_DocType約39項目伝票の処理ルール全般
翻訳C_DocType_Trl約9項目名称・印刷テキスト・伝票メモの翻訳
graph TD
    A["🚀 メニューから開く<br/>会計管理 > 会計設定 > 伝票タイプ"] --> B["➕ 新規で名称・印刷テキストを入力"]
    B --> C["🏷️ ベース伝票タイプを選択<br/>(会計処理の種別が決まる)"]
    C --> D{受注系?}
    D -->|Yes| E["⚙️ 受発注サブ伝票タイプを選択<br/>(自動生成フラグが自動設定される)"]
    D -->|No| F["📒 GLカテゴリを割当"]
    E --> F
    F --> G["🔢 伝票番号シーケンスを設定<br/>(伝票番号自動採番)"]
    G --> H["💾 保存"]

メニューから開く 会計管理 > 会計設定 > 伝票タイプ 新規で名称・印刷テキストを入力 ベース伝票タイプを選択 (会計処理の種別が決まる) 受発注サブ伝票タイプを選択 (自動生成フラグが自動設定される) GLカテゴリを割当 伝票番号シーケンスを設定 (伝票番号自動採番) 保存 受注系?

⚠️ 注意: ベース伝票タイプは伝票の会計転記ロジックそのものを決定します。稼働後の変更は転記の不整合を招くため、新しい伝票タイプを追加して切り替える運用にしてください。

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

  1. ツールバーの「新規」ボタンをクリック
  2. 基本情報を入力:
    • 名称 / 印刷テキスト: 画面表示名と帳票印字名
    • ベース伝票タイプ: 論理的な伝票種別(GL仕訳・売上請求書等)
    • 販売(ON) / 購買(OFF): 販売取引か購買取引か
    • GLカテゴリ: 仕訳の分類カテゴリ(必須)
  3. 採番設定:
    • 伝票番号自働採番: チェック(デフォルト Y)
    • 伝票番号シーケンス: 使用するシーケンス(未指定なら標準)
    • 完成時伝票番号上書き: 完了時に確定番号へ振り直す場合にチェック
  4. 受注系の場合は 受発注サブ伝票タイプ を選択(標準受注・POS・倉庫受注・前受金受注等)
  5. 保存」をクリック
項目名必須説明
名称必須文字列伝票タイプ名
印刷テキスト必須文字列帳票に印字する名称
ベース伝票タイプ必須リスト論理的な伝票種別(会計処理を決定)
受発注サブ伝票タイプ-リスト受注のサブタイプ(自動生成挙動を決定)
GLカテゴリ必須選択仕訳の分類
販売(ON) / 購買(OFF)必須チェック販売取引フラグ
Generate Invoice必須チェック受注完了後の請求書自動生成(デフォルト N)
Generate Shipment必須チェック受注完了後の出荷自動生成(デフォルト N)
伝票番号自働採番必須チェックシーケンスによる採番(デフォルト Y)
伝票番号シーケンス-選択採番に使うシーケンス
完成時伝票番号上書き-チェック完了時に確定シーケンスで番号上書き
上書き伝票番号シーケンス-選択確定番号用シーケンス
カウンター伝票作成必須チェック組織間取引の相手伝票を自動作成(デフォルト Y)
Always Posted必須チェック会計スキーマ設定に関わらず常に転記(デフォルト N)
Can Be Reactivated必須チェック完了後の再有効化を許可(デフォルト N)
印刷書式 / 印刷部数-選択/整数帳票出力設定(部数デフォルト 1)

全項目は 画面リファレンス: 伝票タイプ を参照してください。

Q. Generate Invoice / Generate Shipment のチェックが勝手に変わります

Section titled “Q. Generate Invoice / Generate Shipment のチェックが勝手に変わります”

MDocType.beforeSave() は、受発注サブ伝票タイプが変更されると(前受金受注を除き)サブタイプに応じた自動生成フラグを強制セットします。POS 受注・倉庫受注などは出荷・請求の自動生成が仕様上固定されているためです。挙動を変えたい場合はサブタイプ自体を見直してください。

Q. 完了時に伝票番号が変わるのはなぜですか?

Section titled “Q. 完了時に伝票番号が変わるのはなぜですか?”

「完成時伝票番号上書き」がチェックされている場合、完了処理時に「上書き伝票番号シーケンス」から確定番号が採番され、下書き時の番号を置き換えます(setDefiniteDocumentNo の仕組み)。下書き番号と確定番号を分けたい税務要件等で使用します。

Q. ベース伝票タイプと伝票タイプの関係は?

Section titled “Q. ベース伝票タイプと伝票タイプの関係は?”

ベース伝票タイプ(DocBaseType)は会計転記エンジンが認識する論理種別で、伝票タイプはその業務上のバリエーションです。例えば「売上請求書」ベースの下に「通常請求書」「クレジットメモ」等の伝票タイプを複数定義できます。MDocType.getOfDocBaseType() でベース種別ごとの伝票タイプ一覧が取得されます。

Q. カウンター伝票とは何ですか?

Section titled “Q. カウンター伝票とは何ですか?”

同一システム内の組織間取引(例: 組織Aの発注 → 組織Bの受注)で、相手側の伝票を自動作成する機能です。「カウンター伝票作成」(デフォルト Y)と「デフォルトカウンター伝票」で制御します。

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

伝票タイプは C_DocType テーブル(アクセスレベル: System+Client)に格納され、MDocType クラス(478行)が管理します。markImmutable() を持つキャッシュ対応マスタで、全伝票クラス(MOrder / MInvoice / MJournal 等)が伝票処理・採番・転記の判断に参照する基盤クラスです。

classDiagram
    class MDocType {
        +getDocType(DocBaseType) int$
        +getOfDocBaseType(ctx, DocBaseType) MDocType[]$
        +getOfClient(ctx) MDocType[]$
        +get(C_DocType_ID) MDocType$
        +setGL_Category_ID() void
        +isQuotation() boolean
        +getIsAutoGenerateInout(docSubTypeSO) boolean$
        +getIsAutoGenerateInvoice(docSubTypeSO) boolean$
        +getPrintName(AD_Language) String
        #beforeSave(newRecord) boolean
    }
    class X_C_DocType {
        <<generated>>
    }
    class PO {
        <<abstract>>
    }
    MDocType --|> X_C_DocType
    X_C_DocType --|> PO
    MDocType --> MSequence : DocNoSequence_ID
    MDocType --> MGLCategory : GL_Category_ID

+getDocType(DocBaseType) int$ +getOfDocBaseType(ctx, DocBaseType) MDocType[]$ +getOfClient(ctx) MDocType[]$ +get(C_DocType_ID) MDocType$ +setGL_Category_ID() void +isQuotation() boolean +getIsAutoGenerateInout(docSubTypeSO) boolean$ +getIsAutoGenerateInvoice(docSubTypeSO) boolean$ +getPrintName(AD_Language) String #beforeSave(newRecord) boolean <> <> > X_C_DocType X_C_DocType --

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

C_DocType(伝票タイプ・主要カラム)

Section titled “C_DocType(伝票タイプ・主要カラム)”
カラム名必須説明備考
C_DocType_IDIDPK伝票タイプID主キー
Name / PrintNameStringY名称 / 印刷テキスト
DocBaseTypeListYベース伝票タイプ
DocSubTypeSOListN受発注サブ伝票タイプ
GL_Category_IDTableDirectYGLカテゴリ
IsSOTrxYesNoY販売取引
IsDocNoControlledYesNoY伝票番号自働採番デフォルト Y
DocNoSequence_IDTableN伝票番号シーケンス
IsOverwriteSeqOnComplete / DefiniteSequence_IDYesNo/TableN完成時番号上書き / 確定シーケンス
IsAutoGenerateInout / IsAutoGenerateInvoiceYesNoY出荷/請求の自動生成beforeSave でサブタイプに追従
IsCreateCounter / IsDefaultCounterDocYesNoYカウンター伝票IsCreateCounter デフォルト Y
IsAlwaysPostedYesNoY常に転記デフォルト N
IsCanBeReactivatedYesNoY再有効化可デフォルト N
AD_PrintFormat_ID / DocumentCopiesTableDirect/IntegerN/Y印刷書式 / 部数部数デフォルト 1

関連テーブル: C_DocType_Trl(翻訳: Name / PrintName / DocumentNote)

beforeSave() の自動補正(ソース確認済み)

Section titled “beforeSave() の自動補正(ソース確認済み)”

新規作成時、または IsAutoGenerateInout / IsAutoGenerateInvoice 変更時に、受発注サブ伝票タイプ(前受金受注を除く)から自動生成フラグを再設定します。判定リストは autoGenerateInOutList / autoGenerateInvoiceList(クラス定数)で定義されており、POS・倉庫受注等のサブタイプでは出荷・請求の自動生成が固定されます。

  • setGL_Category_ID(): デフォルトGLカテゴリの自動割当(新規伝票タイプ作成時)
  • setIsSOTrx(): ベース伝票タイプから販売/購買フラグを導出
  • isQuotation() / isProposal() / isOffer(): 見積系サブタイプの判定
  • getShipmentReceiptDocType(docTypeId): 受注タイプに対応する出荷伝票タイプの解決
  • getPrintName(AD_Language): 翻訳済み印刷名の取得(帳票出力で使用)
  • Model Validator: 伝票タイプの変更統制(本番でのシーケンス変更禁止等)を modelChange で追加できます
  • カスタム伝票タイプの追加: 既存ベース伝票タイプの下に伝票タイプを追加する構成が基本です。ベース伝票タイプ自体の追加は転記エンジン(Doc クラス)の実装を伴います
  • このテーブルにカラム callout の定義はありません

伝票タイプ設計(番号体系・自動生成フロー・カウンター伝票)は業務プロセス全体の要です。日本の商習慣(締め請求・確定番号)に合わせた設計をご支援します。

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

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