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

Must be some basic stuff, but I would like to know how I can sort projects by End Date. I have tried below in an addon module...

from openerp.osv import fields, osv
class project(osv.osv):
    _inherit = 'project.project'
    _name = 'project.project'
    _order = 'date'

And I get this error.

ProgrammingError: column "date" does not exist
LINE 1: ...0, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63) ORDER BY date

I realize that the original project class _inherits "account.analytic.account" which is where the End Date comes from. In such case how can we use a field that belong to the original model in sorting?

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

Hello, I found the solution, here in project object , it inherits account.analytic.account object. and this 'date' field is made in account.analytic.account object. so we must have to use following method, Try this,

class project(osv.Model):
    _inherit = "project.project"
    _order = 'date2'
    _columns = {
        'date2': fields.related('analytic_account_id', 'date', string="End Date", type='date', store=True),
    }

and no need of _name = 'project.project' so,

remove

_name = 'project.project'

Hope it work for you.

الصورة الرمزية
إهمال
الكاتب

I tried your edited content (just remove _name = 'project.project') but I still get the same error as in the original question ("ProgrammingError: column "date" does not exist")...

Hey Ypshi, see my updated answer. the problem was, date field is made in account.analytic.account object. so we can not order date field directly from project.

Hey Yoshi, Is your problem is solved?? if yes then please mark my answer as solved. Thanks.

الكاتب

I still get the error "ProgrammingError: column project_project.date does not exist". Something must be missing...

You must have to update your module. Go through Settings >> Modules >> Installed Modules. search your module and upgrade it.

الكاتب

I totally forgot to do that. It solved the problem. Then I got another problem of "End Date" being blank (thus the sorting didn't work), so I changed the field name to "date2" for the code to work. Thanks a lot for your advice!

please mark my answer as solved if your problem is solved. thanks.. :)

المنشورات ذات الصلة الردود أدوات العرض النشاط
3
فبراير 24
12353
0
ديسمبر 24
9476
3
سبتمبر 24
21696
5
ديسمبر 24
52985
4
يوليو 24
10594