Skip to content

iDempiere パフォーマンスカラースキーマの使い方|会計 操作マニュアル・技術仕様

This content is not available in your language yet.

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

パフォーマンスカラースキーマは、パフォーマンス測定(目標に対する達成率)を色で視覚化するための設定マスタです。「50%までは赤・100%までは黄・それ以上は緑」のように、達成率の閾値と色の組合せを 2〜4 段階で定義できます。

📌 ポイント: 各カラーの「パーセント」はその色が使われる上限値です(例: 第一カラーパーセント=50 なら達成率 0〜50% が第一カラー)。パーセントは 100% を超える値も設定でき(上限なし)、目標未設定の測定値は白で表示されます。

パフォーマンスカラースキーマでできること

Section titled “パフォーマンスカラースキーマでできること”
  • 達成率に応じた色分けの定義(2段階〜4段階)
  • 各段階の閾値(パーセント)と色(印刷カラー)の組合せ設定
  • 3色構成(例: 赤-黄-緑)や4色構成(例: グレー-ブロンズ-シルバー-ゴールド)の表現
  • 100% 超の達成率に対する色の割当(パーセント上限なし)

パフォーマンスカラースキーマは 1 タブのシンプルなマスタです。

タブ名テーブル項目数役割
カラースキーマPA_ColorSchema約14項目閾値と色の組合せ定義(第一〜第四カラー)
graph TD
    A["🚀 メニューから開く<br/>会計管理 > パフォーマンス測定 ><br/>パフォーマンスカラースキーマ"] --> B["➕ 新規で名称を入力"]
    B --> C["🔴 第一カラー + パーセントを設定<br/>(例: 50% まで赤)"]
    C --> D["🟡 第二カラー + パーセントを設定<br/>(例: 100% まで黄)"]
    D --> E{3色/4色にする?}
    E -->|する| F["🟢 第三・第四カラーを設定<br/>(例: 9999% まで緑)"]
    E -->|2色でよい| G["💾 保存"]
    F --> G

メニューから開く 会計管理 > パフォーマンス測定 > パフォーマンスカラースキーマ 新規で名称を入力 第一カラー + パーセントを設定 (例: 50% まで赤) 第二カラー + パーセントを設定 (例: 100% まで黄) 第三・第四カラーを設定 (例: 9999% まで緑) 保存 3色/4色にする? する 2色でよい

アクセス方法(メニューパス)

Section titled “アクセス方法(メニューパス)”

メニューから「会計管理 ▸ パフォーマンス測定 ▸ パフォーマンスカラースキーマ」を開きます。

  1. 新規」ボタンをクリック
  2. 名称を入力(例: 標準3色(赤黄緑)
  3. 閾値と色を設定:
    • 第一カラーパーセント / 第一カラー(必須): 例 50 / 赤
    • 第二カラーパーセント / 第二カラー(必須): 例 100 / 黄
    • 第三カラーパーセント / 第三カラー(任意): 例 9999 / 緑
    • 第四カラーパーセント / 第四カラー(任意)
  4. 保存」をクリック

⚠️ 注意: パーセントは第一 ≦ 第二 ≦ 第三 ≦ 第四 の昇順である必要があります。逆順で入力しても保存時に自動調整(小さい方に揃える)されるため、意図した閾値になっているか保存後に確認してください。

項目名必須説明
名称必須文字列スキーマの識別名
説明-文字列補足説明
第一カラーパーセント必須整数この値までは第一カラーを使用
第一カラー必須選択最初の色(印刷カラー)
第二カラーパーセント必須整数この値までは第二カラーを使用
第二カラー必須選択2番目の色
第三カラーパーセント / 第三カラー-整数/選択3色構成にする場合
第四カラーパーセント / 第四カラー-整数/選択4色構成にする場合
エンティティタイプ必須選択辞書エンティティタイプ(所有・同期の判定)

全項目一覧はリファレンス参照

Q. 閾値を逆順(第一 > 第二)に入れたらどうなりますか?

Section titled “Q. 閾値を逆順(第一 > 第二)に入れたらどうなりますか?”

MColorSchema.beforeSave() が昇順を保証するため、第一カラーパーセントが第二カラーパーセントより大きい場合は第一が第二の値に自動的に切り下げられます(第二/第三、第三/第四も同様)。エラーにはならないので、保存後に値を確認してください。

Q. 達成率が 100% を超えた場合の色は?

Section titled “Q. 達成率が 100% を超えた場合の色は?”

パーセントに上限はありません。最上位の閾値(例: 第三カラーパーセント=9999)までをその色でカバーする設定が標準的です。iDempiere 標準のデフォルトスキーマも「50% まで赤・100% まで黄・9999% まで緑」の 3 色構成です。

Q. 目標が設定されていない測定値は何色になりますか?

Section titled “Q. 目標が設定されていない測定値は何色になりますか?”

白で表示されます(ウィンドウヘルプに明記)。カラースキーマの設定対象は目標(ゴール)が定義された測定値のみです。

Q. 2色だけ・4色構成にできますか?

Section titled “Q. 2色だけ・4色構成にできますか?”

できます。必須は第一・第二カラーのみで、赤-緑の 2 段階から、グレー-ブロンズ-シルバー-ゴールドのような 4 段階まで対応します。

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

パフォーマンスカラースキーマは PA_ColorSchema テーブル(アクセスレベル: System+Client)に格納されます。MColorSchema クラス(281行)が閾値の昇順補正と達成率→色の解決(getColor())を担い、Immutable キャッシュに対応します。

classDiagram
    class MColorSchema {
        +getColor(ctx, PA_ColorSchema_ID, percent) Color$
        +get(ctx, PA_ColorSchema_ID) MColorSchema$
        +setDefault()
        #beforeSave(newRecord) boolean
        +getColor(percent) Color
        +markImmutable() MColorSchema
    }
    class X_PA_ColorSchema {
        <<generated>>
    }
    class PO {
        <<abstract>>
    }
    MColorSchema --|> X_PA_ColorSchema
    X_PA_ColorSchema --|> PO
    MColorSchema --> MPrintColor : 色解決

+getColor(ctx, PA_ColorSchema_ID, percent) Color$ +get(ctx, PA_ColorSchema_ID) MColorSchema$ +setDefault() #beforeSave(newRecord) boolean +getColor(percent) Color +markImmutable() MColorSchema <> <> > X_PA_ColorSchema X_PA_ColorSchema --

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

カラム名必須説明備考
PA_ColorSchema_IDIDPKカラースキーマID
NameString(60)Y名称識別子
Mark1Percent / AD_PrintColor1_IDInteger/TableY第一閾値 / 第一カラー
Mark2Percent / AD_PrintColor2_IDInteger/TableY第二閾値 / 第二カラー
Mark3Percent / AD_PrintColor3_IDInteger/TableN第三閾値 / 第三カラー
Mark4Percent / AD_PrintColor4_IDInteger/TableN第四閾値 / 第四カラー
EntityTypeTable(40)Yエンティティタイプデフォルトは SQL 式で決定
IsActiveYesNoY有効

Mark1〜4 のパーセントが昇順になるよう自動補正します(エラーにせず切り下げ):

  1. Mark1Percent > Mark2Percent → Mark1 を Mark2 の値へ
  2. Mark2Percent > Mark3Percent(Mark3 ≠ 0)→ Mark2 を Mark3 の値へ
  3. Mark3Percent > Mark4Percent(Mark4 ≠ 0)→ 補正
flowchart TD
    A[percent] --> B{percent &lt;= Mark1<br/>or Mark2 = 0}
    B -->|Yes| C[第一カラー]
    B -->|No| D{percent &lt;= Mark2<br/>or Mark3 = 0}
    D -->|Yes| E[第二カラー]
    D -->|No| F{percent &lt;= Mark3<br/>or Mark4 = 0}
    F -->|Yes| G[第三カラー]
    F -->|No| H[第四カラー]
    C --> I["MPrintColor.get() で<br/>実際の Color へ変換<br/>(未設定時は黒)"]
    E --> I
    G --> I
    H --> I

MPrintColor.get() で 実際の Color へ変換 (未設定時は黒) percent <= Mark1 or Mark2 = 0 percent <= Mark2 or Mark3 = 0 percent <= Mark3 or Mark4 = 0 第一カラー 第二カラー 第三カラー 第四カラー

色が解決できない場合は設定済みの最上位カラーへフォールバックし、それも無ければ黒(Color.black)を返します。

setDefault() は「Default」という名称で 50% まで赤(AD_PrintColor_ID=102)・100% まで黄(113)・9999% まで緑(103) の 3 色構成を設定します。

  • Model Validator: 閾値の運用ルール(例: 必ず 3 色構成にする)を TYPE_BEFORE_NEW / TYPE_BEFORE_CHANGE で強制できます
  • Callout: 標準ではこのテーブルにカラム callout は定義されていません
  • 色の追加: 使用できる色は印刷カラー(AD_PrintColor)マスタで管理されており、独自色の追加が可能です

リファレンスページ・メニューに直接関連するプロセスは登録されていません。


KPI ダッシュボードの色分けルールや独自の達成率表示は、カラースキーマと Model Validator の組合せで柔軟に構成できます。

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

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