Versão 76

Melhorias

Engine

  • O sistema agora conta com a API ImapClient para leitura de e-mails. A nova API permite:

    • Listar, criar e editar caixas de entrada.
    • Realizar busca parametrizada por mensagens.
    • Fazer download de mensagens, com a opção de baixar o conteúdo total ou apenas os cabeçalhos, e definir se a mensagem será marcada como lida.
    • Modificar flags das mensagens, como lida, excluída, rascunho e respondida.

    Mais detalhes na documentação da API.

  • Foi criada a propriedade Session.prototype.identityProviderKey para informar qual provedor de identidade externo foi usado na autenticação da sessão do usuário. Quando outro método de autenticação é utilizado, a propriedade retorna null.

  • A validação de CNPJ realizada pela função validateString agora aceita CNPJ com caracteres alfanuméricos de acordo com a Nota Técnica Conjunta 2025/001 e a Instrução Normativa 2229 de 15 de outubro de 2024.

  • Os métodos on, off e offAll da classe Emitter passam a retornar a própria instância do Emitter, permitindo o encadeamento de chamadas (method chaining).

Desenvolvimento

  • O processo “Desenvolvimento > Testes > Executor de testes” passa a permitir indicar o runtime JavaScript que deve ser utilizado na execução dos testes.

Web Framework

  • Passa a ser possível alterar a câmera ativa no diálogo de troca da imagem de perfil do usuário.
  • Passa a ser possível abrir um módulo do menu principal do sistema na visualização em grade, o que torna a busca e a navegação pelos processos e relatórios mais simples, principalmente em dispositivos com tela reduzida, como os móveis.
  • Foi disponibilizado o método copyToClipboard na classe Process, que permite copiar qualquer conteúdo textual diretamente para a área de transferência do usuário.
  • Foi criada a propriedade validationType na classe Field, com o objetivo de definir explicitamente o tipo de validação aplicada aos valores atribuídos ao campo. Até então, a validação automática realizada pela classe Field, sugerida com base no tipo e nome do campo, não podia ser modificada ou desativada. Agora também é possível configurar as validações do tipo 'cpf', 'cnpj', 'cpfcnpj', 'cep', 'pis', 'phone', 'email' para quaisquer campos do sistema, independentemente dos seus nomes. Essa funcionalidade deixa de depender do produto Erp Core, podendo ser utilizada em bases de dados que não possuem esse produto instalado.
  • Foram criados os métodos expandGroup e collapseGroup na classe Grid com o objetivo de alternar de forma programática a visibilidade do conteúdo dos grupos da grade.
  • Foi adicionado o ícone “tab” à biblioteca de ícones do sistema.

Defeitos corrigidos

Engine

  • O método Database.prototype.applyUpdates poderia apresentar uma lentidão excessiva na preparação dos registros quando eram gravadas centenas de DataSets com poucos registros.
  • Alterações indevidas nos registros da classe de dados “Licenças” poderiam não ser sinalizadas de forma clara pelo sistema. Entre em contato com o fornecedor do sistema para corrigir o licenciamento caso seja observada a mensagem “As licenças de produtos foram modificadas indevidamente” logo após o login do usuário.

Web Framework

  • Os eventos beforeRunInteraction e afterRunInteraction da classe ProcessManager passam a ser executados a cada interação ou atividade de todos os processos.
  • Os atalhos de navegação das abas do sistema (ctrl + > e ctrl + <) não eram listados no diálogo “Atalhos do sistema”.

Outras alterações

Engine

  • As classes JavaScript EngineCluster e EngineClusterNode foram removidas do sistema, assim como o cadastro “Administração do sistema > Servidores > Clusters de engines”. O conceito de cluster de Engines fazia parte de uma funcionalidade experimental que foi desativada no passado e desde então o seu uso não era mais recomendado.

Web Framework

  • As classes Button e Link passam a permitir a configuração do evento click através do método on. O uso da propriedade onClick passa a ser considerado obsoleto.
  • A classe CellThumbnail passa a permitir a configuração do evento getImages através do método on. O uso da propriedade onGetImages passa a ser considerado obsoleto.
  • A classe ProcessManager passa a permitir a configuração dos eventos beforeRunInteraction e afterRunInteraction através do método on. O uso das propriedades onBeforeRun e onAfterRun passa a ser considerado obsoleto.