¿Tiene algo que ver que funcione un metodo en windows y en linux no?

Estoy usando odoo 8 y en write de una funcion necesito sumar unas calificaciones, yo desarrollo en un pc con windows pero el cliente tiene un servisor Ubuntu, y en este ultimo entorno no se realiza en calculo, es la primera vez que me sucede y no tengo idea de que este sucediendo, aqui les escribo el codigo y en (negrita la parte de la suma).

class evualtive_examination(models.Model):
    _name = 'evualtive.examination'
    
    exam_name = fields.Char('Exam Name')
    s_exam_ids = fields.Many2one("exam.exam", "Examination Type",required = False)
    course_id =     fields.Many2one('cd.course','Course')      
    notes = fields.Integer('Notes', readonly=False)
    date =  fields.Date('Date')
    user_id = fields.Many2one('res.users', 'Created by')
    exam_result_id = fields.Many2one('exam.result', 'Exam Result')
    question_ids = fields.One2many('question', 'evualtive_examination_id', 'Question')
    state = fields.Selection(
        selection=[
            ('draft', 'Draft'),
            ('finished', 'Finished'),
        ])  
        
   @api.one
    def write(self, vals):
        res_groups_obj = self.pool.get('res.groups')
        question_obj = self.pool.get('question')
        exam_result_obj = self.env['exam.result']
        evualtive_examination_teacher_obj = self.env['evualtive.examination.teacher']       
                
        id_user_group=self.env.uid
        self.env.cr.execute("SELECT gid FROM res_groups_users_rel WHERE uid=%s", (id_user_group,))
        result = self.env.cr.fetchall()
        
        for element in result:                 
            domain_groups_student = [
                ('id', '=', element[0]),
                ('name', '=', "School Student")
                 ]
            domain_groups_teacher = [
                ('id', '=', element[0]),
                ('name', '=', "School Teacher")
                 ]
            domain_groups_administrator = [
                ('id', '=', element[0]),
                ('name', '=', "School Administrator")
                 ]
            
            groups_student_id = res_groups_obj.search(self.env.cr, self.env.uid, domain_groups_student)
            groups_teacher_id = res_groups_obj.search(self.env.cr, self.env.uid, domain_groups_teacher)
            groups_administrator_id = res_groups_obj.search(self.env.cr, self.env.uid, domain_groups_administrator)
            
        if not vals:
            vals = {}
            
        notas =0
        if 'question_ids' in vals:
            for question in vals['question_ids']:
                domain_groups_question = [
                    ('id', '=', question[1])
                 ]
                response_id = question_obj.search(self.env.cr, self.env.uid, domain_groups_question)
                response_obj = question_obj.browse(self.env.cr, self.env.uid, response_id)
                if groups_student_id:
                    if isinstance(question[2], dict):
                        if question[2].has_key('yes') and response_obj.response_yes:
                            if question[2]['yes'] == True and response_obj.response_yes == True:
                                notas += response_obj.value
                                self.notes = notas
                        if question[2].has_key('no') and response_obj.response_no:        
                            if question[2]['no'] == True and response_obj.response_no == True:
                                notas += response_obj.value
                                self.notes = notas
                        if question[2].has_key('not_applicable') and response_obj.response_not_applicable:         
                            if question[2]['not_applicable'] == True and response_obj.response_not_applicable == True:
                                notas += response_obj.value
                                self.notes = notas
                              

            
            if groups_administrator_id or groups_teacher_id:
                domain_question = [
                    ('evualtive_examination_id', '=', self.id)
                 ]
                response_id2 = question_obj.search(self.env.cr, self.env.uid, domain_question)
                response_obj2 = question_obj.browse(self.env.cr, self.env.uid, response_id2)
                suma = 0
                for items in response_obj2:                    
                    suma += items.value
                    if suma > 100:
                        raise except_orm(_('Warning'),_("The sum of the value of the questions can not exceed 100 points"))
        return super(evualtive_examination, self).write(vals)
    
evualtive_examination()

Villa
Villa
11
| 0 0 0
Preguntado en 01/12/16 21:06
0
voto
613 Vistas

hola Villa, puedes detallar cuál es el error que te muestra? (si es el caso), saludos

Adnier Roselló
Adnier Roselló
9
| 0 0 0
Respondido en 10/12/16 22:39
0
voto

Su respuesta

Trate por favor de dar una respuesta sustancial. Si quiere comentar en la pregunta o la respuesta, sólo use la herramiento de comentarios. Recuerde que siempre puede revise sus respuestas - no hay necesidad de responder dos veces la misma pregunta. También no olvide votar - ¡ayuda realmente a seleccionar las mejores preguntas y respuestas!

Realizar una pregunta

Mantenerse informado

Sobre este foro

Esta comunidad es para profesionales y entusiastas de nuestros productos y servicios.

Lea las directrices

Herramientas de las preguntas

136 seguidor(es)

Estadísticas

Preguntado: 01/12/16 21:06
Visto: 613 veces
Última actualización: 10/12/16 22:39