Suporte à Implementação de um Conjunto de Caracteres Mistos

Se estiver trabalhando em um ambiente no qual máquinas diferentes com conjuntos de caracteres diferentes se conectam ao mesmo conjunto de bancos de dados Rational ClearQuest, você deve considerar estas questões de representação de caracteres:

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.

Tabela 1. Modo de cadeia de retorno de pacote
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
Customer RETURN_STRING_UNICODE
DeploymentTracking RETURN_STRING_UNICODE
DTStateTypes RETURN_STRING_UNICODE
EMail RETURN_STRING_UNICODE
EnhancementRequest RETURN_STRING_UNICODE
eSignature RETURN_STRING_UNICODE
History RETURN_STRING_UNICODE
Notes RETURN_STRING_UNICODE
Project RETURN_STRING_UNICODE
Resolution RETURN_STRING_UNICODE
TPM RETURN_STRING_UNICODE
Ao desenvolver um aplicativo que deve manipular implementações de conjuntos de caracteres mistos, você deve administrar diversas considerações.

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 mais informações sobre representações de caractere e configurações de página de códigos, consulte a Ajuda on-line Administrando o Rational ClearQuest.


Feedback