Skip to content

iDempiere レポート列セットの使い方|会計 操作マニュアル・技術仕様

This content is not available in your language yet.

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

レポート列セットは、会計レポート(財務諸表)の列方向に何を表示するかを定義するウィンドウです。「当期実績」「前期実績」「予算」「差異(計算列)」といった列の並びをここで設計し、レポート行セットと組み合わせて会計レポートを構成します。

📌 ポイント: 列の性格は「カラムタイプ」で決まります。相対期間(当期・前期・年初来)/計算(列同士の加減算・比率)/セグメント値(組織別・部門別)の 3 タイプを押さえれば、月次推移表や予実対比表を自由に組めます。

レポート列セットでできること

Section titled “レポート列セットでできること”
  • 会計レポートの列構成(当期・前期・年初来・予算等)の定義
  • 相対期間指定による期間比較列(例: -1=前期、0=当期)
  • 列間計算(加算・減算・範囲合計・比率)による差異列・合計列
  • 転記タイプ(実績/予算)と GL予算の指定による予実対比
  • セグメント値列による組織別・部門別等の内訳表示
  • 既存列セットからの列の一括コピー(カラムコピー)
タブ名テーブル項目数役割
レポート列セットPA_ReportColumnSet約6項目列セットの名称・コピー処理
レポート列PA_ReportColumn約45項目個々の列の定義
翻訳PA_ReportColumn_Trl約8項目列名の多言語対応
graph TD
    A["🚀 メニューから開く<br/>会計管理 > 会計レポート > レポート列セット"] --> B["➕ 列セットを新規作成<br/>(例: 予実対比)"]
    B --> C["📋 レポート列タブで列を追加"]
    C --> D{カラムタイプ}
    D -->|相対期間| E["📅 相対期間を指定<br/>(0=当期, -1=前期)"]
    D -->|計算| F["🧮 計算方法と演算数1/2を指定<br/>(列同士の加減算・比率)"]
    D -->|セグメント値| G["🏢 タイプ(組織等)と対象を指定"]
    E --> H["💰 金額タイプ・期間タイプ・<br/>転記タイプを設定"]
    F --> H
    G --> H
    H --> I["💾 保存"]
    I --> J["📊 会計レポートで<br/>行セットと組み合わせて実行"]

メニューから開く 会計管理 > 会計レポート > レポート列セット 列セットを新規作成 (例: 予実対比) レポート列タブで列を追加 相対期間を指定 (0=当期, -1=前期) 計算方法と演算数1/2を指定 (列同士の加減算・比率) タイプ(組織等)と対象を指定 金額タイプ・期間タイプ・ 転記タイプを設定 保存 会計レポートで 行セットと組み合わせて実行 カラムタイプ 相対期間 計算 セグメント値

メニューから「会計管理 > 会計レポート > レポート列セット」を開きます。

  1. ツールバーの「新規」ボタンをクリックし、列セットの名称を入力して保存
  2. レポート列」タブに移動し、列を 1 つずつ追加:
    • 名称: 列見出し(例: 当期実績
    • シーケンスNo: 列の並び順(自動採番: 最大値+10)
    • カラムタイプ: 相対期間/計算/セグメント値
    • 転記タイプ: 実績(初期値)/予算 等
    • 金額タイプ: 残高・借方・貸方など集計する金額の種類
    • 期間タイプ: 期間/年初来/合計など集計範囲
  3. 保存」をクリック
列名カラムタイプ設定
当期実績相対期間相対期間=0、転記タイプ=実績
当期予算相対期間相対期間=0、転記タイプ=予算、予算=対象GL予算
差異計算計算=減算、演算数1=当期実績、演算数2=当期予算
達成率計算計算=比率、演算数1=当期実績、演算数2=当期予算

ヘッダタブの「カラムコピー」ボタンで、他の列セットの列定義を一括コピーできます。類似レポートを作る際はコピー後に差分だけ修正するのが効率的です。

項目名必須説明
名称必須文字列列見出し
シーケンスNo必須整数列の並び順(自動: 最大+10)
カラムタイプ必須リスト相対期間(初期値)/計算/セグメント値
転記タイプ必須リスト実績(初期値 A)/予算等
予算-選択転記タイプ=予算の場合の対象GL予算
金額タイプ-リスト集計金額の種類(初期値: 残高)
期間タイプ-リスト集計期間(初期値: 期間)
相対期間/相対期間(To)-数値期間オフセット(0=当期、-1=前期)
計算-リスト加算・減算・範囲・比率
演算数 1/演算数 2-選択計算対象の列
タイプ(エレメント)-リストセグメント値列の対象エレメント
印刷必須チェック列を印字するか(作業列は非表示に)
乗数/丸め係数/フォーマットパターン-数値/文字列表示調整

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

Q. カラムタイプを変えたら設定していた項目が消えました。

Section titled “Q. カラムタイプを変えたら設定していた項目が消えました。”

仕様です。MReportColumn.beforeSave() はカラムタイプと矛盾する設定を自動クリアします。相対期間→エレメントタイプと計算をクリア、計算→エレメントタイプと相対期間をクリア、セグメント値→計算をクリア、という排他制御です。

Q. 月次推移表(12ヶ月横並び)は作れますか?

Section titled “Q. 月次推移表(12ヶ月横並び)は作れますか?”

作れます。相対期間 -110 の列を 12 本並べます。相対期間(To) を使うと複数期間の合算列(例: 上期合計)も定義できます。

Q. 差異列がマイナス表示になります。符号を反転できますか?

Section titled “Q. 差異列がマイナス表示になります。符号を反転できますか?”

「乗数(Multiplier)」に -1 を設定するか、「反対の符号を許可」をチェックして列単位で符号を制御します。収益科目の表示符号は行セット側(レポート行の符号設定)との組み合わせで調整してください。

Q. 計算列の演算数に指定した列は印刷したくありません。

Section titled “Q. 計算列の演算数に指定した列は印刷したくありません。”

演算対象の列の「印刷」チェックを外せば、集計には使われつつレポートには表示されなくなります。

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

レポート列セットは PA_ReportColumnSet テーブル(MReportColumnSet クラス・148行)と PA_ReportColumn テーブル(MReportColumn クラス・541行)で構成されます。モデルクラスは org.compiere.model ではなく org.compiere.report パッケージにあり、会計レポートエンジン FinReport(2,076行)が実行時に列定義を SQL へ展開します。Document 型ではありません。

classDiagram
    class MReportColumnSet {
        +getColumns() MReportColumn[]
        +list()
    }
    class MReportColumn {
        +getSelectClause(withSum) String
        +getWhereClause(PA_Hierarchy_ID) String
        +isPeriod() boolean
        +isYear() boolean
        +isTotal() boolean
        +isColumnTypeCalculation() boolean
        +isColumnTypeRelativePeriod() boolean
        +isColumnTypeSegmentValue() boolean
        #beforeSave(newRecord) boolean
    }
    class FinReport {
        <<process 会計レポート実行>>
    }
    MReportColumnSet --|> X_PA_ReportColumnSet : generated
    MReportColumn --|> X_PA_ReportColumn : generated
    MReportColumnSet --> MReportColumn : has many
    FinReport --> MReportColumnSet : 列を展開
    FinReport --> Fact_Acct : 集計

+getColumns() MReportColumn[] +list() +getSelectClause(withSum) String +getWhereClause(PA_Hierarchy_ID) String +isPeriod() boolean +isYear() boolean +isTotal() boolean +isColumnTypeCalculation() boolean +isColumnTypeRelativePeriod() boolean +isColumnTypeSegmentValue() boolean #beforeSave(newRecord) boolean <> > X_PA_ReportColumnSet : generated MReportColumn --

パッケージ: org.compiere.report ソースファイル: org.adempiere.base/src/org/compiere/report/MReportColumnSet.java / MReportColumn.java / FinReport.java

PA_ReportColumnSet(レポート列セット)

Section titled “PA_ReportColumnSet(レポート列セット)”
カラム名必須説明備考
PA_ReportColumnSet_IDIDPK列セットID主キー
NameString(60)Y名称
ProcessingButtonYカラムコピー他列セットからの一括コピー処理

PA_ReportColumn(レポート列・主要カラム)

Section titled “PA_ReportColumn(レポート列・主要カラム)”
カラム名必須説明備考
PA_ReportColumn_IDIDPK列ID主キー
PA_ReportColumnSet_IDTableDirectY列セットFK
NameString(255)Y列見出し
SeqNoIntegerY並び順デフォルト @SQL=MAX(SeqNo)+10
ColumnTypeList(1)Yカラムタイプデフォルト R(相対期間)
PostingTypeList(1)Y転記タイプデフォルト A(実績)
GL_Budget_IDTableDirectN予算FK予算列用
PAAmountTypeList(1)N金額タイプデフォルト B(残高)
PAPeriodTypeList(1)N期間タイプデフォルト P(期間)
RelativePeriod / RelativePeriodToNumberN相対期間0=当期、負値=過去
CalculationTypeList(1)N計算方法デフォルト A
Oper_1_ID / Oper_2_IDTableN演算数1/2計算列の対象列
ElementTypeList(2)Nエレメントタイプセグメント値列用
Org_ID / C_ElementValue_ID / M_Product_ID 他Table / SearchNセグメント対象IsIncludeNulls* とペア
IsPrintedYesNoY印刷デフォルト Y
Multiplier / RoundFactor / FormatPatternNumber / Integer / StringN表示調整
CurrencyType / C_Currency_ID / IsAdhocConversionList / TableDirect / YesNoN通貨換算列ウィンドウ非表示項目あり

MReportColumn.beforeSave() — カラムタイプによる排他制御:

ColumnType自動クリアされる項目
RelativePeriod(相対期間)ElementType, CalculationType
Calculation(計算)ElementType, RelativePeriod
SegmentValue(セグメント値)CalculationType

実行時(FinReport):

  • getSelectClause(withSum) — 金額タイプ(残高/借方/貸方/数量)に応じた集計 SELECT 句を生成
  • getWhereClause(PA_Hierarchy_ID) — セグメント値列の絞り込み条件をレポート階層ツリー込みで生成
  • isPeriod() / isYear() / isTotal() — 期間タイプ判定。FinReport が期間・年初来・全期間の集計範囲を切り替えます
  • 計算列(加減算・範囲・比率)は各列の集計後に FinReport 側で演算されます
  • 関連プロセス: ヘッダの「カラムコピー」ボタン(Processing)は他列セットの列を複製する標準プロセスです
  • Model Validator: 列定義の変更統制や命名規則は PA_ReportColumn へのバリデータで実装できます
  • レポート出力自体の拡張(独自レイアウト等)は FinReport / FinReportJasper の置き換えではなく、Report Cube・印刷フォーマットの活用を先に検討してください
  • このテーブルに標準の callout はありません

月次推移・予実対比・部門別 P/L など、財務レポートの設計から出力フォーマット調整までコア改変なしで対応できます。

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

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