openerp-dev-web team mailing list archive
-
openerp-dev-web team
-
Mailing list archive
-
Message #05211
[Merge] lp:~openerp-dev/openobject-addons/price_list_fix into lp:~openobject-training/openobject-addons/training
gpa(Open ERP) has proposed merging lp:~openerp-dev/openobject-addons/price_list_fix into lp:~openobject-training/openobject-addons/training.
Requested reviews:
Bhumika (OpenERP) (sbh-openerp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/price_list_fix/+merge/56888
Resubmit
--
https://code.launchpad.net/~openerp-dev/openobject-addons/price_list_fix/+merge/56888
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-addons/price_list_fix.
=== modified file 'training/training.py'
--- training/training.py 2011-04-06 07:06:20 +0000
+++ training/training.py 2011-04-08 07:29:00 +0000
@@ -3840,6 +3840,8 @@
return list(keys)
def _price_compute(self, cr, uid, ids, fieldnames, args, context=None):
+ if context is None:
+ context = {}
res = dict.fromkeys(ids, 0.0)
for this in self.browse(cr, uid, ids, context=context):
res[this.id] = sum(p.price for p in this.participation_ids)
@@ -3847,7 +3849,7 @@
def _date_compute(self, cr, uid, ids, fieldnames, args, context=None):
res = dict.fromkeys(ids, False)
- for this in self.browse(cr, uid, ids, context):
+ for this in self.browse(cr, uid, ids, context=context):
if this.participation_ids:
res[this.id] = min(p.seance_id.date for p in this.participation_ids)
return res
@@ -3944,6 +3946,9 @@
po_proxy = self.pool.get('purchase.order')
for this in self.browse(cr, uid, ids, context=context):
+ if not this.job_id.name.property_product_pricelist_purchase:
+ raise osv.except_osv(_('No Pricelist'),_('You have to select a pricelist for this contact'))
+
po_id = po_proxy.create(cr, uid, {
'name': "Session - %s" % (this.session_id.name),
'partner_id': this.job_id.name.id,
@@ -4126,7 +4131,7 @@
def on_change_seance(self, cr, uid, _, job_id, seance_id, context=None):
if context is None:
context = {}
- seance = seance_id and self.pool.get('training.seance').browse(cr, uid, seance_id, context) or False
+ seance = seance_id and self.pool.get('training.seance').browse(cr, uid, seance_id, context=context) or False
return {'value': {
'group_id': seance and seance.group_id.id or False,
'date': seance and seance.date or False,
@@ -4167,7 +4172,7 @@
return False
if product_id and isinstance(product_id, (int,long)):
- product = self.pool.get('product.product').browse(cr, uid, product_id)
+ product = self.pool.get('product.product').browse(cr, uid, product_id, context=context)
else:
product = seance._get_product()
if not product:
@@ -4295,7 +4300,7 @@
res = cr.fetchone()
if res:
name = '%s %s' % (contact.first_name, contact.name)
- other_seance = self.pool.get('training.seance').browse(cr, uid, res[0], context)
+ other_seance = self.pool.get('training.seance').browse(cr, uid, res[0], context=context)
raise osv.except_osv(_('Error'), _('%(stakeholder)s is not available for seance "%(this_seance)s" because (s)he is already requested or confirmed for the seance "%(other_seance)s"') % {'stakeholder':name, 'this_seance': this.seance_id.name, 'other_seance': other_seance.name})
@@ -4572,7 +4577,7 @@
#Passing partner_id to context for purchase order line integrity of Line name
context.update({'lang':partner.lang, 'partner_id':partner_id})
- product=self.pool.get('product.product').browse(cr,uid, po_line.product_id.id,context=context)
+ product=self.pool.get('product.product').browse(cr, uid, po_line.product_id.id, context=context)
line = {
=== modified file 'training/training_view.xml'
--- training/training_view.xml 2011-04-07 09:36:54 +0000
+++ training/training_view.xml 2011-04-08 07:29:00 +0000
@@ -484,7 +484,7 @@
confirm="Do you want to cancel this catalog ?" icon="gtk-cancel"/>
<button name="signal_inprogress" string="In Progress" type="workflow" states="validated" icon="gtk-apply" />
<button name="signal_deprecate" string="Deprecate" type="workflow" states="inprogress"
- confirm="Do you want to deprecate this catalog ?" icon="gtk-cancel" />
+ confirm="Do you want to deprecate this catalog ?" icon="terp-dialog-close" />
</group>
</form>
</field>
=== modified file 'training_exam/training_exam.py'
--- training_exam/training_exam.py 2011-04-07 13:04:11 +0000
+++ training_exam/training_exam.py 2011-04-08 07:29:00 +0000
@@ -331,7 +331,7 @@
if context is None:
context = {}
values = dict.fromkeys(ids, 0)
- for obj in self.browse(cr, uid, ids, context=None):
+ for obj in self.browse(cr, uid, ids, context=context):
if obj.type in ('qcm', 'qcu'):
if obj.question_answer_ids:
values[obj.id] = reduce(lambda prev, curr: prev + int(curr.is_solution == 'yes'), obj.question_answer_ids, 0)
@@ -677,13 +677,13 @@
#compute the time of questionnaire
def point_compute(self, cr, uid, ids, name, args, context=None):
res = dict.fromkeys(ids, '')
- for questionnaire in self.browse(cr,uid,ids,context=context):
+ for questionnaire in self.browse(cr, uid, ids, context=context):
res[questionnaire.id] = reduce(lambda acc,question: acc + question.question_id.point, questionnaire.question_ids, 0.0)
return res or 0.0
def duration_compute(self, cr, uid, ids, name, args, context=None):
res = dict.fromkeys(ids, '')
- for questionnaire in self.browse(cr,uid,ids,context=context):
+ for questionnaire in self.browse(cr, uid, ids ,context=context):
res[questionnaire.id] = reduce(lambda acc,question: acc + question.question_id.duration, questionnaire.question_ids, 0.0)
return res or 0.0
@@ -1276,13 +1276,15 @@
_inherit = 'training.participation'
def copy_data(self, cr, uid, object_id, values=None, context=None):
+ if context is None:
+ context = {}
if not values:
values = {}
if 'course_line_ids' not in values:
values.update({'course_line_ids' : []})
if 'participation_line_ids' not in values:
values.update({'participation_line_ids' : []})
- return super(training_participation_exam, self).copy_data(cr, uid, object_id, values, context)
+ return super(training_participation_exam, self).copy_data(cr, uid, object_id, values, context=context)
def after_exam_sheet_generation(self, cr, uid, participation_id, context=None):
if context is None:
@@ -1510,6 +1512,8 @@
return [('type','=','examen'),('state','in',['validated']),('main_course_id','=',participation.course_questionnaire_id.id),('printable','=',True)]
def random_questionnaire_assign(self, cr, uid, ids, context=None):
+ if context is None:
+ context = {}
t_quizz = self.pool.get('training.exam.questionnaire')
for p in self.browse(cr, uid, ids,context=context):
Follow ups