在Openerp中列出父类别的产品

时间:2014-09-24 06:49:55

标签: openerp categories product

我正在使用OpenERP V7。

我有以下结构:

  • 第1类
    • 子类别A.
      • 产品1
      • 产品2
    • 子类别B.
      • 产品3
      • 产品4
  • 第2类
    • 子类别C.
      • 产品5
      • 产品6

我想列出Category 1下的所有产品。但是,如果我搜索Subcategory ASubcategory B,我只能列出产品。如果我搜索Category 1,则会显示一个空列表。

我看到了类似的问题:

但我无法使用任何解决方案。我想我错过了一些步骤。什么是解决它的最佳方法?

编辑:还找到了这个模块:https://www.odoo.com/apps/7.0/product_category_full_search/我可以安装它但安装后它似乎不起作用,如果我查找Category1它仍然是空的。

2 个答案:

答案 0 :(得分:1)

我终于找到了方法,在second link中解释了它。

我正在修改文件product_view.xml。但正如here所解释的那样,XML文件被上传到数据库中以便更快地响应,这意味着计算机中文件本身所做的更改不会对服务器产生直接影响,除非您更新模块。

有两种方法可以解决我的问题:

  1. 您创建了一个模块(有一些教程可以解释它),然后您安装它。
  2. 视图的代码是:

    <record id="view_product_search_child_categories" model="ir.ui.view">
        <field name="name">product.search.categories</field>
        <field name="model">product.product</field>
        <field name="inherit_id" ref="product.product_search_form_view" />
        <field name="arch" type="xml">
            <field name="categ_id" position="attributes">
                <attribute name="operator">child_of</attribute>
            </field>
        </field>
    </record>
    

    或其他选项:

    1. 您可以直接在OpenERP界面中创建视图。在我的情况下,我做了:
      • 启用管理员用户的技术功能。
      • 转到设置&gt;技术&gt;用户界面&gt;视图&gt;创建:
        • 查看名称:product.search.categories
        • 查看类型:(它会显示Tree但保存后会更改为Search
        • 对象:product.product
        • 儿童字段:空
        • 继承视图:product.search.form
        • 外部ID:空
    2. 在架构中写道:

      <?xml version="1.0"?>
          <field name="categ_id" position="attributes">
              <attribute name="operator">child_of</attribute>
          </field>
      

答案 1 :(得分:0)

你可以去销售 - &gt;产品 - &gt;产品按类别菜单并删除搜索栏中的过滤器。您将拥有类别树的所有产品。

或者你可以创建一个像

这样的过滤器
<filter string="NAME" icon="terp-accessories-archiver" domain="[('categ_id','child_of',X]"/>

其中X是您的类别的ID。您可以使用类别列表     域=&#34; [(&#39; categ_id&#39;&#39; child_of&#39;,[X,Y])]&#34;