2014-01-16 48 views
1

中的posgresql db中顯示選擇字段值(combobox),我可以在沒有任何問題的情況下插入/ edi trecord。我的表單視圖顯示除選擇字段的「費率」之外的所有字段。此外,樹視圖顯示費率字段未定義。我的數據庫保存正確的速率字段值。請問我可以知道這個問題的根本原因以及如何解決這個問題。如何使用下面的代碼在openerp

.py文件在這裏給出

from osv import osv 
from osv import fields 

class test_base(osv.osv): 
    _name='test.base' 
    _columns={ 
      'name':fields.char('Name'), 
      'email':fields.char('Email'), 

      'code':fields.integer('Unique ID'), 
      sal':fields.float('Salary'), 
      'rate':fields.selection(((10,'10'), (20,'20'),(30,'30')), 
      'Percentage of Deduction'), 
      'ded':fields.float('Deduction'), 
      'bdisplay':fields.float('Button Display'), 

      } 

    def on_change_ded_cal(self, cr, uid, ids,rate,context=None): 
     x=rate*2 
     return {'value':{'ded':x }} 


test_base() 

我的XML是

<record model="ir.ui.view" id="test_base_form"> 
     <field name="name">test.base.form</field> 
      <field name="model">test.base</field> 
      <field name="type">form</field> 
      <field name="arch" type="xml"> 
       <form string="Test Base">      
        <field name="name"/> 
        <field name="email"/> 
        <field name="code"/> 
        <field name="sal"/> 
        <field name="rate" on_change="on_change_ded_cal(rate,sal,ded)"/> 
        <field name="ded"/>      
        <field name="bdisplay"/> 
        <button name="my_button_display" string="Calculate" type="object"/> 
        <newline /> 
        <newline /> 
        <newline /> 
        <field name="skillid" colspan="4" nolabel="1"/>       
        </form> 
      </field> 
    </record> 
    <record model="ir.ui.view" id="test_base_tree"> 
     <field name="name">test.base.tree</field> 
     <field name="model">test.base</field> 
     <field name="type">tree</field> 
     <field name="arch" type="xml"> 
      <tree string="Test Base">    
       <field name="name"/> 
       <field name="email"/> 
       <field name="code"/> 
       <field name="sal"/>   
       <field name="ded"/> 
       <field name="rate"/>  
      </tree> 
     </field> 
    </record> 

回答

2

enter image description here爲您選擇字段,你必須這樣寫:

你已經錯過了串在選擇領域

率 ':fields.selection([(10,'10'), (20,'20 '), (30,'30')], '費率'),

希望此幫助

+0

對不起朋友!我的代碼有字符串,下面給出了相同的代碼。 'rate':fields.selection((10,'10'),(20,'20'),(30,'30')),'扣除百分比', – user3153567

+0

給我你的模塊 – user1576199

+0

我可以得到你的電子郵件發送我的模塊作爲附件 – user3153567