コンテンツへスキップ
メニュー
この質問にフラグが付けられました
3498 ビュー
I'm working on a override for the account.view_move_form view


This view has context on the partner_id field to alter the search mode based on whether the current invoice is a vendor or a customer invoice.

I would like to extend this context such that if the user creates a new partner starting from the view_move_form, the category_id is set to a different value depending on whether the current invoice is a vendor or a customer invoice.


I'm not managed to do so. Here's what I have so far:



my.move.form

account.move


{
'res_partner_search_mode':
(context.get('default_type', 'entry') in ('out_invoice', 'out_refund', 'out_receipt') and 'customer') or
(context.get('default_type', 'entry') in ('in_invoice', 'in_refund', 'in_receipt') and 'supplier') or False,
'default_category_id': (context.get('default_type', 'entry') in ('out_invoice', 'out_refund', 'out_receipt') and [1]) or [2] }





I have basically added another key to the context dictionary named 'default_category_id' and tried to mimic the condition used in res_partner_search_mode to set a different default based on the type of invoice.


This is not working. Regardless of the invoice type, I'm always seeing [2] as default value when creating a new partner.


I have tried this in odoo 13 and 15, but it fails in both versions.


What should I change to make this work ?

アバター
破棄
著作者

Hmm, I had marked the snippet as a code block, but for some reason all the xml tags have been stripped. Is there a way to add an xml snippet that avoids this ?

関連投稿 返信 ビュー 活動
1
6月 22
6076
1
4月 23
135
1
2月 23
3602
1
1月 22
6280
3
4月 24
9469