Função PDF do Power Apps: criar, visualizar e baixar PDF

Por Luiz Antonio Sgargeta
Função PDF do Power Apps: criar, visualizar e baixar PDF

A nova função PDF do Power Apps pode gerar um documento PDF a partir de qualquer tela ou controle. Torna a tarefa de criação de PDFs muito simples e requer apenas uma licença padrão. Depois que o PDF for gerado, poderemos visualizá-lo e baixá-lo diretamente do próprio aplicativo. Neste artigo vou mostrar como usar a função PDF do Power Apps.

Insira um contêiner vertical

Um PDF não pode ser gerado para um formulário de edição do Power Apps, portanto, devemos usar uma solução alternativa. Podemos colocar um Formulário de Edição dentro de um contêiner e, em vez disso, criar um PDF com o conteúdo do contêiner. Abra o Power Apps Studio e crie um novo aplicativo do zero. Insira um recipiente vertical na tela.

Faça o contêiner vertical preencher a tela, fornecendo esses valores às seguintes propriedades.

Height: App.Height
Width: App.Width
X: 0
Y: 0

Defina a propriedade LayoutAlignItems com esse valor para que eles preencham a largura do contêiner.

LayoutAlignItems.Stretch

Adicione um rótulo ao contêiner para usar como barra de título. 

Adicionar um formulário do Power Apps ao contêiner vertical

A seguir, criaremos um formulário de edição para exibir informações da ordem de serviço. Abra a guia Dados no menu de navegação esquerdo e adicione a lista de Ordens de Serviço do SharePoint como fonte de dados.

Insira um formulário de edição no contêiner vertical. Selecione a lista Ordem de Serviço do SharePoint como fonte de dados.

Atualize o Formulário de Edição para usar um layout vertical com apenas 1 coluna.

Habilitar o recurso experimental da função PDF do Power Apps

A função PDF do Power Apps é um recurso experimental e não está habilitado por padrão. Para usá-lo, vá para o menu Configurações, selecione os próximos recursos e ative a configuração da Função PDF.

Gere um PDF do formulário do Power Apps

Quando o usuário clica em um ícone de PDF ele gera o PDF e navega para uma tela com visualizador de PDF. Adicione um ícone de PDF à barra de título do aplicativo.

Em seguida, escreva este código na propriedade OnSelect do ícone .

O primeiro argumento para a função PDF do Power Apps informa de qual tela ou controle gerar um PDF. O segundo argumento pode ser usado para passar valores opcionais para controlar o tamanho, orientação, margens e DPI do PDF. Aqui usaremos o parâmetro ExpandContainers para garantir que o contêiner se expanda para mostrar quaisquer controles ocultos ou fora da tela.

Set(
    varOrdemServicoPDF,
    PDF(
        FormCnt,
        {ExpandContainers: true}
    )
);

Navigate('PDFScreen');

Visualize o PDF no Power Apps

Precisamos fazer outra tela para exibir o PDF. Crie uma nova tela chamada Tela do visualizador de PDF . Adicione um rótulo azul escuro para uma barra de título e insira um ícone de seta para a esquerda no canto superior esquerdo.

Use este código na propriedade OnSelect do ícone de seta para a esquerda para navegar de volta à tela anterior.

Set(varWorkOrderPDF,Blank());
Navigate('FormCnt')

Adicione o PDF Viewer para controlar a tela. Posicione o controle PDF Viewer de forma que ele preencha o espaço restante na tela.

Use este código na propriedade document do PDF. O documento PDF agora será exibido no visualizador de PDF.

varOrdemServicoPDF

Teste o recurso que criamos para gerar e visualizar um PDF no Power Apps. Deveria ser assim.

Crie uma biblioteca de documentos do SharePoint para armazenar arquivos PDF

Queremos criar a capacidade de baixar o arquivo PDF diretamente do Power Apps. Para fazer isso, precisamos de um local para armazenar temporariamente o arquivo PDF. Crie uma nova biblioteca de documentos do SharePoint chamada PDFs exportados . Nenhuma configuração adicional é necessária além da criação da biblioteca de documentos.

Crie um fluxo para baixar arquivos PDF de uma biblioteca de documentos do SharePoint

Para baixar o arquivo PDF devemos fazer um fluxo para armazenar o arquivo PDF no SharePoint e depois retornar um link de download do arquivo para o aplicativo. Abra o Power Automate, crie um novo fluxo chamado Baixar PDF do Power Apps e configure o fluxo conforme mostrado na imagem abaixo. Defina o parâmetro de entrada Arquivo PDF como obrigatório .

Use este código na propriedade Nome do Arquivo da ação SharePoint – Criar Arquivo.

triggerBody()?['file']?['name']

Um link para o arquivo PDF no SharePoint abre-o no visualizador de documentos do SharePoint. No entanto, queremos realizar um download direto do arquivo PDF. Podemos usar esse URL especial para ignorar o visualizador de documentos do SharePoint e baixar o arquivo. Preencha todas as tags <> com seus próprios valores.

https://<tenantname>.sharepoint.com/sites/<site collection title>/_layouts/15/download.aspx?SourceUrl=/sites/<site collection title>/<file path with the library name>

Baixe o PDF diretamente do Power Apps

Agora que o fluxo do Power Automate foi concluído, volte para o Power Apps Studio e adicione o fluxo Baixar PDF do Power Apps ao aplicativo.

Insira um ícone de botão Salvar no canto superior esquerdo da tela do PDF Viewer.

Em seguida, adicione este código à propriedade OnSelect do ícone salvar. A função Download baixa um arquivo da internet para o dispositivo do usuário. Obtemos o endereço da Web do arquivo retornado na propriedade path do fluxo Baixar PDF do Power Apps .

Download(
    DownloadPDFFromPowerApps.Run(
        {
            name: $"WorkOrder_{Text(
                Now(),
                "yyyymmddhhmmss"
            )}.pdf",
            contentBytes: varOrdemServicoPDF
        }
    ).path
);

Teste o PDF de download concluído do recurso Power Apps. 

Entre em contato ainda hoje e veja como nossos especialistas Power Platform podem ajudar o seu negócio.

Ver mais artigos

Entre em Contato

Vamos juntos transformar sua dor
em solução!

#moveFast