Odoo Help


Generate simple pdf file

on 1/30/15, 2:31 AM 1,219 views

I am trying to generate simple pdf file but facing an error. I am using following steps to do the same:



import custom_letter


import datetime
import time

from openerp.report import report_sxw

class custom_letter(report_sxw.rml_parse):

    def __init__(self, cr, uid, name, context):
        super(custom_letter, self).__init__(cr, uid, name, context=context)
        self.localcontext.update({'time': time, })

report_sxw.report_sxw('report.custom.letter', 'hr.employee', 'addons/hr_custom/report/custom_letter.rml',parser=custom_letter)


<?xml version="1.0"?>
    <document filename="example_2.pdf">
            <pageTemplate id="main">
                <frame id="first" x1="72" y1="72" width="451" height="698"/>
        <!-- The story starts below this comment -->
                This is the "story". This is the part of the RML document where your text is placed.
                It should be enclosed in "para" and "/para" tags to turn it into paragraphs.


<?xml version="1.0" encoding="utf-8"?>
        <report id="report_custom_letter" model="hr.employee" name="hr.employee" string="Custom Letter" xml="hr_custom/report/custom_letter.rml" auto="False" header="False" />




At run time I am getting this error:

2015-01-30 07:01:25,912 4245 ERROR customopenerp openerp.service.web_services: Exception: u'report.hr.employee'
Traceback (most recent call last):
  File "/home/shiv.sh/workspace/CustomOpenERP/openerp-7.0/openerp/service/web_services.py", line 711, in go
    obj = netsvc.LocalService('report.'+object)
  File "/home/shiv.sh/workspace/CustomOpenERP/openerp-7.0/openerp/netsvc.py", line 98, in LocalService
    return Service._services[name]
KeyError: u'report.hr.employee'
2015-01-30 07:01:26,159 4245 ERROR customopenerp openerp.netsvc: report.hr.employee
(<type 'exceptions.KeyError'>, KeyError(u'report.hr.employee',), <traceback object at 0xb29aa2fc>)
Traceback (most recent call last):
  File "/home/shiv.sh/workspace/CustomOpenERP/openerp-7.0/openerp/netsvc.py", line 296, in dispatch_rpc
    result = ExportService.getService(service_name).dispatch(method, params)
  File "/home/shiv.sh/workspace/CustomOpenERP/openerp-7.0/openerp/service/web_services.py", line 654, in dispatch
    res = fn(db, uid, *params)
  File "/home/shiv.sh/workspace/CustomOpenERP/openerp-7.0/openerp/service/web_services.py", line 760, in exp_report_get
    return self._check_report(report_id)
  File "/home/shiv.sh/workspace/CustomOpenERP/openerp-7.0/openerp/service/web_services.py", line 738, in _check_report
    netsvc.abort_response(exc, exc.message, 'warning', exc.traceback)
  File "/home/shiv.sh/workspace/CustomOpenERP/openerp-7.0/openerp/netsvc.py", line 71, in abort_response
    raise openerp.osv.osv.except_osv(description, details)
except_osv: (u'report.hr.employee', (<type 'exceptions.KeyError'>, KeyError(u'report.hr.employee',), <traceback object at 0xb29aa2fc>))


Can anyone please guide me to fix the problem!



Ludo - Neobis

--Ludo - Neobis--
| 2 2 5
Hoogvliet, Netherlands
--Ludo - Neobis--


Ludo - Neobis
On 1/30/15, 3:44 AM

Your file is called "letter.py" but in your __init__ you try to import "custom_letter". Rename either one and check if that works.

I mentioned wrong. File name is "custom_letter.py" only.

on 1/30/15, 4:08 AM

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)


Asked: 1/30/15, 2:31 AM
Seen: 1219 times
Last updated: 3/16/15, 8:10 AM