Ebook Mastering Power Pages.A compreenshive Guide

Crie formulários HTML personalizados em Power Pages

O designer de formulário no espaço de trabalho Dados é idêntico ao usado para aplicativos baseados em modelo. Embora opere com base no princípio "o que você vê é o que você obtém" (WYSIWYG), o que é exibido é a versão do aplicativo baseado em modelo, não a versão do Power Pages.

Outra consideração é que quando se trata de ajustar o formulário além do layout básico de 2 ou 3 colunas, você fica com escolhas restritas.

Power Pages se destaca como uma excelente solução low-code para construção de sites. Mas a sua versatilidade não para por aí; os desenvolvedores profissionais podem se aprofundar com melhorias usando HTML, CSS e a API da Web Power Pages.

Ao aproveitar essas tecnologias, torna-se viável criar um formulário HTML personalizado para leitura, gravação e atualização de dados no Microsoft Dataverse. Isso lhe dá autonomia para moldar e configurar o formulário de acordo com suas preferências, contornando as limitações inerentes à configuração do aplicativo baseado em modelo.

Páginas avançadas de formulário personalizado

A metodologia pró-código é particularmente benéfica para situações que exigem especificações distintas ao inserir informações no Dataverse.

Para construir um formulário para geração de novos registros, siga estes passos:

  1. Crie um modelo da Web personalizado : isso serve como base para o seu formulário.

  2. Integrar um formulário HTML : Esta será a interface principal para os usuários inserirem dados.

  3. Ajustar configurações do site : especifique a tabela e as colunas relevantes para sua captura de dados.

  4. Implementar o código necessário :

    • Como resposta à ação 'enviar' no formulário HTML, extraia os dados de entrada e molde-os em um objeto.
    • Encaminhe este objeto para o Dataverse utilizando o Power Pages WebAPI.
  5. Incorpore estilo CSS : refine a aparência visual do seu formulário para torná-lo mais amigável e esteticamente agradável.

    Criando um modelo da web personalizado

    Para criar um modelo da web personalizado, um modelo de página e uma página da web, confira minha postagem recente usando Código do Visual Studio ou confira a documentação oficial em modelos web .

    Criando o formulário HTML para capturar dados

    Neste exemplo, construiremos um modelo web personalizado empregando Visual Studio Code.

    Inicialmente, precisamos estabelecer um formulário HTML básico, alinhando-o com os nomes lógicos dos campos da tabela do Dataverse destinados à criação ou atualização. Não é obrigatório que sejam iguais, mas contribui para a clareza e organização.

    Quem precisa de um copiloto?
    É aqui que ferramentas de IA como o ChatGPT são úteis. Você pode fornecer os parâmetros e solicitar que o ChatGPT gere um formulário HTML regular para você.

    Segue-se um exemplo de formulário HTML utilizado para criar um novo formulário de entidade para uma tabela na tabela do Dataverse.

     <form id="myForm">
     <label for="docs_name">Name:</label>
     <input type="text" id="docs_name" name="docs_name" required><br>
    
     <label for="docs_description">Description:</label>
     <textarea id="docs_description" name="docs_sessiondescription" required></textarea><br>
     
    <label for="docs_dateandtime">Data e hora:</label>
     <input type="datetime-local" id="docs_dateandtime" name="docs_sessiondateandtime" obrigatório><br>
    
     <label for="docs_duration">Duração (minutos):</label>
     <input type="number" id="docs_duration" name="docs_duration" obrigatório><br>
    
     <input type="submit" value="Enviar">
     </form>

    Defina as configurações do site para usar a API Web

    De acordo com a documentação da Microsoft, você precisará adicionar o apropriado configurações do site para permitir que a API Web crie novos registros no Dataverse. Você também precisará certificar-se de que as permissões de tabela corretas também estejam configuradas. No meu exemplo, escolho * para todos os campos, em um ambiente de produção, escolha apenas os campos necessários nas chamadas WebAPI, além de limitar o acesso aos dados usando permissões de tabela.

    Crie código Javascript para criar registros usando API Web em Power Pages

    Agora que temos nosso formulário, como podemos enviar as informações para o Microsoft Dataverse? É aqui que WebAPI de páginas avançadas vem a calhar.

    Você precisará adicionar o código auxiliar ( wrapper AJAX ) ao seu site e referenciá-lo no seu modelo da web (o código-fonte completo mostra isso).

    Aqui está um código da API Web do Power Pages que pegará os dados adicionados ao formulário e criará um novo registro no Dataverse quando a ação de envio do formulário for chamada:

     $('#myForm').submit(function(event) {
    
     event.preventDefault(); // Prevent the default form submission
    
     // Create a new record object from form data
     var record = {};
     record.docs_name = $('#docs_name').val(); // Text
     record.docs_description = $('#docs_description').val(); // Multiline Text
     record.docs_dateandtime = $('#docs_dateandtime').val(); // Date Time
     record.docs_duration = parseInt($('#docs_duration').val()); // Whole Number
    
    
     // Call the WebAPI helper function to create the record
     webapi.safeAjax({
     type: "POST",
     contentType: "application/json",
     url: "/_api/docs",
     data: JSON.stringify(record),
     success: function (data, textStatus, xhr) {
     var newId = xhr.getResponseHeader("entityid");
     console.log(newId);
     // Reset the form after successful submission
     $('#myForm')[0].reset(); 
    alert("Registro adicionado com sucesso."); //Adicione alertas porque eles são muito elegantes :)
     },
     erro: função (xhr, textStatus, errorThrown) {
     console.log(xhr);
     }
     });
     }

    Embora o ChatGPT possa produzir prontamente esse código, o Construtor REST do Dataverse oferece atualmente um método mais preciso para essa finalidade, garantindo que o código seja formatado corretamente.

    Você pode acessar o arquivo de código completo do modelo da web, chamado webapi-create-example.webtemplate.source.html, na minha página do GitHub .

    A função do código é ativada quando o formulário é enviado. Ele captura os dados de entrada e os incorpora em um novo objeto de registro.

    Esse objeto é então enviado ao Dataverse por meio da API Web. Se for bem-sucedido, o formulário será redefinido.

    Pode parecer um processo extenso apenas adicionar um registro ao Dataverse, mas esse método oferece um controle incomparável. Ele permite uma série de funcionalidades personalizadas que não são alcançáveis ​​com os formulários padrão baseados em modelos.

    Um toque de CSS para fazer o formulário parecer

    O código de estilo deve ser adicionado (de preferência como um arquivo CSS personalizado, mas eu o incorporei no modelo da web por preguiça).

    <estilo> _ _
        /* Ajusta os estilos conforme necessário */
     
        forma {
          largura máxima : 400px ;
          margem : 0 automático ;
          preenchimento : 20px ;
          borda : 1px sólido #042B3C ;
          raio da borda : 5px ;
          cor de fundo : #FEFEFE ;
    }
     
        rótulo {
          exibição : bloco ;
          margem inferior : 5px ;
          intensidade da fonte : Negrito ;
          cor : #042B3C ;
    }
     
        entrada [ tipo = "texto" ],
        área de texto ,
        entrada [ tipo = "datahora-local" ],
        entrada [ tipo = "número" ] {
          largura : 100% ;
          preenchimento : 8px ;
          borda : 1px sólido #042B3C ;
          raio da borda : 4px ;
          dimensionamento de caixa : caixa de borda ;
          margem inferior : 10px ;
          cor de fundo : #FEFEFE ;
          cor : #042B3C ;
    }
     
        entrada [ tipo = "enviar" ] {
          cor de fundo : #76BC21 ;
          cor : #FEFEFE ;
          preenchimento : 10px 20px ;
          borda : nenhuma ;
          raio da borda : 4px ;
          cursor : ponteiro ;
          intensidade da fonte : Negrito ;
    }
     
        entrada [ tipo = "enviar" ] :hover {
          cor de fundo : #FF4712 ;
    }
      </ estilo >

    Costurando tudo junto

    Depois que o código for escrito, crie um modelo de página e use-o para criar uma página da web. Lembre-se de criar e atribuir permissões de tabela para permitir que os usuários criem novos registros.

    O formulário deverá aparecer no site e os usuários com as permissões apropriadas deverão poder adicionar registros.

    Páginas avançadas de formulário personalizado

    Este exemplo mostra o poder disponível para desenvolvedores profissionais para estender o Power Pages além dos recursos de baixo código.

    Voltar para o blogue
    • ChatGPT Uncovered Podcast

      Podcast descoberto do ChatGPT

      Pedro Martins

      Podcast descoberto do ChatGPT Podcast descoberto do ChatGPT Explorando as fronteiras dos modelos de conversação de IA Episódio 1: Compreendendo o ChatGPT Publicado em: 15 de maio de 2023 Seu...

      Podcast descoberto do ChatGPT

      Pedro Martins

      Podcast descoberto do ChatGPT Podcast descoberto do ChatGPT Explorando as fronteiras dos modelos de conversação de IA Episódio 1: Compreendendo o ChatGPT Publicado em: 15 de maio de 2023 Seu...

    • Power Apps In-Depth Podcast

      Podcast detalhado do Power Apps

      Pedro Martins

      Podcast detalhado do Power Apps Podcast detalhado do Power Apps Explorando os recursos do Microsoft Power Apps Episódio 1: Introdução ao Power Apps Publicado em: 20 de abril de 2023...

      Podcast detalhado do Power Apps

      Pedro Martins

      Podcast detalhado do Power Apps Podcast detalhado do Power Apps Explorando os recursos do Microsoft Power Apps Episódio 1: Introdução ao Power Apps Publicado em: 20 de abril de 2023...

    • Exploring Power Pages Podcast

      Explorando o podcast Power Pages

      Pedro Martins

      Explorando o podcast Power Pages Explorando o podcast Power Pages Mergulhando no mundo das Power Pages da Microsoft Episódio 1: Primeiros passos com Power Pages Publicado em: 10 de março...

      Explorando o podcast Power Pages

      Pedro Martins

      Explorando o podcast Power Pages Explorando o podcast Power Pages Mergulhando no mundo das Power Pages da Microsoft Episódio 1: Primeiros passos com Power Pages Publicado em: 10 de março...

    1 de 3