Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odpovědět
555 Zobrazení

Hello!

I am facing a problem when I try to add a screen on the public kiosk mode of the hr_assistance app. The idea is to add a screen once an employee touches its name, before accessing the pin code view in order to register the entrance or exit.

In this view, there will be the possibility to select the reason of the entrance or exit, update it on database in a new table (which I have done and it is working) and then access to the ending screen of pin code (the default by odoo module, I don't want to change it)

So, having this issue, I did a custom module that is saved with this structure and on that, I implement a js/xml view through Owl, having this structure in the manifest:

'assets': {

        'hr_attendance.assets_public_attendance': [

            'my_module_name/static/src/xml/kiosk_reason_templates.xml',

            'my_module_name/static/src/js/kiosk_reason.js'

        ],

        'my_module_name.assets_kiosk_reason': [

            'my_module_name/static/src/xml/kiosk_reason_templates.xml',

            'my_module_name/static/src/js/kiosk_reason.js'

        ],

        'web.assets_backend': [

            'my_module_name/static/src/xml/kiosk_reason_templates.xml',

            'my_module_name/static/src/js/kiosk_reason.js'

        ]

    },

and now I´m getting this problem once I click on the name of one employee:
hr_attendance.assets…endance.min.js:1834 Uncaught (in promise) OwlError: Missing template: "my_module_name.KioskReason" (for component "KioskReason")

I will share my js when I implement the template:
 
class KioskReason extends Component {
...
}

KioskReason.template = "my_module_name.KioskReason";


and the template is this one, I have done it on basic mode to test it:

<?xml version="1.0" encoding="UTF-8"?>

<templates xml:space="preserve">

<t t-name="my_module_name.KioskReason">

   <p>Hello!</p>

</t>

</templates>

Having this data, I could provide more info if requested, my Odoo version is 17. So, could you help me? Or if you know any tutotial on how to add a custom screen on public kiosk mode please refer to it.

Thanks a lot

Avatar
Zrušit
Nejlepší odpověď

Hii,
<?xml version="1.0" encoding="UTF-8"?>

<odoo>

  <templates xml:space="preserve">

    <t t-name="my_module_name.KioskReason">

      <div class="o_kiosk_reason">

        <p>Hello!</p>

      </div>

    </t>

  </templates>

</odoo>

JS Component

File: my_module_name/static/src/js/kiosk_reason.js

/** @odoo-module **/


import { Component } from "@odoo/owl";


export class KioskReason extends Component {}

KioskReason.template = "my_module_name.KioskReason";


Manifest Assets Section (__manifest__.py):
'assets': {
    'hr_attendance.assets_public_attendance': [
        'my_module_name/static/src/xml/kiosk_reason_templates.xml',
        'my_module_name/static/src/js/kiosk_reason.js',
    ],
},
./odoo-bin -u my_module_name -d your_db_name

Avatar
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
4
kvě 25
2718
2
kvě 25
6145
1
bře 25
1814
4
bře 25
4710
3
úno 25
5790