def name_search(self, cr, user, name, args=[], operator='ilike', context={}):
ids = []
+ try:
+ if name and str(name).startswith('partner:'):
+ part_id = int(name.split(':')[1])
+ part = self.pool.get('res.partner').browse(cr, user, part_id, context)
+ args += [('id','in', (part.property_account_payable[0],part.property_account_receivable[0]))]
+ name = False
+ except:
+ pass
if name:
ids = self.search(cr, user, [('code','=like',name+"%")]+ args)
if not ids:
type="wizard"
/>
+ <act_window name="Entries"
+ domain="[('account_id', '=', active_id)]"
+ res_model="account.move.line"
+ src_model="account.account"
+ id="act_account_acount_move_line_open"/>
+ <act_window name="Unreconciled entries"
+ domain="[('account_id', '=', active_id),('reconcile_id','=',False)]"
+ res_model="account.move.line"
+ src_model="account.account"
+ id="act_account_acount_move_line_open_unreconciled"/>
+ <act_window name="Reconciled entries"
+ domain="[('reconcile_id', '=', active_id)]"
+ res_model="account.move.line"
+ src_model="account.move.reconcile"
+ id="act_account_acount_move_line_reconcile_open"/>
<menuitem name="Financial Management/Reporting" sequence="8"/>
src_model="account.journal"
id="act_account_journal_2_account_move_line"/>
- <act_window name="Account entries"
- domain="[('journal_id', '=', active_id)]"
- res_model="account.move"
- src_model="account.journal"
- id="act_account_journal_2_account_move"/>
+ <act_window name="Unreconciled account entries"
+ domain="[('partner_id', '=', active_id),('account_id','=','partner:'+str(active_id)),('reconcile_id','=',False)]"
+ res_model="account.move.line"
+ src_model="res.partner"
+ id="act_account_partner_account_move_unreconciled"/>
+
+ <act_window name="All account entries"
+ domain="[('partner_id', '=', active_id)]"
+ res_model="account.move.line"
+ src_model="res.partner"
+ id="act_account_partner_account_move"/>
+
+ <act_window name="Statement entries"
+ domain="[('statement_id', '=', active_id)]"
+ res_model="account.move.line"
+ src_model="account.bank.statement"
+ id="act_account_bank_statement_account_move_unreconciled"/>
+
+
</data>
</terp>
}
wiz_unreconcile('account.move.line.unreconcile')
+
+def _trans_unrec_reconcile(self, cr, uid, data, context):
+ rec_ids = data['ids']
+ if len(rec_ids):
+ cr.execute('update account_move_line set state=\'valid\' where reconcile_id in ('+','.join(map(str,rec_ids))+')')
+ pooler.get_pool(cr.dbname).get('account.move.reconcile').unlink(cr, uid, rec_ids)
+ return {}
+
+class wiz_unreconcile_reconcile(wizard.interface):
+ states = {
+ 'init': {
+ 'actions': [_trans_unrec_reconcile],
+ 'result': {'type': 'state', 'state':'end'}
+ }
+ }
+wiz_unreconcile_reconcile('account.reconcile.unreconcile')
+