Tempo aproximado para leitura: 00:00:45 min
Dúvida
Como importar corretamente arquivos EDI, XML e outros quando temos letras maiúsculas no nome do arquivo e isso ocorre em ambientes Linux?
Ambiente
TOTVS Logística - TOTVS Frete Embarcador (Linha Protheus) - Gestão de Frete Embarcador (SIGAGFE) - Todas as Versões
Solução
Em ambientes Linux, o sistema de arquivos diferencia letras maiúsculas de minúsculas (case-sensitive). Por esse motivo, as rotinas de importação como EDI, XML e outras podem não localizar ou movimentar corretamente arquivos que contenham letras maiúsculas no nome ou na extensão.
Exemplos:
- OCOREN49917092026063001.TXT
- ocorenll49917092026063001.txt
Quando o ambiente está configurado com diferenciação entre maiúsculas e minúsculas, esses nomes são considerados diferentes. Em alguns casos pode até ser localizado, mas não consegue mover para as pastas de processamento, como OLD ou ERR no EDI, por exemplo.
Qual parâmetro deve ser configurado
No arquivo appserver.ini, inclua o parâmetro abaixo dentro do grupo [GENERAL]:
[GENERAL] CaseSensitive=1
Se o grupo [GENERAL] já existir, inclua somente a linha:
CaseSensitive=1
Onde fica o arquivo appserver.ini.
O arquivo está localizado no diretório de instalação do AppServer do Protheus.
Como o caminho pode variar conforme a instalação, recomendamos que a alteração seja realizada pelo administrador do ambiente ou pela equipe responsável pela infraestrutura do Protheus.
Antes da alteração, faça uma cópia de segurança do arquivo appserver.ini.
É necessário reiniciar o Protheus após a alteração.
Após incluir ou alterar o parâmetro, é necessário reiniciar o AppServer para que a configuração seja carregada.
A alteração não será aplicada apenas salvando o arquivo .ini.
O que muda após configurar CaseSensitive=1.
Com essa configuração, o ambiente passa a tratar corretamente a diferenciação entre letras maiúsculas e minúsculas durante o processamento dos arquivos.
Assim, a rotina poderá:
- Localizar arquivos com letras maiúsculas no nome ou na extensão.
- Importar arquivos corretamente.
- Movimentar os arquivos processados para as pastas de destino, mesmo quando os nomes contêm letras maiúsculas.
Não é necessário solicitar que os transportadores renomeiem os arquivos.
Em ambientes Linux, a configuração do appserver.ini com CaseSensitive=1 permite que a rotina trate arquivos com nomes e extensões contendo letras maiúsculas.
Dessa forma, evita-se exigir que cada transportador altere o padrão de nomenclatura dos arquivos enviados.
Configuração em ambiente Windows.
A orientação está relacionada principalmente a ambientes Linux, nos quais o sistema de arquivos diferencia maiúsculas de minúsculas.
Em ambientes Windows, esse comportamento normalmente não ocorre da mesma forma. Ainda assim, qualquer alteração no appserver.ini deve ser avaliada conforme a arquitetura e as configurações específicas do ambiente.
Importante
O parâmetro corrige o comportamento do AppServer após o reinício do serviço. Os arquivos que já foram processados devem ser avaliados, pois geralmente precisam ser importados novamente.
0 Comentários