0

Im trying to add and save a custom field in POS Odoo v15, model "pos.order" but it doesn't work.

I'm trying the following.

Inherit the model.

class PosOrder(models.Model):
  _name = 'pos.order'
  _inherit = 'pos.order'

  order_new_field = fields.Selection(
    [('1', 'Bla'), ('2', 'Ble')], 'Desc.', default='1')

Then i load the model in pos with load_fields


odoo.define('my_module.models', function (require) {
'use strict';
var models = require('point_of_sale.models')
models.load_fields('pos.order', ['order_new_field'])

Then I try to read or set the field but this is not stored in pos.order

const PosUsoCFDIInvoice = PaymentScreen => class extends PaymentScreen {
  setField(e) {
    this.currentOrder.order_new_field = e.target.value
  }
}

I've tried extend models.Order.extend functions export_as_JSON and init_from_JSON without success.

But when i try to read my field in the model the value is not updated

import logging
from odoo import models, fields, api

_logger = logging.getLogger(__name__)

class PosOrder(models.Model):
  _name = 'pos.order'
  _inherit = 'pos.order'
  order_new_field = fields.Selection(
    [('1', 'Bla'), ('2', 'Ble')], 'Desc.', default='1')

  def _prepare_invoice_vals(self):
    vals = super()._prepare_invoice_vals()

     # order_new_field always is 1 .. always. :(

    _logger.warning(self.order_new_field)
    vals.update({'example_field': self.order_new_field } )
    return vals

Please help :D and thanks

0 Answers0