====== Miscelaneos ====== En esta sección está dedicada a la publicación de tips cortos, trucos o miniguías que nos pueden ayudar en las gestiones de la empresa. ===== Repositorio: Subversión (SVN) ==== ==== Failed to run the WC DB work queue associated with file ==== Descargue los archivos: * sqldiff.exe * sqlite3.exe * sqlite3_analyzer.exe Desde la ruta [[http://10.1.70.220:1443/svn/repository/ADA/SICOF/CONTABILIDAD|svn]] y copielos en la ruta donde se encuentre la carpeta .svn((Se debe habilitar la visualización de elementos ocultos en los directorios svn locales)) del repositorio con problemas. Luego ejecute los siguientes comandos en el orden indicado. Como ejemplo se asume que el repositorio esta en C:\ - C: sqlite3 .svn\wc.db - sqlite> select * from WORK_QUEUE; - sqlite> delete from WORK_QUEUE; - sqlite> .quit - C: svn cleanup De esta forma se eliminarán las referencias con conflicto y se podrá utilizar el repositorio nuevamente para gestionar los cambios. ===== Base de Datos ==== ==== Oracle (11g): Otorgar permisos para ejecutar recursos java desde la base de datos ==== DECLARE KEYNUM NUMBER; BEGIN SYS.DBMS_JAVA.GRANT_PERMISSION( grantee => 'ADMINISTRACION' ,permission_type => 'SYS:java.lang.RuntimePermission' ,permission_name => 'accessClassInPackage.sun.misc' ,permission_action => '' ,key => KEYNUM ); END; / ==== Oracle (12c): Utilizar Oracle 12c en TOAD ==== En el siguiente link [[https://blog.toadworld.com/how-to-install-an-oracle-instant-client-for-toad-for-oracle|How to install an Oracle Instant Client for Toad® for Oracle]] Podemos realziar el proceso. ==== Oracle (12c): ORA-22835: El buffer es demasiado pequeño para la conversión de CLOB a CHAR o de BLOB a RAW (real:, máximo:) ==== Se recomienda evitar el uso de lso tipos CHAR, VARCHAR, RAW y LONG RAW ya que esos tipos presentar problemas en proceso de exportación, conversiones de tipos de datos, migraciones según documentación la cual puede consultarse en el siguiente [[https://docs.oracle.com/database/121/SQLRF/sql_elements001.htm#SQLRF55623|Link]]. En su defecto utilizar los tipos según la siguiente recomendación. * CHAR -> VARCHAR2 * VARCHAR -> VARCHAR2 * RAW -> BLOB (Para Binarios) / CLOB(Para recursos que se puedan llevar a String Base64) * LONG RAW -> BLOB (Para Binarios) / CLOB(Para recursos que se puedan llevar a String Base64) Solución: Para corregir en error se debe identificar el tipo de dato que genera el problema Para tipos RAW y LONG RAW debe cambiar el tipo de datos de la columna. Ejemplo: --La columna SOPORTE es tipo LONG RAW, se puede cambiar directamente a tipo BLOB con la siguinete sentencia ALTER TABLE PRESUP01.DET_DOCUMENTO_SOPORTES MODIFY(SOPORTE BLOB DEFAULT EMPTY_BLOB()); ==== Oracle (12c): ORA-01502: índice inválido ==== Esto sucede porque en algunos procesos como importaciones, ejecución de estadisticas u optimizaciones de indices, este queda inv´lido y no permite acceder a algunos objetos. Solución: Se debe identificar el indice y reconstruirlo. A continuación se muestra una consulta de Ejemplo que muestra algunos filtros de identificación y genera el alter de corrección. Nota: Se debe identificar el tablespace de cada sentencia generada el valor inicial y valor de ampliación. --Consulta de identificación de indices malo y generación de sentencia de corrección. select owner,table_name,index_name,status, DECODE(STATUS, 'VALID', NULL, 'ALTER INDEX ' || OWNER || '.' || index_name || ' REBUILD TABLESPACE TESORERIA STORAGE (INITIAL 4M NEXT 1M);') AS SQL from dba_indexes --where owner = 'TESORE01' --and table_name = 'MAESTRO_TERCEROS' where status <> 'VALID' --and OWNER in ('TALENYO') order by 5 asc; --NOTA: Se debe identificar y modificar el TABLESPACE de cada sentencia generada. ===== Navegadores ===== ==== Internet Explorer - Corregir Bloqueo Script ==== En muchas ocasiones cuando se ejecutan procesos masivos, como: * Depreciación * Cierre Compras * Liquidación Nómina * Pago Automático Se presentan bloqueos en el navegador que hacen que la aplicación termine bruscamente causando que algunos procesos queden incompletos o inválidos. Esto ademas puede generar errores para la siguiente ejecución y por ende genera ticket de correcciones. Está situación se genera porque la sesión del navegador del usuario se queda sin memoria porque se excede el limite permitido de script ejecutados en la sesión. Para solucionar esta situación se ha identificado una configuración la cual debe realizarse en la maquina de cada usuario. A continuación siga los siguiente paso (//**Win 7/8/10/11**//): - Abra la aplicación **Ejecutar** (//existe un atajo de teclado **Win + R**//) - Ingrese al registro de window escribiendo el comando **Regedit** - Dentro del registro de window ubiquese en la ruta: **HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Styles** (//En la parte superior existe una barra de navegación//) - Agregue una entrada (//**Click Derecho** en el área de la derecha y click en **Nuevo**//) con el nombre **MaxScriptStatements** tipo **DWORD** con el valor **0xFFFFFFFF** (//Es posible que primero solo deje agregar el nombre, así que seleccionela con doble click y agregue el valor//) y dar click en Aceptar - Cerrar el registro de windows - Abrir **Internet Explorer** e ingresar a **SICOF** ===== PowerBuilder / PowerServer ===== ==== Datawindow - the decimal type is not compatible with data type of the mapped property ==== Este error se presenta cuando un mappeo de un tipo de dato de una columna de un datawindow no corresponde con el tipo de la columna de la estructura relaciona. En el siguiente link se explica como resolver esta situación [[https://docs.appeon.com/ps2022/Incompatible_data_type.html| Ver Solución]] ==== Datawindow - PL/SQL: ORA-00957: nombre de columna duplicado ==== Esto sucede cuando se adicionan columnas del mismo nombre pero de diferentes tablas. \\ //**Solución:** Identifique que tabla o tablas no son actualizables y adicione alias a las columnas dle mismo nombre menos la columna de la tabla actualizable.// ==== Datawindow - SQLcode = -1 con SQLErrText = "" ==== Esto puede suceder porque se generan errores en la definición del datawindow. Algunas de las causas son: * Algunas columnas del datawindow no existen en la base de datos de la conexión establecida. Solución: Adicione las colunas en la base de datos o excluya las columnas del datawindow. * No se ha seteado la transacción. Solución: Establezca la transacción con SetTransObject * El DataObject contiene un nombre no válido o inexistente en el proyecto. Establezca el datawindow con dataobject. * Algunas columnas son NOT NULL. Solución: Inicialice la columna en el Datawindow, Datastore ó INSERT SQL. * Algunos mapeos no están correctos con el tipo de datos de la base de datos. ==== SnapDevelop - Errores Create Session Failed - WebAPI ==== A continuación se listan los errores que se pueden generar al iniciar una applicación PowerServer. Ver el siguiente [[https://docs.appeon.com/ps2022/Session_creation_failed.html|Link]] para más información. ==== SnapDevelop - Customize Deploy (Configuraciones post despliegue) ==== En ciertas ocasiones se necesita modificar algunas propiedades de un despliegue PowerServer. A continuación se comparte el [[https://docs.appeon.com/ps2021/Change_the_Web_API_URL_for_an_application.html|Link]] donde se pueden modificar las siguientes opciones: * WebAPI * Recuersos Externos * Contraseña conexión base de datos. ==== PowerServer - Errores Frecuentes ==== A continuación se listan algunos errores frecuentes identificados en los procesos de migración y la solución identificada para cada caso. Tener presente que agunos errores pueden solucionarse de otra formapor lo tanto asuma la información como guía. === Alias iguales === Se ha identificado que algunas consultas cuando tienen alias en las columnas iguales a los nombres de las columnas, genera error en la WebAPI. Ejemplo: --Se genera error en la web API SELECT COLUMN1 AS COLUMN1, COLUMN2 AS COLUMN2 FROM SICOF.TABLA WHERE COLUMN3 > 0; Solución: Se deben quitar los alias iguales a los nombres de las columnas. --Consulta corregida SELECT COLUMN1, COLUMN2 FROM SICOF.TABLA WHERE COLUMN3 > 0; === Funciones SQL en campos actualizables de Datawindows === Se ha identificado que cuando se aplican consultas SQL como TRUNC, RTRIM, TRIM, DECODE, NVL en columnas que son actualizables en los datawindows genera error de columna NULA. Ejemplo: --Se genera error en la web API SELECT RTRIM(COLUMN1), TRUNC(COLUMN2) FROM SICOF.TABLA WHERE COLUMN3 > 0; Solución: Se deben quitar las funciones de las columnas actualizables. --Consulta corregida SELECT COLUMN1, COLUMN2 FROM SICOF.TABLA WHERE COLUMN3 > 0; === Inicialización de Columnas con Valor por Defecto en Datawindows === Se ha identificado que los campos de datawindow que representan columnas de la tablas que tiene valores por defecto, se están enviando nulos en la WebApi. Solución: Inicialice el campo en el datawindow con el valor por defecto al momento de insertar la fila. ==== PowerServer - Errores de Ejecución y administración de la aplicación implementada ==== A continuación se comparte un [[https://docs.appeon.com/ps2022/Run_the_installable_cloud_application.html|Link]] con información relacionada con los errores que se pueden presentar al desplegar y ejecutar aplicaciones. ==== PowerServer - Configuraciones de Timeouts ==== A continuación se comparte [[https://docs.appeon.com/ps2022/Configure_timeout_settings.html|link]] con información acerca de lso timeouts que deben ser configurados en las aplicaciones según el proceso. [[ada:tips|Volver]]