Ir al contenido
Menú
Se marcó esta pregunta
2 Respuestas
2023 Vistas


Hi all,

i want to create an ir.actions.server action to open a form with a new record after login

for testing purpose i coded a function in my class  

class kskassenbuch(models.Model): 
_name = 'ks_sale.kskassenbuch'


@api.model    
def serveraction(self):        
​raise Warning(_('Test action!'))


and in xml:

           how can i post xml code? my code is not displayed after saving this post


record id="action_new_kassenbuch" model="ir.actions.server

field name="name">Kassenbuch_Actionfield name="type">ir.actions.server

field name="model_id" ref="model_ks_sale_kskassenbuch"
field name="binding_model_id" ref="model_ks_sale_kskassenbuch"
field name="code">records.serveraction()

record

(i could not post xml code here, so i wrote the xml lines without brackets, sorry)


after running this code i always get the error:

 ValueError: : "'NoneType' object has no attribute 'serveraction'" while evaluating 'records.serveraction()'

for me it looks that the class is bind in the action, but i dont know what i've made wrong.

thx for any help


Avatar
Descartar
Mejor respuesta

Hi,

You can add the following xml code,

<record id="action_new_kassenbuch" model="ir.actions.server">
<field name="name">assenbuch_Action</field>
<field name="model_id" ref="module_name.model_ks_sale_kskassenbuch"/>

        <field name="binding_model_id" ref="module_name.model_ks_sale_kskassenbuch"/>
        <field name="state">code</field>
        <field name="code">action = model.serveraction()</field>
    </record>


For more details, refer to the blog:
https://www.cybrosys.com/blog/type-of-actions-in-odoo-16-erp

Hope it helps

Avatar
Descartar
Autor

hi Cybrosys,
thanks for your answer.
your code is working. i call this ir.actions.server at the home_action i give to the user after login.
i put a logging in the function and i see that serveraction() is called.
but then i get a blank page.
i want to run my custom code and then redirect to a menu e.g. to the pipeline.
i dont know how to realize a call to crm_lead
thx for helping

Autor Mejor respuesta

i solved it by adding  from odoo import _ in the .py file

Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
1
nov 23
6
0
nov 23
1771
3
ago 25
2475
1
may 25
2584
1
abr 25
3548