Transformando o SharePoint em um sistema inteligente com Power Platform
O SharePoint é uma poderosa ferramenta de colaboração e armazenamento de dados, amplamente adotada para gestão de documentos e trabalho…
Nesta postagem do blog, mostrarei como fazer upload de um arquivo do Power Pages para uma biblioteca de documentos do SharePoint. Esta postagem ajudará os desenvolvedores do Power Platform a superar as limitações de interação com a Biblioteca de Documentos do SharePoint ou outros repositórios de arquivos sem a necessidade de configurar a Integração de Documentos do SharePoint com o Dataverse.
Pode haver muitos cenários em que a integração de documentos do SharePoint não seja uma opção viável e o requisito da solução seja carregar um arquivo de uma configuração do Power Pages e carregá-lo posteriormente no SharePoint/GitHub ou outros repositórios. Tudo o que você precisa é de um fluxo do Power Automate que funcione como uma camada de conexão entre a página externa e a Biblioteca de Documentos do SharePoint.
Como fazer upload de documentos do Power Pages/Power Apps Portals para uma lista/biblioteca do SharePoint? Salvar documentos do Power Pages no SharePoint/GitHub/Conta de armazenamento/Outros repositórios? Como passar um arquivo do Power Pages para o Power Automate?
Para resolver esse problema, você pode usar o código JScript que envia o arquivo e o carrega para sua biblioteca de documentos.
A transferência de documentos acontecerá nesta direção:
Origem (Página Externa do Power Pages) -> Power Automate -> Destino (Biblioteca de Documentos do SharePoint).
A primeira parte é configurar a Biblioteca de Documentos do SharePoint. Você pode escolher uma biblioteca existente ou criar uma nova.
A segunda parte é o fluxo do Power Automate Cloud para capturar o arquivo e salvá-lo na Biblioteca de Documentos do SharePoint.
Para extrair o arquivo e salvá-lo no local desejado, neste caso Biblioteca de Documentos do SharePoint. As etapas abaixo mostram como definir esta configuração:
A primeira etapa para configurar o Power Automate é o acionador. Como esta solicitação será feita a partir da página externa, o gatilho será “Quando uma solicitação HTTP for recebida” do conector “Solicitação”. Mantenha o “esquema JSON do corpo da solicitação” em branco.
A segunda etapa é inicializar uma variável para armazenar o nome do arquivo. O fluxo aceitará entradas da página personalizada do Power Pages usando Form Multi-parts. Use a expressão abaixo para extrair o nome do arquivo.
triggerMultipartBody(1)[‘$content’]
A terceira etapa é criar um arquivo na biblioteca de documentos do SharePoint. Passe a variável Nome do Arquivo na propriedade Nome do Arquivo. Passe a expressão abaixo no Conteúdo do Arquivo.
base64toBinary(triggerMultipartBody(0)[‘$content’])
A quarta etapa é configurar a resposta para que a página personalizada saiba se a solicitação foi bem-sucedida ou não. Para isso, serão adicionadas duas ações de resposta em um ramo paralelo. A configuração será conforme abaixo:
Se desejar, você pode adicionar outras ações no fluxo da nuvem antes de enviar a resposta com base no requisito.
Aqui que existe o controle de upload de arquivo na página. O código abaixo serve para incluir os seguintes componentes na configuração HTML:
1 | <!–Heading to show success message–><h6 id=”uploadsuccess” style=”color: green;”></h6> <!–Heading for Title–> <h3 style=”color:black”><b>Upload document to SharePoint Document Library</b> </h3> <!–Input control–> <div style=”padding-top:30px”> <input type=”file” id=”file_upload” style=”margin-top: 10px;display:inline-block;padding: 8px;”></input> </div> <!–button to upload the document–> <button onclick=”uploadDocument()” style=”margin-top: 30px;” class=”btn-primary”>Upload File </button> |
O script a seguir precisa ser adicionado à página para fazer uma chamada ao fluxo:
1 | <script> function uploadDocument() { var files = document.getElementById(‘file_upload’).files; if (files.length == 0) { alert(“Please choose any file…”); return; } var file = files[0]; var filename = files[0].name; var form = new FormData(); form.append(“”, file, “”); form.append(“filename”, filename); $.ajax({ method: “POST”, url: ‘https://prod-11.centralindia.logic.azure.com:443/workflows/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=xxxxxxxxxxxxxxxxxxxxxxxxxxx’, timeout: 0, processData: false, parametermimeType: “multipart/form-data”, contentType: false, data: form, success: function(result) { if (result == “Uploaded”) { $(‘#uploadsuccess’).html(“File uploaded successfully.”) })} < /script> |
Agora você pode testar a implementação.
Nesta postagem vimos como fazer upload de documentos da página personalizada do Power Pages para a Biblioteca de Documentos do SharePoint.
O SharePoint é uma poderosa ferramenta de colaboração e armazenamento de dados, amplamente adotada para gestão de documentos e trabalho…
O SharePoint Framework (SPFx) é um modelo de desenvolvimento baseado em cliente que permite criar soluções modernas e personalizadas para…
À medida que as organizações adotam cada vez mais o SharePoint Online para soluções de ambiente digital, a necessidade de…