Наш клиент хочет, чтобы в квитанции PoS была указана единица измерения продаваемой продукции. Как мне поступить так?
Это для клиентов Odoo 12 экземпляр. В файле XML
, из которого квитанция распечатывается после продажи, я попытался добавить следующее:
<t t-esc="orderline.get_product().uom"/>
Но когда я распечатываю квитанциюполе отображается пустым, хотя в пользовательском интерфейсе торговой точки вы можете выбрать единицу измерения продукта.
Отсюда система выводит название продукта, комментарий и скидку.
<td width="35%">
<t t-esc="orderline.get_product().display_name"/>
<t t-if="widget.pos.config.on_product_line">
<div class="pos-disc-font">
<t t-esc="orderline.get_order_line_comment()"/>
</div>
</t>
<t t-if="orderline.get_discount() >0">
<div class="pos-disc-font">With a <t t-esc="orderline.get_discount()"/>% discount
</div>
</t>
</td>
В модели объявлено следующее:
class UomCateg(models.Model):
_inherit = 'uom.category'
is_pos_groupable = fields.Boolean(string='Group Products in POS',
help="Check if you want to group products of this category in point of sale orders")
class Uom(models.Model):
_inherit = 'uom.uom'
is_pos_groupable = fields.Boolean(related='category_id.is_pos_groupable', readonly=False)
Я также пытался вызывать эти классы, но без результата.
Ожидаемый результат должен быть в состояниипозвонить в единицу измерения продаваемого продукта и указать ее в квитанции PoS.
РЕДАКТИРОВАТЬ:
Решить проблему, выполнив следующие действия:
<t t-esc="orderline.get_product().uom_id[1]"/>
uom_id
- это массив, поэтому всякий раз, когда я вызывал его, он приносил идентификатор, и ничего не отображалось. Поэтому создание uom_id[1]
принесло следующий интересующий меня элемент - Единицу измерения.