Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
5 Replies
22069 Tampilan

Hello, 


Currenty sales order date is automatically set as today's date.

Where to change it so that we can update it manually?

Thanks in advance

Avatar
Buang
Jawaban Terbai

Hello, you've probably solved this already, but I see that when searching anything for this issue, your question pops out first. Just to make things clear, I've sorted this out completely easily:

When you apply any changes to the PY files, you have to restart your server for the changes to take place. The comment (#) of line 783, does make the order date to become the same as quotation's date, when you confirm the order, but it doesn't make the field editable. 

To make the field editable, in the same sale.py file, you have to add 'sale': [('readonly'False)] and the date field becomes editable. Here is what i've done:

Line 155:     date_order = fields.Datetime(string='Order Date'required=Truereadonly=Trueindex=Truestates={'draft': [('readonly'False)], 'sent': [('readonly'False)], 'sale': [('readonly'False)]}, copy=Falsedefault=fields.Datetime.now, help="Creation date of draft/sent orders,\nConfirmation date of confirmed orders.")

Avatar
Buang
Jawaban Terbai

Hi,

In order to edit the order, you need to change the readonly attribute of order_date field.

Create a custom module,and inherit sale.order model.Then give the code as shown below.


class SaleOrder(models.Model):
    _inherit = 'sale.order'
CUSTOM_FIELD_STATES = {
    state: [('readonly', False)]
    for state in {'sale', 'done', 'cancel'}
}
    date_order = fields.Datetime(
        string="Order Date",
        states=CUSTOM_FIELD_STATES,
        copy=False, required=True,
        help="Creation date of draft/sent orders,\nConfirmation date of "
             "confirmed orders.")


Hope it helps


Avatar
Buang
Jawaban Terbai

Hi,

did you resolve this one?

I also want to manually update the Sale Order confirmation date.

I already tried to comment out the line 783# 'date_order': fields.Datetime.now()
but it is not working. It still auto fill the order date and can not be changed any more 

Avatar
Buang
Penulis Jawaban Terbai

as I am not a technical personal, I am not sure about your reply and don't know where to apply the change.

Could you please be more specific? thanks in advance

 
Avatar
Buang

you cannot achieve this by editing in the front end, either you have to make changes directly in the odoo source code(which is not a good way) or you have to create a custom module and inherit the method action_confirm in the sale.order model

Penulis

Ok so I would like to do it from the odoo source code, any chance you can help me?

Jawaban Terbai

Yeah i have the same problem, I have commented the line et it still gives me today's date and time.

how do you restart the server ?

Thanks

Avatar
Buang
Post Terkait Replies Tampilan Aktivitas
0
Apr 22
2351
2
Apr 21
7610
1
Jul 16
4407
1
Mar 15
3739
0
Jan 25
1260