Skip to Content
Menu
You need to be registered to interact with the community.
This question has been flagged
3 Odgovori
348 Prikazi
for record in self:
if record.x_studio_export_presta == False
record.x_studio_test_computed_intero = 1
elif record.x_studio_export_presta == True
record.x_studio_test_computed_intero = 0

Could someone please help me with this computed field? I think the logic is correct, but I'm missing something in the syntax. I want the x_studio_test_computed_intero field = 1 when x_studio_export_presta is True, and if x_studio_test_computed_intero = 0 when x_studio_export_presta is False.

x_studio_export_presta is a boolean field.

Avatar
Opusti
Avtor

Sorry, maybe I expressed myself badly. I'll try to be clearer and simpler.

IF x = True, y = 1

Elseif x = False, y = 0

So,
record.x_studio_export_presta = int(record.x_studio_test_computed_intero)
?
Still don't get why you differentiate between 0/False and 1/True here, but there might be a reason for you, I suppose.

Avtor Best Answer

Solved, Thank you

Avatar
Opusti
Best Answer

Hi,

Please refer to the code:

for record in self:

    if record.x_studio_export_presta:

        record.x_studio_test_computed_intero = 1

    else:

        record.x_studio_test_computed_intero = 0


Hope it helps.

Avatar
Opusti
Best Answer

You are probably missing the None state.

However, just

for record in self:
record.x_studio_test_computed_intero = not record.x_studio_export_presta

should be completely sufficient, because

>>> x = True
>>> y = not x
>>> print(y)
False
>>> x = False
>>> y = not x
>>> print(y)
True
>>> x = None
>>> y = not x
>>> print(y)
True



Avatar
Opusti
Related Posts Odgovori Prikazi Aktivnost
1
sep. 25
103
1
sep. 25
330
1
sep. 25
378
2
avg. 25
587
2
avg. 25
691