Skip to Content
Menu
This question has been flagged

hi all,

i want to know how to add the fiscal position note field in the pos receipt

thanks

Avatar
Discard
Author Best Answer

thanks  MUHAMMAD Imran

Avatar
Discard
Best Answer

Here is an example of how you can add the fiscal position note field to the POS receipt in Odoo using code:


First, you will need to create a new field for the fiscal position note on the pos.order model. You can do this by adding the following code to your module's models.py fil

Copy cod

from odoo import fields, model


class PosOrder(models.Model

    _inherit = 'pos.order

    fiscal_position_note = fields.Char('Fiscal Position Note'

Next, you will need to add the field to the POS receipt template. You can do this by modifying the pos_ticket.xml file in your module's views folder. For example, you can add the following code to the template to display the fiscal position note

Copy cod

 

Finally, you will need to add the field in the POS order creation process. You can do this by overriding the create_from_ui method on the pos.order model in your module's models.py file

Copy cod

class PosOrder(models.Model)

    _inherit = 'pos.order


    def create_from_ui(self, orders

        for order in orders

            # Add the fiscal position note to the order dat

            order['fiscal_position_note'] = 'example note

        return super(PosOrder, self).create_from_ui(orders

Note that this is just an example and you'll need to adjust it to your specific use case, for example by taking the note from the fiscal position itself or from a specific field that you've created for this purpose

Avatar
Discard
Author

thanks MUHAMMAD
by default there is a field named note in account.fiscal.position
and a field named fiscal_position_id in pos.order
how can add this field in the receipt ?
my pos.xml file :
<templates id="template" xml:space="preserve">
<t t-name="OrderReceipt" t-inherit="point_of_sale.OrderReceipt" t-inherit-mode="extension" owl="1">
<xpath expr="//div[@class='pos-receipt-contact']" position="inside">

</xpath>
</t>
</templates>
thanks for helping me

To add the "note" field from the "account.fiscal.position" model and the "fiscal_position_id" field from the "pos.order" model to the receipt, you can use the xpath element to specify where in the template you want to add the fields and then use the field element to define the fields themselves. Here is an example of what that might look like:

Copy code
<templates id="template" xml:space="preserve">
<t t-name="OrderReceipt" t-inherit="point_of_sale.OrderReceipt" t-inherit-mode="extension" owl="1">
<xpath expr="//div[@class='pos-receipt-contact']" position="inside">
<div class="pos-receipt-note">
<span class="pos-receipt-label">Note:</span>
<field name="note" widget="text" options='{"readonly": true}'/>
</div>
<div class="pos-receipt-fiscal-position-id">
<span class="pos-receipt-label">Fiscal Position ID:</span>
<field name="fiscal_position_id" widget="text" options='{"readonly": true}'/>
</div>
</xpath>
</t>
</templates>
You should also check if the fields you want to add are related to the receipt model in odoo.

Related Posts Replies Views Activity
0
Jun 24
397
1
Jan 24
1055
1
Jan 23
2977
1
Jul 24
1328
2
Nov 23
1956