تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
7696 أدوات العرض

Hello!

We have a Kanban view grouped by a field called "state". This field only has 4 possible values (New, Allotted, Released, Invoiced).

When sorting by state field, we can only do ascending or descending. The ascending order is as follows: Allotted-Invoiced-New-Released.

How can we do the following sort?: New - Allotted - Released - Invoiced


Odoo 14: Community.


Regards!

Alberto

الصورة الرمزية
إهمال
أفضل إجابة

Hi,

if the field 'state' is of the type 'Selection', you would hardly achieve the goal in a simple manner.

The point is that 'Selection' represents char (string) in the database, so ordering means alphabetical order. In such a case the easiest way, is to rename the states (e.g. to have a number at the beginning).

Otherwise, make the state of the many2one type with a reference to another model (have a look how it is done in crm.lead & crm.stage). In such a case you would be able to select the param _order of that related model (e.g. sequence in the case of crm.lead)

الصورة الرمزية
إهمال
الكاتب أفضل إجابة

Hello faOtools,

Thanks for you answer. In effect, the field is type "selection":

state = fields.Selection([('new','New'),('allotted','Allotted'),('released','Released'),('invoiced','Invoiced')], string="Stages", default="new", required=True, tracking=True)

Is there way to do it with the field type "selection"?

الصورة الرمزية
إهمال

Hello, as I said in the answer the easiest way is to add an integer at the beginning: ('1_new', '1. New').

المنشورات ذات الصلة الردود أدوات العرض النشاط
2
مايو 20
10612
1
يونيو 23
2676
2
مايو 20
5910
1
فبراير 19
6918
0
يناير 19
5928