Changes in function for Invoice State and Start & End Dates
authorRucha Patel <ruchakpatel@gmail.com>
Fri, 3 Oct 2008 09:28:12 +0000 (14:58 +0530)
committerRucha Patel <ruchakpatel@gmail.com>
Fri, 3 Oct 2008 09:28:12 +0000 (14:58 +0530)
bzr revid: ruchakpatel@gmail.com-20081003092812-iuv81r8umostfrch

addons/product_margin/product_margin.py
addons/product_margin/wizard/wizard_product_margin.py

index d54d231..9419dbe 100644 (file)
@@ -50,12 +50,12 @@ class product_product(osv.osv):
         return res
 
 
-    def _get_invoice_state(self, cr, uid,context ):
-        state=  context.get('invoice_state', False)
-        print 'rrrrrrrrrrrrr',state
-        if not state:
-            state = 'open'
-        return [(state,state)]
+    def _get_invoice_state(self, cr, uid, ids, field_names, arg, context):
+        res = {}
+        state=  context.get('invoice_state', 'open')
+        for val in self.browse(cr, uid, ids):
+            res[val.id] = state
+        return res
 
     def get_avg_price_margin(self, cr, uid, ids, field_names, arg, context):
         res = {}
@@ -166,8 +166,8 @@ class product_product(osv.osv):
     _columns = {
         'date_start': fields.function(_get_date, method=True, type='date', string='Start Date', multi='date_start'),
         'date_stop': fields.function(_get_date, method=True, type='date', string='Stop Date', multi='date_stop'),
-        'invoice_state': fields.selection(_get_invoice_state, string= 'Invoice State'),# readonly=True),
-#        'invoice_state': fields.selection([('paid','Paid'),('all_open','All Open'),('draft_open','Draft and Open')], 'Invoice State',readonly=True),
+        'invoice_state': fields.function(_get_invoice_state, method=True, type='char', string='Invoice State'),
+#        'invoice_state': fields.selection(_get_invoice_state, string= 'Invoice State'),# readonly=True),
         'sale_avg_price' : fields.function(get_avg_price_margin, method=True, type='float', string='Avg. Unit Price', multi='sale_avg_price'),
         'purchase_avg_price' : fields.function(get_avg_price_margin, method=True, type='float', string='Avg. Unit Price', multi='purchase_avg_price'),
         'sale_num_invoiced' : fields.function(_get_num_invoiced, method=True, type='float', string='# Invoiced', multi='sale_num_invoiced'),
@@ -184,10 +184,6 @@ class product_product(osv.osv):
         'expected_margin_rate' : fields.function(_get_total_margin_rate, method=True, type='float', string='Expected Margin (%)', multi='expected_margin_rate'),
     }
     
-    _defaults = {
-                 'invoice_state' : _get_invoice_state
-                 }
-    
 product_product()
 
 
index 3d37f97..07bdcc1 100644 (file)
@@ -37,7 +37,7 @@ def _action_open_window(self, cr, uid, data, context):
     view_res = cr.fetchone()
     return {
         'name': 'Product Margin',
-         'context':{'from_date':data['form']['from_date'],'to_date':data['form']['to_date'],'invoice_state' : data['form']['invoice_state']},
+        'context':{'date_start':data['form']['from_date'],'date_stop':data['form']['to_date'],'invoice_state' : data['form']['invoice_state']},
         'view_type': 'form',
         "view_mode": 'tree,form',
         'res_model':'product.product',