Saltar para o conteúdo
Consultoria · Automação · Dados · Digital
← Blog

PowerApp Adicionar e Ler PDF

Incorporar documentos PDF no Powerapps

Para inserir um PDf na Aplicação Powerapp é necessario criar um fluxo.

O fluxo de automatização da Microsoft que permite tudo isto é tão simples como se segue:

Fluxo PowerAutomate:

Fluxopdf PowerApp Adicionar e Ler PDF
  1. É necessário criar um Fluxo instantâneo a partir do Powerapps. Comecei com um fluxo em branco e depois adicionei a ação “PowerApps – Trigger”
PDF1 PowerApp Adicionar e Ler PDF
1.É necessário criar um Flow que possa correr de forma instantanea a partir do PowerApps. Comecei com um Fluxo em branco e adicionei a ação “PowerApps – Trigger” para começar.

2. Sharepoint  – Get file content using path, aqui coloquei o caminho do ficheiro onde se encontra o PDF, depois de carregar onde diz “Ask in PowerApps”, temos o getfilecontent…

pdf2 PowerApp Adicionar e Ler PDF
pdf3 PowerApp Adicionar e Ler PDF

3. Resposta ao PowerApps, na verdade, só precisamos retornar as informações de arquivo corretas que o controle do Power Apps PDF Viewer entende.

Para que o valor do parâmetro do arquivo PDF retorne ao PowerApps, selecionamos Expression e onde aparece fx, colamos a seguinte expressão:

body(‘Get_file_content_using_path’)[‘$content’]

 

pdf4 PowerApp Adicionar e Ler PDF

Terminamos aqui o nosso fluxo.

No PowerApps:

Criar uma nova aplicação em PowerApps, depois disso já dentro do PowerApps, no Menu Action, vai a PowerAutomate e insere o Fluxo criado, basta carregar em cima e é inserido no PowerApps.

fluxopdf-1 PowerApp Adicionar e Ler PDF

Na aplicação, cria um formulário com o Botão que pretende abrir o PDF e outro formulário onde vai inserir o componente PDF Viewer (Experimental).

No primeiro formulário, onde tem o Botão que vai abrir o formulário seguinte, na propriedade On Select, o código é:

Navigate( ViewPDF, ScreenTransition.None, { { selecteditem_v: “name of your pdf without extension” } )

No formulário criado, onde tem o componente PDF Viewer (Experimental), na propriedade do formulário On Visible, vou criar uma variável que oculta o controlo do PDF Viewer enquanto o fluxo é executado para retornar o conteúdo do PDF. Quando o fluxo é concluído, defino a propriedade “loading_v” de volta para false, para que o PDF fique visível.

O código aqui é:

UpdateContext({ loading_v: true }); UpdateContext({ pdf_v: ‘name of your flow’.Run( Concatenate( First( Split( selecteditem_v.Name, “.” ) ).Result, “.pdf” ) ) }); UpdateContext({ loading_v: false })

No código acima, passo o nome do arquivo para o fluxo e crio e uso uma variável “pdf_v” que conterá o conteúdo do documento PDF retornado pelo fluxo.

O objetivo da função “Split” usada no código acima é remover a extensão do nome do arquivo original do nome do documento original e depois substituí-la por um nome de extensão do arquivo “.pdf”.

PDF PowerApp Adicionar e Ler PDF

Por fim, no controlo PDF Viewer, defino a propriedade “Document” como pdf_v.pdf e a propriedade Visible como !loading_v.

Da ideia à solução

Tem um desafio tecnológico ou digital para resolver?

Falamos sobre o contexto, identificamos opções e desenhamos uma abordagem pragmática.

Fale connosco
Show Buttons
Hide Buttons