从向导打印报告中的参数

Print params in report from a wizard

我正在尝试从向导那里获取报告,我正在从我的 return:

指向 mi res_model:stock.quant
def print_report(self, cr, uid, ids, context=None):
datas = {'partner' : context.get('cliente'), 'mounth':context.get('mes')}
return {
    'type': 'ir.actions.report.xml',
    #~ 'report_file': 'stock.uas.wizard',
    'report_name': 'stock.report_uas_document',
    'report_type': 'qweb-html',
    'datas': datas,
    'context': context,
    'res_model': 'stock.quant',
    'src_model': 'stock.quant',
}   

我正在获取正确的模型和报告,但是当您尝试使用某些字段时出现此错误:

QWebException: "'NoneType' object has no attribute 'get_pallets'" while evaluating

如果我尝试在模型中使用某些函数,我会收到此错误:

QWebException: ('MissingError', you'One of the documents you are trying to access has been deleted, please try again after refreshing.')

就像我在另一个没有字段和函数的模型中一样 la that.but if a do

<span t-esc="o"/>

在报告中

y get: stock.quant(42,)

所以问题是,如何从 return.

获取和使用参数

我认为我在正确的对象中,我以传统方式及其文字构建此报告,但通过 return 调用函数我没有传递参数。

您的数据是一个字典,只有两个值。
如上所述,试试这个:

def print_report(self, cr, uid, ids, context=None):
    assert len(ids) == 1,
    datas = {
        'ids': ids,
        'model': 'stock.quant',
        'form': self.read(cr, uid, ids[0], context=context)
    }
    return {
        'type': 'ir.actions.report.xml',
        #~ 'report_file': 'stock.uas.wizard',
        'report_name': 'stock.report_uas_document',
        'report_type': 'qweb-html',
        'datas': datas,
        'context': context,
        'res_model': 'stock.quant',
        'src_model': 'stock.quant',
    }