Hi,
I inherited the class purchase_order and wrote my method _prepare_inv_line to override the one of the class, but when I ran the code it was not called.
The question is, why this method was not called,
second, how to override such functions ?
Here is my own method I inserted in the inherited class purchase_order
def _prepare_inv_line(self, cr, uid, account_id, order_line, context=None): res = super(purchase_order,self)._prepare_inv_line(cr, uid, account_id, order_line, context) line = self.pool.get('purchase.order.line').browse(cr,uid,order_line) if not line.order_id.requisition_id: """ get the account # defined as reserved for this department """ account_obj = self.pool.get('account.account') acct_id = account_obj.search(cr,uid,[('department_id','=',line.order_id.department_id.id)]) res['account_id'] = acct_id return res
I'm OpenERP 7.0
in this method if the PO is not linked to a Purchase Requisition then I have to get the account id from the chart of accounts that is related to the department of the user initiated the PO
This method has not been visited when I ran the code
thx in advance for help
Check the class instantiation at the end of the class. If your class is purchase_order then close it with an purchase_order()
Check if the same method already overridden somewhere else.