El 29/08/14 a les 07:42, Luis Alberto Ballado Aradias ha escrit:
Hola,
estoy migrando mi proyecto realizado y funcionando en tryton 2.8
haciendo uso de GNUHealth 2.2. Lo quiero migrar a su version mas reciente.
Como muchos lo recomiendan es hacer cambios de version a version (2.8
> 3.0 > 3.2) , por el momento he pasado todos los modulos que he
realizado en mi proyecto para hacer uso de ellos en v3.0. Pero el test
lo realice con una DB nueva, pero cuando quiero aplicarlo con mi DB
que uso en mi v2.8 tengo varios errores.
Uno de ellos es de crear llaves foraneas a.k.a foreing keys
(create_uid, write_uid) que lo hago manualmente en pgadmin3.
Posteriormente tengo errores como :
[Thu Aug 28 18:55:27 2014] INFO:modules:health:loading health_view.xml
[Thu Aug 28 18:55:38 2014] INFO:modules:health:loading
data/health_product.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 18:55:38 2014] ERROR:convert:Error while parsing xml file:
In tag record: model product.category with id prod_insurance.
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 482, in endElement
self.taghandler = self.taghandler.endElement(name)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/convert.py",
line 277, in endElement
self.model.__name__, self.values, self.xml_id)
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/convert.py",
line 707, in import_record
self.create_records(model, [values], [fs_id])
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/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 208, in __raise_integrity_error
error_args=cls._get_error_args(field_name))
File "/home/gnuhealth/tryton-3.0/trytond3.0/trytond/error.py", line
74, in raise_user_error
raise UserError(error)
trytond.exceptions.UserError: ('UserError', (u'The field "Empresa" on
"category_admin" is required.', ''))
Me gustaria saber si mi procedimiento de migracion esta en lo correcto
y solo sean cambios en las tablas del DB en una nueva version 3.0.
O cual sera la mejor forma de migrar mi Base de datos?
Tienes que obtener las fuentes de la nueva version y despues ejecutar:
trytond -d <base_datos> -u all
Y el servidor se encargará de actualizar todos los módulos de tu base de
datos. No hace falta que hagas nada manualmente en la base de datos.
--
Sergi Almacellas Abellana
www.koolpi.com
Twitter: @pokoli_srk