Only use direct rendering as a fallback if no py3o server is defined

--HG--
branch : odoo8
pull/80/head
Jérémie Gavrel 2016-03-09 17:50:37 +01:00
parent ab49206f72
commit 1826aa2c45
2 changed files with 13 additions and 11 deletions

View File

@ -19,6 +19,7 @@ class py3o_template(osv.Model):
('ods', u"ODF Spreadsheet"), ('ods', u"ODF Spreadsheet"),
], ],
u"LibreOffice Template File Type", u"LibreOffice Template File Type",
required=True,
), ),
} }

View File

@ -156,20 +156,21 @@ class Py3oParser(report_sxw):
parsed_datadict = data_struct.render(datadict) parsed_datadict = data_struct.render(datadict)
if filetype.fusion_ext == report_xml.py3o_template_id.filetype: fusion_server_obj = pool.get('py3o.server')
# No format conversion is needed, render the template directly fusion_server_ids = fusion_server_obj.search(
template.render(parsed_datadict) cr, uid, [], context=context, limit=1
res = out_stream.getvalue() )
if not fusion_server_ids:
else: # Call py3o.server to render the template in the desired format if filetype.fusion_ext == report_xml.py3o_template_id.filetype:
fusion_server_obj = pool.get('py3o.server') # No format conversion is needed, render the template directly
fusion_server_ids = fusion_server_obj.search( template.render(parsed_datadict)
cr, uid, [], context=context res = out_stream.getvalue()
) else:
if not fusion_server_ids:
raise exceptions.MissingError( raise exceptions.MissingError(
_(u"No Py3o server configuration found") _(u"No Py3o server configuration found")
) )
else: # Call py3o.server to render the template in the desired format
fusion_server_id = fusion_server_ids[0] fusion_server_id = fusion_server_ids[0]
fusion_server = fusion_server_obj.browse( fusion_server = fusion_server_obj.browse(