You can find many example of print report from wizard in openerp. Lets check in product module product_pricelist report & wizard.
In wizard when you open there is a button print, in print button in py side define code for send data to report
def print_report(self, cr, uid, ids, context=None):
"""
To get the date and print the report
@return : return report
"""
if context is None:
context = {}
datas = {'ids': context.get('active_ids', [])}
res = self.read(cr, uid, ids, ['price_list','qty1', 'qty2','qty3','qty4','qty5'], context=context)
res = res and res[0] or {}
res['price_list'] = res['price_list'][0]
datas['form'] = res
return {
'type': 'ir.actions.report.xml',
'report_name': 'product.pricelist',
'datas': datas,
}
and in .rml file file define a para like <para style="terp_default_Centre_8">[[ get_pricelist(data['form']['price_list']) ]]</para>
get_pricelist a function define in report file , where data['form']['price_list'] is a argument passed from wizard which used in function get_pricelist
Hope this will help