-
-
+
+
diff --git a/addons/crm_claim/crm_claim.py b/addons/crm_claim/crm_claim.py
index 50cbe4a6c44..d55036193c4 100644
--- a/addons/crm_claim/crm_claim.py
+++ b/addons/crm_claim/crm_claim.py
@@ -190,8 +190,17 @@ class crm_claim(osv.osv):
class res_partner(osv.osv):
_inherit = 'res.partner'
+ def _claim_count(self, cr, uid, ids, field_name, arg, context=None):
+ res = dict(map(lambda x: (x,0), ids))
+ try:
+ for partner in self.browse(cr, uid, ids, context=context):
+ res[partner.id] = len(partner.claims_ids)
+ except:
+ pass
+ return res
_columns = {
'claims_ids': fields.one2many('crm.claim', 'partner_id', 'Claims'),
+ 'claim_count': fields.function(_claim_count, string='# Claims', type='integer'),
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm_claim/res_partner_view.xml b/addons/crm_claim/res_partner_view.xml
index 4a5db879311..6d5d54498ee 100644
--- a/addons/crm_claim/res_partner_view.xml
+++ b/addons/crm_claim/res_partner_view.xml
@@ -9,11 +9,11 @@
-
+ name="%(crm_case_categ_claim0)d" icon="fa-comments" groups="base.group_sale_salesman">
+
+
diff --git a/addons/crm_project_issue/project_issue_view.xml b/addons/crm_project_issue/project_issue_view.xml
index b62e5f74880..bd147378e28 100644
--- a/addons/crm_project_issue/project_issue_view.xml
+++ b/addons/crm_project_issue/project_issue_view.xml
@@ -36,7 +36,8 @@
-
+
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py
index 947aba44242..79b47ddda97 100644
--- a/addons/project_issue/project_issue.py
+++ b/addons/project_issue/project_issue.py
@@ -229,7 +229,6 @@ class project_issue(osv.Model):
if work.task_id:
issues += issue_pool.search(cr, uid, [('task_id','=',work.task_id.id)])
return issues
-
_columns = {
'id': fields.integer('ID', readonly=True),
'name': fields.char('Issue', size=128, required=True),
@@ -573,13 +572,13 @@ class res_partner(osv.osv):
def _issue_count(self, cr, uid, ids, field_name, arg, context=None):
res = dict(map(lambda x: (x,0), ids))
try:
- for partner in self.browse(cr, uid, ids, context):
+ for partner in self.browse(cr, uid, ids, context=context):
res[partner.id] = len(partner.issue_ids)
except:
pass
return res
- """ Inherits partner and adds Tasks information in the partner form """
+ """ Inherits partner and adds Issue information in the partner form """
_inherit = 'res.partner'
_columns = {
'issue_ids': fields.one2many('project.issue', 'partner_id', 'Issues'),
diff --git a/addons/stock/stock.py b/addons/stock/stock.py
index 7e73d7fcd53..bd0254a81d3 100644
--- a/addons/stock/stock.py
+++ b/addons/stock/stock.py
@@ -636,7 +636,11 @@ class stock_picking(osv.osv):
vals['name'] = self.pool.get('ir.sequence').get(cr, user, seq_obj_name)
new_id = super(stock_picking, self).create(cr, user, vals, context)
return new_id
-
+ def _claim_count(self, cr, uid, ids, field_name, arg, context=None):
+ res = {}
+ claim = self.pool.get('crm.claim').search(cr, uid, [('ref', '=',('stock.picking.out,' + str(ids[0])))], context=context)
+ res[ids[0]] = len(claim)
+ return res
_columns = {
'name': fields.char('Reference', size=64, select=True, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}),
'origin': fields.char('Source Document', size=64, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="Reference of the document", select=True),
@@ -680,6 +684,7 @@ class stock_picking(osv.osv):
("none", "Not Applicable")], "Invoice Control",
select=True, required=True, readonly=True, track_visibility='onchange', states={'draft': [('readonly', False)]}),
'company_id': fields.many2one('res.company', 'Company', required=True, select=True, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}),
+ 'claim_count': fields.function(_claim_count, string='Claims', type='integer'),
}
_defaults = {
'name': lambda self, cr, uid, context: '/',
@@ -3122,7 +3127,9 @@ class stock_picking_out(osv.osv):
out_defaults = super(stock_picking_out, self).default_get(cr, uid, fields_list, context=context)
defaults.update(out_defaults)
return defaults
-
+ def _claim_count(self, cr, uid, ids, field_name, arg, context=None):
+ return super(stock_picking_out, self)._claim_count(cr, uid, ids, field_name, arg, context=context)
+
_columns = {
'backorder_id': fields.many2one('stock.picking.out', 'Back Order of', states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="If this shipment was split, then this field links to the shipment which contains the already processed part.", select=True),
'state': fields.selection(
@@ -3139,6 +3146,7 @@ class stock_picking_out(osv.osv):
* Ready to Deliver: products reserved, simply waiting for confirmation.\n
* Delivered: has been processed, can't be modified or cancelled anymore\n
* Cancelled: has been cancelled, can't be confirmed anymore"""),
+ 'claim_count': fields.function(_claim_count, string='Claims', type='integer'),
}
_defaults = {
'type': 'out',