2013-04-05 5 views
0

вот мой код для моего модуля, унаследовал таблицу res.partner и добавил столбец partner_ref. что мне нужно, в моем проекте я должен показать, к кому клиент относится. и список упомянутого клиента от текущего клиента.openerp cutomer tree view

вот мое определение таблицы:

from osv import fields, osv 
import logging 
_logger = logging.getLogger('realty') 
class cust_ref(osv.osv): 
    _description = "Reference" 
    _inherit = 'res.partner' 
    _columns = { 
     'partref_id' : fields.many2one('res.partner', 'Referred by', required=False), 
    } 
cust_ref() 

и здесь XML-код:

<?xml version="1.0"?> 
<insignierp> 
     <data> 
      <record id="partner_reference_ref_form" model="ir.ui.view"> 
       <field name="name">realty.res.partner.form.inherit</field> 
       <field name="model">res.partner</field> 
       <field name="arch" type="xml"> 
        <xpath expr="/form/notebook/page[@string='Accounting']" position='after'> 
         <page string='References'> 

         </page> 
        </xpath> 
       </field> 
      </record> 
     </data> 
</insignierp> 

enter image description here

сейчас, я в этой справочной странице мне нужно перечислить в виде дерева, список клиентов, указанных этим клиентом. Я знаю, как это реализовать. посоветуйте мне, чтобы решить эту проблему. или любые предложения и идеи будут очень полезными. Спасибо всем.

ответ

2

Необходимо создать другое поле one2many, чтобы получить список партнеров, на который ссылается партнер. Как:

'partref_id': fields.many2one('res.partner', 'Related Company'), 
'ref_partner_ids': fields.one2many('res.partner', 'partref_id', 'Refrence partner'), 

И вы должны показать это ref_partner_ids на ваш взгляд, то партнер, который ссылаются на «» partref_id этой партнерской выставке в полях ref_partner_ids.

+0

большое спасибо. но это показывает мне все поля в дереве. это их способ перечислять только определенные поля. – MAHI

2

Да, вы можете сделать так:

<field name="ref_partner_ids"> 
    <tree string="Ref"> 
     <field name="one"/> 
     <field name="two"/> 
     <field name="three"/> 
     ................... 
     .................. 
    </tree> 
</field>