I've been trying to inherit and extend the POS from Odoo (V8) but I keep running stock. What do I want to do? When the user clicks on a payment method and the screen is show there is a button 'Confirm'. I want to add another button here, which prints a new created QWeb report. So far I've managed to add a new JS file to the web.assets and started to extend the POS. So my code for adding my customer JS file:

I could help you to develop anything and solve complex problems based on technologies, integrations and tricky stuffs mostly in Python with OpenERP/Odoo, Zato, Django and many others frameworks programming languages and technologies.

I offers consulting services to anyone with an unanswered questions or needs for customizations. Think about it, maybe it's better to have an expert to solve your issues and projects than having a full time employee trying to understand what to do an how

Thanks Axel, a step closer! The thing is, I've now extended my custom ticket since it should show the prices too. So I added a line: but when I now run the JS I will get the error 'Error: QWeb2 - template['PosTicket2']: Runtime Error: TypeError: dict.order.get_subtotal is not a function' so I'm missing something in the JS that gets the get_subtotal but I'm not sure how to call it.. Think you could give me a helping hand there too?

Being an emerging leader in IT market since 2011, Emipro
Technologies Pvt. Ltd. has been providing a wide range of business
solutions in Odoo & Magento. We are pleased to have a large
pool of contented customers with our meticulous work in the domain
of ERP & e-Commerce. A ray of relief & satisfaction to
our customers heart by our successful deployment in their
organization, purely represents our success in Odoo platform.
Hence, we take pride for being an Odoo partner with a vision of
expanding our strategic alliances with our customers to offer them
high value-added, trustworthy & cost effective solutions.

Since establishment, our business has span across 11 countries of
the world. Our customers are companies of all sizes ranging from
start-ups to large enterprises, who realize that they need a
professional business solutions to generate revenue streams,
establish proper communication channels or streamline business
operations. Standing with strong determination of customer
satisfaction, observing each minute detail of their business
processes, providing proper guidance and moving forth to develop
product accordingly adds our value and reliability among our
customers.

We are blessed with efficient, passionate & eclectic young
developers who have come across almost all kinds of business
profiles, working with full dedication, applying creativity &
new features in existing modules and completing customer's
projects successfully on predefined target. Our in-depth knowledge
while giving business solutions in Odoo allows us to offer
following services to our customers :

Thanks for the great answer Emipro! I've added a line in the JS like this: this.pos_widget.screen_selector.set_current_screen(this.next_screen); which is opening a new view, the default ticket screen. How do I now create another view/report that should be opened in place of the receipt screen? :s

The default ticket that is printed in the screen (when you click on the payment method and then on confirm shows you the dialog to print the report but also shows the report inline. I want a second view which shows another version of this ticket in the browser. See: http://i.imgur.com/2iUI5MY.png

Do you want to keep the old version of the report? If no then I suggest copy whole template of that report version in your xml file and keep the 'same name of the template' and just do the changes you want, so it will load with whatever changes you made. In this case you don't need to add any new button. OR you can create your own new template and in js file you need to override the code where it prints the old version of the report and change the template name with yours new template name. Hope this helps !!.

Actually, when you click on confirm button pos makes the order 'paid' and shows you the reciept. I don't know while showing new qweb template do you want to confirm the order or not. If not than, in your case you need to create new screen inherited from 'ScreenWidget'. Then from the code shown above in function 'myclick' you need to show that new screen rendering your new qweb template. For rendering the qweb template, you can just search around in core module how the old report is rendered and check it.

@Emipro I'm talking about the button 'Validate', not 'Invoice'. My new button (named 'Kasticket') should do exactly the same functionalities as 'Validate', the only difference is that it should show another QWeb report. I can't find any working way to show another QWeb report though..

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just
use the commenting tool. Please remember that you can always revise your answers
- no need to answer the same question twice. Also, please don't forget to vote
- it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines