2014-03-27 89 views
0

stockPicking.in在openERP中的實現方式很有趣。我正在嘗試採購與採購訂單類似的東西。OpenERP - 實現與stock.picking.in類似的東西

Stock.picking.in繼承stock.picking,自定義幾列和默認值並將表格聲明爲stock_picking。在UI方面,表單視圖是從view_picking_form繼承而來的,使用的模型是stock.picking.in。

我試圖通過創建一個特殊的採購訂單來做類似的事情。問題是特殊PO的表單永遠無法獲取。它始終顯示動態視圖,以某種默認方式傾銷PO的所有字段。開發者模式也沒有顯示正確的表單視圖。

當我檢查設置 - >用戶界面 - >視圖,它確實顯示視圖正確,但不創建新的特殊PO時顯示它。

下面是代碼:

class my_purchase_order(osv.osv): 
    _name = "purchase.order" 
    _inherit = "purchase.order" 

    _columns={ 
       ... 
     } 

my_purchase_order() 



class my_purchase_order_special(osv.osv): 
    _name = 'purchase.order.my_special' 
    _inherit = "purchase.order" 
    _table = "purchase_order" 

    _columns = {... 
      } 

my_purchase_order_special() 


    <record id="po_my_special_form" model="ir.ui.view"> 
     <field name="name">po_my_special_form</field> 
     <field name="model">purchase.order.my_special</field> 
     <field name="type">form</field> 
     <field name="inherit_id" ref="purchase.purchase_order_form" /> 
     <field name="arch" type="xml"> 
      ... 
     </field> 
</record> 

     <record id="po_my_special_tree" model="ir.ui.view"> 
     <field name="name">po_my_special_tree</field> 
     <field name="model">purchase.order.my_special</field> 
     <field name="arch" type="xml"> 
      <tree fonts="bold:message_unread==True" colors="grey:state=='cancel';blue:state in ('wait','confirmed');red:state in ('except_invoice','except_picking')" string="Purchase Order"> 
       <field name="message_unread" invisible="1"/> 
       <field name="name" string="Reference"/> 
       <field name="date_order" /> 
       <field name="partner_id"/> 
       <field name="company_id" groups="base.group_multi_company" widget="selection"/> 
       <field name="minimum_planned_date" invisible="context.get('quotation_only', False)"/> 
       <field name="origin"/> 
       <field name="amount_untaxed" sum="Total Untaxed amount" string="Untaxed"/> 
       <field name="amount_total" sum="Total amount"/> 
       <field name="state"/> 
      </tree> 
     </field> 
    </record> 


    <record id="action_po_my_special_tree" model="ir.actions.act_window"> 
     <field name="name">Special Purchase Orders</field> 
     <field name="type">ir.actions.act_window</field> 
     <field name="res_model">purchase.order.my_special</field> 
     <field name="view_mode">tree,form,graph,calendar</field> 
     <field name="context">{}</field> 
     <field name="domain">[('state','=','draft')]</field> 
     <field name="search_view_id" ref="purchase.view_purchase_order_filter"/> 
    </record> 

    <record id="action_po_my_special_form" model="ir.actions.act_window.view"> 
     <field eval="2" name="sequence"/> 
     <field name="view_mode">form</field> 
     <field name="view_id" ref="po_my_special_form"/> 
     <field name="act_window_id" ref="action_po_my_special_tree"/> 
    </record> 

請指教。提前致謝。

回答

0

原來我錯過了查看記錄:

<record id="action_po_my_special_tree2" model="ir.actions.act_window.view"> 
     <field eval="1" name="sequence"/> 
     <field name="view_mode">tree</field> 
     <field name="view_id" ref="po_my_special_tree"/> 
     <field name="act_window_id" ref="action_po_my_special_tree"/> 
    </record> 
    <record id="action_po_my_special_form2" model="ir.actions.act_window.view"> 
     <field eval="2" name="sequence"/> 
     <field name="view_mode">form</field> 
     <field name="view_id" ref="po_my_special_form"/> 
     <field name="act_window_id" ref="action_po_my_special_tree"/> 
    </record> 
相關問題