Que hacer cuando un UPDATE de GeneXus Server falla.
Es una situación habitual, que cuando quiero hacer un UPDATE en una KB GeneXus que esta conectada a GeneXus Server, el mismo falle, dando errores.
Esto es común, cuando se modificaron muchos objetos en el server, por ejemplo, cuando alguien se va de vacaciones por un tiempo prolongado en una KB con mucha activadad.
Otra situacion comun, es cuando tengon en el server referencias que no son soportadas en la KB local, por ejemplo, si los objetos en el server hacen referencia a objetos Styles que ya no existen mas en mi KB local, que es migrada de version anteriores de GeneXus.
Otro motivo, es cuando borre objetos en mi KB local para realizar alguna prueba o limpieza y los objetos del UPDATE aun hacen referencia a algun objeto de estos.
Una "solución facil" para hacer en estos casos, es importar los cambios que vienen del server.
GeneXus Server no tiene la funcionalidad de hacer un export de objetos directamente desde la consola del mismo. Hice el pedido formal un par de veces a los responsables de GXServer para que se pueda hacer un XPZ desde la consola de GXServer, pero no he logrado convencer a los responsables del producto sobre la utilidad y necesidad de esta feature.
Para subsanar estos problemas y limitaciones, lo que suelo hacer es sacar el XPZ que genera en forma temporal en el proceso de UPDATE e importarlo.
Processing file 'C:\Users\ealmeida\AppData\Local\Temp\tmpC915.tmp'...
Por ejemplo:
Ese archivo de extensión tmp, tiene un export de los objetos modificados y puede ser importado de la siguiente forma.
Esto es común, cuando se modificaron muchos objetos en el server, por ejemplo, cuando alguien se va de vacaciones por un tiempo prolongado en una KB con mucha activadad.
Otra situacion comun, es cuando tengon en el server referencias que no son soportadas en la KB local, por ejemplo, si los objetos en el server hacen referencia a objetos Styles que ya no existen mas en mi KB local, que es migrada de version anteriores de GeneXus.
Otro motivo, es cuando borre objetos en mi KB local para realizar alguna prueba o limpieza y los objetos del UPDATE aun hacen referencia a algun objeto de estos.
Una "solución facil" para hacer en estos casos, es importar los cambios que vienen del server.
GeneXus Server no tiene la funcionalidad de hacer un export de objetos directamente desde la consola del mismo. Hice el pedido formal un par de veces a los responsables de GXServer para que se pueda hacer un XPZ desde la consola de GXServer, pero no he logrado convencer a los responsables del producto sobre la utilidad y necesidad de esta feature.
Para subsanar estos problemas y limitaciones, lo que suelo hacer es sacar el XPZ que genera en forma temporal en el proceso de UPDATE e importarlo.
Como detectar el xpz que se genera?
Hay que revisar la ventana del OUTPUT en el Tab de Team Development hasta detectar la linea que dice:Processing file 'C:\Users\ealmeida\AppData\Local\Temp\tmpC915.tmp'...
Por ejemplo:
Ese archivo de extensión tmp, tiene un export de los objetos modificados y puede ser importado de la siguiente forma.
Luego de hacer el import, conviene intentar nuevamente hacer el UPDATE y muchas veces el mismo se puede hacer sin problemas.
ACTUALIZACION: Me comentaron desde Artech que en la próxima version de GXServer, va a posibilitar hacer un export desde GXServer sin tener que bajar la KB, lo cual es una muy buena noticia.
ACTUALIZACION: Me comentaron desde Artech que en la próxima version de GXServer, va a posibilitar hacer un export desde GXServer sin tener que bajar la KB, lo cual es una muy buena noticia.
Hola Enrique: Tengo un problema con GxServer y no encuentro la solucion. Ademas del Parsing del temporal, me aparece:
ResponderBorrarerror: Parsing C:\Users\GxRun\AppData\Local\Temp\KMWTempixar05ghqz3\tmp3A90.tmp
error: Unknown KMW version (4)
error: Errors were found reading the file
Tengo Genexus EVO3 y quiero hacer Update para actualizarme los cambios de la KB que subi a Gx Server.
Hola Anonimo, lo que te esta pasando ahi es que estar intentando importar un xpz generado con una version mas nueva sobre una version de GX mas vieja.
BorrarEso generalmente te va a dar problemas.
La unica opcion que se me ocurre es tomar el xpz, abrirlo con un programa de compresion, tipo 7zip o zip extraer el xml del interior y modificar las lineas de arriba para ponerle el numero de version de GX que vos estas usando.
Si tenes duda que ponerle, podes abrir un xml de algun export que generes con tu version actual y le pones lo mismo. No siempre funciona, pero si no agregaste nueva funcionalidad en la nueva version, tenes posibilidades de recuperar mucha cosa.