← Back to team overview

c2c-oerpscenario team mailing list archive

[Bug 718989] Re: [Trunk] related fields on a integer, display false for value 0

 

Update with all Trunk version , bug still there

How do it

In res.partner add field

    _columns = {
        #Patient
        'waiting_list_counter' : fields.integer('Missed Appointment'),       
    }
    _defaults = {
        'waiting_list_counter': 0,
    }


In other table, create a related field to field create in res.partner

counter': fields.related('partner_id', 'waiting_list_counter',
string='Cancel', type='integer'),

In a view where you create the field, add related in the view

<field name="counter"/>


In "web client" (not tested in GTK client), when the  value of waiting_list_counter is 0, my view with the field counter show false, see attachment



** Attachment added: "BugOpenerpRelatedField.png"
   https://bugs.launchpad.net/openobject-server/+bug/718989/+attachment/1851689/+files/BugOpenerpRelatedField.png

** Changed in: openobject-server
       Status: Invalid => New

-- 
You received this bug notification because you are a member of C2C
OERPScenario, which is subscribed to the OpenERP Project Group.
https://bugs.launchpad.net/bugs/718989

Title:
  [Trunk] related fields on a integer, display false for value 0

Status in OpenERP Server:
  New

Bug description:
  How reproduce the bug

  Create a related fields to a integer fields,  set value of the field
  to 0, related fields show "false"

  In bin/ovs/fields.py

  class related function _fnct_read:

  near line 902
  if not t_data[self.arg[i]]:
      t_data = False

  Change by
  if not (t_data[self.arg[i]] or (self._type =='integer' and isinstance(t_data[self.arg[i]],int))):
      t_data = False

  That allow integer 0 to not be replace by False

  
  But is not enougt

  near line 914
  elif t_data:
      res[data.id] = t_data
  change by

  elif t_data or t_data==0:
      res[data.id] = t_data

  That allow 0 to be return as value

  
  Note: is not a big problem, but when a secretary see a False in a field when she supposed to see a 0, she not understand, she dont know in Programming 0 means False.





References