Voltar

Integração do Power BI

Descubra como integrar o Power BI com Factorial .

Com o Power BI, pode obter informações valiosas a partir dos seus dados. Certifique-se de que tem o Power BI instalado num computador com Windows.

 

Ligar o Power BI ao Factorial permite consultar e analisar toda a informação da empresa exposta na API pública do Factorial.


 

Como integrar o Power BI com o Factorial

Utilizar a documentação disponível em https://apidoc.factorialhr.com/reference é o único método suportado para integrar o Power BI com o Factorial.

 

Primeiros passos

  1. No menu lateral, aceder a Definições. Descer até à secção Configuração avançada e clicar em Chaves de API. Criar uma nova chave de API.
  2. Abrir o Power BI Desktop e aceder ao editor Power Query.
    • Clicar em "Obter Dados" > “Mais” > “Consulta em branco”. Copiar e colar os 3 scripts do Power BI (ver abaixo) numa “consulta em branco”. Cada script corresponde a uma função (uma nova consulta).

3. Depois de criar as três funções: GetPage, GetAllPages e ListDataToTable, deve executá-las com a sua chave de API e o baseURL. O baseURL pode ser obtido na documentação da API pública do Factorial (Bem-vindo ao desenvolvimento com o Factorial). Para cada recurso (como Employees, ContractVersions, Shifts, etc.), deve invocar a função ListDataToTable passando a chave API e o URL do endpoint da API (por exemplo https://api.factorialhr.com/api/2024-10-01/resources/attendance/shifts). O resultado será uma tabela por recurso que poderá utilizar no seu relatório no Power BI. Quando tiver os recursos desejados, pode guardar as consultas com o botão “Guardar” para modificá-las mais tarde (por exemplo, para adicionar um novo recurso), e no fim clicar em “Fechar & Aplicar” para sair do editor Power Query. Com este passo, os dados ficam prontos para serem utilizados no Power BI.

4. Está feito! Agora pode visualizar os dados na Vista de Dados ou na Vista de Relatórios. Em ambas as vistas, utilize o menu lateral direito para adicionar colunas com base nas funções invocadas no passo 3.


 

Scripts Power BI

  1. Obter uma página de dados da API pública de um recurso - GetPage
= (baseURL as text, apiKey as text, page as number) =>
let 
    Url = baseURL & "?page=" & Text.From(page),
    Response = Json.Document(Web.Contents(Url,  [Headers=[#"x-api-key"= apiKey ]])),
    Data = Response[data],
    HasNextPage = Response[meta][has_next_page]
in
    [Data = Data, HasNextPage = HasNextPage]


2. Obter todas as páginas de forma recursiva - GetAllPages

= let
    Source = (baseURL as text, apiKey as text) =>
let 
  GetAllPages  = (baseURL as text, apiKey as text, page as number, AccumulatedData as list) =>
        let
            CurrentPage = GetPage(baseURL, apiKey, page),
            NewData = List.Combine({AccumulatedData, CurrentPage[Data]}),
            NextStep = if CurrentPage[HasNextPage] then @GetAllPages(baseURL, apiKey, page + 1, NewData) else NewData
        in
            NextStep,
     AllData = GetAllPages(baseURL, apiKey, 1, {})
 in AllData
in
    Source

3. Transformar os dados da lista numa tabela - ListDataToTable

= let
    Source = (baseURL as text, apiKey as text) =>
let
  TableData = Table.FromList(GetAllPages(baseURL, apiKey), Splitter.SplitByNothing(), null, null)
in TableData
in
    Source

Este artigo foi útil?

Give feedback about this article

Não consegue encontrar o que procura?

A nossa equipa de apoio ao cliente está aqui para si.

Contacte-nos

Knowledge Base Software powered by Helpjuice