Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
4 Відповіді
2773 Переглядів


      [('id', 'in', parent.product_id_domain)]



how can add a condition to this domain as it has to execute only when parent.picking_type_code =='outgoing'
Аватар
Відмінити
Найкраща відповідь

Hi Sruti,

So the domain conditions are simple to understand and write. Like `[('id', 'in', parent.product_id_domain)]`​ just means if id is found in parent.product_id_domain.

To add more filtering (conditions) simply append the tuple to condition array.

Means, your final condition will be `[( 'id' ,  'in' , parent.product_id_domain ),  (parent.picking_type_code, '=' , 'outgoing')]`


Multiple conditions: 

You can do it as follows,
`

# Check the condition and apply the appropriate domain

if parent_id.picking_type_code == 'outgoing':

domain = [('id', 'in', parent.product_id_domain)]

elif parent_id.picking_type_code == 'incoming':

domain = [('id', 'in', product_id)]


# Search for records using the constructed domain

records = self.env['table.name'].search(domain)`

Аватар
Відмінити

Hey , Can you please answer this

Can we have multiple conditions like

if parent_id.picking_type_code', '==', 'outgoing execute
('id', 'in', parent.product_id_domain)
else parent_id.picking_type_code == incoming another domain ('id', 'in', product_id)

Hey Nisarga,
Yes, it is doable.
You can do it as follows,

# Check the condition and apply the appropriate domain
if parent_id.picking_type_code == 'outgoing':
domain = [('id', 'in', parent.product_id_domain)]
elif parent_id.picking_type_code == 'incoming':
domain = [('id', 'in', product_id)]

# Search for records using the constructed domain
records = self.env['table.name'].search(domain)

Автор Найкраща відповідь

Thanks Jenish M and Chandan , If you know how can we add multiple as like Nisarga commented , Please comment it

Аватар
Відмінити

updated my answer.

Найкраща відповідь

Can we have multiple conditions like

if parent_id.picking_type_code', '==', 'outgoing execute 
('id', 'in', parent.product_id_domain)
else parent_id.picking_type_code == incoming another  domain ('id', 'in', product_id)

Аватар
Відмінити

Hey Nisarga,
Yes, it is doable.
You can do it as follows,

# Check the condition and apply the appropriate domain
if parent_id.picking_type_code == 'outgoing':
domain = [('id', 'in', parent.product_id_domain)]
elif parent_id.picking_type_code == 'incoming':
domain = [('id', 'in', product_id)]

# Search for records using the constructed domain
records = self.env['table.name'].search(domain)

if this answers your question, please upvote (PS: I am new here with no Karma points)

Найкраща відповідь

You can add your conditions seperated by comma(,)

For example,

[('id', 'in', parent.product_id_domain), ('parent_id.picking_type_code', '==', 'outgoing']


Аватар
Відмінити

Can we have multiple conditions like

if parent_id.picking_type_code', '==', 'outgoing execute
('id', 'in', parent.product_id_domain)
else parent_id.picking_type_code == incoming another domain ('id', 'in', product_id)

Related Posts Відповіді Переглядів Дія
3
трав. 24
6015
1
січ. 24
1945
1
лист. 23
2021
1
лист. 23
6
1
жовт. 23
2081