Skip to Content
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odgovori
4706 Prikazi

While we make quotations to customers, don't allow users to quote below the sales price of products. How can we achieve this? Please help me. Am using v7.. Thanks in advance

Avatar
Opusti
Avtor Best Answer

Call the function for the field price_unit in the view xml

<xpath expr="//field[@name='price_unit']" position="attributes">
   <attribute name="on_change">check_margin(product_id,price_unit)</attribute>
</xpath>

and in the class, define the function to process it.

def check_margin(self, cr, uid, ids, product_id, unit_price, context=None):
  res = {}
  warning = {}
  sale_price = None
  if product_id:
     sale_price = self.pool.get('product.product').browse(cr, uid,product_id).list_price
  if unit_price is None:
     pass
  elif unit_price < sale_price:
     warning = {  
       'title': _("Warning"),  
       'message': _('Unit price given, is less than the sales price of the selected product. Please change (or contact your sales manager to change) the sales price of the selected product.'),  
               }
     res = {'value': {'price_unit':sale_price}}
  elif unit_price >= sale_price:
     res = {'value': {'price_unit':unit_price}}
     pass
  return {'value': res.get('value'), 'warning':warning}
Avatar
Opusti
Related Posts Odgovori Prikazi Aktivnost
0
jun. 25
478
1
jul. 18
5677
0
jul. 25
5300
1
jul. 24
2245
1
feb. 19
3883