Otimizando Conexão de Lista do Sharepoint com Feed OData

Neste artigo o dataholic Rafael Barbosa explica sobre duas formas de atualização de dados com a lista do Sharepoint através de testes com um cenário real de fluxo de trabalho. Boa leitura!

Atualização dos dados com a lista do Sharepoint é lenta??? Depende de como você se conecta nela, hoje eu conheço duas formas utilizando o conector de lista do Sharepoint ou utilizando Feed OData. Para descobrir qual é a melhor vamos aos testes.

Para testar vou utilizar uma lista de Sharepoint que é alimentada pelo Power Apps e faz parte de um processo do Power Automate, utilizando um cenário real de fluxo de trabalho. Com o Power Apps muitas pessoas utilizam a lista do Sharepoint, por ser um conector gratuito e com limite 30 milhões de linhas (olhar documentção para ver as limitações).

A lista utilizada terá 3 mil linhas, teoricamente deveria ser rápido, pois são poucas linhas, mas estou utilizando uma lista que está relacionada a outras e contém arquivos anexos. A atualização está levando cerca de 30min utilizando o conector de lista do Sharepoint.

Aqui fica clara a diferença, em vermelho estou utilizando o conector de lista do Sharepoint do Power BI, em amarelo estou utilizando o conector do Feed OData.

Para se conectar é preciso ajustar a URL para acessar o Sharepoint https://SitedoSharepoint/_vti_bin/listdata.svc

Pronto, somente com isso reduzi 98,1% o tempo da consulta da lista do Sharepoint.

Observação: ao utilizar esse método você irá notar que os nomes das colunas serão diferentes, e a estrutura da tabela também.

Eu não entendi porquê o conector padrão de Lista do Sharepoint tem esse problema de performance, depois de utilizar o Feed OData não sei a vantagem de utilizar o conector padrão de listas do Sharepoint. Se você souber, deixe nos comentários.

Uma forma de acessar sua diretamente sua lista é pelo link abaixo https:/SitedoSharepoint/_vti_bin/listdata.svc/NomedaLista

Próximos passos: também é possível utilizar parâmetros na url para que os tratamentos de dados sejam realizados na fonte, seguem alguns exemplos de Query Options.

Select (Selecionar as colunas que você quer trazer)

https:/SitedoSharepoint/_vti_bin/listdata.svc/NomedaLista?$select=coluna1,coluna2,…

TOP (as primeiras linhas exemplo 10 primeiras linhas)

https:/SitedoSharepoint/_vti_bin/listdata.svc/NomedaLista?$top=10

Filter (Filtrar dados)

https:/SitedoSharepoint/_vti_bin/listdata.svc/NomedaLista?$Filter=Coluna1 eq ‘item1’

Expand (Expandir colunas)

https:/SitedoSharepoint/_vti_bin/listdata.svc/NomedaLista?$Expand=Coluna1/SubColuna

Para quem quiser se aprofundar no assunto abaixo seguem os links das referências utilizadas.

Fonte:

Power BI: Two Way To Get Data From SharePoint List / Library

https://social.technet.microsoft.com/wiki/contents/articles/40040.power-bi-two-way-to-get-data-from-sharepoint-list-library.aspx

Get Your OData Here

https://powerbi.tips/2017/02/get-your-odata-here/

Some OData Tips

https://powerpivotpro.com/2019/02/some-odata-tips/

Documentação do FeedOData (com exemplos)

https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part2-url-conventions.html

Gostou desse conteúdo? Curta, comente e compartilhe. 💙