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

Render excel file from Website/portal

Subscribe

Get notified when there's activity on this post

This question has been flagged
portalexcelxlsxxlsxls_reports
1 Reply
8318 Views
Avatar
Khalid

How to call/request from Odoo website portal to genetate excel file report.

I'm using "report_xlsx" for the excel file report.

For PDF reports it works perfectly something like that:

pdf = request.env['report'].sudo().get_pdf(cases, 'module.report_name', data=datas)

pdfhttpheaders = [

('Content-Type', 'application/pdf'), ('Content-Length', len(pdf)),

('Content-Disposition', 'attachment; filename=Report.pdf;')

]

return request.make_response(pdf, headers=pdfhttpheaders)


For excel I tried the following:

xlsx = {'type': 'ir.actions.report.xml',

'report_name': 'module.report_name.xlsx',

'datas': datas,

'name': 'Report Name'

}

  xlsxhttpheaders = [

 ('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'), ('Content-Length', len(xlsx)),

 ('Content-Disposition', 'attachment; filename=Report.xlsx;')

return request.make_response( xlsx , headers= xlsxhttpheaders )

But it does not work.....

Any tips ?

1
Avatar
Discard
Cybrosys Techno Solutions Pvt.Ltd

Hi
You can refer to the blog: https://www.cybrosys.com/blog/generate-xlsx-report-using-controller-odoo-14

Hope it helps

Avatar
Piotr Cierkosz
Best Answer

Well, I guess the simplest way would be to use an existing module for that. Please check the app store:

https://apps.odoo.com/apps/modules/11.0/report_xlsx/

0
Avatar
Discard
Khalid
Author

Maybe I did not explain my issue clearly.

I'm already using report_xlsx and my report is working fine within the normal interface.

My issue is how to call the same report from the website portal. I can't seem to make it work.

Piotr Cierkosz

You mean from the front-end /customer portal? What is the error?

Khalid
Author

Yes, on the front-end customer portal.

The error:

2018-04-23 17:24:51,306 72725 INFO db1 werkzeug: 192.168.20.1 - - [23/Apr/2018 17:24:51] "POST /my/km_reports HTTP/1.1" 500 -

2018-04-23 17:24:51,312 72725 ERROR db1 werkzeug: Error on request:

Traceback (most recent call last):

File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 180, in run_wsgi

execute(self.server.app)

File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 168, in execute

application_iter = app(environ, start_response)

File "/opt/odoo/odoo-10_07_23_017/odoo/service/server.py", line 250, in app

return self.app(e, s)

File "/opt/odoo/odoo-10_07_23_017/odoo/service/wsgi_server.py", line 184, in application

return application_unproxied(environ, start_response)

File "/opt/odoo/odoo-10_07_23_017/odoo/service/wsgi_server.py", line 170, in application_unproxied

result = handler(environ, start_response)

File "/opt/odoo/odoo-10_07_23_017/odoo/http.py", line 1308, in __call__

return self.dispatch(environ, start_response)

File "/opt/odoo/odoo-10_07_23_017/odoo/http.py", line 1282, in __call__

return self.app(environ, start_wrapped)

File "/usr/lib/python2.7/dist-packages/werkzeug/wsgi.py", line 591, in __call__

return self.app(environ, start_response)

File "/opt/odoo/odoo-10_07_23_017/odoo/http.py", line 1486, in dispatch

return response(environ, start_response)

File "/usr/lib/python2.7/dist-packages/werkzeug/wrappers.py", line 1220, in __call__

app_iter, status, headers = self.get_wsgi_response(environ)

File "/usr/lib/python2.7/dist-packages/werkzeug/wrappers.py", line 1210, in get_wsgi_response

return app_iter, self.status, headers.to_wsgi_list()

File "/usr/lib/python2.7/dist-packages/werkzeug/datastructures.py", line 1194, in to_wsgi_list

return [(to_native(k), v.encode('latin1')) for k, v in self]

AttributeError: 'int' object has no attribute 'encode'

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
how to create xls report for the sale.order?
customization sale.order xlsx xls xls_reports
Avatar
Avatar
Avatar
2
Jun 23
9457
Odoo 9 CE to Odoo 14 CE xls reports migration
xlsx xls xls_reports Odoo9 v14
Avatar
0
Mar 21
3188
How to use report_xls module in Odoo ?
xls xls_reports
Avatar
0
Nov 17
3984
CacheMiss: 'mrp.bom.line(459,).product_tmpl_id' Solved
xlsx xls_reports odoo16 Odoo16
Avatar
Avatar
1
Feb 25
1539
odoo 16 enterprise, export custom report xlsx format. Solved
enterprise excel studio xlsx
Avatar
Avatar
Avatar
2
Jan 24
4520
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