2017-10-17 65 views
2

我在製造一個複選框模塊 - >產品形式(命名爲「原料」)過濾數據到另一個菜單

如果我選中該複選框並保存它不應該保存在產品中的數據表格,但是應該將其保存在我在製造模塊中手動創建的稱爲原材料的單獨菜單中。

如何在Odoo v10中實現這一點?

這是我的xml文件......

<record id="raw_materials" model="ir.ui.view"> 
      <field name="name">raw.form.inherit.button</field> 
      <field name="model">product.template</field> 
      <field name="inherit_id" ref="product.product_template_only_form_view"/> 
      <field name="arch" type="xml" > 
      <xpath expr="//field[@name='name']" position="after"> 
        <div name="options" groups="base.group_user"> 
          <div> 
           <field name="raw"/> 
           <label for="raw"/> 
          </div> 
         </div>  

      </xpath> 
      </field> 
</record> 



<record id="product_template_view" model="ir.ui.view"> 
     <field name="name">product.template.search</field> 
     <field name="model">product.template</field> 
     <field name="arch" type="xml"> 
      <search string="Product"> 
       <separator/> 
       <filter string="Raw Materials" name="filter_to_raw" domain="[('raw','=',True)]"/> 
       <separator/> 
      </search> 
     </field> 
</record> 

<record id="product_raw_materials" model="ir.actions.act_window"> 
      <field name="name">Raw Materials</field> 
      <field name="type">ir.actions.act_window</field> 
      <field name="res_model">product.template</field> 
      <field name="view_mode">kanban,tree,form</field> 
      <field name="view_type">form</field> 
      <field name="context">{"search_default_filter_to_raw":1}</field> 
      <field name="view_id" ref="product.product_template_kanban_view"/> 
      <field name="search_view_id" ref="product.product_template_search_view"/> 
      <field name="help" type="html"> 
       <p class="oe_view_nocontent_create"> 
       Click to define a new product. 
       </p><p> 
       You must define a product for everything you sell, whether it's 
       a physical product, a consumable or a service you offer to 
       customers. 
       </p><p> 
       The product form contains information to simplify the Raw Materials: price, notes in the quotation, accounting data, 
       procurement methods, etc. 
       </p> 
      </field> 
     </record> 



     <menuitem id="menu_mrp_product_form" name="Raw Materials" action="mrp.product_template_action" 
       parent="mrp.menu_mrp_bom" sequence="8"/> 

在此先感謝

+0

歡迎計算器。您必須先繼承保存按鈕@Aravind Mano – Naveen

+0

但是在該產品窗體中已經有兩個複選框,其中一個用於將數據保存在銷售模塊 - >產品中,另一個用於將數據保存到採購模塊中 - >產品。我想要執行同樣的操作時,我點擊原材料複選框 –

回答

0
  1. 覆蓋創建功能
  2. 檢查是否boolen(真/假)
  3. 如果真的創建字典,通過表單值

例如:

@api.model 
def create(self, vals): 
    if vals.get('boolean_field') == True: 
     product_data= { 
        'name':vals.get('partner_name'), 
        'size':vals.get('size'), 
        'price':vals.get('price'), 
        } 
     self.env['your.model'].create(product_data) 
    else: 
     # some code 

return super(YourClass, self).create(vals) 
0

就在下面原材料動作添加域:

<record id="product_raw_materials" model="ir.actions.act_window"> 
     <field name="name">Raw Materials</field> 
     <field name="type">ir.actions.act_window</field> 
     <field name="res_model">product.template</field> 
     <field name="view_mode">kanban,tree,form</field> 
     <field name="view_type">form</field> 
     <field name="context">{"search_default_filter_to_raw":1}</field> 
     <field name="domain">[('raw','=',True)]</field> 
     <field name="view_id" ref="product.product_template_kanban_view"/> 
     <field name="search_view_id" ref="product.product_template_search_view"/> 
     <field name="help" type="html"> 
      <p class="oe_view_nocontent_create"> 
      Click to define a new product. 
      </p><p> 
      You must define a product for everything you sell, whether it's 
      a physical product, a consumable or a service you offer to 
      customers. 
      </p><p> 
      The product form contains information to simplify the Raw Materials: price, notes in the quotation, accounting data, 
      procurement methods, etc. 
      </p> 
     </field> 
    </record> 
+0

它不起作用。如果我通過點擊原材料複選框保存產品,它也會保存在產品表單中。但它不應該,而應該保存在原材料菜單中,而這正是我想要在這裏實現的。 –

0
 I have found the answer for my question 

    <record id="raw_materials" model="ir.ui.view"> 
       <field name="name">raw.form.inherit.button</field> 
       <field name="model">product.template</field> 
       <field name="inherit_id" ref="product.product_template_only_form_view"/> 
       <field name="arch" type="xml" > 

        <xpath expr="//field[@name='name']" position="after"> 

          <div name="options" groups="base.group_user"> 
           <div> 
            <field name="raw"/> 
            <label for="raw"/> 
           </div> 
          </div>  

        </xpath> 

       </field> 
      </record> 

      <record id="***raw_search_view***" model="ir.ui.view"> 
      <field name="name">***raw.product.search***</field> 
      <field name="model">product.template</field> 
      ***<field name="inherit_id" ref="product.product_template_search_view"/>*** 
      <field name="arch" type="xml"> 
       ***<xpath expr="//filter[@name='consumable']" position="after"> 
        <seperator/> 
        <filter string="Raw Materials" name="filter_to_raw" domain="[('raw','=',True)]"/> 
       </xpath>*** 
      </field> 
      </record> 

      <record id="product_raw_materials" model="ir.actions.act_window"> 
       <field name="name">Raw Materials</field> 
       <field name="type">ir.actions.act_window</field> 
       <field name="res_model">product.template</field> 
       <field name="view_mode">kanban,tree,form</field> 
       <field name="view_type">form</field> 
       ***<field name="context">{"search_default_filter_to_raw":True,"default_sale_ok":False}</field>*** 
       <field name="domain">[('raw','=',True)]</field> 
       <field name="view_id" ref="product.product_template_kanban_view"/> 
       <field name="search_view_id" ref="product.product_template_search_view"/> 
       <field name="help" type="html"> 
        <p class="oe_view_nocontent_create"> 
        Click to define a new product. 
        </p><p> 
        You must define a product for everything you sell, whether it's 
        a physical product, a consumable or a service you offer to 
        customers. 
        </p><p> 
        The product form contains information to simplify the Raw Materials: price, notes in the quotation, accounting data, 
        procurement methods, etc. 
        </p> 
       </field> 
      </record> 



      <menuitem id="menu_mrp_product_form" name="Raw Materials" action="***product_raw_materials***" 
        parent="mrp.menu_mrp_bom" sequence="8"/>