From 86676cf1c92035fcb0031e9831bf04c51e14acdb Mon Sep 17 00:00:00 2001 From: "Khushboo Bhatt (Open ERP)" Date: Fri, 12 Oct 2012 13:55:25 +0530 Subject: [PATCH 1/6] [IMP]project_timesheet:added method for setting default product. bzr revid: kbh@tinyerp.com-20121012082525-y600x8lv0xteej6a --- addons/project_timesheet/project_timesheet.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/addons/project_timesheet/project_timesheet.py b/addons/project_timesheet/project_timesheet.py index 12fac7802c6..2154f6d89dd 100644 --- a/addons/project_timesheet/project_timesheet.py +++ b/addons/project_timesheet/project_timesheet.py @@ -284,6 +284,19 @@ class account_analytic_line(osv.osv): raise osv.except_osv(_('Invalid Analytic Account !'), _('You cannot select a Analytic Account which is in Close or Cancelled state.')) return res + def _default_product(self, cr, uid, context=None): + proxy = self.pool.get('hr.employee') + record_ids = proxy.search(cr, uid, [('user_id', '=', uid)], context=context) + print "record_ids",record_ids + employee = proxy.browse(cr, uid, record_ids[0], context=context) + if employee.product_id: + return employee.product_id.id + return False + + _defaults = { + 'product_id': _default_product, + } + account_analytic_line() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: From fce8bb9c29d18f758d15eb5301e2f79f75c469fe Mon Sep 17 00:00:00 2001 From: "Khushboo Bhatt (Open ERP)" Date: Fri, 12 Oct 2012 14:09:06 +0530 Subject: [PATCH 2/6] [IMP]project_timesheet:added method for setting default product uom. bzr revid: kbh@tinyerp.com-20121012083906-3ab8ephqoc09dx7z --- addons/project_timesheet/project_timesheet.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/addons/project_timesheet/project_timesheet.py b/addons/project_timesheet/project_timesheet.py index 2154f6d89dd..3e72a7e7522 100644 --- a/addons/project_timesheet/project_timesheet.py +++ b/addons/project_timesheet/project_timesheet.py @@ -293,8 +293,18 @@ class account_analytic_line(osv.osv): return employee.product_id.id return False + def _default_product_uom(self, cr, uid, context=None): + proxy = self.pool.get('hr.employee') + record_ids = proxy.search(cr, uid, [('user_id', '=', uid)], context=context) + print "record_ids",record_ids + employee = proxy.browse(cr, uid, record_ids[0], context=context) + if employee.product_id and employee.product_id.uom_id: + return employee.product_id.uom_id.id + return False + _defaults = { 'product_id': _default_product, + 'product_uom_id': _default_product_uom, } account_analytic_line() From 06ae4d8913a7df3ab9f549707a1c0f59e0ff3f78 Mon Sep 17 00:00:00 2001 From: "Khushboo Bhatt (Open ERP)" Date: Fri, 12 Oct 2012 14:35:27 +0530 Subject: [PATCH 3/6] [IMP]project_timesheet:added method for setting default type of invoicing bzr revid: kbh@tinyerp.com-20121012090527-zn9ngz25ylbio2nx --- addons/project_timesheet/project_timesheet.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/addons/project_timesheet/project_timesheet.py b/addons/project_timesheet/project_timesheet.py index 3e72a7e7522..724944d9994 100644 --- a/addons/project_timesheet/project_timesheet.py +++ b/addons/project_timesheet/project_timesheet.py @@ -302,9 +302,18 @@ class account_analytic_line(osv.osv): return employee.product_id.uom_id.id return False + def _default_invoice(self, cr, uid, context=None): + proxy = self.pool.get('hr_timesheet_invoice.factor') + record_ids = proxy.search(cr, uid, [('customer_name', '=', '100%')], context=context) + invoice = proxy.browse(cr, uid, record_ids[0], context=context) + if invoice: + return invoice.id + return False + _defaults = { 'product_id': _default_product, 'product_uom_id': _default_product_uom, + 'to_invoice': _default_invoice } account_analytic_line() From 7ca9a1294a30c3691478ca0c1b68111df406810c Mon Sep 17 00:00:00 2001 From: "Khushboo Bhatt (Open ERP)" Date: Mon, 15 Oct 2012 12:50:14 +0530 Subject: [PATCH 4/6] [IMP]project_timesheet:implemented method for setting default values. bzr revid: kbh@tinyerp.com-20121015072014-st4aavfgw4pve3ad --- addons/project_timesheet/project_timesheet.py | 53 ++++++++----------- 1 file changed, 21 insertions(+), 32 deletions(-) diff --git a/addons/project_timesheet/project_timesheet.py b/addons/project_timesheet/project_timesheet.py index 724944d9994..bc3e764491c 100644 --- a/addons/project_timesheet/project_timesheet.py +++ b/addons/project_timesheet/project_timesheet.py @@ -272,6 +272,27 @@ res_partner() class account_analytic_line(osv.osv): _inherit = "account.analytic.line" + def _default_account_id(self, cr, uid, context=None): + proxy = self.pool.get('account.analytic.account') + record_ids = proxy.search(cr, uid, [('user_id', '=', uid)], context=context) + employee = proxy.browse(cr, uid, record_ids[0], context=context) + if employee: + return employee.id + return False + + def _default_product(self, cr, uid, context=None): + proxy = self.pool.get('hr.employee') + record_ids = proxy.search(cr, uid, [('user_id', '=', uid)], context=context) + employee = proxy.browse(cr, uid, record_ids[0], context=context) + if employee.product_id: + return employee.product_id.id + return False + + _defaults = { + 'product_id': _default_product, + 'account_id': _default_account_id + } + def on_change_account_id(self, cr, uid, ids, account_id): res = {} if not account_id: @@ -284,38 +305,6 @@ class account_analytic_line(osv.osv): raise osv.except_osv(_('Invalid Analytic Account !'), _('You cannot select a Analytic Account which is in Close or Cancelled state.')) return res - def _default_product(self, cr, uid, context=None): - proxy = self.pool.get('hr.employee') - record_ids = proxy.search(cr, uid, [('user_id', '=', uid)], context=context) - print "record_ids",record_ids - employee = proxy.browse(cr, uid, record_ids[0], context=context) - if employee.product_id: - return employee.product_id.id - return False - - def _default_product_uom(self, cr, uid, context=None): - proxy = self.pool.get('hr.employee') - record_ids = proxy.search(cr, uid, [('user_id', '=', uid)], context=context) - print "record_ids",record_ids - employee = proxy.browse(cr, uid, record_ids[0], context=context) - if employee.product_id and employee.product_id.uom_id: - return employee.product_id.uom_id.id - return False - - def _default_invoice(self, cr, uid, context=None): - proxy = self.pool.get('hr_timesheet_invoice.factor') - record_ids = proxy.search(cr, uid, [('customer_name', '=', '100%')], context=context) - invoice = proxy.browse(cr, uid, record_ids[0], context=context) - if invoice: - return invoice.id - return False - - _defaults = { - 'product_id': _default_product, - 'product_uom_id': _default_product_uom, - 'to_invoice': _default_invoice - } - account_analytic_line() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: From a35b5a7f02c0aa4a81e3ee9001ff89dada91fd7b Mon Sep 17 00:00:00 2001 From: "Khushboo Bhatt (Open ERP)" Date: Mon, 15 Oct 2012 15:10:57 +0530 Subject: [PATCH 5/6] [ADD]added on_change on field bzr revid: kbh@tinyerp.com-20121015094057-n4l3xei6o417dh1o --- addons/account/project/project_view.xml | 2 +- addons/project_timesheet/project_timesheet_view.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml index 70db95425b1..3d2b300f009 100644 --- a/addons/account/project/project_view.xml +++ b/addons/account/project/project_view.xml @@ -141,7 +141,7 @@ - +