Blog

Blog

Suporte a Versionamento de Entidades

Implementada nova opção no diagrama para marcar Coluna de Versão, gerando entidades com uma coluna para versionamento. 


Figura 1: Coluna de Versão

Requisitos para a coluna de versão:

  1. Não pode ser Chave.
  2. Deve possuir um dos seguintes tipos: Inteiro, Inteiro Longo, ou Data e Hora com Fuso.
  3. Deve permitir Nulo e Inserção.

Entidades com uma Coluna de Versão marcada apresentam os seguintes comportamentos:

  1. A inserção/incremento ocorrem de forma automática da coluna.
  2. A atualização de um ou mais campos de um registro é bloqueada, exceto quando o número da versão permanece inalterado. Neste caso, o campo utilizado para versionamento é incrementado automaticamente.

Exemplo de Entidade "Empresa" com coluna de versionamento:

Figura 2: Entidade com Coluna de Versão gerada automaticamente.

Figura 3: Mensagem de erro ao tentar atualizar o registro passando uma versão diferente.



CRONAPP-935

Página a ser alterada:

Diagrama

Uma nova opção foi disponibilizada para os usuários do Cronapp em que um bloco pode ser disponibilizado externamente através de um WebService SOAP. 

Para isso, uma nova opção foi disponibilizada nas configurações de bloco. Veja a imagem a seguir:


Ao marcar a opção, o bloco estará listado no serviços expostos pela aplicação, através do endereço https://<url da aplicação>/services/. Ao acessar esse endereço, os serviços são listados como na imagem abaixo:


Clicando no link do serviço, é possível ver o WSDL do serviço e importá-lo em alguma outra aplicação. 

Observação: assim como um WebService REST, as permissões de segurança afetam diretamente o serviço. Um WebService  SOAP é trafegado via POST, logo a permissão "Permite Inserir" é a que deve ser usada para ele. 




CRONAPP-974

Página a ser modificada:


Para utilizar o componente Árvore, basta arrastar o mesmo para dentro de uma view web.


Figura 1 - Botão e componente na tela de edição visual web


Após adicionar à view, a janela de opções do componente será aberta.


Figura 2 - Janela de configurações da Treeview


Abaixo estão os campos da janela Opções da Árvore:

  • Fonte de dados: Selecionar/Adicionar uma Fonte de dados.
  • Campo de texto: Informar qual o campo que deverá ser utilizado para exibir o texto.
  • Campo de auto relacionamento: Informar qual o campo de auto relacionamento.
  • Obter valor do campo como: Selecionar como deve ser obtido o valor do campo.
    • Esse campo permite obter o valor como Objeto ou Chaves.


Figura 3 - Resultado da Árvore após configuração



CRONAPP-932

Página a ser modificada:

  

Agora é possível inserir, de forma low-code, imagens no componente visual Cartão, permitindo ainda mais sua personalização.

Figura 1 - Seleção de imagem no componente "Cartão"

O Cronapp adicionou suporte nativo a auditoria em logs de entidades, fontes de dados e blocos de programação. Isso significa que clientes poderão facilmente auditar uso de recursos do seu sistema.

Na primeira versão, três tipos de recursos estão habilitados a serem auditados. São eles:

Entidades

Ao editar uma entidade, a opção de Auditoria em Log é apresentada:

 

Blocos

Ao entrar nas configurações de um bloco:

Fonte de Dados

Ao editar uma fonte de dados:


O log de auditoria é gravado, por padrão, na entidade AuditLog, através a Fonte de Dados "Auditoria em Log".



Também foi disponibilizado uma view simples para consultar os logs no menu administrativo de uma aplicação criada com o Cronapp:


Para mais detalhes sobre o sistema de log do Cronapp, acesse Log de Auditoria.



CRONAPP-906

Documento a ser alterado:

Log de Auditoria

Os gráficos são recursos utilizados para representar um fenômeno que possa ser mensurado, quantificado ou ilustrado de forma mais ou menos lógica, se expressando de forma simples e amigável para o usuário. Muito utilizados em sistemas com variação dinâmica, como Dashboards.

Criamos um tutorial passo a passo mostrando como gerar e editar gráficos no Cronapp, acesse esse conteúdo em  Criando gráficos dinâmicos.


Foi implementado o componente de Captcha em projetos Web. Para utilizar o componente corretamente é necessário seguir os seguintes passos abaixo:

Figura 1 - Registro de um novo site com reCAPTCHA


  • Após criar a sua conta, ir em Configurações e obter a chave do site (Figura 2) nas chaves de reCAPTCHA:


Figura 2 - Chaves de reCaptcha


  • Por firm, arrastar o novo componente de Captcha na IDE e configurar (colar) a Chave do Site na tela de Login. 
    • Obs: O atributo Tamanho é opcional. Caso o usuário tenha habilitado o reCaptcha invisível, o valor deve ser invisible (Figura 3).

Figura 3. Componente de Captcha no editor

  • Pronto! O componente de captcha já está habilitado:

Figuras 4 - Componente de Captcha do tipo caixa de seleção em execução na tela de login


Figuras 5 - Componente de Captcha do tipo selo de reCaptcha invisível em execução na tela de login



Conteúdo a ser alterado:

Configuração do Captcha

Cronapp BPMN

O Cronapp BPMN é uma estrutura baseada em Java que suporta BPMN para fluxo de trabalho e automação de processos. Essa Funcionalidade está dividida em 3 partes:

Mecanismo de processo

O mecanismo de processo é uma biblioteca Java responsável pela execução de processos e fluxos de trabalho do BPMN 2.0. Ele possui um núcleo POJO leve e usa um banco de dados relacional para persistência.

Modelador

Ferramenta de modelagem para workflows compatíveis com BPMN 2.0

Aplicações WEB

API REST

A API REST permite que você use o mecanismo de processo de um aplicativo remoto ou JavaScript.

Tasklist

É um aplicativo da Web para gerenciamento de fluxo de trabalho humano e tarefas do usuário, permite aos participantes do processo inspecionar suas tarefas de fluxo de trabalho e navegar de formulários de tarefas para trabalhar nas tarefas e fornecer entrada de dados.

Cockpit

Um aplicativo da Web para monitoramento e operações de processos que permite procurar instâncias de processos, inspecionar seu estado e reparar instâncias quebradas.

Admin

Um aplicativo da web que permite gerenciar usuários, grupos e autorizações.



QAIBT-1302

Novo Bloco "Abrir URL dentro do app"

Foi implementada uma nova função de bloco Abrir URL dentro do app para abrir páginas dentro das aplicações mobile. 


Figura 1. A nova função de bloco Abrir URL dentro do app encontra-se dentro da categoria Dispositivos Móveis


Figura 2. Exemplo de funcionamento




QAIBT-1548

Página a ser modificada:
Blocos Exclusivos Mobile

Apesar do Cronapp reduzir a complexidade do desenvolvimento, é importante observar as boas práticas na implementação de aplicações modernas, a fim de deixar seu sistema ainda mais limpo, eficaz, bem programado e rápido.

Para isso, criamos um material com diversas dicas para ajudá-lo no desenvolvimento do seu projeto.

Acesse esse conteúdo em Manual de Boas Práticas.


Adicionadas novas opções para customização de Templates da lista avançada: Template Principal e Barra de Pesquisa. A implementação dará ao usuário maior liberdade na hora de customizar os estilos da lista avançada.


Figuras 1 e 2 - Abas Template principal e Barra de Pesquisa.

Configurações do template

Alguns pontos importantes a ser considerados na hora de customizar uma nova estrutura:

Seletores:

  • <ion-list>: contêiner principal da lista avançada.
  • <ion-item>: items que irão compor a lista avançada.
    • Para exibir itens repetidos baseados em um datasource deve-se colocar o atributo ng-repeat="rowData in datasource"
  • <ion-infinite-scroll>: gera o scroll infinito da lista avançada.

Classes CSS Utilitárias para <ion-item>:

  • item: classe principal para o componente.
  • item-avatar-left item-avatar-right:  classes que permitem customizar itens com avatar e sua posição na tela (esquerda/direita).
  • item-thumbnail-left item-thumbnail-right:  classes que permitem customizar itens com thumbnail e sua posição na tela (esquerda/direita).
  • item-icon-leftitem-icon-right:  classes que permitem customizar itens com ícone e sua posição na tela (esquerda/direita).
  • item-complex item-right-editable:  classes que permitem customizar botões em uma lista com swipe e sua posição na tela (esquerda/direita).

Exemplo de lista personalizada:


Figuras 3 e 4 - Exemplo de template configurado para exibir diferentes itens e seu resultado


Obs.: 

  • O template terá sempre máxima prioridade em relação aos parâmetros da lista avançada.
  • Para as imagens ficarem com o estilo correto, deve se colocar a tag <img> sendo o primeiro item dentro do <ion-item>
  • Os botões de comando (Editar/Excluir) não são gerados via template. Eles são personalizáveis através da aba Colunas na janela de configurações do componente.



QAIBT-2147

Página a ser modificada:

Lista Avançada (mobile)

Função de Compactar Arquivos

Nova função que permite compactar arquivos, passando uma lista de arquivos em uma pasta.

O arquivo sairá na mesma pasta, com o nome definido no campo Nome do arquivo compactado.



QAIBT-2163

Página a ser modificada:

Arquivo


O componente mobile lista avançada traz novas opções:

  1. Um botão que permite limpar os campos selecionados (Funciona apenas em modo multiseleção, quando há mais de um item selecionado);
  2. Um novo layout para a barra de pesquisa;
  3. Novos estilos low-code para customização.


Figura 1 - Novo layout da barra de pesquisa e botão de limpar selação


Figura 2 - Novos estilos para o componente


Figura 3 -  Resultado da aplicação de estilos ao rodar a aplicação


Trabalhar com data e hora em sistemas modernos requer entender completamente o uso de fuso horários, para isso disponibilizamos um tutorial explicando detalhadamente o uso de datas e horas com Cronapp. Acesse:

Entendendo o funcionamento dos tipos data e hora


Novas funções que substituem, inclusive com o uso de expressões regulares, uma sequência de caracteres de um texto.

Modulo Servidor

  • Um exemplo usando novo bloco de substituir:


  • Resultado após a execução do bloco:


Modulo Cliente

  • Um exemplo usando novo bloco de substituir:


  • Resultado após a execução do bloco:


Ao selecionar os blocos do modulo Servidor e/ou modulo Cliente, tem os valores iniciais cujo servirá para utilizar os mesmos.

QAIBT-2089