[IMP] improved views of account_asset module and also added function for Entries feature

bzr revid: bde@tinyerp.com-20120625124804-37hru51o1uyaop3n
This commit is contained in:
Bharat Devnani (OpenERP) 2012-06-25 18:18:04 +05:30
parent 0a22debf5f
commit 6b7047c9c4
2 changed files with 61 additions and 24 deletions

View File

@ -213,13 +213,13 @@ class account_asset_asset(osv.osv):
_columns = {
'account_move_line_ids': fields.one2many('account.move.line', 'asset_id', 'Entries', readonly=True, states={'draft':[('readonly',False)]}),
'name': fields.char('Asset', size=64, required=True, readonly=True, states={'draft':[('readonly',False)]}),
'name': fields.char('Asset Name', size=64, required=True, readonly=True, states={'draft':[('readonly',False)]}),
'code': fields.char('Reference', size=32, readonly=True, states={'draft':[('readonly',False)]}),
'purchase_value': fields.float('Gross value ', required=True, readonly=True, states={'draft':[('readonly',False)]}),
'purchase_value': fields.float('Gross Value ', required=True, readonly=True, states={'draft':[('readonly',False)]}),
'currency_id': fields.many2one('res.currency','Currency',required=True, readonly=True, states={'draft':[('readonly',False)]}),
'company_id': fields.many2one('res.company', 'Company', required=True, readonly=True, states={'draft':[('readonly',False)]}),
'note': fields.text('Note'),
'category_id': fields.many2one('account.asset.category', 'Asset category', required=True, change_default=True, readonly=True, states={'draft':[('readonly',False)]}),
'category_id': fields.many2one('account.asset.category', 'Asset Category', required=True, change_default=True, readonly=True, states={'draft':[('readonly',False)]}),
'parent_id': fields.many2one('account.asset.asset', 'Parent Asset', readonly=True, states={'draft':[('readonly',False)]}),
'child_ids': fields.one2many('account.asset.asset', 'parent_id', 'Children Assets'),
'purchase_date': fields.date('Purchase Date', required=True, readonly=True, states={'draft':[('readonly',False)]}),
@ -316,6 +316,16 @@ class account_asset_asset(osv.osv):
asset_id = super(account_asset_asset, self).create(cr, uid, vals, context=context)
self.compute_depreciation_board(cr, uid, [asset_id], context=context)
return asset_id
def open_entries(self, cr, uid, ids, context=None):
return {
'view_type': 'form',
'view_mode': 'tree,form',
'res_model': 'account.move.line',
'view_id': False,
'type': 'ir.actions.act_window',
'context':{'search_default_asset_id': ids, 'default_asset_id': ids},
}
account_asset_asset()
@ -331,12 +341,12 @@ class account_asset_depreciation_line(osv.osv):
_columns = {
'name': fields.char('Depreciation Name', size=64, required=True, select=1),
'sequence': fields.integer('Sequence of the depreciation', required=True),
'sequence': fields.integer('Sequence', required=True),
'asset_id': fields.many2one('account.asset.asset', 'Asset', required=True),
'parent_state': fields.related('asset_id', 'state', type='char', string='State of Asset'),
'amount': fields.float('Depreciation Amount', required=True),
'remaining_value': fields.float('Amount to Depreciate', required=True),
'depreciated_value': fields.float('Amount Already Depreciated', required=True),
'remaining_value': fields.float('Amount to depreciate', required=True),
'depreciated_value': fields.float('Amount already depreciated', required=True),
'depreciation_date': fields.char('Depreciation Date', size=64, select=1),
'move_id': fields.many2one('account.move', 'Depreciation Entry'),
'move_check': fields.function(_get_move_check, method=True, type='boolean', string='Posted', store=True)

View File

@ -70,7 +70,7 @@
</search>
</field>
</record>
<!--
Asset
-->
@ -88,28 +88,40 @@
<field name="state" widget="statusbar" statusbar_visible="draft,open"/>
</header>
<sheet>
<label for="name"/>
<h1><field name="name"/></h1>
<div>
<label for="name"/>
<h1>
<field name="name" class="oe_inline"/> -
<field name="code" class="oe_inline" placeholder="Reference"/>
<button name="open_entries" string="Entries" type="object"/>
</h1>
</div>
<label for="category_id"/>
<h2><field name="category_id" on_change="onchange_category_id(category_id)"/></h2>
<group>
<group col="2">
<field name="parent_id"/>
<field name="partner_id"/>
</group>
<group col="2">
<field name="company_id" widget="selection" groups="base.group_multi_company" on_change="onchange_company_id(company_id)"/>
<field name="purchase_date"/>
<field name="currency_id"/>
</group>
</group>
<notebook colspan="4">
<page string="General">
<group>
<group>
<field name="code"/>
<field name="company_id" widget="selection"
groups="base.group_multi_company" on_change="onchange_company_id(company_id)"/>
</group>
<group>
<field name="purchase_value"/>
<field name="salvage_value"/>
<field name="value_residual"/>
<field name="currency_id"/>
</group>
<group>
<field name="partner_id"/>
<field name="purchase_date"/>
<field name="parent_id"/>
<field name="method"/>
<field name="method_progress_factor" attrs="{'invisible':[('method','=','linear')], 'required':[('method','=','degressive')]}"/>
<field name="prorata" attrs="{'invisible': [('method_time','=','end')]}"/>
</group>
<group>
<field name="method_time" on_change="onchange_method_time(method_time)"/>
@ -118,11 +130,6 @@
<field name="method_end" attrs="{'required': [('method_time','=','end')], 'invisible':[('method_time','=','number')]}"/>
<button name="%(action_asset_modify)d" states="open" string="Change Duration" type="action" icon="terp-stock_effects-object-colorize" colspan="2"/>
</group>
<group>
<field name="method"/>
<field name="method_progress_factor" attrs="{'invisible':[('method','=','linear')], 'required':[('method','=','degressive')]}"/>
<field name="prorata" attrs="{'invisible': [('method_time','=','end')]}"/>
</group>
</group>
</page>
<page string="Depreciation Board">
@ -137,11 +144,31 @@
<field name="parent_state" invisible="1"/>
<button name="create_move" attrs="{'invisible':['|',('move_check','!=',False),('parent_state','!=','open')]}" icon="gtk-execute" string="Create Move" type="object"/>
</tree>
<form string="Depriciation Lines">
<group>
<group col="2">
<field name="asset_id" invisible="1"/>
<field name="parent_state" invisible="1"/>
<field name="name"/>
<field name="amount"/>
<field name="move_id"/>
<field name="move_check"/>
<field name="parent_state" invisible="1"/>
</group>
<group col="2">
<field name="sequence"/>
<field name="depreciation_date"/>
<field name="depreciated_value" readonly="1"/>
<field name="remaining_value" readonly="1"/>
</group>
</group>
</form>
<graph type="bar">
<field name="name"/>
<field name="amount"/>
<field name="depreciated_value"/>
</graph>
</field>
<button type="object" name="compute_depreciation_board" string="Compute" icon="terp-stock_format-scientific" colspan="2" attrs="{'invisible':[('state','=','close')]}"/>
</page>
@ -157,7 +184,7 @@
</form>
</field>
</record>
<record model="ir.ui.view" id="view_account_asset_asset_tree">
<field name="name">account.asset.asset.tree</field>
<field name="model">account.asset.asset</field>