LedgerSMB::DBObject::Asset(3) LedgerSMB Base Class for Fixed Assets

SYNOPSIS

This library contains the base utility functions for creating, saving, and retrieving fixed assets for depreciation

STANDARD PROPERTIES

id (integer)
Unique id number of asset.
description (text)
Text description of asset.
tag (text)
Arbitrary tag identifier, unique for current, non-disposed assets.
purchase_value (numeric)
Numeric representation of purchase value.
salvage_value (numeric)
Numeric representation of estimated salvage value.
usable_life (numeric)
Numeric representation of estimated usable life.
purchase_date (date)
Date item was purchase
start_depreciation (date)
Date item is put into service, when depreciation should start. If unknown we use the purchase_date instead.
location_id (int)
ID of business location where asset is stored.
department_id (int)
ID of department where asset is stored
invoice_id (int)
ID of purchasing invoice
asset_account_id (int)
ID of account to store asset value
dep_account_id (int)
ID of account to store cumulative depreciation
exp_account_id (int)
ID of account to store expense when disposed of.
obsolete_by (int)
Obsolete by other asset id. Undef if active, otherwise the id of the active asset that replaces this. Used for partial depreciation.
asset_class_id (int)
ID of asset class.

METHODS

save
Uses standard properties

Saves the asset item to the database

Sets any properties set by the database that were not in the original object, usually ID (if no match to current ID or if ID was undef).

import_file
Parses a csv file. Sets $self->{import_entries} to an arrayref where each member is an arrayref of fields. It is up to the workflow script to handle these entries.

Header information is set to $self->{import_header}.

get
Gets a fixed asset, sets all standard properties. The id property must be set.
search
Searches for asset_items matching criteria. Sets $self->{search_results} to the result.

Search criteria set by the following properties: * id * asset_class * description * tag * purchase_date * purchase_value * usable_life * salvage_value * start_depreciation * warehouse_id * department_id * invoice_id * asset_account_id * dep_account_id

Tag and description are partial matches. All other matches are exact. Undef matches all values.

save_note
Saves a note. Uses the following properties:

* id * subject * note

get_metadata
Sets the following:

* asset_classes: List of all asset classes * locations: List of all warehouses/locations * deprtments: List of all departments * asset_accounts: List of all asset accounts * dep_accounts: List of all depreciation accounts * exp_accounts: List of all expense accounts

get_next_tag
Returns next tag number

Sets $self->{tag} to that value.

import_asset
Uses standard properties. Saves record in import report for batch review and creation.

Copyright (C) 2010, The LedgerSMB core team.

This file is licensed under the Gnu General Public License version 2, or at your option any later version. A copy of the license should have been included with your software.