Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
3 Antwoorden
5129 Weergaven

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

Avatar
Annuleer
Auteur

Still need it! WOuld you have some suggestions?

Beste antwoord

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,
}));

},
});
}
Avatar
Annuleer
Auteur

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

Auteur Beste antwoord

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!!!

Avatar
Annuleer
Gerelateerde posts Antwoorden Weergaven Activiteit
2
sep. 19
4431
0
jul. 24
865
3
apr. 23
7174
1
apr. 17
5652
1
mrt. 15
5858