Novidades em 4D v18 R6

explorador de dados – vista prévia

4D v18 R6 oferece uma versão de amostra do 4D Data Explorer. Desenvolvedores ou administradores 4D agora podem facilmente explorar os dados de sua aplicação em um navegador web. 

    Saiba mais e veja exemplos  >

4D WEB Server

sessões web escaláveis

Com 4D v18 R6, o 4D Web Server oferece um novo tipo de sessão web que vai melhorar bastante a performance de suas aplicações web: a sessão web escalável.

Sessões web escaláveis podem manejar vários processos em modo preemptivo. Isso significa que podem manejar várias petições de usuários agentes ao mesmo tempo, e também podem partilhar dados entre esses processos.

4D for iOS

Notificações push com sincronização de dados

Notificações do tipo Push/automáticas são a maneira perfeita de manter seu usuários de app iOS envolvidos e informados.

Agora com 4D v18 R6, é possível estabelecer notificações automáticas para ativar a sincronização em aparelhos iOS. Isso permite que a interface de usuário seja atualizada instantaneamente, dando aos usuários dados em tempo real para que podem checar ao receber a notificação.

 

relações muitos para muitos

Agora pode acessar e publicar relações One to Many a partir de suas relações Many to One na seção Estrutura. Em resumo, isso significa que pode exibir relações Many to Many, o que premite entregar apps iOS com uma ergonomia muito melhor! Além disso há funcionalidades adicionais como adicionar interações para um campo ao soltar uma relação dentro dele, e exibindo o número de registro correspondente ao clicar nas relações One to Many.

 

compatibilidade de escaneio de código de barra

A pesquisa foi fortemente melhorada em 4D v18 R6 graças à adição de compatibilidade com escaneio de códigos de barra. Isso faz com que seja possível construir apps para situações de campo (por exemplo no inventário de armazéns e depósitos).

Mais tecnicamente, essa funcionalidade permite:

  • Filtrar um formulário lista dependendo do valor do código. Se um registro corresponder ao valor do código de barra, isso vai abrir diretamente o formulário detalhado do registro.
  • Quando combinado com deep linking, você poderá abrir formulários listas e formulários detalhados específicos apenas escaneando o código de barrra cujos valores forem  URL Schemes ou Universal Links.
 

Novos formatos de parâmetro: assinatura e código de barra

Para ajudar a que seus apps sejam mais interativos,  4D v18 R6 adicionou novos formatos de parâmetro a 4D for iOS:

  • Formato Signature: assine com uma impressão digital e envie suas assinaturas diretamente do app para o servidor. Isso poderia ser útil para coletar assinaturas de clientes, por exemplo para confirmar o recebimento de um pacote.
  • Formato Barcode: associa qualquer valor com um código de barra (EAN13, EAN8, QR Code, etc.) para ser extraído através de simples escaneamento com um formulário Ação. Esse é um modo conveniente de adicionar, por exemplo, uma referência de item diretamente de um escaneamento de código QR com seu app.

 

Emails

compatibilidade com OAuth 2.0

OAuth 2.0 é um protocolo de autenticação e autorização que protege os dados de usuários fornecendo acesso aos dados sem revelar a identidade ou credenciais do usuário. Recentemente servidores de email começaram a usar esse protocolo para aumentar sua segurança

A partir de  4D v18 R6, estamos oferecendo uma maneira de estabelecer o modo de autenticação OAuth 2.0 para uma conexão. Transportadores IMAP, SMTP e POP3 agora são compatíveis nativamente com o protocolo OAuth 2.0!

 

gerenciar IMAP flags

O protocolo IMAP permite associar uma lista de marcações em uma mensagem para gerenciar informação adicional. Com 4D v18 R6, adicionamos um conjunto de funções ao objeto transporter IMAP para adicionar ou remover flags  IMAP.

Com o protocolo IMAP pode-se gerenciar cinco flags :

  • \Seen: Mensagem foi lida.
  • \Answered: Mensagem foi respondida.
  • \Flagged: Mensagem foi marcada como “importante” para atenção urgente ou especial.
  • \Deleted: Mensagem foi marcada como “a ser apagada”. A remoção acontece quando a função expunge() for chamada, na troca de caixas de mensagem ou quando fechar a conexão. Essa flag já é adicionada pela função delete()
  • \Draft: Mensagem não está completa (marcada como rascunho).

 

Salvar emails em uma caixa de mensagem específica

Caso seus clientes esperem por uma cópia na caixa “Sent/Enviados”, como em Outlook ou Apple Mail, depois que enviam seus emails com 4D, agora você tem a resposta com 4D v18 R6. Para salvar uma cópia de seu email depois de enviá-lo:

  • Primeiro, crie dois transportadores: um transportador SMTP para enviar o email a seu cliente, e outro transportador IMAP para subir seu email para o servidor de mail.
  • Depois de enviar seu email com SMTP, usar a função append() do transportador IMAP.

Linguagem 4D

avanços na comparação de Strings

4D oferece ferramentas versáteis para a pesquisa e comparação de strings que podem ser adaptadas aos contextos e situações encontradas por desenvolvedores.

Com 4D v18 R6, atualizações foram feitas ao comando Position e o novo comando Compare strings foi adicionado:

  • Position: esse comando agora tem mais habilidades de comparação como  “case sensitive/diferencia maiúsculas de minúsculas” ou “accent sensitive/diferencia palavras acentuadas”, caracteres da linguagem japonesa (Hiragana/Katagana), e tananho de caractere também estão disponíveis como opções de pesquisa, assim como  “palavra inteira”. 
  • Compare strings: esse novo comando permite comparar strings com as mesmas opções que as adicionadas ao comando Position. Esse comando é baseado na linguagem definido nas configurações de banco de dados. Isso pode ser útil para permitir ordenações específicas, por exemplo.

 

Editor de código

exibir o protótipo de uma função e uma descrição curta

Para simplificar e facilitar a escrita de código no editor, o protótipo de uma função e uma descrição curta são exibidas no editor de código.

A lista de sugestões exibe preenchimento automático de código inteligente (com uma descrição curta) e protótipo para que possa escrever código mais rápido e correto. E enquanto estiver escrevendo sua função, 4D exibe o protótipo da função e uma descrição curta da função. Também ressalta o parâmetro que estiver completando atualmente.

4D depurador

Mais informação a sua disposição

4D v18 R6 inclui novas opções e informações adicionais que tornam mais fácil rastrear e analisar seu código.

  • Parâmetros: Saber os parâmetros input e output de um método ou função, assim como seu tipo, é essencial para depurar o código. A linha de declaração é exibida na parte superior esquerda da janela de depuração. No painel call chain pode escolher exibir ou não o tipo de parâmetro. 
  • Comentários: Para ajudar a explicar um método ou função, uma prática comum é incluir comentários no início de blocos de código. Esses comentários são agora visíveis no depurador.

4D View Pro

já está pronto?

4D v18 R6 tem dois novos eventos para permitir saber quando seus cálculos terminaram:  On VP Range Changed e on Timer event.

Isso pode ser útil, por exemplo, quando carregar um grande arquivo 4D View Pro com várias fórmulas e o cálculo poderia levar bastante tempo para terminar. Se usar uma área offscreen e quiser, por exemplo, exportar o documento como formato PDF ou Excel format, precisa esperar pelo final desses cálculos antes disso.

encontrar e substituir

Há ocasiões ao iniciar seu documento 4D View Pro, que precisa encontrar valores ou tags e substituí-las com dados emitidos de 4D. AGora é muito fácil com o comando  VP Find. Graças a esse comando, pode encontrar dados, fórmulas ou tags e substituí-los na folha ou apenas numa parte específica dele..

Listbox

gerenciar clicks na edição de células

A partir de 4D v18 R6, o evento de formulário on clicked é ativado não importando se a célula está ativada ou não, dando mais controle e melhorando a interface. Isso pode ser útil se quiser exibir valores possíveis usando um menu contextual para uma célula quando estiver sendo editada. Quando a linha for selecionada, pode oferecer uma escolha de cores para aquela linha ou célula em particular.

Quanto à questões de compatibilidade, se já tiver código que rode durante o evento on clicked, pode querer parar a execução do código quando um clique acontecer dentro de uma célula editada. Nesse caso, pode simplesmente testar o estado da célula com a função is editing text .

 

4D Write Pro

Melhorias de UI

Para ajudar a criar documentos de forma ainda mais fácil e rápida, 4D v18 R6 traz melhorias para a barra de ferramentas e barra lateral. Agora é possível:

  • incrementar ou decrementar o texto
  • copiar/colar a régua
  • mudar a cor de fundo do parágrafo
  • mudar o estilo de uma palavra (caixa alta, caixa baixa, etc.)
 

Quer saber mais? Leia todos os artigos sobre 4D v18 R6