You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.8 KiB

  1. # -*- coding: utf-8 -*-
  2. ##############################################################################
  3. #
  4. # Odoo, an open source suite of business apps
  5. # This module copyright (C) 2013-2015 Therp BV (<http://therp.nl>).
  6. #
  7. # This program is free software: you can redistribute it and/or modify
  8. # it under the terms of the GNU Affero General Public License as
  9. # published by the Free Software Foundation, either version 3 of the
  10. # License, or (at your option) any later version.
  11. #
  12. # This program is distributed in the hope that it will be useful,
  13. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. # GNU Affero General Public License for more details.
  16. #
  17. # You should have received a copy of the GNU Affero General Public License
  18. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  19. #
  20. ##############################################################################
  21. from . import models
  22. import logging
  23. from openerp import SUPERUSER_ID
  24. def post_init_hook(cr, registry):
  25. """
  26. Post-install script. Because 'street' is now a stored function field, we
  27. should be able to retrieve its values from the cursor. We use those to
  28. fill the new name/number fields using the street field's inverse function,
  29. which does a basic street name/number split.
  30. """
  31. logging.getLogger('openerp.addons.partner_street_number').info(
  32. 'Migrating existing street names')
  33. cr.execute(
  34. 'SELECT id, street FROM res_partner '
  35. 'WHERE street IS NOT NULL and street_name IS NULL'
  36. )
  37. partner_obj = registry['res.partner']
  38. for partner in cr.fetchall():
  39. partner_obj.write(
  40. cr, SUPERUSER_ID, partner[0], {'street': partner[1]})