NOVIDADES EM 4D 20 R8

Editor de fórmula

verificação de sintaxe

Em 4D 20 R8, detecção de erros de sintaxe é mais eficiente, aumentando a produtividade e a qualidade de código. Os benefícios incluem associar uma classe com um formulário para permitir verificação de sintaxe com expressões como Form.myProperty, validação de expressões em tempo real na lista de propriedades e instanciação de objetos automática quando usar o comando DIALOG.

O editor de código agora usa autocompletar para o comando Form, reduzindo erros de digitação; enquanto os erros de sintaxe são detectados no editor de código e listas de propriedade, dando um desenvolvimento mais fácil.

Melhoria no comando FORM EDIT

em 4D 20 R8, o comando FORM EDIT permite abrir um formulário e selecionar um objeto formulário, simplificando seu workflow. Pode acessar rapidamente e modificar as propriedades sem navegar múltiplas páginas, tornando a edição de formulários mais eficiente.

gerenciamento de dependência

gerenciamento avançado de projeto

4D 20 R8 torna gerenciamento de dependências mais fácil. Introduzindo auto-checking para atualização de dependências diretamente de  GitHub, garantindo que seu projeto esteja atualizado com as novas funcionalidades e correção. Regras de versão semântica permitem definir estratégias de atualização – variando de versões precisas até uma gama flexível – para que possa manter o controle. Com notificações e opções manuais de anulação para atualizações específicas ou em grupo, pode adaptar o gerenciamento de dependências para suas necessidades de projeto.

4D Server

domine HTTP Requests com 4D Request Handlers

4D 20 R8 introduz HTTP Request Handlers, uma nova funcionalidade para o 4D HTTP Server que oferece uma forma estruturada de gerenciar e responder às petições web. Essa funcionalidade oferece precisão e flexibilidade para autenticação de usuário, uploads de arquivo ou lógica específica baseada em URL e garantindo que seus aplicativos web se alinhem com as necessidades empresariais.

As novas classes 4D.IncomingMessage e 4D.OutgoingMessage dão acesso direto a propriedades de petição – tais como URL, cabeçalhos e conteúdo do corpo – permitindo retornar respostas totalmente estruturadas e personalizadas para suas necessidades. Os HTTP Request Handlers tornam mais fácil registrar dados de petições para análise de performance, redirecionar usuários baseado em privilégios de acesso ou entregar arquivos dinamicamente.

A configuração é rápida e intuitiva graças ao arquivo HTTPHandlers.json file. Defina handlers e os mapeie para funções de classe singleton, crie um sistema limpo e organizado que se adapta a exigências mutáveis.

Notarização em MacOS

mudanças à estrutura de componentes

A partir de 4D 20 R8, atualizamos a estrutura de componentes para atender às exigências de notarização de Apple para macs baseados em Silicon.

Esta nova estrutura simplifica notarização e lançamento, tornando mais fácil o lançamento de aplicação 4D.

Note que a estrutura atualizada não é compatível com versões antigas de 4D (por exemplo., 4D 20 R7). Componentes construídos com 4D 20 R8 beneficiam-se de campos estabelecidos automaticamente como CFBundleDisplayName, CFBundleShortVersionString e CFBundleVersion. Para componentes feitos com Build4D, estes campos são preenchidos usando seu buildApp.4DSettings. Note que a estrutura atualizada não é compatível com versões anteriores de 4D (por exemplo., 4D 20 R7 ou 4D 20 LTS), enquanto 4D 20 R8 pode usar componentes no formato antigo.

Depurador

experiência de depurador melhorada

4D 20 R8 traz melhorias significantes ao depurador e depurador remoto.

Com expressões auto-salvas, não precisa redigitar as expressões avaliadas anteriormente, assegurando uma melhor experiência de depuração. A nova funcionalidade “pin” permite manter expressões sempre acessíveis.

Também tem mais controle com Local Variables, Line Expressions e Custom Expressions no monitor de expressões.

Finalmente a interface redesenhada oferece um ambiente mais limpo e intuitivo de depuração.

extensão 4D-Debugger

Depurar código 4D diretamente no Visual Studio Code

4D 20 R8 introduz a nova extensão 4D-Debugger for Visual Studio Code, melhorando a depuração com funcionalidades como estabelecer breakpoints, passar pelo código e inspecionar variáveis – tudo diretamente de dentro do VS Code. Esta ferramenta é baseada no 4D-Analyzer e se integra suavemente e torna a depuração mais intuitiva.

Instale a extensão 4D-Debugger do VS Code marketplace. Assegure que um 4D Server esteja rodando em sua máquina e configure a conexão no arquivo .vscode/launch.json. Também pode anexar a um servidor existente usando a porta do depurador.

4D Write Pro

Command syntax improvements

4D 20 R8 traz melhorias ao 4D Write Pro, deixando seu código mais limpo, fácil de manter e de implementar. Com comandos e funções atualizados, agora você melhorar a compatibilidade para objetos, coleções e parâmetros modernos, simplificando tudo, do manejo de documentos às operações de tabela.

  • Atributos simplificados: Usa objetos para WP SET ATTRIBUTES para apicar formatação.
  • Tabelas flexíveis: WP TABLE APPEND ROW compatível com fórmulas e coleções.
  • Imagens: WP INSERT PICTURE retorna elementos de imagem e acessa argumentos 4D.File.
  • Inserção de conteúdo: WP INSERT DOCUMENT BODY foca só no conteúdo de documento.
  • Novas funções como This.sectionIndex e This.sectionName e This.pageIndex tornam o acesso ao documento algo direto,

4D View Pro

Excel import/export

Em 4D 20 R8, trabalhar com arquivos Excel em 4D View pro ficou mais eficiente que nunca. As novas opções de exportação no comando VP EXPORT DOCUMENT oferecem maior controle e permitem incluir ou excluir fontes linkadas, estilos e fórmulas. Pode congelar uma linha e cabeçalhos de coluna para manter formatação, incluir cálculo de dados para carregar o workbook mais rapidamente e estabelecer uma senha para dar segurança a seus arquivos exportados.

Já para a importação, o comando VP IMPORT DOCUMENT é compatível agora com opções avançadas que preservam formatação, estilos de célula e fórmulas, mantendo a integridade dos dados Excel originais. Isso significa menos trabalho de limpeza e maior integração em sua interface 4D View Pro.  Todas as funcionalidades de exportação e importação estão organizadas em um objeto $excelOptions, tornando seu código mais manejável e compatível com versões anteriores.

4D Netkit

Get user information from Google

4D 20 R8 torna mais rápido acessar informação de Google. Com as novas funcionalidades integradas, pode recuperar detalhes sobre usuários autenticados, perfis de dominio e contatos. Seja para interfaces de usuário ou emails automáticos, comandos simples como Google.user.getCurrent(), Google.user.list(), e Google.user.get() permitem acesso rápido para lidar com dados relevantes.

Segurança

assinatura cripto e verificação

Com 4D 20 R8, as funções 4D.CryptoKey.sign() e 4D.CryptoKey.verify() agora são compatíveis com blobs e textos, sem a necessidade de conversão entre formatos. Isso simplifica o workflow, permitindo assinar diretamente e verificar dados binários facilmente.

Sessão

gerenciamento de sessão simplificado para desenvolvimento e teste

Com 4D 20 R8, o objeto Session agora é funcional em aplicativos standalone e monousuário, sem a necessidade de remendos durante desenvolvimento e depuração. Oferece um objeto válido, ativando o gerenciamento de dados da sessão, restrições baseadas em permissões e teste de funcionalidades cliente/servdior – todas com um workflow simplificado.

construir aplicativos

construir aplicativos stand alone com facilidade

Construir aplicativos independentes não exige mais uma licença integrada. O que simplifica o processo e dá maior flexibilidade em lançar seus aplicativos. Quando usuários finais lançarem sua aplicação stand alone, podem registrar uma licença 4D Desktop com uma caixa de diálogo fácil de usar. Depois de registrados, licenças são armazenadas no sistema. Além disso, aplicativos stand alone com uma licença registrada não exigem mais o diálogo “sponsored” depois do fechamento – o que dá uma experiência de usuário melhor e mais profissional.

gerenciamento de Network

Nova classe para conexões TCP

4D 20 R8 introduz a nova classe TCPConnection, oferendo um maneira moderna orientada a objeto e assíncrona para manejar conexões cliente TCP. Oferece uma sintaxe atualizada e callbacks, tais como onConnection, onData e onError. Pode estabelecer conexões, enviar dados como blobs e manejar eventos.