问题描述
我正在尝试过滤位于 Accounting-> Reporting -> Partner Ledger
的 odoo 会计报告(Partner Ledger)上的合作伙伴列表我需要将默认列表设置为仅显示客户合作伙伴 (customer_rank = 1),而不是现在显示的所有联系人。
有没有办法过滤那个列表?
我试图找到下面显示的视图,但找不到任何视图来更改上下文或域。
我也通过 JS 尝试过,但我没有看到任何在按钮(account_reports 模块)上添加域的方法。
<div class="col-12">
<t t-if="options.get('partner_ids') != None">
Partners:
<t t-set="res_partner_value">All</t>
<t t-foreach="options['selected_partner_ids']" t-as="partner_name">
<t t-set="res_partner_value" t-value="''"/>
<t t-esc="partner_name"/>
</t>
<t t-esc="res_partner_value"/>
</t>
</div>
解决方法
我找到了解决方案:
js文件上有个函数,可以在创建widget的时候传入一个domain字段:
name: fieldName,relation: fieldInfo.modelName,type: 'many2many',domain: "[('customer_rank','=',1)]",value: fieldInfo.value
添加后,合作伙伴列表按预期过滤。