Divyesh Makwana(OpenERP) has proposed merging 
lp:~openerp-dev/openobject-addons/trunk-bug-800100-mdi into 
lp:openobject-addons.

Requested reviews:
  OpenERP Core Team (openerp)
Related bugs:
  Bug #800100 in OpenERP Addons: "Sale: Constraint Error-Order Reference must 
be unique per company"
  https://bugs.launchpad.net/openobject-addons/+bug/800100

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-bug-800100-mdi/+merge/81671

Hello Sir,

I have fix the issue: https://bugs.launchpad.net/openobject-addons/+bug/800100 
"Sale: Constraint Error-Order Reference must be unique per company".

I changes the constraint for sale order and purchase order.


Thanks and Regards,

Divyesh Makwana(MDI)
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-bug-800100-mdi/+merge/81671
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-addons/trunk-bug-800100-mdi.
=== modified file 'purchase/purchase.py'
--- purchase/purchase.py	2011-11-01 06:06:29 +0000
+++ purchase/purchase.py	2011-11-09 05:33:28 +0000
@@ -228,7 +228,7 @@
         'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'purchase.order', context=c),
     }
     _sql_constraints = [
-        ('name_uniq', 'unique(name)', 'Order Reference must be unique !'),
+        ('name_uniq', 'unique(name,company_id)', 'Order Reference must be unique per Company!'),
     ]
     _name = "purchase.order"
     _description = "Purchase Order"

=== modified file 'sale/sale.py'
--- sale/sale.py	2011-11-08 15:21:42 +0000
+++ sale/sale.py	2011-11-09 05:33:28 +0000
@@ -110,7 +110,7 @@
         for item in cr.dictfetchall():
             if item['move_state'] == 'cancel':
                 continue
-        
+
             if item['picking_type'] == 'in':#this is a returned picking
                 tmp[item['sale_order_id']]['total'] -= item['nbr'] or 0.0 # Deducting the return picking qty
                 if item['procurement_state'] == 'done' or item['move_state'] == 'done':
@@ -125,7 +125,7 @@
                 res[order.id] = 100.0
             else:
                 res[order.id] = tmp[order.id]['total'] and (100.0 * tmp[order.id]['picked'] / tmp[order.id]['total']) or 0.0
-        return res        
+        return res
 
     def _invoiced_rate(self, cursor, user, ids, name, arg, context=None):
         res = {}
@@ -280,7 +280,7 @@
         'partner_shipping_id': lambda self, cr, uid, context: context.get('partner_id', False) and self.pool.get('res.partner').address_get(cr, uid, [context['partner_id']], ['delivery'])['delivery'],
     }
     _sql_constraints = [
-        ('name_uniq', 'unique(name)', 'Order Reference must be unique !'),
+        ('name_uniq', 'unique(name,company_id)', 'Order Reference must be unique per Company!'),
     ]
     _order = 'name desc'
 
@@ -898,7 +898,7 @@
             return result[1]
         except Exception, ex:
             return False
-    
+
     _name = 'sale.order.line'
     _description = 'Sales Order Line'
     _columns = {
@@ -1266,7 +1266,7 @@
 class sale_config_picking_policy(osv.osv_memory):
     _name = 'sale.config.picking_policy'
     _inherit = 'res.config'
-    
+
     _columns = {
         'name': fields.char('Name', size=64),
         'sale_orders': fields.boolean('Based on Sales Orders',),
@@ -1307,7 +1307,7 @@
 
         if wizard.sale_orders:
             menu_id = data_obj.get_object(cr, uid, 'sale', 'menu_invoicing_sales_order_lines').id
-            menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_id)]}) 
+            menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_id)]})
 
         if wizard.deli_orders:
             menu_id = data_obj.get_object(cr, uid, 'sale', 'menu_action_picking_list_to_invoice').id
@@ -1345,7 +1345,7 @@
             product_obj = self.pool.get('product.product')
             product_obj.write(cr, uid, prod_id, {'uom_id':wizard.time_unit.id, 'uom_po_id': wizard.time_unit.id})
 
-        ir_values_obj.set(cr, uid, 'default', False, 'order_policy', ['sale.order'], wizard.order_policy)  
+        ir_values_obj.set(cr, uid, 'default', False, 'order_policy', ['sale.order'], wizard.order_policy)
         if wizard.task_work and wizard.time_unit:
             company_id = self.pool.get('res.users').browse(cr, uid, uid).company_id.id
             self.pool.get('res.company').write(cr, uid, [company_id], {

_______________________________________________
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

Reply via email to