Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Estate Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Accounting
  • Inventory
  • PoS
  • Project
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

Assertion Error on Email Generation with attachment

Subscribe

Get notified when there's activity on this post

This question has been flagged
assertionerror
7258 Views
Avatar
Mr Rhys Park

I Have this error when creating an email - send my email in the quotation. It only happens when I have an attachment any clues on what may be causing it?

Client Traceback (most recent call last): File "/opt/openerp/v7/web/addons/web/http.py", line 204, in dispatch response["result"] = method(self, *self.params) File "/opt/openerp/v7/web/addons/web/controllers/main.py", line 1128, in call_kw return self._call_kw(req, model, method, args, kwargs) File "/opt/openerp/v7/web/addons/web/controllers/main.py", line 1120, in _call_kw return getattr(req.session.model(model), method)(args, **kwargs) File "/opt/openerp/v7/web/addons/web/session.py", line 42, in proxy result = self.proxy.execute_kw(self.session._db, self.session._uid, self.session._password, self.model, method, args, kw) File "/opt/openerp/v7/web/addons/web/session.py", line 30, in proxy_method result = self.session.send(self.service_name, method, *args) File "/opt/openerp/v7/web/addons/web/session.py", line 103, in send raise xmlrpclib.Fault(openerp.tools.ustr(e), formatted_info)

Server Traceback (most recent call last): File "/opt/openerp/v7/web/addons/web/session.py", line 89, in send return openerp.netsvc.dispatch_rpc(service_name, method, args) File "/opt/openerp/v7/server/openerp/netsvc.py", line 292, in dispatch_rpc result = ExportService.getService(service_name).dispatch(method, params) File "/opt/openerp/v7/server/openerp/service/web_services.py", line 626, in dispatch res = fn(db, uid, params) File "/opt/openerp/v7/server/openerp/osv/osv.py", line 188, in execute_kw return self.execute(db, uid, obj, method, *args, *kw or {}) File "/opt/openerp/v7/server/openerp/osv/osv.py", line 131, in wrapper return f(self, dbname, args, *kwargs) File "/opt/openerp/v7/server/openerp/osv/osv.py", line 197, in execute res = self.execute_cr(cr, uid, obj, method, args, *kw) File "/opt/openerp/v7/server/openerp/osv/osv.py", line 185, in execute_cr return getattr(object, method)(cr, uid, args, *kw) File "/opt/openerp/v7/addons-brash/email_template/wizard/mail_compose_message.py", line 72, in onchange_template_id values = self.generate_email_for_composer(cr, uid, template_id, res_id, context=context) File "/opt/openerp/v7/addons-brash/email_template/wizard/mail_compose_message.py", line 123, in generate_email_for_composer template_values = self.pool.get('email.template').generate_email(cr, uid, template_id, res_id, context=context) File "/opt/openerp/v7/addons-brash/email_template/email_template.py", line 340, in generate_email (result, format) = service.create(cr, uid, [res_id], {'model': template.model}, ctx) File "/opt/openerp/v7/server/openerp/report/report_sxw.py", line 444, in create fnct_ret = fnct(cr, uid, ids, data, report_xml, context) File "/opt/openerp/v7/server/openerp/report/report_sxw.py", line 513, in create_source_pdf return self.create_single_pdf(cr, uid, ids, data, report_xml, context)
File "/opt/openerp/v7/server/openerp/report/report_sxw.py", line 535, in create_single_pdf pdf = create_doc(etree.tostring(processed_rml),rml_parser.localcontext,logo,title.encode('utf8')) File "/opt/openerp/v7/server/openerp/report/interface.py", line 206, in create_pdf obj.render() File "/opt/openerp/v7/server/openerp/report/render/render.py", line 59, in render self._result = self._render() File "/opt/openerp/v7/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 "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1035, in parseNode r.render(fp) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 348, in render pt_obj.render(el) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 1011, in render fis += r.render(node_story) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 905, in render return process_story(node_story) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 898, in process_story flow = self._flowable(node) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 862, in _flowable return self.render(node) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 905, in render return process_story(node_story) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 898, in process_story flow = self._flowable(node) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 821, in _flowable return self._table(node) File "/opt/openerp/v7/server/openerp/report/render/rml2pdf/trml2pdf.py", line 725, in _table assert length == len(node.get('colWidths').split(',')) AssertionError

0
Avatar
Discard
IBS Group

Are you able to print the quotation without issues?

Mr Rhys Park
Author

No I cannot print anything from the sales order module, no problem in the Purchase order module. path in the file is report_sxw.report_sxw('report.sale.order', 'sale.order', 'sale/report/sale_order.rml', parser=order, header="external") Now i get " RML is not available at specified location or not enough data to print!" I assume it cant find the RML file but the path seems correct :) any ideas?

IBS Group

Can you go to Settings - Technical - Actions - Reports and search for the Sale Order report then paste the RML location here.

Mr Rhys Park
Author

Here goes sale/report/sale_order.rml

IBS Group

Can you please confirm the file exists in that location.

Mr Rhys Park
Author

yes i have checked and the file does exist in the addons/sale/report/sale_order.rml how is the path created as i have my directory structure as addons and server in the same directory i.e v7/addons and v7/server and v7/web but all the other reports seem fine and the paths is the same?

IBS Group

in the report_sxw.report_sxw method call change the 3rd parameter to addons/sale/report/sale_order.rml then restart the server daemon and see if it works.

Mr Rhys Park
Author

line now reads report_sxw.report_sxw('report.sale.order', 'sale.order', 'addons/sale/report/sale_order.rml', parser=order, header="external") and no change

IBS Group

Okay you can put it back the way it was before. Was the printing problem preexistant or it started happening recently? also can you make sure that there are no spaces in the report path in Settings - Technical - Actions - Reports

Mr Rhys Park
Author

Checked and no spaces, reentered just in case and all seem to match, checked the database with an SQL query and the stored path is correct. The problem started when transferred to a new server. All the other reports seem to run which does not make sense.

Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
AssertionError: Element odoo has extra content: data owing to few lines of code in the Email Template XML
assertionerror
Avatar
Avatar
1
Oct 23
3305
Many2One relationships from non-transient Model to TransientModel are forbidden
assertionerror
Avatar
0
May 17
7534
AssertionError: Invalid rec_name task_id for model projet.task.history
assertionerror
Avatar
0
Mar 15
6098
AssertionError: Element odoo has extra content: menuitem, line 9
assertionerror security.xml
Avatar
Avatar
1
Aug 24
5077
AssertionError: Element data has extra content: record, line 3
assertionerror content
Avatar
Avatar
Avatar
3
Sep 23
4034
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now