我正在编写一个Odoo图形视图。需要一个SQL视图来显示图形视图中的所有字段。
这是python代码:来自openerp导入字段、模型、工具、api
class omzettenperdag_sql_view(models.Model):
_name = "omzettenperdag_sql_view"
_auto = False
#m2o fields to retrieve data from in SQL view query:
account_invoice = fields.Many2one(comodel_name='account.invoice', readonly=True, invisible=True)
account_invoice_line = fields.Many2one(comodel_name='account.invoice.line', readonly=True, invisible=True)
#Fields returned from SQL view:
hoeveelheid = fields.Float(string="Hoeveelheid")
prijs_excl = fields.Float(string="Prijs excl. btw")
datum = fields.Datetime(String="Datum")
verkoopskanaal = fields.Char(string="Verkoopskanaal")
#Create SQL view:
def init(self, cr):
tools.drop_view_if_exists(cr, self._table)
cr.execute("""
#SQL view query here...
);
""")这是图视图的xml代码。
<record id="view_account_invoice_line_graph" model="ir.ui.view">
<field name="name">account.invoice.line.graph</field>
<field name="model">omzettenperdag_sql_view</field>
<field name="arch" type="xml">
<graph string="Omzetten per dag" type="pivot">
<field name="datum" type="row"/>
<field name="verkoopskanaal" type="col"/>
<field name="prijs_excl" type="measure"/>
<field name="hoeveelheid" type="measure"/>
</graph>
</field>
</record>这样做很好:

当我正确地点击这个月的时候,我可以按日期进一步分割它。问题是也可以选择m2o字段(account_invoice和account_invoice_line)。这是没有意义的,当然也会产生错误。
这些字段在python代码中设置了不可见的属性。
有任何方法来隐藏这两个字段不受“右击菜单”的影响吗?我不想让用户点击那里得到错误。
发布于 2020-10-28 18:17:19
根据odoo的版本12,您可以这样简单地隐藏一个字段:
<record id="view_account_invoice_line_graph" model="ir.ui.view">
<field name="name">account.invoice.line.graph</field>
<field name="model">omzettenperdag_sql_view</field>
<field name="arch" type="xml">
<graph string="Omzetten per dag" type="pivot">
<field name="datum" type="row"/>
<field name="verkoopskanaal" type="col"/>
<field name="prijs_excl" type="measure"/>
<field name="hoeveelheid" type="measure" />
<field name="account_invoice" invisible="1" />
<field name="account_invoice_line" invisible="1" />
</graph>
</field>
</record>亲切的问候
https://stackoverflow.com/questions/47324116
复制相似问题