~pedro-q/account-payment/account-payment-sepa-7.0

« back to all changes in this revision

Viewing changes to account_payment_direct_debit/migrations/7.0.2/pre-migration.py

  • Committer: Ignacio Ibeas - Acysos S.L.
  • Date: 2014-01-25 13:30:35 UTC
  • Revision ID: ignacio@acysos.com-20140125133035-46kipms7z97u825v
[ADD] SEPA modules ported from Banking Addons to Account Payment Extension

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# -*- coding: utf-8 -*-
 
2
##############################################################################
 
3
#
 
4
#    Copyright (C) 2013 Therp BV (<http://therp.nl>).
 
5
#            
 
6
#    All other contributions are (C) by their respective contributors
 
7
#
 
8
#    All Rights Reserved
 
9
#
 
10
#    This program is free software: you can redistribute it and/or modify
 
11
#    it under the terms of the GNU Affero General Public License as
 
12
#    published by the Free Software Foundation, either version 3 of the
 
13
#    License, or (at your option) any later version.
 
14
#
 
15
#    This program is distributed in the hope that it will be useful,
 
16
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
 
17
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
18
#    GNU Affero General Public License for more details.
 
19
#
 
20
#    You should have received a copy of the GNU Affero General Public License
 
21
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
22
#
 
23
##############################################################################
 
24
 
 
25
import logging
 
26
logger = logging.getLogger()
 
27
 
 
28
def rename_columns(cr, column_spec):
 
29
    """
 
30
    Rename table columns. Taken from OpenUpgrade.
 
31
 
 
32
    :param column_spec: a hash with table keys, with lists of tuples as values. \
 
33
    Tuples consist of (old_name, new_name).
 
34
 
 
35
    """
 
36
    for table in column_spec.keys():
 
37
        for (old, new) in column_spec[table]:
 
38
            logger.info("table %s, column %s: renaming to %s",
 
39
                     table, old, new)
 
40
            cr.execute('ALTER TABLE "%s" RENAME "%s" TO "%s"' % (table, old, new,))
 
41
            cr.execute('DROP INDEX IF EXISTS "%s_%s_index"' % (table, old))
 
42
 
 
43
def migrate(cr, version):
 
44
    if not version:
 
45
        return
 
46
 
 
47
    # rename field debit_move_line_id
 
48
    rename_columns(cr, {
 
49
            'payment_line': [
 
50
                ('debit_move_line_id', 'banking_addons_61_debit_move_line_id'),
 
51
                ]})