3423 - Campos acentuados no formato da variável global do oracle11
Problema: O sistema da Senior utiliza caracteres acentuados, que em UTF-8 ocupa 4 bytes. Por isso, uma tabela criada com VARCHAR(3) terá problemas para armazenar a informação 'Não'. No banco do cliente Oracle11 está configurado o NLS_CHARACTERSET como AL32UTF8, e o correto para a Senior é WEB8MSWIN1252.
Com isso toda a string com acento ocupava um byte a mais, fazendo com que ocorresse erro ao inserir determinada informação
Quando ocorre / onde se aplica: Quando o parâmetro Global do Oracle11 está configurado com o padrão AL32UTF8.
Solução: Ver anexos.
- Para versão 5.6.5 e inferior: Alterar nas configurações globais do EditCfg, nos parametros avancados, na linha Init sql commands, o valor alter session set nls_length_semantics = char.
- Para versão 5.7.2 e superior: Alterar nas configurações avançadas da base de dados do SeniorConfigCenter, no campo Comandos SQL de Inicilização, o valor alter session set nls_length_semantics = char.
Importante: Antes de alterar o parâmetro, é necessário realizar o backup da base em SDM e após configurar o parâmetro, em seguida será necessário restaurar a base.
Com isso toda a string com acento ocupava um byte a mais, fazendo com que ocorresse erro ao inserir determinada informação
Quando ocorre / onde se aplica: Quando o parâmetro Global do Oracle11 está configurado com o padrão AL32UTF8.
Solução: Ver anexos.
- Para versão 5.6.5 e inferior: Alterar nas configurações globais do EditCfg, nos parametros avancados, na linha Init sql commands, o valor alter session set nls_length_semantics = char.
- Para versão 5.7.2 e superior: Alterar nas configurações avançadas da base de dados do SeniorConfigCenter, no campo Comandos SQL de Inicilização, o valor alter session set nls_length_semantics = char.
Importante: Antes de alterar o parâmetro, é necessário realizar o backup da base em SDM e após configurar o parâmetro, em seguida será necessário restaurar a base.