Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
1 Beantwoorden
160 Weergaven

To preface this, I am a Odoo newbie. I saw from a previous post on a previous version of Odoo that I can set parameters into the approval step of the send button to restrict a quotation from being send by an employee if the credit limit of the customer has been exceeded.

I've followed the step by step guide but it does not work. The error was "Domain is invalid. Please correct it". Please if anyone knows what is the issue, do let me know. Thank you.

I am using Odoo v19 on the web if that provides any context.


The code that I entered was [("partner_credit_warning", "=", False)] in the filter parameter of the add approval step for the send button. Sorry I can't add images as I do not have enough Karma points.

Avatar
Annuleer
Auteur

I'm not sure if I have done something wrong. I still can't add the code in the approval filter.


I added a checkbox field

Under "more" settings, I check the "Readonly" and "Stored" boxes.

For properties, I added partner_credit_warning as a dependency and copied the code into compute


partner_credit_warning_bool = fields.Boolean(

    compute="_compute_partner_credit_warning_bool",

    store=True

)


@api.depends('partner_credit_warning')

def _compute_partner_credit_warning_bool(self):

    for rec in self:

        rec.partner_credit_warning_bool = bool(rec.partner_credit_warning)


Was I suppose to add other type of fields? Or was there something wrong in my inputs?

Beste antwoord

Hi,


The partner_credit_warning field in sale.order is a compute field with no store. So when odoo tries to translate this into SQL, it can't find a column for partner_credit_warning, and fails with “Domain is invalid.”


Solution: Add a field to sale.order :

partner_credit_warning_bool = fields.Boolean(

    compute="_compute_partner_credit_warning_bool",

    store=True

)


@api.depends('partner_credit_warning')

def _compute_partner_credit_warning_bool(self):

    for rec in self:

        rec.partner_credit_warning_bool = bool(rec.partner_credit_warning)

Change domain: [("partner_credit_warning_bool", "=", False)]


Hope it helps

Avatar
Annuleer
Gerelateerde posts Antwoorden Weergaven Activiteit
2
aug. 25
808
1
mrt. 24
2252
0
nov. 22
3155
0
jul. 21
3958
2
nov. 20
2695