Ir para conteúdo
  • 0

Conectar o Power BI ao API de uma empresa, só carrega 1000 linhas.


Rafael Matiazo

Pergunta

  • Alunos

Eu me conectei a um API com sucesso para verificar os apontamentos da produção (horas de trabalho).

Eu vi que a empresa tem entradas de apontamentos da produção em seu banco de dados desde 2012.

No entanto, é estranho que o Power BI carregue apenas 1000 linhas. Verifiquei que não é um problema do Power BI.

Anexei o arquivo pbix do Power BI das Entradas de tempo e capturas de tela para você conferir.

Talvez seja um problema de configuração da API para permitir o carregamento de apenas 1000 linhas.

Eu tentei ver varios videos no youtube e nao consegui achar uma solução:

O suporte da Empresa que administra o API me enviou a seguinte mensagem:

Our API does have a limit of 1000 records per call and up to 5 calls can be made per second, for a total of 5000 records per second.

You would need to automate the next call to be made in PowerBI if you wish to retrieve the next 1000 records.

1422706816_APICall.thumb.png.7483e940e5e707370418cc8c41029705.png 

Table 1000 rows.JPG

Count of Date.JPG

API Call.png

Time Entries_Dovico.pbix

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos

@Rafael Matiazo, vou tentar descolar um tempinho pra fazer, mas enquanto isso faz o seguinte, no meu site publiquei um projeto de estudo onde descrevi um pouco do passo a passo de como fiz a consulta https://www.gustavoandrade.net.br/projetos/consumindo-dados-da-api-da-marvel-com-power-bi/ e aqui nesse vídeo do Raphael foi onde usei como referencia para entender melhor https://www.youtube.com/watch?v=yc78DZnGhbQ.

Acho que vai te ajudar bastante.
No caso, você conseguiu fazer aí? retornou todos os registros?

 

  • Thanks 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Boa tarde @Rafael Matiazo

Você precisa criar a paginação, nesse anexo aí fiz um exemplo: Criei uma lista, repetir a requisição N vezes, pra isso seria bom informar a qtd de registros que existe (nao achei o parâmetro na API, aí no exemplo coloquei uns 10000).
Então vc converte sua consulta para função e chama essa função no sua tabela, na coluna contendo a 'pagina' (Dei o nome a essa tabela de loop no exemplo).
 

ALTERADO_TimeEntries_Dovico.pbix

  • Thanks 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
Em 11/04/2021 em 19:19, Gustavo G Andrade disse:

Boa tarde @Rafael Matiazo

Você precisa criar a paginação, nesse anexo aí fiz um exemplo: Criei uma lista, repetir a requisição N vezes, pra isso seria bom informar a qtd de registros que existe (nao achei o parâmetro na API, aí no exemplo coloquei uns 10000).
Então vc converte sua consulta para função e chama essa função no sua tabela, na coluna contendo a 'pagina' (Dei o nome a essa tabela de loop no exemplo).
 

ALTERADO_TimeEntries_Dovico.pbix 152 kB · 1 download

@Gustavo G Andrade Boa tarde, muito obrigado pela sua atenção.

Eu procurei no site do Dovico sobre a quantidade de registros. Eu achei este link abaixo. Não tenho certeza se esta é a informação necessária.

https://www.dovico.com/developer/API_doc/#t=API_Overview.html

Request Limits
By default API requests will be limited to 5 calls per second and 1000 results returned per call. This means 5000 records per second are returned for GET calls. Paging is implemented for methods that return more than 100 results so that the developer can request additional pages of information. When the page results are returned they will include the Previous Page URI and Next Page URI. If the Next Page URI returns the value of “N/A” then that’s the last page. There is a limit of 5MB of data per POST call. If you have more than 5MB of data to post you will need to make additional POST calls in 5MB increments.

Agora, neste link abaixo, fala sobre a Paginação que vc comentou na sua msg acima.

https://www.dovico.com/developer/API_doc/index.htm#t=API_calls_older%2FTime_Entries_v5.html%23Get all Time Entriesbc-1&rhtocid=_3_18_0

GET TimeEntries/

Returns a list of all Time Entries using pagination. This call does not include custom field information. Note: The Date Range Filter, Return Currency and $filter query strings can optionally be included with this request.

 

No caso eu precisaria levantar todos os registros de Time Entries desde 2012 até a data atual.

Eu tentei fazer os passos que vc citou acima, eu vi alguns videos do devAnalytics no youtube, mas nao consegui chegar no resultado.

Seria possível, vc gravar um vídeo mostrando os passos que vc fez? 

Segue o meu arquivo em anexo.

Abraços!

Time Entries.pbix

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...