Não encontrou o que procurava? Dê uma olhada nessas páginas!

Blog

Introdução aos Objetos Dinâmicos Web no DataFlex

13 de Julho de 2022
Por Dennis Piccioni

Fortaleça a segurança da aplicação, melhore a experiência dos usuários de forma fácil e automática

Com a introdução de Objetos Dinâmicos Web no DataFlex, os desenvolvedores podem facilmente aplicar o poder dos objetos dinâmicos em suas aplicações Web.

Exemplos de quando usar Objetos Dinâmicos Web incluem a criação:

  • experiências exclusivas do usuário da aplicação com base em quem está fazendo login
  • um dashboard personalizável
  • um questionário que se ajusta com base nas respostas dadas.

Para ajudar os desenvolvedores a tirar o máximo proveito dessa tecnologia para suas aplicações Web, vamos analisar os vários recursos disponíveis…

O básico

Para começar, um objeto é uma instância de uma classe. É um bloco de memória alocado dinamicamente que é definido por seu tipo de classe. Para utilizar a funcionalidade de uma classe, você a instância como um ou mais objetos. Leia o Help do DataFlex para obter mais informações sobre Objetos .

Objetos Dinâmicos referem-se a objetos DataFlex que são criados em tempo de execução e não em tempo de design. Mais especificamente, as propriedades reais desses objetos são carregadas apenas quando os objetos são inicializados pela primeira vez. Isso significa que as propriedades podem, por exemplo, ser armazenadas em um banco de dados e diferem por usuário para criar experiências de usuário únicas ao fazer login.

Objetos Dinâmicos Web referem-se a objetos dinâmicos que são instanciados em aplicações Web. Leia o Help do DataFlex para obter mais informações sobre como trabalhar com Objetos Dinâmicos Web .

Este painel de exemplo na aplicação de exemplo Plato demonstra o uso de Objetos Dinâmicos Web para mostrar conteúdo diferente para usuários diferentes:

plato dash v3

 Exemplo do mundo real

O desenvolvedor DataFlex, Dan Walsh, usou Objetos Dinâmicos Web para personalizar facilmente o login do usuário e as views do dashboard para o portal do cliente de um grande escritório de advocacia, evitando confusão e aumentando a segurança.

“A view de login por padrão é uma caixa de diálogo de login convencional, mas é reconfigurada para registrantes pela primeira vez”, diz Dan. “O portal tem diferentes funções para pré e pós login. Antes da introdução de Objetos Dinâmicos, ambas as views continham todos os objetos necessários que eram renderizados e/ou tornados visíveis usando configurações de propriedade. Agora, com o uso de Objetos Dinâmicos Web, esse processo é muito mais simples e seguro.”

Para ver como Dan implementou Objetos Dinâmicos Web, veja seu código-fonte antes e depois da implementação dos objetos dinâmicos e a apresentação que Dan fez na DISD Developers Conference em 2020, baixe este arquivo zip .

Imagem do Portal do Cliente demonstrando Objetos Dinâmicos Web:

h-s client portal v2.png.704x722.6

DataFlex Learning Center

O DataFlex Learning Center oferece várias videoaulas para desenvolvedores. Há duas lições e dois cursos que cobrem o tópico atual de interesse: TREINAMENTO Objetos Dinâmicos , Objetos Dinâmicos , Biblioteca de Objetos Dinâmicos e Objetos Dinâmicos Avançados .

As duas primeiras são sessões apresentadas no EDUC 2020 e fornecem uma visão geral do que são objetos dinâmicos, sua implementação para o ambiente web e exemplos de como usá-los em sua aplicação. O ambiente de desenvolvimento utilizado é o DataFlex 19.1, quando os objetos dinâmicos web foram introduzidos por meio de uma biblioteca separada.

Se o seu ambiente de desenvolvimento é o DataFlex 19.1, o curso Biblioteca de Objetos Dinâmicos é para você. Ele apresenta aos desenvolvedores a biblioteca que permite que os ambientes de desenvolvimento DataFlex 19.1 trabalhem com objetos dinâmicos Web. A biblioteca em si deve ser baixada separadamente do site .

Se você estiver usando o DataFlex 2021 ou superior, no entanto, a capacidade de trabalhar com Objetos Dinâmicos Web já está disponível no produto imediatamente. Após revisar as informações no Help do DataFlex recomendadas anteriormente e uma das lições que explicam a implementação de Objetos Dinâmicos Web, o curso Avançado de Objetos Dinâmicos demonstrará como criar, configurar e modificar Objetos Dinâmicos Web.

Exemplos DataFlex:

Para melhor demonstrar o uso de Objetos Dinâmicos Web em aplicações, alguns exemplos foram criados para permitir que os desenvolvedores explorem a mecânica desses objetos.

WebOrder

Para uma visão funcional de Objetos Dinâmicos Web no navegador, o exemplo WebOrder tem uma demonstração de objetos dinâmicos. Para acessar esse exemplo, inicie o DataFlex Studio e selecione para abrir a workspace WebOrder.

Primeiro, execute o exemplo e selecione Demo | Objetos dinâmicos para ver como os Objetos Dinâmicos Web são usados ​​nesta aplicação:

Web_Order_GUI

Em seguida, dê uma olhada no exemplo específico abrindo o DemoDynamicObjects.wo no Studio. Você verá a definição dos objetos em cWebDynamicObjectContainer e a implementação dos métodos de suporte que dão vida a esses objetos:

Workspace Explorer v2

Por fim, explore o código-fonte para ver como isso é feito pesquisando o cWebDynamicObjectContainer e colocando pontos de interrupção em diferentes áreas do código-fonte para observar os bastidores da estrutura de Objetos Dinâmicos Web (ver imagem grande ):

Web Order Code

Plato

Outro recurso que demonstra um exemplo funcional de Objetos Dinâmicos Web é o Plato, a aplicação de exemplo DataFlex 2021 baseado em SQL para um negócio de cromagem fictício. O Plato ilustra a variedade de recursos e funções necessários para administrar qualquer negócio e fornece aos desenvolvedores código-fonte completo e documentação a partir dos quais eles podem aprender como os requisitos de negócios são implementados no DataFlex.

Desenvolvido por Sture Andersen, o exemplo de Objetos Dinâmicos Web de Plato armazena configurações em uma tabela onde cada registro corresponde a um valor. Os valores serão representados por um objeto cWebForm, mas é possível especificar que um cWebCombo ou cWebCheckbox deve ser usado.

A funcionalidade é implementada em uma subclasse da classe cWebDynamicObjectContainer que também inclui métodos para salvar e recuperar dados.

Para ver o exemplo de Objeto Dinâmico Web de Platão em ação, primeiro leia Compreender e Usar Plato (PDF) e, em seguida, baixe e instale a aplicação completa Plato . (Observe que você deve ter o DataFlex 2021 Studio instalado.)

Depois de instalar a workspace Plato, execute a aplicação de exemplo fazendo login como John (senha John).

No menu hamburguer no canto superior esquerdo, selecione "Configurações" e depois "Configurações Plato".

A interface que você verá é gerada dinamicamente com base nos parâmetros configurados em PlatoSettingsManager.pkg:

Plato data admin v2

Em seguida, abra o arquivo PlatoSettingsManager.pkg para ver como isso corresponde à interface do usuário (ver imagem grande ):

Plato source v2

Por fim, localize o objeto da classe oPlatoSettingsView (Ctrl+Shift+F) onde você pode definir um breakpoint em "Send LoadSettings" no procedimento OnLoad. Dando um único passo, você pode aprender observando a execução do código.

Resumo

Como você pode ver, Objetos Dinâmicos Web é uma ferramenta muito versátil e poderosa para os desenvolvedores DataFlex terem em sua caixa de ferramentas!

Para discutir este tópico com outros desenvolvedores, visite o fórum DataFlex Aplicações Web & Mobile .

Enquanto estiver no fórum DataFlex , aproveite a oportunidade para explorar outros tópicos e participar de discussões de desenvolvedores online sobre o desenvolvimento de aplicações de negócios mobile, web e Windows.