Novidades em 4D v17 R5

 

Criptografia

 

4D v17 R5 introduziu nova criptografia interna para seus bancos de dados 4D. Dados podem ser criptografados via código ou interface de usuário, para todas as tabelas ou apenas tabelas selecionadas. Ferramentas de criptografia 4D são baseadas em uma frasepasse. É composta de uma sentença ou de uma combinação de palavras que é usada para gerar uma chave de criptografia binária que vai encriptar os dados com o algoritmo AES. Para funcionar com um arquivo de dados criptografados, a frasepasse ou a chave de criptografia binária é obrigatória.

É importante notar que se perder a chave de criptografia, NÃO há retorno ou alternativa, os dados serão perdidos para sempre!

 

Criptografia via MSC

Um novo atributo Encriptável está disponível para tabelas em Modo Design. Estabelece o estado de criptografia de uma tabela ao determinar que pode ser criptografada. Quando estiver pronto para criptografar seus dados, a maneira mais fácil para fazer isso é via a nova página de Criptografia no MSC. Esta página fornece todas as propriedades necessárias para monitorar sua criptografia de dados. pode usar esta página para criptografar ou descriptografar o arquivo de dados, assim como recriptografar ou mudar a frasepasse.

 

 

Criptografia com comandos 4D

Além de MSC, 4D v17 R5 inclui um conjunto de comandos que são criados para apoiar suas necessidades de criptografia. Por exemplo, pode gerenciar a criptografia com o comando Encrypt data file() ou usar o comando provideDataKey() para fornecer a chave de criptografia de dados poara um arquivo de dados aberto. Pode também usar  encryptionStatus() para checar se o arquivo de dados aberto está criptografado e se uma chave de criptografia de dados foi fornecida. A lista completa de comandos está disponível no Doc center.

 
 
 

4D for iOS – Preview 

Ações

Ações estão disponíveis agora com 4D for iOS, que permite ter mais interatividade com seu app móvel. Estas ações deixam os usuários estabelecer tarefas a completar ou terminar ou marcar eventos a checar, com apenas o movimento de um dedo ou selecionando uma ação de um menu. Um novo método On Mobile App Action database está disponível o que permite declarar todas as suas ações. Além disso, uma seção Action foi adicionada no Project editor e pode definir seus elementos de ação (nome, ícone, etiquetas curtas/longas, tabelas, e escopo).

 

Sincronização de dados incrementais

Com 4D v17 R5, 4D for iOS inclui sincronização incremental de dados. Isso significa que ao invés de enviar continuamente o conjunto inteiro de dados para um aparelho, 4D agora automaticamente mantém controle de registros atualizados ou apagados, e apenas atualiza estes dados no aparelho. Além disso, seus dados não são apenas atualizados cada vez que lançar seu app, mas também a cada vez que seu app for para o primeiro plano ou em resposta à ação de usuário. 

 

Relações N para um

Em 4D v17 R5, 4D for iOS é compatível com relações N to one. Pode usar nomes de relação descritivos e simplificar a definição de suas estrutura de projeto. Pode mudar o nome curto ou longo relacionado a um campo, escolher seu ícone, e aplicar pesquisas nele.

 
 

Enviar Emails 

 

Conversações Log SMTP

4D v17 R5 fornece uma nova propriedade para históricos de email: o comando SMTP New transporter. Cria uma conexão entre um servidor SMTP (tal como exchange ou gmail) e o cliente, e os históricos – em texto simples e não criptografado – todas as suas comunicações. Uma nova propriedade logFile está disponível, contendo a rota completa do arquivo de log definido para a conexão SMTP. O arquivo pode ser produzido em duas versões: uma versão padrão e uma versão extendida. Ambas podem ser ativadas pelo comando SET DATABASE PARAMETER.

 

Cabeçalhos de email personalizados

4D v17 R5 fornece cinco novos cabeçalhos predeterminados diretamente via o objeto mail:

  • messageId: Identificador de mensagem único que se refere a uma versão de mensagem específica.
  • inReplyTo: Identificador de mensagem da mensagem original para a qual a mensagem atual é uma resposta
  • references: Identificador de coleção de mensagens de outras mensagens para as quais a mensagem atual está relacionada.
  • keywords: Objeto contendo palavras importantes e frases que possam ser úteis para o destinatário.
  • comments: Contém comentários adicionais sobre o texto no corpo da mensagem.

 

Se precisar outros cabeçalhos, use a coleção headers para adicionar cabeçalho específico SMTP  para seu email.

 

Compatibilidade legado de conjunto de caracteres

Com 4D v17 R5, pode usar codificação legado para enviar email: ISO-2022-JP para Japonês ou ISO-8859-1 Para Europa do Oeste. O comando SMTP New transporter aceita novos parâmetros que permitem especificar o tipo de codificação que quiser usar no cabeçalho ou corpo.

 

 
 

ORDA 

 

Placeholders nomeados para valores

4D v17 R5 faz com que seja fácil escrever pesquisas ORDA genéricas graças aos placeholders (espaços para preenchimento) nomeados para valores. Estes placeholders são fornecidos como parâmetros de objetos nas configurações de pesquisa e substituídos por outro valor quando a string de pesquisa for avaliada. 

 

Placeholders nomeados para atributos de rotas

Também pode usar placeholders para atributos de rotas (nomes de campos em tabelas). dois tipos estão disponíveis: Indexed – inserido como  :paramIndex (por exemplo. :1, :2,… com um incremento de 1) na string de pesquisa e seus valores correspondentes são fornecidos pela sequência de valores de parâmetros e  Named – inseridos como :paramName e seus valores são fornecidos nos atributos ou objetos parâmetros na pesquisa string. 

 

 

Otimização de performance em modo Cliente/Servidor

Acesso de Tabelas grandes  (especialmente aquelas com relações) em modo Cliente/Servidor usando ORDA foi melhorado em 4D v17 R5. Quando usar seleções de entida em list boxes no loop de código (por exemplo., While ou For each) os campos usados serão automaticamente analisados para otimizar a transferência de rede. A melhora de performance de LAN é de 2-3x e chegam a 30x mais rápidas em WAN (dependendo da rede e tamanho de registro). E o melhor de tudo – não precisa mudar nada no código, é tudo automático best of all – there’s no need to change anything in your code, it’s all automatic. 

 

Melhorias significativas

 

 

Performance melhorada

Em servidores altamente usados (por exemplo., muitos usuários pararelos ou processos de acesso aos registros, enquanto outros usuários imodificam/criam registros na mesma tabela), um mecanismo interno melhorado de trancamento pode melhorar drasticamente a performance. Isso pode levar a velocidades bem maiores (4-8xs) com maior uso de  CPU, pois as threads gastam menos tempo esperando pelos micro trancamentos.

 

Atualização de Bibliotecas

Como 4D v17 R5 é apenas 64, bibliotecas múltiplas foram atualizadas: Hunspell v.1.7.0 (spell checker), PHP v7.3.1, CEF 3626 (Chrome Foundation, internal web area), OpenSSL v1.1.1 (permite a compatibilidade de TLS 1.3), e ICU 63.1 (Novas versões Unicode. Esta atualização causa uma reindexação automática de campos texto, alpha e objetos).

 

Instâncias Multi-cliente

Com 4D v17 R5, pode rodar clientes múltiplos no mesmo computador e conectar simultaneamente ao mesmo 4D Server. Cada conexão cliente incluem agora uma pasta de cache contendo o endereço IP de conexão, porto e código de hash. Graças a isso, pode também conectar váriso clientes para a mesma máquina a múltiplos serviços em máquinas diferentes. Nenhuma configuração é necessária.

 
UI melhorada em Quick Report

A interface de  Relatório Rápido foi melhorada com um botão “Save / Save as” e um tooltip. Escolher “Save” salva seu trabalho atualizado a última versão salva para o arquivo para corresponder com o que tem na tela. Escolher “Save As” pergunta se quer salvar seu trabalho como um arquivo com um nome diferente. A adição de tooltip permite que selecione a direção de ordenação: ascendente ou descendente.

 

4D Linguagem

 

Leia campos objeto 4D com SQL Engine

O motor SQL em 4D v17 R5 foi  atualizado para permitir a leitura de campos objeto 4D. Para navegar o conteúdo de um campo objeto, a função  SQL CAST foi extendida para retornar uma representação JSON ao campo.

 

Notação de Objeto para manejar arquivos e pastas

4D v17 R5 fornece comandos para manejar arquivos e pastas via notação de objeto. Um novo comando Folder foi adicionado que permite criar um objeto pasta de uma constante, uma rota POSIX, ou uma rota plataformar. O objeto pasta tem propriedades (por exemplo, name, modificationDate, modificationTime) e métodos (por exemplo., create(), moveTo(), rename(), delete()) que permitem a criação e manipulação de pastas. Como com pastas, o comando File está disponível para manejar arquivos. O novo objeto arquivo permite acessar e manipular atributos de arquivos. Pode usar métodos de arquivo para escrever e ler os conteúdos de um arquivo, movê-lo, apagar, etc.

 

Mais informação sobre processos web

Nova informação sobre a URL usada por web processos está disponível com 4D v17 R5. Esta informação pode ser recupera de duas maneiras: via  4D Server Administration Window ou via linguagem 4D com o comando Get process activity ; um novo atributo “url”  é adicionado ao objeto processo quando o tipo de processo for um processo web.

 

Definir um nome alternativo para sua conta de usuário 4D

Um novo comando está disponível para definir nomes personalizados para usar ao invés do nome de conta de usuário 4D: SET USER ALIAS. Aceita como parâmetro uma string. Essa string (alias) vai substituir o nome de usuário 4D no ambiente 4D. Este comando pode ser chamado apenas de aplicações 4D remoto ou 4D mono-usuário, não em 4D Server. Um alias ou apelido permite que use seu próprio sistema de usuário/senhas, ou um diretório de usuário externo tal como Active Directory ou LDAP e ainda se beneficiar de todos os conceitos de identificação construídos internamente em 4D.

 

Melhorias de histórico de Depuração

Com 4D v17 R5, o comando SET DATABASE PARAMETER foi melhorado para permitir registrar o histórico apenas de processos específicos, assim como chamadas a métodos membros (coleção ou métodos objetos). Um novo seletor está disponível (Current process debug log recording) que lança o histórico de debug do processo atual e cria um arquivo chamado “4DDebugLog_pX_Y.txt” na pasta 4D logs  (onde X é o processo PID e Y a sequência de número de arquivo). Para registrar métodos membros, use seletores Debug log recording ou Current process debug log recording que aceitam uma nova opção com o valor 32.

 

 

 

 

4D Write Pro

Links aos métodos 4D

4D v17 R5 inclui o novo comando, WP SET LINK. Permite que crie URLs e também dá a habilidade de chamar um  método da sua aplicação 4D  (com parâmetros) ou bookmarks de seu documento. O novo comando WP Get links retorna uma coleção de todos os links em um documento, em uma única chamada. Cada link da coleção é um objeto com a descrição do link e seus atributos.

 

Configurações de Tabulação

A partir de 4D v17 R5,  tabulações podem ser estabelecidas com uma coleção de strings, valores numéricos ou mesmo uma coleção de objetos! Se precisar apenas modificar os valores de tabulação normais, pode usar um objeto com a nova constante wk tab default (adicionada especificamente para este propósito).

 

Manejar as propriedades de vista por programação

A partir de 4D v17 R5 pode manejar as propriedades de vista por programação. O comando WP SET VIEW PROPERTIES permite configurar dinamicamente uma ou  mais propriedades da área 4D Write Pro. As configurações podem ser retornadas em um objeto com todas as propriedades de vista via o comando WP Get view properties

 

Mais alvos e comandos renomeados

Os comandos listados abaixos foram estendidos em 4D v17R5 para aceitar qualquer tipo de alvo como primeiro parâmetro. Podem usar uma range, mas agora também podem usar uma referência (cabeçalho, corpo, rodapé), um elemento (imagem, parágrafo) ou um documento inteiro como alvo:

  • WP SET TEXT
  • WP INSERT BREAK
  • WP INSERT DOCUMENT
  • WP INSERT PICTURE
  • WP Insert table
  • WP SET ATTRIBUTES
  • WP GET ATTRIBUTES

 

Além disso, vários comandos foram renomeados:

Nome anterior Novo nome
WP Create Paragraph range WP Paragraph range
WP Create Picture range WP Picture range
WP Create range WP Text range
WP Create Table range WP Table range
WP Get bookmark range WP Bookmark range
WP Get selection WP Selection range

 

 

 

4D View Pro

Barra de ferramentas no estilo Ribbon

4D v17 R5 fornece um poderosa barra de ferramentas no estilo ribbon (barras largas com ícones maiores, comum desde o Word 2007) para melhorar a interface de usuário 4D View Pro. Permite que organize as propriedades 4D View Pro em um conjunto de abas, para melhorar a clareza na organização das funções e ativa o acesso rápido para diferentes comandos. Vale mencionar que esta barra de ferramentas também inclui novas funções  tais como opções de exportação de PDF e CSV.

 

Gerenciar seleções e células ativas

Com 4D v17 R5, incluimos um conjunto de comandos para ajudar a estabelecer e obter as células ativas ou seleções em seus documentos:

  • VP Get active cell
  • VP Get selection
  • VP SET ACTIVE CELL
  • VP SET SELECTION
  • VP ADD SELECTION
  • VP RESET SELECTION

 

E se quiser ver uma célula em posição específica na área 4D View Pro (por exemplo, superior esquerda ou inferior direita), pode usar o comando VP SHOW  CELL.

 

 
 

Quer saber mais? Leia todos os blogs sobre 4D v17 R5