Odoo 10 Add Button To POS
Solution 1:
For a concrete example on how can this be done, check addons/pos_discount/static/src/js/discount.js
. You can see here that a button with the label Discount
is added in one of the screens of Odoo POS. Check the whole module since what is basically does is adding a button on the action buttons of the POS (attaching screenshot)
Also check the template on addons/pos_discount/static/src/xml/discount_templates.xml
for the layout of the button.
Solution 2:
To create a buttton in the pos interface you need to create three files.
xml file.
js file
xml file for template
xml file
this file is used to call the js file. Also you need to set the path of this xml file in the manifest like 'data': ['view/pos_update_view.xml'] The code of this xml file is shown below:
<script type="text/javascript" src="/pos_update/static/src/js/cancel.js"></script> </xpath> </template> </data>
You only need to change the path of the js file which is in the src="YOUR JS FILE PATH"
js file
In normal situation the location of the js file will be in FOLDER_NAME/STATIC/SRC/JS/FILENAME.JS
odoo.define('clear_button_fun.pos_view',function(require){ "use strict";
var screens = require('point_of_sale.screens'); var gui = require('point_of_sale.gui'); var core = require('web.core');
var ClearCartLine = screens.ActionButtonWidget.extend({ template: "ClearCartLine",
button_click: function(){ var self = this; this.clear_button_fun(); }, clear_button_fun(){ var order = this.pos.get_order(); order.remove_orderline(order.get_selected_orderline()) },
}); screens.define_action_button({'name': 'clear_button_fun','widget': ClearCartLine,});
});
In the above code ClearCartLine is the template name and it must be same in all places. clear_button_fun() is the name of the function and you can add your code to tell what to do when clicking on that button.
xml file.
This xml file is to create a button as a template. In normal situation the location of this xml file will be in FOLDER_NAME/STATIC/SRC/XML/FILENAME.XML
Also you need to set this template location in the manifest. Like 'qweb': ['static/src/xml/pos_view.xml']
<t t-name="ClearCartLine">
<div class='control-button'>
Clear Oder Line
</div>
</t>
I hope the above description helps you.
Solution 3:
Maybe you should change your codes
id="assets_backend"
into id="assets"
&
inherit_id="web.assets_backend"
into inherit_id="point_of_sale.assets"
Post a Comment for "Odoo 10 Add Button To POS"