Versão 45

Novidades

Nova tela de login padrão

A tela de login padrão do Web Framework foi atualizada para utilizar um design mais leve, moderno e responsivo baseado nos conceitos do Material Design .

O sistema também passa a trafegar a senha do usuário de forma mais segura, mesmo quando utilizada uma conexão HTTP. Essa melhoria não substitui o uso do protocolo HTTPS, que continua sendo a forma segura e recomendada de trafegar dados sensíveis na web. Essa alteração também se aplica às telas de bloqueio de usuário, de mudança de senha e no diálogo de autenticação do usuário.

Os usuários com e-mail configurado no sistema agora contam com a possibilidade de redefinir a sua senha diretamente na tela de login, sem a necessidade de intervenção do administrador do sistema. Mais detalhes sobre essa funcionalidade no manual Política de autenticação .

No futuro, serão disponibilizadas opções de customização das cores da tela de login, das imagens de fundo e de definição da política de privacidade do sistema. Para utilizar estas e as futuras melhorias da tela de login, deverão ser desativadas as telas customizadas existentes. Essa desativação não será automática e deverá ser realizada pelo administrador do sistema.

Replicação de dados

O sistema passa a permitir a replicação dos dados do ambiente de produção para as bases de desenvolvimento, homologação e manutenção, possibilitando que essas bases tenham dados mais recentes, sem a necessidade de recriá-las a partir da produção.

Com a replicação de dados, a equipe de suporte passa a ter acesso aos dados da base de produção no ambiente de homologação com um dia de atraso, permitindo simular os processos e relatórios de forma mais fidedigna, sem a necessidade de ter acesso à base de produção.

Importante: a replicação de dados somente pode ser utilizada em bases de dados que tenham sido migradas para as chaves de 64 bits .

Mais detalhes no manual Replicação de dados .

Melhorias

Engine

  • Foram criados os métodos Controller.prototype.temporaryRedirect e Controller.prototype.permanentRedirect que permitem criar respostas HTTP com os status TEMPORARY_REDIRECT (307) e PERMANENT_REDIRECT (308), respectivamente, indicando que o recurso requisitado foi movido (de forma temporária ou permanente) para uma outra URL.
  • Os métodos DataSet.prototype.applyLog e DataSet.prototype.undoLog passam a permitir informar a versão inicial e final dos logs transacionais a serem aplicados ou desfeitos, possibilitando assim o processamento parcial de um DataSet contendo um conjunto maior de logs transacionais.
  • Foi criado o método Database.prototype.incVersion com o objetivo de incrementar a versão da base de dados sem que uma alteração tenha sido realizada de fato por meio do método applyUpdates.
  • O método Database.prototype.insertLog passa a permitir indicar a versão do log inserido.
  • O método VirtualFileSystem.prototype.createFile passa a permitir indicar a chave do arquivo que será criado.
  • Foram criadas as propriedades Connection.prototype.protocol e Database.prototype.protocol com o objetivo de identificar o protocolo utilizado na comunicação com o servidor.
  • Foi criado o método Database.prototype.sendEmail com o objetivo de enviar emails utilizando o servidor Engine associado a uma conexão. O antigo método Connection.prototype.sendEmail continua a ser suportado e passa a utilizar a nova implementação. Por ter um custo adicional em relação à implementação da classe Database, o seu uso deixa de ser recomendado.
  • Foi criado o método Database.prototype.discardCaches com o objetivo de forçar o descarte dos caches locais de dados e chaves dos Engines. O uso deste método requer o escopo de autorização “database.discardCaches”, que passa a ser atribuído por padrão ao grupo “Administradores”.
  • Foi criado o método Database.prototype.userHasScope com o objetivo de testar em uma conexão remota se um usuário tem permissão a um determinado escopo de autorização.

Extensão VS Code

  • A extensão do VS Code passa a contar com a funcionalidade de exportação de dados de um DataSet na tela de resultados da execução de script/query.
  • Foi disponibilizado o recurso de efetivar alterações pendentes de um resultado do tipo DataSet na tela de resultados da execução de script/query.
  • Scratchpads passam a ter um backup local, e a extensão passa a oferecer a opção de restaurar os scratchpads do usuário a partir desse backup caso eles tenham sido perdidos em uma recriação de base.
  • Foi disponibilizado o recurso de filtrar registros de um resultado do tipo DataSet na tela de resultados da execução de script/query.

Defeitos corrigidos

Engine

  • Ao exibir arquivos com a extensão “.docx” na IDE do Engine ocorria o erro “value too long for the field”.
  • Os métodos fileExists e directoryExists da classe VirtualFileSystem poderiam gerar um erro caso fosse informado um caminho inválido.
  • Ao criar uma chave ocorria o erro “Database keys are exhausted” caso o usuário configurado na conexão ao banco de dados Oracle não fosse o proprietário da tabela “ULTCHAVE”.
  • Durante a finalização do Engine poderia ocorrer o erro “External exception”.

Extensão VS Code

  • Ao utilizar a funcionalidade de substituição de arquivos do VS Code na VFS, ocorria um erro que impedia a criação do novo arquivo, mas o arquivo antigo ainda era removido.

Web Framework

  • O sistema poderia exibir indevidamente mensagens de progresso enquanto um diálogo de formulário estava sendo exibido.
  • Durante o login do sistema, as sessões JavaScript auxiliares para o processo de login não eram imediatamente expiradas, alocando recursos desnecessários no Engine por 15 minutos.

Desenvolvimento

  • Ao fechar um processo de exemplo disponível no menu “Desenvolvimento > Exemplos” ocorria um erro caso o usuário exibisse o código fonte.

Engine

  • Atribuir um valor não numérico à propriedade size de um campo do modelo de dados ou da grade passa a gerar um erro. O objetivo dessa alteração é antecipar o erro na definição do campo, que antes se manifestava apenas de forma indireta ou na atualização da estrutura da base de dados.

Web Framework

  • A tela de login Mobile foi descontinuada e não deve ser mais utilizada. Em versões futuras, ela será removida do sistema.