4D Qodly Pro: O que há de novo no 4D 20 R10

Tradução automática de Deepl

4D 20 R10 já está disponível e oferece um novo conjunto de melhorias 4D Qodly Pro em todo o produto para estabilizar caraterísticas poderosas que já pode ter usado.

Configurar manipuladores HTTP é agora mais fácil do que nunca.

Ao renderizar uma página, partes de URL e parâmetros podem agora ser acedidos. E muitas melhorias irão ajudá-lo a oferecer aos seus utilizadores finais uma melhor compreensão dos seus percursos de utilizador e um feedback claro para cada uma das suas acções.

Continue a descobrir esta poderosa solução de desenvolvimento Web totalmente em partes de 4D, robusta e fácil de utilizar.

Crie aplicações Web comerciais com um esforço mínimo de codificação, tirando partido da lógica comercial existente que já implementou nas suas aplicações de ambiente de trabalho.

Vamos dar uma olhada mais de perto … Continue a ler!

Uma nova interface para manipuladores de HTTP

No post anterior do blogue Novidades, apresentámos a nova IU dos manipuladores de HTTP.

Relembrando rapidamente o que são manipuladores de HTTP

Você já deve ter lido este post do blog sobre manipuladores de HTTP.

Com a introdução de HTTP Request Handlers no Servidor HTTP 4D, pode definir com precisão qual lógica de negócios quer acionar com base em padrões específicos de URL de pedido.

a nova UI dos manipuladores http

Para oferecer uma experiência de usuário mais suave e intuitiva durante a configuração de seus handlers, essa UI foi melhorada.

o novo espaço de nomes Qodly

Um espaço de nomes Qodly está agora disponível por defeito. Contém fontes Qodly partilhadas:

  • Title (String): define um título de separador do browser personalizado
  • Location (Objeto): trata o conteúdo URL de uma página Qodly renderizada

blank

definir um título de separador do browser personalizado

Para dar aos seus utilizadores finais uma melhor compreensão de onde se encontram no seu percurso de utilizador, pode agora definir um título personalizado para o separador do navegador.

Antes, o título do separador era o nome da página atual da Qodly. Agora, graças à nova fonte partilhada Título da Qodly, tem controlo total sobre o título do separador do navegador.

No exemplo abaixo, é utilizada uma única página da Qodly: a página HealthCare. Esta contém um carregador de páginas que apresenta a página pretendida de acordo com as acções de navegação do utilizador.

Para evitar que o título do separador do browser apresente sempre“HealthCare”, pode agora definir um valor para a fonte Title Qodly em qualquer parte da sua aplicação.

exemplo

Na página Autenticação, quando a página é inicializada, o título é definido dinamicamente:

blank

A mesma abordagem aplica-se à página Pacientes e a outras páginas da sua aplicação:

blank

Aqui está o que parece em ação:blank

manipular o conteúdo do URL de uma página renderizada

Agora pode obter as partes da URL, parâmetros e âncora de uma URL de página Qodly renderizada graças àfonte Location Qodly (Object).

Isso funciona de forma similar à instância da classe 4D.IncomingMessage recebida como parâmetro pelos manipuladores HTTP.

blank

Por exemplo, esse tipo de URL pode agora ser tratado durante a renderização de uma página Qodly(por exemplo, a página Orders): http://127.0.0.1/$lib/renderer/?w=Orders&id=11

Graças à fonte do objeto Location, pode ser chamada uma função quando a página Orders é carregada para recuperar a encomenda com o ID 11:

blank

Como a fonteOrder é o elemento selecionado da matriz abaixo, essa encomenda é automaticamente selecionada.

blank

deslocação e seleção no componente de matriz

Uma nova opção de Comportamento de seleção está disponível para o componente de matriz para definir como a seleção se comporta quando os dados ligados à matriz são alterados.

blank

Estão disponíveis três opções:

  • Selecionar e deslocar para o primeiro elemento

Quando os dados são alterados, a matriz desloca-se para o primeiro elemento e seleciona-o.

blank

  • Selecionar e rolar o elemento atual

O elemento atualmente selecionado permanece selecionado e a matriz desloca-se para ele (se estiver incluído nos dados actualizados ligados à matriz)

blank

  • Sem seleção

Não é feita qualquer seleção automática. Se necessário, o programador deve selecionar manualmente um item utilizando funções ou acções padrão.

Quando a ligação de rede se perde

Perdeu-se a ligação de rede? Não é necessário código – agora é automático quando se processa uma página Qodly. Aparece uma mensagem quando a ligação cai…

blank

…e desaparece quando é restabelecida:

blank

em torno do seletor de datas

uma nova propriedade ativa para a fonte de dados dos intervalos

O componente de introdução de texto foi melhorado para entradas do tipo Data. Ao sugerir intervalos através de uma fonte Qodly ligada ao componente, pode agora ser utilizada uma nova propriedade booleana ativa.

Se esta propriedade for verdadeira ou não existir, o intervalo é aplicado. Se for falsa, o intervalo é ignorado – tal como se o activasse/desactivasse no painel Propriedades.

blank

Dada esta fonte Qodly de intervalos:

[
  {
    "include": true,
    "type": "range",
    "params": {
      "from": "2025-06-25",
      "to": "2025-06-30"
    },
    "active": false
  }
]

Como o intervalo é ignorado (ativo é Falso), todas as datas permanecem disponíveis:

blank

Agora, dada esta outra fonte de intervalos:

[
  {
    "include": true,
    "type": "range",
    "params": {
      "from": "2025-06-25",
      "to": "2025-06-30"
    }
  }
]

Uma vez que a propriedade ativa está em falta, é considerada Verdadeira e o intervalo é aplicado.

blank

a navegação no seletor de datas é mais fácil

Também vai apreciar a navegação mais fácil no seletor de datas.

blank

algumas propriedades foram renomeadas na fonte dos intervalos

Se estiver a utilizar qodlysources para intervalos com os seus componentes de introdução de texto de data, tenha em atenção que algumas propriedades foram renomeadas:

  • toDay –> today
  • startingfrom –> startingFrom
  • untilto –> until

Aqui está um exemplo:

[
  {
    "include": true,
    "type": "startingFrom",
    "params": {
      "today": true
    }
  }
]

UI inteligente para valores iniciais longos da fonte Qodly

O editor de valores iniciais da fonte Qodly foi melhorado para oferecer uma experiência de utilizador melhor e mais suave quando se trabalha com valores longos. Não precisa de pôr os óculos – é muito claro!

blank

PERSONALIZAR a barra de pesquisa no componente da caixa de seleção

A barra de pesquisa do componente da caixa de seleção pode agora ser estilizada utilizando novos selectores CSS:

  • fd-selectbox__search: para toda a barra de pesquisa
  • fd-selectbox__search__input: para o componente de entrada
  • fd-selectbox__search__icon: para o componente de ícone

Aqui está um exemplo de uma classe CSS que pode aplicar:

self {
	.fd-selectbox__search {
		 border-width: 0.5px;
                 border-color:  #1f5f93;
	}
	.fd-selectbox__search__input {
		background-color: #d5e7f6;
		font-size: 20px;
	}
	.fd-selectbox__search__icon {
		color:  #1f5f93;
	}
}

blank

atalho para editar uma condição guardada

Ao editar um estado, se este envolver uma condição guardada, existe agora um atalho para a editar diretamente.

blank

Precisa de uma atualização sobre estados? Leia esta publicação do blogue para (re)descobrir como lidar com uma IU dinâmica.

É isso aí!

Esperamos que todas estas melhorias o ajudem a criar aplicações web Qodly ainda melhores.

Fique ligado!

    Avatar
    • Proprietário do produto - Marie-Sophie Landrieu -Yvert entrou ao time 4D Product como Proprietária do Produto em 2017. Como tal, está a cargo de escrever as histórias dos usuários e depois traduzi-las em especificações funcionais. Seu papel também é garantir que a implementação da funcionalidade entregue cumpra com as necessidades do cliente. Marie-sophie se formou na Escola de Engenharia de ESIGELEC e começou sua carreira como engenheira da IBM em 1995. Participou em vários projetos (de manutenção e criação) e trabalhou como desenvolvedora de Cobol. Depois trabalhou como designer de UML e desenvolvedora de Java. Suas principais funções foram analisar e redigir requisitos funcionais, coordenar os times de negócio e de desenvolvimento.