diff --git a/addons/account_sequence/__openerp__.py b/addons/account_sequence/__openerp__.py index 09b5def282f..2c6aeaea7e5 100644 --- a/addons/account_sequence/__openerp__.py +++ b/addons/account_sequence/__openerp__.py @@ -30,8 +30,13 @@ 'website': 'http://www.openerp.com', 'depends': ['account'], 'init_xml': [], +<<<<<<< TREE 'update_xml': ['account_sequence_data.xml','account_sequence.xml',], 'demo_xml': ['account_sequence_minimal.xml'], +======= + 'update_xml': ['account_sequence_data.xml','account_sequence.xml'], + 'demo_xml': [], +>>>>>>> MERGE-SOURCE 'installable': True, 'active': False, 'certificate': '', diff --git a/addons/account_sequence/account_sequence.py b/addons/account_sequence/account_sequence.py index 37cfe8346c2..f68973032af 100644 --- a/addons/account_sequence/account_sequence.py +++ b/addons/account_sequence/account_sequence.py @@ -34,7 +34,6 @@ class account_move(osv.osv): res = super(account_move, self).post(cr, uid, ids, context=context) seq_no = False for line in self.browse(cr, uid, ids): - # Todo: if there is not internal seq defined on journal raise error ? if line.journal_id.internal_sequence: seq_no = obj_sequence.get_id(cr, uid, line.journal_id.internal_sequence.id, context=context) if seq_no: @@ -52,6 +51,7 @@ class account_journal(osv.osv): account_journal() +<<<<<<< TREE class account_move_line(osv.osv): _inherit = "account.move.line" @@ -60,4 +60,6 @@ class account_move_line(osv.osv): } account_move_line() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:======= +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: +>>>>>>> MERGE-SOURCE diff --git a/addons/account_sequence/account_sequence.xml b/addons/account_sequence/account_sequence.xml index ad8ea7a7e38..ada650f80eb 100644 --- a/addons/account_sequence/account_sequence.xml +++ b/addons/account_sequence/account_sequence.xml @@ -2,6 +2,7 @@ +<<<<<<< TREE account.move.form.inherit account.move @@ -78,4 +79,31 @@ +======= + + account.move.form.inherit + account.move + form + + + + + + + + + + account.journal.form.inherit + account.journal + form + + + + + + + + + +>>>>>>> MERGE-SOURCE diff --git a/addons/account_sequence/account_sequence_minimal.xml b/addons/account_sequence/account_sequence_minimal.xml deleted file mode 100644 index d634c2aa3af..00000000000 --- a/addons/account_sequence/account_sequence_minimal.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/addons/account_voucher/__openerp__.py b/addons/account_voucher/__openerp__.py index ca4c0912514..74e3c7383bb 100644 --- a/addons/account_voucher/__openerp__.py +++ b/addons/account_voucher/__openerp__.py @@ -43,7 +43,6 @@ "account_voucher_report.xml", "wizard/account_voucher_unreconcile_view.xml", "wizard/account_statement_from_invoice_view.xml", - "wizard/account_voucher_payment_option.xml", "account_voucher_view.xml", "voucher_payment_receipt_view.xml", "voucher_sales_purchase_view.xml", diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py index 14abad25413..04bc03c0a36 100644 --- a/addons/account_voucher/account_voucher.py +++ b/addons/account_voucher/account_voucher.py @@ -539,37 +539,6 @@ class account_voucher(osv.osv): self.write(cr, uid, ids, res) return True - def do_check(self, cr, uid, ids, context=None): - mod_obj = self.pool.get('ir.model.data') - if context is None: - context = {} - voucher = self.browse(cr, uid, [ids[0]], context=context)[0] - debit= credit = 0.0 - if voucher.line_dr_ids: - for line in voucher.line_dr_ids: - debit += line.amount_original - if voucher.line_cr_ids: - for line in voucher.line_cr_ids: - credit += line.amount_original - if (voucher.amount + debit) != credit: - model_data_ids = mod_obj.search(cr, uid,[('model', '=', 'ir.ui.view'), ('name', '=', 'view_account_voucher_pay_writeoff')], context=context) - resource_id = mod_obj.read(cr, uid, model_data_ids, fields=['res_id'], context=context)[0]['res_id'] - context.update({'voucher_id': ids[0]}) - return { - 'name': _('Information addendum'), - 'context': context, - 'view_type': 'form', - 'view_mode': 'tree,form', - 'res_model': 'account.voucher.pay.writeoff', - 'views': [(resource_id, 'form')], - 'type': 'ir.actions.act_window', - 'target': 'new', - 'nodestroy': True - } - else: - self.action_move_line_create(cr, uid, ids, context=context) - return True - def unlink(self, cr, uid, ids, context=None): for t in self.read(cr, uid, ids, ['state'], context=context): if t['state'] not in ('draft', 'cancel'): @@ -756,110 +725,6 @@ class account_voucher(osv.osv): move_line_pool.reconcile_partial(cr, uid, rec_ids) return True - def pay_and_reconcile(self, cr, uid, ids, pay_amount, pay_account_id, period_id, pay_journal_id, writeoff_acc_id, writeoff_period_id, writeoff_journal_id, context=None, name=''): - if context is None: - context = {} - seq_obj = self.pool.get('ir.sequence') - #TODO check if we can use different period for payment and the writeoff line - assert len(ids)==1, "Can only pay one voucher at a time" - voucher = self.browse(cr, uid, ids[0]) - if voucher.number: - name = voucher.number - elif voucher.journal_id.sequence_id: - name = seq_obj.get_id(cr, uid, voucher.journal_id.sequence_id.id) - else: - raise osv.except_osv(_('Error !'), _('Please define a sequence on the journal !')) - if not voucher.reference: - ref = name.replace('/','') - else: - ref = voucher.reference - - src_account_id = voucher.account_id.id - # Take the seq as name for move - types = {'sale': -1, 'purchase': 1, 'payment': 1, 'receipt': -1} - direction = types[voucher.type] - #take the choosen date - if 'date_p' in context and context['date_p']: - date = context['date_p'] - else: - date = time.strftime('%Y-%m-%d') - # Take the amount in currency and the currency of the payment - if 'amount_currency' in context and context['amount_currency'] and 'currency_id' in context and context['currency_id']: - amount_currency = context['amount_currency'] - currency_id = context['currency_id'] - else: - amount_currency = False - currency_id = False - pay_journal = self.pool.get('account.journal').read(cr, uid, pay_journal_id, ['type'], context=context) - if voucher.type in ('sale', 'receipt'): - if pay_journal['type'] == 'bank': - entry_type = 'bank_pay_voucher' # Bank payment - else: - entry_type = 'pay_voucher' # Cash payment - else: - entry_type = 'cont_voucher' - - # Pay attention to the sign for both debit/credit AND amount_currency - l1 = { - 'debit': direction * pay_amount>0 and direction * pay_amount, - 'credit': direction * pay_amount<0 and - direction * pay_amount, - 'account_id': src_account_id, - 'partner_id': voucher.partner_id.id, - 'ref':ref, - 'date': date, - 'currency_id':currency_id, - 'amount_currency':amount_currency and direction * amount_currency or 0.0, - 'company_id': voucher.company_id.id, - } - l2 = { - 'debit': direction * pay_amount<0 and - direction * pay_amount, - 'credit': direction * pay_amount>0 and direction * pay_amount, - 'account_id': pay_account_id, - 'partner_id': voucher.partner_id.id, - 'ref':ref, - 'date': date, - 'currency_id':currency_id, - 'amount_currency':amount_currency and - direction * amount_currency or 0.0, - 'company_id': voucher.company_id.id, - } - - if not name: - name = voucher.line_ids and voucher.line_ids[0].name or voucher.number - l1['name'] = name - l2['name'] = name - lines = [(0, 0, l1), (0, 0, l2)] - move = {'ref': ref, 'line_id': lines, 'journal_id': pay_journal_id, 'period_id': period_id, 'name': name, 'date': date} - move_id = self.pool.get('account.move').create(cr, uid, move, context=context) - - line_ids = [] - total = 0.0 - line = self.pool.get('account.move.line') - move_ids = [move_id,] - if voucher.move_id: - move_ids.append(voucher.move_id.id) - cr.execute('SELECT id FROM account_move_line '\ - 'WHERE move_id IN %s', - ((move_id,),)) - lines = line.browse(cr, uid, map(lambda x: x[0], cr.fetchall()) ) - for l in lines: - if l.account_id.id == src_account_id: - line_ids.append(l.id) - total += (l.debit or 0.0) - (l.credit or 0.0) - - voc_id, name = self.name_get(cr, uid, [voucher.id], context=context)[0] - if (not round(total,self.pool.get('decimal.precision').precision_get(cr, uid, 'Account'))) or writeoff_acc_id: - self.pool.get('account.move.line').reconcile(cr, uid, line_ids, 'manual', writeoff_acc_id, writeoff_period_id, writeoff_journal_id, context) - else: - code = voucher.currency_id.code - # TODO: use currency's formatting function - msg = _("Invoice '%s' is paid partially: %s%s of %s%s (%s%s remaining)") % \ - (name, pay_amount, code, voucher.amount_total, code, total, code) - self.log(cr, uid, voc_id, msg) - self.pool.get('account.move.line').reconcile_partial(cr, uid, line_ids, 'manual', context) - # Update the stored value (fields.function), so we write to trigger recompute - self.write(cr, uid, ids, {'state':'posted'}, context=context) - return True - def copy(self, cr, uid, id, default={}, context=None): default.update({ 'state': 'draft', @@ -1063,4 +928,4 @@ class account_bank_statement_line(osv.osv): account_bank_statement_line() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_voucher/voucher_payment_receipt_view.xml b/addons/account_voucher/voucher_payment_receipt_view.xml index 1fdb54f1edc..83b6243a627 100644 --- a/addons/account_voucher/voucher_payment_receipt_view.xml +++ b/addons/account_voucher/voucher_payment_receipt_view.xml @@ -217,7 +217,7 @@