Hola,
estoy migrando un proyecto realizado en tryton 2.8 con modulos de
GNUHealth en su version 2.2 -- (Para el proyecto es importante hacer uso de
la misma Base de Datos).
Lo quiero migrar a su version mas reciente. tryton 3.2 GNUHealth 2.6
Lo que he intentado hasta el momento es:
1.- Hacer la migracion por pasos, 2.8 > 3.0 > 3.2
+ Estando en una version tryton 3.0 y GnuHealth 2.4 sin modificar y con
mis modulos, hago un demo para verificar el funcionamiento con una Base de
Datos nueva. Y si funciona!.
Cuando intento migrar la base de datos en su v2.8 a v3.0 tengo errores
con respecto a la base de datos.
Errores:
* Por ejemplo: faltan llaves foraneas a.k.a Foreign Keys,
create_uid y write_uid. Las agrego, pero me continua pidiendo mas
y mas llaves en los diferentes Modulos. (Y en el Demo realizado en v3.0 ya
cuenta con dichas llaves)
* Error con el Modulo Country:
[Thu Aug 28 15:52:13 2014] INFO:modules:country:loading country.xml
/home/gnuhealth/tryton-3.0/trytond3.0/trytond/model/modelsql.py:360:
DeprecationWarning: With-statements now directly support multiple context
managers
Transaction().set_user(0)):
[Thu Aug 28 15:52:14 2014] ERROR:convert:Error while parsing xml file:
Traceback (most recent call last):
File "./trytond", line 111, in <module>
trytond.server.TrytonServer(options).run()
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/server.py", line 124,
in run
Pool(db_name).init(update=update, lang=lang)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/pool.py", line 151,
in init
lang=lang)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/modules/__init__.py",
line 399, in load_modules
load_module_graph(graph, pool, lang)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/modules/__init__.py",
line 249, in load_module_graph
tryton_parser.parse_xmlstream(fp)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/convert.py", line
432, in parse_xmlstream
self.sax_parser.parse(source)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 304, in end_element
self._cont_handler.endElement(name)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/convert.py", line
476, in endElement
self.create_records(model, values.values(), values.keys())
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/convert.py", line
713, in create_records
records = Model.create(vlist)
File
"/home/gnuhealth/tryton-3.0/trytond3.0/trytond/modules/country/country.py",
line 42, in create
return super(Country, cls).create(vlist)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/model/modelsql.py",
line 361, in create
cls.__raise_integrity_error(exception, values)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/model/modelsql.py",
line 225, in __raise_integrity_error
cls.raise_user_error(error)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/error.py", line 74,
in raise_user_error
raise UserError(error)
trytond.exceptions.UserError: ('UserError', ('The code of the country must
be unique.', ''))
Noto que los datos en la Tabla Country de la DB cambian de orden de 2.8 a
3.0. *Posiblemente ese sea el error que este arrojando.* ?
Estoy haciendo correctamente la Migracion o deberia considerar algo mas?
Saludos y espero sus comentarios!