コンテンツにスキップ

iDempiere 資産(固定資産)の使い方|固定資産管理 操作マニュアル・技術仕様

📖 固定資産管理の全体像: 固定資産管理の業務フロー全体図 も合わせてご覧ください。

資産ウィンドウは、iDempiereの固定資産管理における中核機能です。有形固定資産(建物・機械・車両・備品等)および無形固定資産(ソフトウェア・特許権等)の取得から除却までのライフサイクルを一元管理できます。

資産は自社所有資産と顧客資産の両方を管理でき、所有フラグ(IsOwned)および保有フラグ(IsInPosession)で区別されます。資産グループから減価償却方法・耐用年数の初期値が自動適用されます。

📌 ポイント: iDempiereの固定資産管理は仕入請求書・プロジェクト・棚卸と統合されています。仕入請求書の完了時に資産追加(A_Asset_Addition)が自動生成され、それを活性化することで資産が稼働中になります。

  • 固定資産の取得情報(品目・取得日・取得価額)を登録・管理
  • 減価償却の自動計算(定額法・定率法等、資産グループで設定)
  • 資産のステータス管理(新規・稼働中・除却・売却等)
  • 仕入請求書・入荷伝票からの資産自動作成
  • 在庫棚卸・プロジェクトからの資産作成
  • 資産の移管・再評価・除却処理
  • 会計スキーマ別の減価償却ワークファイル自動生成
stateDiagram-v2
    [*] --> 新規(NW): 資産登録
    新規(NW) --> 稼働中(AC): 資産追加(活性化)
    稼働中(AC) --> 償却完了(DP): 耐用年数到達
    稼働中(AC) --> 保全中(PR): 一時保全
    稼働中(AC) --> 除却(DI): 除却処理
    稼働中(AC) --> 売却(SO): 売却処理
    稼働中(AC) --> 退役(RE): 退役処理
    保全中(PR) --> 稼働中(AC): 再稼働
    償却完了(DP) --> 除却(DI): 除却処理

*

graph TD
    subgraph "Asset(ウィンドウ 251)"
        T1["🏢 Asset(資産)<br/>A_Asset<br/>47項目"]
        T2["📦 Product(関連品目)<br/>A_Asset_Product<br/>9項目"]
        T3["📊 Asset Balances(資産残高)<br/>A_Depreciation_Workfile<br/>24項目"]
        T4["📒 Accounting Setup(会計設定)<br/>A_Asset_Acct<br/>14項目"]
        T5["➕ Activation/Addition(取得・追加)<br/>A_Asset_Addition<br/>37項目"]
        T6["🗑️ Disposal(除却)<br/>A_Asset_Disposed<br/>11項目"]
        T7["📜 Asset History(変更履歴)<br/>A_Asset_Change<br/>65項目"]
        T8["💰 Finance Information<br/>A_Asset_Info_Fin<br/>15項目"]
        T9["📄 License Information<br/>A_Asset_Info_Lic<br/>10項目"]
        T10["🛡️ Insurance Information<br/>A_Asset_Info_Ins<br/>10項目"]
        T11["💸 Expense(償却費)<br/>A_Depreciation_Exp<br/>26項目"]
    end
    T1 --> T2
    T1 --> T3
    T1 --> T4
    T1 --> T5
    T1 --> T6
    T1 --> T7
    T1 --> T8
    T1 --> T9
    T1 --> T10
    T1 --> T11

Asset(ウィンドウ 251) Asset(資産) A_Asset 47項目 Product(関連品目) A_Asset_Product 9項目 Asset Balances(資産残高) A_Depreciation_Workfile 24項目 Accounting Setup(会計設定) A_Asset_Acct 14項目 Activation/Addition(取得・追加) A_Asset_Addition 37項目 Disposal(除却) A_Asset_Disposed 11項目 Asset History(変更履歴) A_Asset_Change 65項目 Finance Information A_Asset_Info_Fin 15項目 License Information A_Asset_Info_Lic 10項目 Insurance Information A_Asset_Info_Ins 10項目 Expense(償却費) A_Depreciation_Exp 26項目

タブ名テーブル役割主な入力項目
資産(Asset)A_Asset資産の基本情報(名称・グループ・ステータス等)資産名、資産グループ、取得日、品目
関連品目(Product)A_Asset_Product資産に関連する品目情報品目、数量
資産残高(Asset Balances)A_Depreciation_Workfile償却計算の作業データ耐用年数、取得価額、累計償却額
会計設定(Accounting Setup)A_Asset_Acct会計スキーマ別の勘定科目設定資産勘定、減価償却累計額勘定
取得・追加(Activation/Addition)A_Asset_Addition資産取得・追加情報取得日、取得価額、入手元
除却(Disposal)A_Asset_Disposed除却・売却情報除却日、処分価額
変更履歴(Asset History)A_Asset_Changeステータス変更の履歴(自動記録)変更種別、変更日
財務情報(Finance Information)A_Asset_Info_Finリース・融資等の財務情報融資元、返済条件
ライセンス情報(License Information)A_Asset_Info_Licソフトウェアライセンス情報ライセンスキー、有効期限
保険情報(Insurance Information)A_Asset_Info_Ins資産保険の情報保険会社、保険金額
償却費(Expense)A_Depreciation_Exp計上済み減価償却費の明細期間、償却額
graph TD
    A[資産グループが設定済みか確認] --> B{取得方法}
    B -->|仕入請求書| C[品目に資産グループを設定]
    C --> D[仕入請求書を完了処理]
    D --> E[資産追加レコードが自動生成]
    B -->|手動登録| F[資産ウィンドウで新規作成]
    F --> G[資産名・グループ・取得日を入力]
    G --> H[自社所有・減価償却対象フラグを設定]
    H --> E
    E --> I[Activation/Additionタブで活性化処理]
    I --> J[資産ステータスが稼働中(AC)に変更]
    J --> K[定期的な減価償却処理]
    K --> L[除却・売却時に除却処理]

取得方法 仕入請求書 手動登録 資産グループが設定済みか確認 品目に資産グループを設定 仕入請求書を完了処理 資産追加レコードが自動生成 資産ウィンドウで新規作成 資産名・グループ・取得日を入力 自社所有・減価償却対象フラグを設定 Activation/Additionタブで活性化処理 資産ステータスが稼働中(AC)に変更 定期的な減価償却処理 除却・売却時に除却処理

💡 ヒント: 「資産グループ」を正しく設定することで、減価償却方法・耐用年数・勘定科目が自動的に適用されます。事前に資産グループマスタを整備しておくと、個別設定の手間を大幅に削減できます。

⚠️ 注意: 資産ステータスが「新規(NW)」以外に遷移した後は削除できません。誤登録の場合は除却処理を行ってください。また、取得価額の修正は資産追加(A_Asset_Addition)から行います。

メニューから「固定資産 > 資産」を開きます。

  1. ツールバーの「新規」ボタンをクリック
  2. 基本情報を入力:
    • 資産名: 資産の名称を入力(例: 「本社ビル」「業務サーバー」)
    • 検索キー: 管理番号を入力(未入力時はIDが自動セット)
    • 資産グループ: 資産の分類を選択(減価償却設定が自動適用)
    • 品目: 関連する品目マスタを選択(任意)
    • 取得日: 資産の取得日を入力
  3. 所有・保有情報を設定:
    • 自社所有: 自社の資産の場合にチェック
    • 自社保有: 現在保有している場合にチェック
  4. 保存」をクリック

固定資産品目を含む仕入請求書を完了すると、資産レコードが自動作成されます。

  1. 仕入請求書の明細行で資産グループが設定された品目を指定
  2. 仕入請求書を完了処理
  3. 資産追加(A_Asset_Addition)レコードが自動生成
  4. 資産追加を処理すると、資産が「稼働中」に遷移
項目名必須説明
検索キーY文字列資産の管理番号
資産名Y文字列資産の名称
資産グループY選択資産分類(減価償却設定の初期値を決定)
資産ステータス自動リストNW/AC/DP/DI/SO/PR/RE
品目-検索関連する品目マスタ
取得日-日付資産の取得日(サービス開始日)
稼働開始日自動日付資産の稼働開始日
自社所有Yチェック自社資産かどうか
自社保有Yチェック現在保有しているかどうか
減価償却対象Yチェック減価償却を行うかどうか
管理番号-文字列物理的な管理番号(備品シール等)
シリアル番号-文字列製造シリアル番号
ロット番号-文字列ロット番号
取引先-検索顧客資産の場合の取引先
処理済み自動チェックステータスがNW以外で自動チェック
ステータスコード説明減価償却
新規NW登録直後の初期状態未開始
稼働中AC業務で使用中実行中
償却完了DP耐用年数到達、帳簿価額=残存価額完了
保全中PR一時的に使用停止停止
除却DI廃棄処理済み停止
売却SO売却処理済み停止
退役RE退役処理済み停止

Q. 資産の減価償却方法はどこで設定しますか?

Section titled “Q. 資産の減価償却方法はどこで設定しますか?”

資産グループの会計設定(A_Asset_Group_Acct)で設定します。資産グループで定額法・定率法等を選択すると、新規資産作成時に自動適用されます。詳細は資産グループの使い方を参照してください。

ステータスが「新規」で未処理の資産は削除可能です。稼働中以降の資産は除却処理を行ってください。削除時は関連する資産追加レコードも自動削除されます。

Q. 仕入請求書から資産が自動作成されない場合は?

Section titled “Q. 仕入請求書から資産が自動作成されない場合は?”

品目マスタまたは品目カテゴリに資産グループが設定されていることを確認してください。また、品目の「資産タイプ」が適切に設定されている必要があります。

Q. 複数の会計スキーマで減価償却を管理できますか?

Section titled “Q. 複数の会計スキーマで減価償却を管理できますか?”

はい。資産グループの会計設定で複数の会計スキーマに対して個別の減価償却方法・耐用年数を設定できます。資産作成時に各スキーマの減価償却ワークファイルが自動生成されます。

graph TD
    A[仕入請求書] -->|自動作成| B[資産追加]
    C[在庫棚卸] -->|資産作成| B
    D[プロジェクト] -->|資産作成| B
    B -->|活性化| E[資産]
    E -->|定期処理| F[減価償却]
    E -->|除却| G[資産除却]
    E -->|移管| H[資産移管]
    E -->|再評価| I[資産再評価]
    F --> J[仕訳帳]
    G --> J

自動作成 資産作成 活性化 定期処理 除却 移管 再評価 仕入請求書 資産追加 在庫棚卸 プロジェクト 資産 減価償却 資産除却 資産移管 資産再評価 仕訳帳


iDempiereの固定資産管理は、資産の取得から減価償却・除却までのライフサイクルを包括的に管理できます。 日本の会計基準に対応した減価償却計算をオープンソースERPで実現しませんか?

As-Link株式会社では、iDempiereの導入支援・カスタマイズ開発を承っております。

OSS ERP導入サービスの詳細はこちら


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

資産は固定資産のライフサイクルを管理するマスタ型レコードで、A_Asset テーブルに格納されます。MAsset クラス(約650行)が中核ビジネスロジックを担い、仕入請求書・入荷伝票・在庫棚卸・プロジェクトからの自動作成に対応しています。減価償却計算は MDepreciationWorkfile と連携して実行されます。

classDiagram
    class MAsset {
        +get(Properties, int, String) MAsset
        +forASI(Properties, int, int) Collection
        +setAssetGroup(MAssetGroup) void
        +getAssetGroup() MAssetGroup
        +setASI(MAttributeSetInstance) void
        +updateStatus() void
        +changeStatus(String, Timestamp) void
        +beforeSave(boolean) boolean
        +afterSave(boolean, boolean) boolean
        +beforeDelete() boolean
    }
    class X_A_Asset {
        <<generated>>
    }
    class PO {
        <<abstract>>
    }
    MAsset --|> X_A_Asset
    X_A_Asset --|> PO
    MAsset --> MAssetGroup : belongs to
    MAsset --> MAssetAcct : has many
    MAsset --> MDepreciationWorkfile : has many
    MAsset --> MAssetAddition : has many
    MAsset --> MAssetChange : tracks changes
    MAsset --> MAssetDisposed : disposal

+get(Properties, int, String) MAsset +forASI(Properties, int, int) Collection +setAssetGroup(MAssetGroup) void +getAssetGroup() MAssetGroup +setASI(MAttributeSetInstance) void +updateStatus() void +changeStatus(String, Timestamp) void +beforeSave(boolean) boolean +afterSave(boolean, boolean) boolean +beforeDelete() boolean <> <> > X_A_Asset X_A_Asset --

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

カラム名必須説明備考
A_Asset_IDIDPK資産ID主キー
AD_Client_IDTableDirectYクライアント
AD_Org_IDTableDirectY組織
ValueStringY検索キー管理番号
NameStringY名前資産名称
A_Asset_Group_IDTableDirectY資産グループ減価償却設定の初期値
A_Asset_StatusListYステータスNW/AC/DP/DI/SO/PR/RE
A_Asset_CreateDateDateN取得日サービス開始日
AssetActivationDateDateN稼働開始日自動セット
AssetServiceDateDateNサービス開始日
AssetDisposalDateDateN除却日除却・売却時にセット
M_Product_IDSearchN品目品目マスタ参照
M_AttributeSetInstance_IDTableDirectN属性セットインスタンス
IsOwnedYesNoY自社所有資産グループから初期値
IsInPosessionYesNoY自社保有
IsDepreciatedYesNoY減価償却対象資産グループから初期値
IsFullyDepreciatedYesNoY償却完了ステータス連動で自動更新
IsDisposedYesNoY除却済みステータス連動で自動更新
A_Parent_Asset_IDTableDirectN親資産自身のIDが初期値
InventoryNoStringN管理番号未入力時はIDが自動セット
SerNoStringNシリアル番号
LotStringNロット番号
C_BPartner_IDSearchN取引先顧客資産の場合
ProcessedYesNoY処理済みNW以外で自動チェック
QtyQuantityN数量
erDiagram
    A_Asset ||--o{ A_Asset_Acct : "会計設定"
    A_Asset ||--o{ A_Depreciation_Workfile : "減価償却計算"
    A_Asset ||--o{ A_Asset_Addition : "資産追加"
    A_Asset ||--o{ A_Asset_Change : "変更履歴"
    A_Asset ||--o{ A_Asset_Disposed : "除却"
    A_Asset ||--o{ A_Asset_Use : "利用履歴"
    A_Asset }o--|| A_Asset_Group : "分類"
    A_Asset }o--o| M_Product : "品目"
    A_Asset }o--o| C_BPartner : "取引先"
    A_Asset_Acct }o--|| C_AcctSchema : "会計スキーマ"

会計設定 減価償却計算 資産追加 変更履歴 除却 利用履歴 分類 品目 取引先 会計スキーマ

MAsset は以下の複数のコンストラクタにより、さまざまなソースから資産を作成できます。

コンストラクタソース主な初期値
MAsset(MMatchInv)仕入請求照合品目、資産グループ、取得日を請求書/入荷から取得
MAsset(MIFixedAsset)固定資産インポート管理番号、品目、サービス開始日をインポートデータから取得
MAsset(MProject)プロジェクトプロジェクト名・説明を継承
MAsset(MInOut, MInOutLine, int)入荷伝票入荷情報から作成(顧客資産)
MAsset(MInventory, MInventoryLine, ...)在庫棚卸品目カテゴリ/品目の資産グループを使用

保存時バリデーション(beforeSave)

Section titled “保存時バリデーション(beforeSave)”
  1. 親資産の設定: 未設定の場合、自身のIDをセット
  2. 管理番号のトリム: 前後の空白を除去
  3. 資産グループの補完: 未設定の場合、デフォルトグループを適用
  4. 取引先住所の同期: C_BPartner_Location_IDが変更された場合、C_Location_IDをコピー
  5. 属性セットインスタンスの作成: 品目が設定されASIが未作成の場合、新規ASIを作成
  6. ステータスの更新: updateStatus() により各フラグを同期
  1. 親資産IDの補完: afterSave時にDB直接更新で自身のIDをセット
  2. 管理番号の自動採番: 未入力の場合、レコードIDを管理番号として設定
  3. 新規レコード時の初期化:
    • 資産グループから IsDepreciatedIsOwned を継承
    • 資産グループ会計レコードごとに MAssetAcct(資産会計)を作成
    • 資産グループ会計レコードごとに MDepreciationWorkfile(減価償却ワークファイル)を作成
    • 耐用年数(年/月)を資産グループ会計から設定
    • MAssetChange で変更履歴(CRT: 作成)を記録
  4. 既存レコード更新時: MAssetChange で変更履歴(UPD: 更新)を記録
  5. 減価償却フラグ変更時: 全ワークファイルの IsDepreciated を同期

ステータス管理(updateStatus / changeStatus)

Section titled “ステータス管理(updateStatus / changeStatus)”

updateStatus() はステータスに基づき以下のフラグを自動制御:

  • Processed: NW以外はtrue
  • IsDisposed: DIの場合のみtrue
  • IsFullyDepreciated: DPの場合のみtrue
  • IsDepreciated: DP/DIの場合はfalse(償却停止)

changeStatus() はステータス遷移時の日付設定と関連処理を実行:

  • 稼働中(AC)への遷移: AssetActivationDate をセット
  • 保全中(PR)への遷移: AssetDisposalDate をセット、減価償却ワークファイルの切り詰め
  • 除却(DI)への遷移: AssetDisposalDate をセット

拡張ポイント(カスタマイズ箇所)

Section titled “拡張ポイント(カスタマイズ箇所)”

資産のライフサイクルに独自処理を追加する安全な方法:

public class CustomAssetValidator implements ModelValidator {
@Override
public int modelChange(PO po, int type) throws Exception {
if (po instanceof MAsset) {
MAsset asset = (MAsset) po;
if (type == TYPE_BEFORE_NEW) {
// 例: 取得日の必須チェック強化
if (asset.getA_Asset_CreateDate() == null) {
throw new AdempiereException("取得日は必須です");
}
}
if (type == TYPE_AFTER_NEW) {
// 例: 資産登録通知の送信
sendAssetNotification(asset);
}
}
return null;
}
}

OSGI-INF/ 配下にコンポーネント定義XMLを配置:

<?xml version="1.0" encoding="UTF-8"?>
<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0"
name="com.example.asset.validator">
<implementation class="com.example.asset.CustomAssetValidator"/>
<service>
<provide interface="org.compiere.model.ModelValidator"/>
</service>
</scr:component>

IColumnCallout インターフェースを実装し、資産フィールドの連動処理を追加:

public class AssetGroupCallout implements IColumnCallout {
@Override
public String start(Properties ctx, int WindowNo,
GridTab mTab, GridField mField, Object value, Object oldValue) {
// 例: 資産グループ変更時に説明を自動セット
int groupId = (Integer) value;
MAssetGroup group = MAssetGroup.get(ctx, groupId);
if (group != null) {
mTab.setValue("Description", group.getDescription());
}
return "";
}
}
クラス名役割
MAssetGroup資産グループマスタ
MAssetGroupAcct資産グループ会計設定
MAssetAcct資産個別の会計設定
MDepreciationWorkfile減価償却計算ワークファイル
MAssetAddition資産追加(取得)伝票
MAssetDisposed資産除却伝票
MAssetTransfer資産移管伝票
MAssetReval資産再評価伝票
MAssetChange資産変更履歴
MAssetUse資産利用履歴
MAssetType資産タイプ判定ユーティリティ

iDempiereの固定資産管理は Model Validator や Callout で安全にカスタマイズできます。 日本の税法に対応した減価償却計算のカスタマイズも、コア改変なしで実現可能です。

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

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