Skip to Content
Menu
This question has been flagged
1 Odpoveď
4583 Zobrazenia

How can I add a field to the SO table where I can check it if the SO was created by a user via the Create New SO button or if by Duplicate button from an existing PO?

Thanks

Avatar
Zrušiť
Best Answer

Create button will trigger the ORM method "create"

similarly Duplicate Action will trigger the ORM method "copy"

So you can inherit the copy method, and append a flag (probably a boolean: set it as true) to the param "default" before returning the super call


Note:

There are 2 methods/ways involved while duplicating a record.

"copy" : will copy the data and creates a new record, returning the ID of the newly created one.

"copy_data": will just copy the data and returns you the dict of values which are being copied.

So according to your need, use the appropriate one.

Avatar
Zrušiť
Autor

Thanks! Do you have an example? I would only mark the SOs with copy, I would want to use the copy (not copy_data). So like:

def copy(self, cr, uid, id, default={}, context=None):

if not default:

default = {}

default.update({

'[field]': '[value]',

})

return super([class], self).copy(cr, uid, id, default, context=context)`

Related Posts Replies Zobrazenia Aktivita
5
dec 23
22360
0
apr 22
2552
2
apr 21
7828
1
mar 15
3883
0
jan 25
1389