Melhorias
Ajuste e padronização na saída de arquivos gerados pelo AppServer Command Line
Incidente:
Solução:
Referente ao chamado: DTAPPSRV-452
Alterar a identidade da ferramenta de Compilação e Execução por Linha de Comando
Incidente:
Solução:
Referente ao chamado: DTAPPSRV-462
Método para excluir item do JSONObject
Incidente:
Ausência de funcionalidade para remover propriedade do objeto JSON.
Solução:
Implementação de funcionalidade para remover propriedade do objeto JSON.
h2. Solução implementada
* Implementação do método JSONObject():DelName();
* Testes integrados do método JSONObject():DelName() implementados no arquivo tHashMap.prw, função joJs_DelName();
* Documentação do método JSONObject():DelName().
Referente ao chamado: DTAPPSRV-586
Correções;
Métodos private não executam quando aplico herança nas classes
Incidente: Ao tentar acionar um metodo na classe pai, que esta acessa um
método private utilizado somente por ela, apresenta o erro:
Invalid call to a PRIVATE method named
Solução: existia um problema no gerenciamento do stack quando acessado via _Super e isso foi corrigido.
Referente ao chamado: DTAPPSRV-186
Rotina F850LIN(FINA850.PRW) apresenta o erro: Array out of Bounds ( 1 of 0 )
Incidente: Array out of Bounds ( 1 of 0 ) on F850LIN(FINA850.PRW).
Solução: Corrigido componente TCBrowse para que não execute codeblocks indevidamente.
Referente ao chamado: DTAPPSRV-606
Appserver está corrompendo o appserver.ini com a aplicação HAT
Incidente: Corrupção do arquivo appserver.ini em ambientes linux.
Solução: Criado cache em memória para que leitura consecutiva não seja feita abrindo o arquivo constantemente.
Referente ao chamado: DTAPPSRV-610
Erro de exibição de caracteres ambiente Russia
Incidente:
Solução:
Referente ao chamado: DTAPPSRV-891
Private Key não encontrada em certificado A3
Incidente: Falha de localização de Private Key em certificados A3 quando a mesma não possui label de identificação.
Solução: Quando card possui apenas uma chave a mesma é utilizada mesmo que não tenha sido identificada através de seu label.
Referente ao chamado: DTAPPSRV-994
Escopo de variável incorreta quando utilizada com TYPE na declaração
Incidente: Ao realizar a declaração de uma variável pública atribuindo na mesma linha o retorno de Type(), a variável é declarada como privada
Solução: Existia um erro que no processamento do lado direito da atribuição, que não checava o tipo explicitamente informado do lado esquerdo, fazendo com que o processamento do lado direito criasse como privada, por padrão.
Referente ao chamado: DTAPPSRV-1190
CodeBlock com IF não retorna valor
Incidente: Bloco de código
Unknown macro: {|| if 5 > 0 "Verdadeiro" else "Falso" end if}
retornando NIL
Solução: Ajustado para que nessa condição a ultima operação seja retornada, para esse exemplo acima a String "Verdadeiro".
Referente ao chamado: DTAPPSRV-1207
Exceção no Appserver ao utilizar a função GetTimeStamp
Incidente: Erro na passagem de parâmetro nulo para a função GetTimeStamp.
Solução: Correção no tratamento de parâmetros da função GetTimeStamp.
Referente ao chamado: DTAPPSRV-1411
Exibição incorreta das abas de um componente tFolder
Incidente: Ao abrir uma tela com um componente tFolder e clicado nos componentes da segunda aba, são exibidos na primeira aba.
Solução: Corrigido comportamento para exibir aba correta.
Referente ao chamado: DTAPPSRV-1444
Função ChdClsArr não utiliza RPO Customizado
Incidente:
Solução:
Referente ao chamado: DTAPPSRV-1457
Não é possível realizar o acesso via IPV6
Incidente:
Solução:
Referente ao chamado: DTAPPSRV-1506
Exceção no Appserver ao realizar uma leitura de um certificado inválido
Incidente: Appserver não funciona com protocolo IPV6.
Solução: Habilitado suporte ao protocolo IPV6.
Referente ao chamado: DTAPPSRV-1611
[] - Corrupção de arquivo appserver.ini em ambiente Linux
Incidente: Corrupção do arquivo appserver.ini em ambientes linux.
Solução: Criado cache em memória para que leitura consecutiva não seja feita abrindo o arquivo constantemente.
Referente ao ticket Zendesk: 7688271
Referente ao chamado: DTAPPSRV-988