【问题标题】:Odoo 9.0c: How to get the current user in qweb report?Odoo 9.0c:如何在 qweb 报告中获取当前用户?
【发布时间】:2016-12-26 17:10:59
【问题描述】:

当我从其他用户创建的报告中复制销售订单或帐户发票 qweb 报告时,有关销售人员的信息与原始报告相同。我们可以在副本中获取当前用户吗?请帮助我逐步指出实现目的的正确方法。谢谢你的时间。对不起,因为我的英语水平低。

【问题讨论】:

    标签: odoo-9 qweb


    【解决方案1】:

    我们可以通过 3 种不同的方式将用户详细信息添加并打印到 Qweb 报告中

    1.直接访问 qweb Part 中的 'user' 全局对象

    <span t-esc="user.name" />
    

    2。从报表解析器类中获取当前用户详细信息

    解析器报告类方法:-

    def get_cur_user(self):
        return self.pool.get('res.users').browse(self.cr,self.uid,self.uid).name
    

    将解析器类方法调用到 qweb 视图部分:-

    <t t-if="get_cur_user()">
        <spane t-esc="get_cur_user()" />
    </t>
    

    3。在该特定报告上设置自定义 user_id (many2one) 字段,并将默认属性设置为 env 用户记录集

    添加到您的报告模型中:-

    user_id = fields.Many2one('res.users', string='Print By User', default=lambda self: self.env.user)
    

    将该字段访问到 Qweb 视图部分:-

    <t t-if="o.user_id">
        <spane t-field="o.user_id.name" />
    </t>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多