federicomdelvalle | |
Buenas tardes. Estoy teniendo problemas al sincronizar una app SD offline en Genexus 16u9, backend net. Venía trabajando sin problemas, pero cambie de pc y no estoy pudiendo sincronizar el emulador ni un dispositivo conectado. La base de datos es DB2 iSeries. Hice un backend web de pruebas para descartar errores, donde puedo consultar los datos sin problemas. El tema está en la sincronización con el dispositivo. Siempre me muestra que falla la sincronización. En el client.log tengo lo siguiente: 2020-09-24 15:49:18,705 [39] ERROR GeneXus.Data.GxDb2ISeries - DisposeCommand error System.MissingMethodException: No se puede encontrar el m鴯do 'IBM.Data.DB2.iSeries.iDB2Command.freeUnmanagedMemory'. en System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams) en GeneXus.Data.GxDb2ISeries.DisposeCommand(IDbCommand command) 2020-09-24 15:49:20,018 [39] ERROR GeneXus.Data.ADO.GxCommand - Return GxCommand.ExecuteNonQuery Error 2020-09-24 15:49:20,018 [39] ERROR GeneXus.Data.ADO.GxCommand - GxCommand.ExecuteStmt Error Type:IBM.Data.DB2.iSeries.iDB2SQLErrorException.DBMS Error Code:-601.SQL0601 GXDEVICERESULT en MGXTSTDAT de tipo * <undefined>FILE ya existe. Causa . . . . . : Se ha intentado crear GXDEVICERESULT en MGXTSTDAT o redenominar una tabla, vista, alias o �ice como GXDEVICERESULT, pero GXDEVICERESULT ya existe. Todas las tablas, vistas, alias, �ices, paquetes SQL, secuencias, variables globales, m᳣aras, permisos, restricciones, desencadenantes, tipos definidos por usuario y objetos XSR en el mismo esquema deben tener nombres exclusivos. -- Si GXDEVICERESULT es una tabla temporal, no puede sustituirse a menos que se especifique la clᵳula WITH REPLACE. -- Si el nombre de esquema es * <undefined>N, se trata de una sentencia CREATE SCHEMA. Si se trata de una sentencia CREATE TABLE o ALTER TABLE y el tipo es * <undefined>N, GXDEVICERESULT es una restricciRecuperaci .: Cambie GXDEVICERESULT por un nombre que no exista, o suprima, mueva o redenomine el objeto existente. Si se trata de una tabla temporal, utilice la clᵳula WITH REPLACE. Si estᠣreando un paquete SQL, especifique REPLACE(* <undefined>YES) en CRTSQLPKG. Repita la petici 2020-09-24 15:49:22,467 [39] ERROR GeneXus.Data.ADO.GxCommand - Return GxCommand.ExecuteNonQuery Error 2020-09-24 15:49:22,467 [39] ERROR GeneXus.Data.ADO.GxCommand - GxCommand.ExecuteStmt Error Type:IBM.Data.DB2.iSeries.iDB2SQLErrorException.DBMS Error Code:-601.SQL0601 GXRESULTROWS en MGXTSTDAT de tipo * <undefined>FILE ya existe. Causa . . . . . : Se ha intentado crear GXRESULTROWS en MGXTSTDAT o redenominar una tabla, vista, alias o �ice como GXRESULTROWS, pero GXRESULTROWS ya existe. Todas las tablas, vistas, alias, �ices, paquetes SQL, secuencias, variables globales, m᳣aras, permisos, restricciones, desencadenantes, tipos definidos por usuario y objetos XSR en el mismo esquema deben tener nombres exclusivos. -- Si GXRESULTROWS es una tabla temporal, no puede sustituirse a menos que se especifique la clᵳula WITH REPLACE. -- Si el nombre de esquema es * <undefined>N, se trata de una sentencia CREATE SCHEMA. Si se trata de una sentencia CREATE TABLE o ALTER TABLE y el tipo es * <undefined>N, GXRESULTROWS es una restricciRecuperaci .: Cambie GXRESULTROWS por un nombre que no exista, o suprima, mueva o redenomine el objeto existente. Si se trata de una tabla temporal, utilice la clᵳula WITH REPLACE. Si estᠣreando un paquete SQL, especifique REPLACE(* <undefined>YES) en CRTSQLPKG. Repita la petici 2020-09-24 15:49:24,109 [39] ERROR GeneXus.Data.ADO.GxCommand - Return GxCommand.ExecuteNonQuery Error 2020-09-24 15:49:24,109 [39] ERROR GeneXus.Data.ADO.GxCommand - GxCommand.ExecuteStmt Error Type:IBM.Data.DB2.iSeries.iDB2SQLErrorException.DBMS Error Code:-601.SQL0601 GXPARAMETERS en MGXTSTDAT de tipo * <undefined>FILE ya existe. Causa . . . . . : Se ha intentado crear GXPARAMETERS en MGXTSTDAT o redenominar una tabla, vista, alias o �ice como GXPARAMETERS, pero GXPARAMETERS ya existe. Todas las tablas, vistas, alias, �ices, paquetes SQL, secuencias, variables globales, m᳣aras, permisos, restricciones, desencadenantes, tipos definidos por usuario y objetos XSR en el mismo esquema deben tener nombres exclusivos. -- Si GXPARAMETERS es una tabla temporal, no puede sustituirse a menos que se especifique la clᵳula WITH REPLACE. -- Si el nombre de esquema es * <undefined>N, se trata de una sentencia CREATE SCHEMA. Si se trata de una sentencia CREATE TABLE o ALTER TABLE y el tipo es * <undefined>N, GXPARAMETERS es una restricciRecuperaci .: Cambie GXPARAMETERS por un nombre que no exista, o suprima, mueva o redenomine el objeto existente. Si se trata de una tabla temporal, utilice la clᵳula WITH REPLACE. Si estᠣreando un paquete SQL, especifique REPLACE(* <undefined>YES) en CRTSQLPKG. Repita la petici Aparentemente no puede actualizar las tablas de sincronización. Voy a consultarlas a la bd y veo que actualiza gxdeviceresult. Noto que siempre muestra un sólo registro, debe ser la última tabla en sincronizar. Cómo puedo solucionar el tema este que no sincroniza? Me muestra también un error de que no encuentra una dll de IBM, pero la tengo en la carpeta de instalación de gx y en la de la kb. El testeo de conexión de bd desde el datastore en la kb da correcto. Gracias. Saludos. -- ______________________________ Ing. Federico Martín Del Valle Correo: federicomdelvalle@gmail.com Celular: +54-341-374-4019 |
|