[FIX] stock:ON Cancel Inventory cancel account move
lp bug: https://launchpad.net/bugs/458901 fixed bzr revid: aag@tinyerp.co.in-20110106121755-a86ls9pynldwwg79
This commit is contained in:
parent
a961a4f81f
commit
5036030763
|
@ -2559,33 +2559,33 @@ class stock_inventory(osv.osv):
|
|||
self.write(cr, uid, [inv.id], {'state': 'confirm', 'move_ids': [(6, 0, move_ids)]})
|
||||
return True
|
||||
|
||||
def action_cancel(self, cr, uid, ids, context=None):
|
||||
""" Cancels the stock move and change inventory state to draft.
|
||||
def action_cancel_inventary(self, cr, uid, ids, context=None):
|
||||
""" Cancels both stock move and inventory
|
||||
@return: True
|
||||
"""
|
||||
move_obj = self.pool.get('stock.move')
|
||||
account_move_obj = self.pool.get('account.move')
|
||||
for inv in self.browse(cr, uid, ids, context=context):
|
||||
move_obj.action_cancel(cr, uid, [x.id for x in inv.move_ids], context)
|
||||
move_obj.action_cancel(cr, uid, [x.id for x in inv.move_ids],context=context)
|
||||
for move in inv.move_ids:
|
||||
account_move_ids = account_move_obj.search(cr, uid, [('name','=',move.name)])
|
||||
if account_move_ids:
|
||||
account_move_data_l = account_move_obj.read(cr, uid, account_move_ids, ['state'])
|
||||
account_move_data_l = account_move_obj.read(cr, uid, account_move_ids, ['state'],context=context)
|
||||
for account_move in account_move_data_l:
|
||||
if account_move['state'] == 'posted':
|
||||
raise osv.except_osv(_('UserError'),
|
||||
_('You can not cancel inventory which has any account move with posted state.'))
|
||||
account_move_obj.unlink(cr, uid, [account_move['id']])
|
||||
self.write(cr, uid, [inv.id], {'state': 'draft'})
|
||||
account_move_obj.unlink(cr, uid, [account_move['id']],context=context)
|
||||
self.write(cr, uid, [inv.id], {'state': 'cancel'},context=context)
|
||||
return True
|
||||
|
||||
def action_cancel_inventary(self, cr, uid, ids, context=None):
|
||||
""" Cancels both stock move and inventory
|
||||
def action_cancel_draft(self, cr, uid, ids, context=None):
|
||||
""" Cancels the stock move and change inventory state to draft.
|
||||
@return: True
|
||||
"""
|
||||
for inv in self.browse(cr, uid, ids, context=context):
|
||||
self.pool.get('stock.move').action_cancel(cr, uid, [x.id for x in inv.move_ids], context)
|
||||
self.write(cr, uid, [inv.id], {'state':'cancel'})
|
||||
self.write(cr, uid, [inv.id], {'state':'draft'})
|
||||
return True
|
||||
|
||||
stock_inventory()
|
||||
|
|
|
@ -174,7 +174,7 @@
|
|||
<button name="action_cancel_inventary" states="draft,confirm,done" string="Cancel Inventory" type="object" icon="gtk-cancel"/>
|
||||
<button name="action_confirm" states="draft" string="Confirm Inventory" type="object" icon="gtk-apply"/>
|
||||
<button name="action_done" states="confirm" string="Validate Inventory" type="object" icon="gtk-jump-to"/>
|
||||
<button name="action_cancel" states="cancel" string="Set to Draft" type="object" icon="gtk-convert"/>
|
||||
<button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="gtk-convert"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
|
|
Loading…
Reference in New Issue