~ozono/openerp-spain/6.1-bugfixes

« back to all changes in this revision

Viewing changes to account_payment_extension/wizard/wizard_populate_statement.py

  • Committer: Ivan Anton en Ozono Multimedia
  • Date: 2012-12-14 14:11:50 UTC
  • Revision ID: ivananton@ozonomultimedia.com-20121214141150-9ymmw7ujxd23jbnr
[FIX] invalid wizard_populate_statement behaviour on creating lines / voucher

Show diffs side-by-side

added added

removed removed

Lines of Context:
99
99
        for line in line_ids:
100
100
            ctx = context.copy()
101
101
            ctx['date'] = line.ml_maturity_date
102
 
            amount_currency = line.type == 'payment' and line.amount_currency or -line.amount_currency
 
102
            amount_currency = line.type == 'receivable' and line.amount_currency or -line.amount_currency
103
103
            amount = currency_obj.compute(cr, uid, line.currency.id, statement.currency.id, amount_currency, context=ctx)
104
104
    
105
105
            voucher_id = False
126
126
                voucher_id = voucher_obj.create(cr, uid, voucher_res, context=context)
127
127
    
128
128
                voucher_line_dict = {}
129
 
                if result['value']['line_ids']:
130
 
                    for line_dict in result['value']['line_ids']:
131
 
                        move_line = move_line_obj.browse(cr, uid, line_dict['move_line_id'], context)
132
 
                        if line.move_line_id.move_id.id == move_line.move_id.id:
133
 
                            voucher_line_dict = line_dict
 
129
                result_line_ids = result['value']['line_cr_ids'] + result['value']['line_dr_ids']
 
130
                for line_dict in result_line_ids:
 
131
                    move_line = move_line_obj.browse(cr, uid, line_dict['move_line_id'], context)
 
132
                    if line.move_line_id.move_id.id == move_line.move_id.id:
 
133
                        voucher_line_dict = line_dict
134
134
                if voucher_line_dict:
135
135
                    voucher_line_dict.update({'voucher_id': voucher_id, 'amount': abs(amount)})
136
136
                    voucher_line_obj.create(cr, uid, voucher_line_dict, context=context)
137
137
            val = {
138
138
                'name': (line.order_id.reference or '?') + '. ' + line.name,
139
 
                #Tipically: type=='payable' => amount>0  type=='receivable' => amount<0
140
 
                'amount': line.type == 'payable' and amount or -amount,
 
139
                'amount': amount,
141
140
                'type': line.order_id.type == 'payable' and 'supplier' or 'customer',
142
141
                'partner_id': line.partner_id.id,
143
142
                'account_id': line.move_line_id.account_id.id,