0

I am getting the exceptions while PDF generation.

This happen sometimes not always. Sometime first exception occurs and sometime second.

Here are the stack traces capturing the problems. Almost similar to first exception identified for django at Troubleshoot reportlab heisenbug

But this doesn't seems to work in my case.

File "/home/openerp/clean_oe7/server/openerp/report/report_sxw.py", line 533, in create_single_pdf
    pdf = create_doc(etree.tostring(processed_rml),rml_parser.localcontext,logo,title.encode('utf8'))
  File "/home/openerp/clean_oe7/server/openerp/report/interface.py", line 206, in create_pdf
    obj.render()
  File "/home/openerp/clean_oe7/server/openerp/report/render/render.py", line 59, in render
    self._result = self._render()
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml.py", line 41, in _render
    return rml2pdf.parseNode(self.rml, self.localcontext, images=self.bin_datas, path=self.path,title=self.title)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1032, in parseNode
    r.render(fp)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 328, in render
    pt_obj.render(el)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1003, in render
    fis += r.render(node_story)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 897, in render
    return process_story(node_story)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 890, in process_story
    flow = self._flowable(node)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 813, in _flowable
    return  self._table(node)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 697, in _table
    fl = self._flowable(n, extra_style=paraStyle)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 766, in _flowable
    result.append(platypus.Paragraph(i, style, **(utils.attr_get(node, [], {'bulletText':'str'}))))
  File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 827, in __init__
    self._setup(text, style, bulletText, frags, cleanBlockQuotedText)
  File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 842, in _setup
    style, frags, bulletTextFrags = _parser.parse(text,style)
  File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paraparser.py", line 1058, in parse
    return self._complete_parse()
  File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paraparser.py", line 1061, in _complete_parse
    del self._seq
AttributeError: ParaParser instance has no attribute '_seq'


File "/home/openerp/clean_oe7/server/openerp/report/report_sxw.py", line 442, in create
    pdf = create_doc(etree.tostring(processed_rml),rml_parser.localcontext,logo,title.encode('utf8'))
  File "/home/openerp/clean_oe7/server/openerp/report/interface.py", line 206, in create_pdf
    obj.render()
  File "/home/openerp/clean_oe7/server/openerp/report/render/render.py", line 59, in render
    self._result = self._render()
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml.py", line 41, in _render
    return rml2pdf.parseNode(self.rml, self.localcontext, images=self.bin_datas, path=self.path,title=self.title)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1032, in parseNode
    r.render(fp)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 328, in render
    pt_obj.render(el)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1003, in render
    fis += r.render(node_story)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 897, in render
        return process_story(node_story)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 890, in process_story
    flow = self._flowable(node)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 813, in _flowable
    return  self._table(node)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 697, in _table
    fl = self._flowable(n, extra_style=paraStyle)
  File "/home/openerp/clean_oe7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 766, in _flowable
    result.append(platypus.Paragraph(i, style, **(utils.attr_get(node, [], {'bulletText':'str'}))))
  File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 827, in __init__
    self._setup(text, style, bulletText, frags, cleanBlockQuotedText)
  File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paragraph.py", line 842, in _setup
    style, frags, bulletTextFrags = _parser.parse(text,style)
  File "/usr/lib/python2.7/dist-packages/reportlab/platypus/paraparser.py", line 1057, in parse
    self.close()    # force parsing to complete
  File "/usr/lib/python2.7/dist-packages/reportlab/lib/xmllib.py", line 521, in close
    self.parser.close()
AttributeError: 'NoneType' object has no attribute 'close'
Community
  • 1
  • 1
Hammad Qureshi
  • 1,006
  • 1
  • 11
  • 20
  • Both errors are in the question you referred to, check this comment for the solution http://stackoverflow.com/questions/10899078/troubleshoot-reportlab-heisenbug#comment30960009_10920843 – B8vrede Feb 23 '16 at 07:15
  • Post the code from your custom parser. – George Daramouskas Feb 24 '16 at 17:59
  • I didn't change anything in the default parser. You can see it at https://github.com/mattjmorrison/ReportLab/blob/master/src/reportlab/platypus/paraparser.py#L1060 And for odoo part https://github.com/odoo/odoo/blob/9.0/openerp/report/render/rml2pdf/trml2pdf.py These logs are totally strange to me. Yesterday this generated two reports where one required. – Hammad Qureshi Feb 25 '16 at 04:59

0 Answers0