Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
2718 Visualizzazioni

Hello,

I have deployed Odoo PoS Module with some customization. One of those customization is to load only available products (qty_available>0) but some time (in multi-session) I get this error:

ERROR: attempting to recover product ID XX not available in the point of sale. Correct the product or clean the browser cache.


Here is the scenarios

Lets assume there are two users with two different open sessions and a product X with 3 items available qty_available=3

  1. User A adds 3 items of product X to the order

  2. User B adds 1 items of the same product X to his order

  3. User A validates his order

  4. For some reason User B refreshes the browser's tab which will reload the POS but unfortunately the reloading will not succeed  (will get stuck at some point)because the order is cached with a product that is no longer available.
    In the browser log the following message is displayed:

ERROR: attempting to recover product ID XX not available in the point of sale. Correct the product or clean the browser cache.


I have tried to stop the loading the order and its orderlines from the cache with the method init_from_JSON but It is not working yet. This is very annoying for non technical people.

    models.Orderline = models.Orderline.extend({
        initialize: function(attr,options){
            this.pos   = options.pos;
            this.order = options.order;
            if (options.json) {
                /*try {
                    this.init_from_JSON(options.json);
               } catch(error) {
                    console.error('ERROR: attempting to recover product ID', options.json.product_id,
                        'not available in the point of sale. Correct the product or clean the browser cache.');
                    console.log(error);
                }*/
                return;
            }
            this.product = options.product;
            this.set_product_lot(this.product);
            this.set_quantity(1);
            this.discount = 0;
            this.discountStr = '0';
            this.selected = false;
            this.id = orderline_id++;
            this.price_manually_set = false;

            if (options.price) {
                this.set_unit_price(options.price);
            } else {
                this.set_unit_price(this.product.get_price(this.order.pricelist, this.get_quantity()));
            }
        },

    });


I am getting errors in some places of the OrderLine Backbone Model


Any help please.

Avatar
Abbandona

Did anyone find a solution? I got same problem

Post correlati Risposte Visualizzazioni Attività
2
apr 23
1394
4
gen 20
3551
0
mar 15
3641
2
mar 15
4972
1
feb 25
494