Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
3 Відповіді
5143 Переглядів

Hello guys,

In my custom module __openerp__.py file, I have this entry :

       "qweb" : [
        'static/src/xml/pos_as.xml',
    ],

Is it possible to change this declaration in the python code? How?

My goal : I would want to choose the pos.xml file according to the user company.

Thanks

Аватар
Відмінити
Автор

Still need it! WOuld you have some suggestions?

Найкраща відповідь

You could extend that function in a module(let's call it pos_test) with a js file like:

openerp.pos_test = function (instance) {
    var _t = instance.web._t,
    _lt = instance.web._lt;
    var QWeb = instance.web.qweb;

    instance.point_of_sale.ReceiptScreenWidget.include({
refresh: function() {
var order = this.pos.get('selectedOrder');
var user_template = 'PosTicket';

if(instance.session.uid == 1){
user_template = 'PosTicket_cf';
}
$('.pos-receipt-container', this.$el).html(QWeb.render(user_template,{
widget:this,
order: order,
orderlines: order.get('orderLines').models,
paymentlines: order.get('paymentLines').models,
}));

},
});
}
Аватар
Відмінити
Автор

Axel, you are a real beast. I try it tomorrow and i come back! Thanks 11111 times

Thanks, happy to help

you need to change the pos_test with the name of the module, register the file to be loaded with the assets_backend template and a depend with point_of_sale in the __openerp__.py

Автор Найкраща відповідь

Ok, here is the complet solution.

I have defined two differents file : pos_as.xml and pos_cf.xml

I have declared those two files in __openerp__.py file (https://www.odoo.com/fr_FR/forum/help-1/question/could-we-define-multiple-files-in-the-qweb-section-of-the-openerp-py-91576)

In the pos_as.xml, I have declared <t t-name="PosTicket_as">
In the pos_cf.xml, I have declared <t t-name="PosTicket_cf">


I have created a new file : /pos_lapagept/static/src/js/screens_all.js

I have included this file with :

    <template id="pos_lapagept.assets_backend_all" name="point_of_sale assets" inherit_id="point_of_sale.assets_backend">

        <xpath expr="//script[contains(@src,'models.js')]" position="replace">

            <script type="text/javascript" src="/pos_lapagept/static/src/js/models_all.js"></script>

            <script type="text/javascript" src="/pos_lapagept/static/src/js/screens_all.js"></script>

            </xpath>

    </template>


In the file screens_all.js :

            openerp.pos_lapagept = function (instance) {

                    var _t = instance.web._t,

                    _lt = instance.web._lt;

                    var QWeb = instance.web.qweb;

                    instance.point_of_sale.ReceiptScreenWidget.include({

                            refresh: function() {

                                    var order = this.pos.get('selectedOrder');

                                    var user_template = 'PosTicket';

                                    if(instance.session.uid == 21){

                                            user_template = 'PosTicket_as';

                                    } else if (instance.session.uid == 53 || instance.session.uid == 55 || instance.session.uid == 56 || instance.session.uid == 57 ) {

                                            user_template = 'PosTicket_cf';

                                    }

                                    $('.pos-receipt-container', this.$el).html(QWeb.render(user_template,{

                                                        widget:this,

                                                        order: order,

                                                        orderlines: order.get('orderLines').models,

                                                        paymentlines: order.get('paymentLines').models,

                                        }));

                            },

                    });

            }


THANKS TO AXEL!!!

Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
2
вер. 19
4467
0
лип. 24
889
3
квіт. 23
7231
1
квіт. 17
5678
1
бер. 15
5891