O conjunto de caracteres local é o conjunto de caracteres que pode ser digitado ou exibido no shell de linha de comandos do sistema operacional cliente. No sistema UNIX, o conjunto de caracteres local é controlado pela variável de ambiente LANG. No Windows, é controlado por configurações em Opções Regionais e de Idiomas. Para obter informações adicionais, consulte a ajuda on-line para o Administrador do Rational ClearQuest.
O conjunto de caracteres de bancos de dados do fornecedor para Oracle é referido como conjunto de caracteres; como página de códigos ou conjunto de códigos para IBM DB2, e como página de códigos ou agrupamento para SQL Server.
Em versões anteriores a 7.0, as operações de gravação não eram permitidas a menos que o conjunto de caracteres local correspondesse à página de códigos de dados do Rational ClearQuest. Se as configurações não correspondessem, somente operações de leitura eram permitidas. O modo de leitura foi necessário porque os aplicativos Rational ClearQuest utilizaram o conjunto de caracteres local do cliente ou do servidor da Web para gravar dados no banco de dados em vez da página de códigos de dados do Rational ClearQuest no conjunto de bancos de dados.
A partir da versão 7.0, o software Rational ClearQuest processa dados em Unicode, e seus aplicativos utilizam a página de códigos de dados do Rational ClearQuest para gravar em seus bancos de dados. Estes aplicativos agora podem se conectar ao banco de dados do Rational ClearQuest no modo leitura/gravação, mesmo quando o conjunto de caracteres local não corresponder com a página de códigos de dados do Rational ClearQuest.
Esta nova funcionalidade permite grande flexibilidade em um ambiente do Rational ClearQuest que inclui máquinas com conjuntos de caracteres locais diferentes. No entanto, scripts e ganchos gravados para esses ambientes precisam manipular os dados de caracteres do Rational ClearQuest que talvez não estejam incluídos no conjunto de caracteres local. Esses scripts e ganchos devem ser codificados para suportar Unicode para tirar vantagem desta capacidade nestes ambientes.
O Designer inclui uma nova configuração: Unicode Aware. Os ganchos gravados para a versão 7.0 podem especificar se os caracteres de cadeias retornadas das chamadas API do Rational ClearQuest precisam estar somente no conjunto de caracteres local (RETURN_STRING_LOCAL) ou se podem ser qualquer caractere Unicode (RETURN_STRING_UNICODE). Além disso, há novas funções API disponíveis para controlar o modo de cadeia de retorno. No modo RETURN_STRING_LOCAL, uma chamada API retorna uma exceção se a cadeia de retorno incluir caracteres que não possam ser representados no conjunto de caracteres local. No modo RETURN_STRING_UNICODE, uma chamada API retorna todos os caracteres sem erros.
Para assegurar que os ganchos e scripts manipulem todos os dados possíveis em uma implementação de conjunto de caracteres mistos, você deve configurar o modo como RETURN_STRING_UNICODE e manipular corretamente os caracteres Unicode que podem ser retornados. Configurar o modo da cadeia de retorno como RETURN_STRING_UNICODE não é suficiente; você deve verificar se seu código pode manipular corretamente os caracteres Unicode. As diretrizes listadas abaixo são úteis, mas basicamente, é necessário utilizar as técnicas de programação Unicode apropriadas para a linguagem de script.
Se estiver fazendo upgrade para a versão 7.0, estas alterações não possuem nenhum impacto em um esquema existente de todos os conjuntos de caracteres locais no ambiente corresponderem com a página de códigos de dados do Rational ClearQuest, como era comum em versões anteriores. O modo padrão é RETURN_STRING_LOCAL, o que permite que ganchos e scripts continuem a funcionar.
Se estiver implementando a versão 7.0 em um ambiente no qual conjuntos de caracteres locais não correspondem com a página de códigos de dados do Rational ClearQuest, você deve assegurar que seus scripts possam processar dados de caracteres Unicode para o software Rational ClearQuest, configure o modo de retorno para scripts como RETURN_STRING_UNICODE e faça upgrade dos pacotes para a versão 7.0. Para obter uma lista de pacotes do Rational ClearQuest que oferecem suporte a Unicode, consulte Tabela 1. Os scripts que não manipulam Unicode podem ser executados, mas um erro será retornado se o sistema tentar retornar para o script qualquer dado de caractere que não esteja incluído no conjunto de caracteres local. Esses scripts continuarão a funcionar contanto que os dados que eles processam fiquem restritos ao conjunto de caracteres local do cliente ou do servidor da Web.
Package | Modo de Cadeia de Retorno |
---|---|
AMWorkActivitySchedule | RETURN_STRING_UNICODE |
ATStateTypes | RETURN_STRING_UNICODE |
Attachments | RETURN_STRING_UNICODE |
AuditTrail | RETURN_STRING_UNICODE |
BTStateTypes | RETURN_STRING_UNICODE |
BuildTracking | RETURN_STRING_UNICODE |
CQTM | RETURN_STRING_UNICODE |
Cliente | RETURN_STRING_UNICODE |
DeploymentTracking | RETURN_STRING_UNICODE |
DTStateTypes | RETURN_STRING_UNICODE |
RETURN_STRING_UNICODE | |
EnhancementRequest | RETURN_STRING_UNICODE |
eSignature | RETURN_STRING_UNICODE |
Histórico | RETURN_STRING_UNICODE |
Notes | RETURN_STRING_UNICODE |
Project | RETURN_STRING_UNICODE |
Resolution | RETURN_STRING_UNICODE |
TPM | RETURN_STRING_UNICODE |
O software Rational ClearQuest manipula todos os dados como caracteres Unicode. No entanto, talvez os ganchos do esquema (Perl e Visual Basic) e outras integrações ou aplicativos API do Rational ClearQuest não estejam codificadas para processar caracteres Unicode. Na versão 7.0, um modo de cadeia de retorno está disponível para manipular este problema. O código do gancho pode ser configurado para Unicode Aware no editor de script do Designer para indicar que o script é executado no modo de cadeia de retorno RETURN_STRING_UNICODE. (Para isso, selecione a caixa de opções Reconhecido por Unicode). Os scripts podem chamar o métodoSetPerlReturnStringMode ou SetBasicReturnStringMode para configurar o modo de cadeia de retorno para RETURN_STRING_UNICODE.
O modo de cadeia de retorno restringe (RETURN_STRING_LOCAL) ou permite representação completa de caracteres (RETURN_STRING_UNICODE) quando as cadeias são retornadas pela API do Rational ClearQuest para Perl ou COM.
Considera-se uma boa prática gravar os ganchos e scripts que podem processar caracteres Unicode. RETURN_STRING_LOCAL é fornecido como o modo de cadeia de retorno padrão para que ganchos e scripts existentes para versões anteriores do software Rational ClearQuest possam executar sem alterações. Com o tempo, você deve modificar os ganchos e scripts existentes para funcionarem no modo RETURN_STRING_UNICODE, mesmo que no momento não haja a necessidade de Unicode.
Por padrão, uma exceção é emitida na etapa 2 quando o script API do Rational ClearQuest retorna com uma cadeia que inclui caracteres de fora do conjunto de caracteres local. A exceção impede a distorção dos dados. Depois de revisar e confirmar que o código pode processar caracteres Unicode, é possível configurar o modo de cadeia de retorno RETURN_STRING_UNICODE ao utilizar a API do Rational ClearQuest ou no editor de script do Designer. Ao realizar esta alteração, na etapa 2 a API do Rational ClearQuest para Perl retorna a cadeia de valor do campo como UTF8 (UNICODE) se a cadeia contiver dados do conjunto de caracteres não local, e a API do Rational ClearQuest para VBScript, Visual Basic ou COM retorna caracteres Unicode sem restrição. Os caracteres que não puderem ser representados no conjunto de caracteres local, poderão ser retornados ao gancho ou script para serem processados como caracteres Unicode.
No modo RETURN_STRING_LOCAL, é possível executar operações como execução de consultas e os conjuntos de resultados das consultas podem incluir caracteres Unicode. Uma exceção é gerada somente se os dados forem extraídos desse conjunto de resultados por um método da API do Rational ClearQuest e os caracteres retornados da chamada da API não estiverem no conjunto de caracteres local. Por exemplo, uma integração ou aplicativo externo pode operar em um pedido de alteração se os dados transmitidos de volta à integração contiverem somente caracteres do conjunto de caracteres local. O código de integração deve manipular a exceção que é emitida por um método API do Rational ClearQuest quando os caracteres retornados não estiverem no conjunto de caracteres local. Se a API de integração for configurada como RETURN_STRING_UNICODE, a exceção não será emitida, mas o aplicativo precisará manipular corretamente qualquer caractere Unicode que for retornado. Em ambos os modos RETURN_STRING_LOCAL e RETURN_STRING_UNICODE, as exceções também são retornadas para a integração de chamadas ou aplicativo se o aplicativo gravar os caracteres que não podem ser representados na página de códigos de dados do Rational ClearQuest.
Para obter informações adicionais, consulte Configurando o Modo de Cadeia de Retorno para Ganchos e Scripts no IBM Rational ClearQuest API Reference.
Alguns pacotes ou esquemas não são projetados para manipulação de dados Unicode e de conjuntos de caracteres não locais. O suporte que cada script em cada pacote oferece, é indicado no editor de script do Designer (a caixa de opções Unicode Aware está selecionada). Os esquemas DefectTracking e Common oferecem suporte a Unicode. Entretanto, nenhum esquema que inclui um pacote que não suporta caracteres Unicode, não pode ser utilizado em uma implementação de conjunto de caracteres mistos. Consulte Tabela 1.
É possível editar ou incluir ganchos que acessam os campos de pacotes e esses ganchos são considerados como parte do pacote. Esses ganchos herdam o suporte Unicode padrão do pacote, mas o Designer não exibe esta configuração correta para o gancho.
Se os conjuntos de caracteres locais de todos os clientes conectados em um conjunto ou clã de bancos de dados ou corresponderem com a página de códigos de dados, você não precisa considerar estas questões. Para obter informações adicionais sobre representações de caracteres e configurações da página de código, consulte a ajuda on-line para o Administrador do Rational ClearQuest.