Odoo,Qweb,Report报表的外部方法引用的问题
class:
importtimefromopenerp.osvimportosvfromopenerp.reportimportreport_sxwclassstock_picking_out(report_sxw.rml_parse):def__init__(self,cr,uid,name,context):super(stock_picking_out,self).__init__(cr,uid,name,context=context)self.localcontext.update({'time':time,'get_partner_product':self._get_partner_product,})#todo获取客户产品编码:def_get_partner_product(self,partner,product_id):sql="""SELECTcp.partner_default_codeFROMcustomer_productcpLEFTJOINres_partnerrpONrp.id=cp.partner_idWHEREcp.product_id=%sANDcp.partner_id=%s"""self.cr.execute(sql,(product_id,partner))sql_data=self.cr.fetchall()iflen(sql_data)>0:forobjinsql_data:partner_default_code=obj[0]returnpartner_default_codereturn''classreport_stockpickingout(osv.AbstractModel):_name='report.report_stock.report_stockpickingout'_inherit='report.abstract_report'_template='report_stock.report_stockpickingout'_wrapped_report_class=stock_picking_out
Report_view:
<td class="text-left">
<span t-esc="get_partner_product(doc.partner_id.id,l.product_id.id)"/>
</td>
当我在打印的时候,报出的问题:
QWebException:"'NoneType'objectisnotcallable"whileevaluating'get_partner_product(doc.partner_id.id,l.product_id.id)'
Answer:
在"_name"时,路径的错误,必须要添加上"report"的引用:
classreport_stockpickingout(osv.AbstractModel):_name='report.report_stock.report_stockpickingout'
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。