Saurang Suthar(OpenERP) has proposed merging
lp:~openerp-dev/openobject-addons/trunk-fgi_functional_training2-ssu into
lp:openobject-addons.
Requested reviews:
OpenERP Core Team (openerp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-fgi_functional_training2-ssu/+merge/136662
Hello,
I have made possible open Draft Invoice form view if there is single invoice is
created otherwise it will open tree view for multiple invoices for multiple
Sale Orders.
Kindly review it.
Thank you.
Saurang Suthar
--
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-fgi_functional_training2-ssu/+merge/136662
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-addons/trunk-fgi_functional_training2-ssu.
=== modified file 'account_analytic_analysis/account_analytic_analysis.py'
--- account_analytic_analysis/account_analytic_analysis.py 2012-11-27 12:07:37 +0000
+++ account_analytic_analysis/account_analytic_analysis.py 2012-11-28 13:35:39 +0000
@@ -470,6 +470,31 @@
'nodestroy': True,
}
+ def open_invoice(self, cr, uid, ids, context=None):
+ if context is None:
+ context = {}
+
+ mod_obj = self.pool.get('ir.model.data')
+ act_obj = self.pool.get('ir.actions.act_window')
+ acc_inv_line = self.pool.get('account.invoice.line')
+ acc_inv = self.pool.get('account.invoice')
+ account_analytic_id = acc_inv_line.search(cr, uid,[('account_analytic_id','=',ids[0])], context=context)
+ inv_ids = acc_inv.search(cr, uid,[('invoice_line','=',account_analytic_id)], context=context)
+
+ result = mod_obj.get_object_reference(cr, uid, 'account', 'action_invoice_tree1')
+ id = result and result[1] or False
+ result = act_obj.read(cr, uid, [id], context=context)[0]
+ if not inv_ids:
+ raise osv.except_osv(_('Error!'), _('Please create Invoice(s).'))
+ #choose the view_mode accordingly
+ if len(inv_ids)>1:
+ result['domain'] = "[('id','in',["+','.join(map(str, inv_ids))+"])]"
+ else:
+ res = mod_obj.get_object_reference(cr, uid, 'account', 'invoice_form')
+ result['views'] = [(res and res[1] or False, 'form')]
+ result['res_id'] = inv_ids and inv_ids[0] or False
+ return result
+
def on_change_template(self, cr, uid, ids, template_id, context=None):
if not template_id:
return {}
=== modified file 'account_analytic_analysis/account_analytic_analysis_view.xml'
--- account_analytic_analysis/account_analytic_analysis_view.xml 2012-11-27 21:23:22 +0000
+++ account_analytic_analysis/account_analytic_analysis_view.xml 2012-11-28 13:35:39 +0000
@@ -53,9 +53,15 @@
<field class="oe_inline" name="fix_price_to_invoice" attrs="{'invisible': [('fix_price_invoices','=',False)]}"/>
</td><td attrs="{'invisible': [('fix_price_invoices','=',False)]}" class="oe_timesheet_action">
<span attrs="{'invisible': [('fix_price_to_invoice','=',0.0)]}" class="oe_grey">
+ <button name="open_invoice"
+ class="oe_link"
+ string="View Invoice" type="object"/>
+ or view
+ </span>
+ <span attrs="{'invisible': [('fix_price_to_invoice','=',0.0)]}" class="oe_grey">
<button name="open_sale_order_lines"
class="oe_link"
- string="⇒ Invoice" type="object"
+ string="To Invoice" type="object"
context="{'default_partner_id': [partner_id],'default_project_id': active_id,'search_default_uninvoiced': 1,'search_default_project_id': active_id,'search_default_partner_id': [partner_id]}"/>
or view
</span>
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp