El juego de caracteres local es el juego de caracteres que se puede entrar o mostrar en el shell de la línea de mandatos del sistema operativo del cliente. En el sistema UNIX, el juego de caracteres local lo controla la variable de entorno LANG. En Windows, está controlado mediante los valores de las opciones regionales y de idioma.
En versiones de Rational ClearQuest anteriores a la 7.0, las operaciones de grabación no estaban permitidas a no ser que el juego de caracteres local coincidiera con la página de códigos de datos de ClearQuest. Si los valores no coincidían, únicamente se permitían las operaciones de sólo lectura. La modalidad de sólo lectura se necesitaba debido a que las aplicaciones de ClearQuest utilizaban el juego de caracteres local del cliente o servidor web para grabar datos en la base de datos, en lugar de la página de códigos de datos de ClearQuest para el conjunto de bases de datos.
A partir de la versión 7.0, el software Rational ClearQuest procesa datos en Unicode y las aplicaciones utilizan la página de códigos de datos de ClearQuest para grabar en las bases de datos. Estas aplicaciones pueden conectar a la base de datos de ClearQuest en modalidad de lectura/grabación aunque el juego de caracteres local no coincida con la página de códigos de datos de ClearQuest.
Se refiere al juego de caracteres de la base de datos del proveedor para Oracle como juego de caracteres o conjunto de caracteres; para IBM® DB2, como página de códigos o conjunto de códigos, y para SQL Server como página de códigos u ordenación.
Comenzando con la versión 7.1.1 de Rational ClearQuest, puede seleccionar una página de códigos de datos de ClearQuest en UTF-8 para los conjuntos de bases de datos Oracle y DB2. Una página de códigos de datos en UTF-8 permite un almacenamiento de caracteres multilingüe en la base de datos de usuario. Cuando selecciona UTF-8 como la página de códigos de datos, trabaja en un despliegue de juego de caracteres local mixto, a no ser que la página de códigos local del sistema operativo esté también en UTF-8. Esto último no es una opción en los sistemas Windows.
Los scripts y enganches grabados para un despliegue de juego de caracteres local mixto o un entorno de bases de datos multilingüe UTF-8 deben manejar datos de caracteres de ClearQuest que podrían no estar incluidos en el juego de caracteres local. Los scripts y enganches se deben haber codificado para dar soporte a Unicode con el objeto de aprovechar al máximo las ventajas de esta posibilidad en dichos entornos.
Designer incluye un nuevo valor: Unicode Aware. Los enganches grabados para la versión 7.0 pueden especificar si los caracteres de las series devueltos desde las llamadas de API de ClearQuest deben estar únicamente en el juego de caracteres local (RETURN_STRING_LOCAL) o si pueden ser cualquier carácter Unicode (RETURN_STRING_UNICODE). Además, hay nuevas funciones de API disponibles para controlar la modalidad de la serie de retorno. En la modalidad RETURN_STRING_LOCAL, una llamada de API devuelve una excepción si la serie de retorno incluye caracteres que no se pueden representar en el juego de caracteres local. En RETURN_STRING_UNICODE, una llamada de API devuelve todos los caracteres sin error.
Para asegurarse de que los ganchos y los scripts manejan todos los datos en un juego de caracteres local mixto o en un despliegue UTF-8, debe establecer la modalidad en RETURN_STRING_UNICODE y manejar correctamente los caracteres Unicode que se pueden devolver. Establecer la modalidad de serie de retorno en RETURN_STRING_UNICODE no es suficiente; debe verificar que el código pueda manejar caracteres Unicode de forma correcta. Las pautas que aparecen a continuación resultan útiles, pero en última instancia debe utilizar las técnicas adecuadas de programación Unicode para el lenguaje de creación de scripts.
Si actualiza a la versión 7.0, los cambios no afectan a los esquemas existentes si todos los juegos de caracteres locales del entorno coinciden con la página de códigos de datos de ClearQuest, como sucedía en versiones anteriores. La modalidad predeterminada es RETURN_STRING_LOCAL, que permite que todos los enganches y scripts sigan funcionando.
Si despliega la versión 7.0 en un entorno en el que los juegos de caracteres locales no coinciden con la página de códigos de datos de ClearQuest, debe asegurarse de que los scripts puedan procesar datos de caracteres Unicode para software ClearQuest, establecer la modalidad de retorno para los scripts en RETURN_STRING_UNICODE y actualizar los paquetes a la versión 7.0. Para obtener una lista de los paquetes de ClearQuest que soportan Unicode, consulte la Tabla 1. Se pueden ejecutar scripts que no manejen Unicode, pero se devuelve un error si el sistema intenta devolver al script cualquier dato de tipo carácter que no esté incluido en el juego de caracteres local. Estos scripts siguen funcionando siempre que los datos que procesen estén restringidos al juego de caracteres local del cliente o servidor web.
Paquete | Modalidad de serie de retorno |
---|---|
AMWorkActivitySchedule | RETURN_STRING_UNICODE |
ATStateTypes | RETURN_STRING_UNICODE |
Attachments | RETURN_STRING_UNICODE |
BTStateTypes | RETURN_STRING_UNICODE |
Customer | RETURN_STRING_UNICODE |
EnhancementRequest | RETURN_STRING_UNICODE |
History | RETURN_STRING_UNICODE |
Notes | RETURN_STRING_UNICODE |
Project | RETURN_STRING_UNICODE |
Resolution | RETURN_STRING_UNICODE |
El software ClearQuest maneja todos los datos como caracteres Unicode. Sin embargo, es posible que los enganches de los esquemas (Perl y Visual Basic) y otras integraciones o aplicaciones API de ClearQuest no estén codificados para procesar caracteres Unicode. En la versión 7.0, hay disponible una modalidad de serie de retorno para manejar este problema. El código de los enganches se puede establecer en Unicode Aware en el editor de scripts de Designer para indicar que el script se ejecuta en la modalidad de serie de retorno RETURN_STRING_UNICODE. (Para hacerlo, seleccione el recuadro de selección Unicode Aware). Los scripts pueden llamar al método SetPerlReturnStringMode o SetBasicReturnStringMode para establecer la modalidad de serie de retorno en RETURN_STRING_UNICODE.
La modalidad de serie de retorno restringe (RETURN_STRING_LOCAL) o permite (RETURN_STRING_UNICODE) la representación de caracteres cuando las series son devueltas por la API de ClearQuest para Perl o COM.
Resulta práctico grabar enganches y scripts que puedan procesar caracteres Unicode. Se proporciona RETURN_STRING_LOCAL como modalidad de serie de retorno predeterminada de modo que los enganches y scripts de versiones anteriores del software ClearQuest se puedan ejecutar sin cambios. Con el tiempo, debe modificar los enganches y scripts existentes para que funcionen en la modalidad RETURN_STRING_UNICODE aunque actualmente no necesite Unicode.
De manera predeterminada, en el paso 2 se genera una excepción cuando el script de la API de ClearQuest se devuelve con una serie que incluye caracteres que no pertenecen al juego de caracteres local. La excepción evita que se dañen los datos. Después de revisar y confirmar que el código puede procesar caracteres Unicode, puede establecer la modalidad de serie de retorno RETURN_STRING_UNICODE mediante la API de ClearQuest o en el editor de scripts de Designer. Al realizar este cambio, en el paso 2 la API de ClearQuest para Perl devuelve la serie de valor de campo como UTF8 (UNICODE) si la serie contiene datos de juegos de caracteres que no son locales, y la API de ClearQuest para VBScript, Visual Basic o COM devuelve caracteres Unicode no restringidos. A continuación, los caracteres que no se pueden representar en el juego de caracteres local se pueden retorno al enganche o script para procesarlos como caracteres Unicode.
En la modalidad RETURN_STRING_LOCAL, se pueden realizar operaciones como la ejecución de consultas y los conjuntos de resultados de la consulta pueden incluir caracteres Unicode. Sólo se genera una excepción si se extraen datos del conjunto de resultados por medio de un método de API de Rational ClearQuest y los caracteres que devuelve la llamada de la API no se encuentran en el juego de caracteres local. Por ejemplo, una aplicación externa o integración puede operar en una solicitud de cambio si los datos que se pasan a la integración sólo contienen caracteres del juego de caracteres local. El código de integración debe manejar la excepción generada por un método de API de Rational ClearQuest cuando los caracteres devueltos no se encuentran en el juego de caracteres local. Si la API de integración se configura como RETURN_STRING_UNICODE, la excepción no se generará pero la aplicación deberá manejar correctamente todos los caracteres Unicode que se devuelvan. Tanto en la modalidad RETURN_STRING_LOCAL como en RETURN_STRING_UNICODE, las excepciones también se devuelven a la aplicación o integración de llamada si la aplicación graba caracteres que no se pueden representar en la página de códigos de datos de ClearQuest.
Para obtener más información, consulte el apartado Establecimiento de la modalidad de serie de retorno para enganches y script en la publicación de ayuda de referencia acerca de API de IBM Rational ClearQuest.
Algunos paquetes o esquemas no se han diseñado para manejar datos de juegos de caracteres no locales o Unicode. El soporte que ofrece cada script en cada paquete se indica en el editor de scripts de Designer (el recuadro de selección Unicode Aware está seleccionado). Los esquemas DefectTracking y Common dan soporte a Unicode. Sin embargo, un esquema que incluya un paquete que no dé soporte a caracteres Unicode no se puede utilizar en un despliegue de juego de caracteres mixto. Consulte la Tabla 1.
Puede editar o añadir enganches que accedan a los campos del paquete y estos enganches se considerarán parte del paquete. Dichos enganches heredan el soporte Unicode predeterminado del paquete, pero Designer no muestra el valor correcto para el enganche.
Si los juegos de caracteres locales de todos los clientes conectados a un conjunto de bases de datos o clan coinciden con la página de códigos de datos, no debe tener en cuenta estas cuestiones. Para obtener más información sobre las representaciones de los caracteres y los valores de las páginas de códigos, consulte la ayuda sobre administración de Rational ClearQuest.