Com o Power BI, você pode obter insights dos seus dados. Certifique-se de ter o Power BI instalado em um computador com Windows.
Conectar o Power BI com Factorial permitirá consultar e analisar as informações da sua empresa. Esta primeira versão permite navegar por todos os funcionários e suas informações básicas.
Como integrar o Power BI com Factorial
O uso do site https://apidoc.factorialhr.com/reference é a forma preferida atualmente de integração com o Power BI.
Primeiros passos
- Na barra lateral, vá para Configurações, role para baixo até Configuração avançada e clique em Chaves de API. Crie uma nova chave de API.
- Vá para o PowerBI Desktop e abra o editor do Power Query.
- Clique em “Get Data” (Obter dados) > “More” (Mais) > “Blank Query” (Consulta em branco).
Copie e cole no editor de consultas em uma “consulta em branco” os 3 scripts do Power BI (veja abaixo). Cada script é uma função (uma nova consulta).
- Clique em “Get Data” (Obter dados) > “More” (Mais) > “Blank Query” (Consulta em branco).
3. Quando você tiver as três funções: GetPage, GetAllPages e ListDataToTable, você as invoca com sua apikey e baseURL. A baseURL foi obtida no site de referência da API pública da Factorial (Bem-vindo ao desenvolvimento com a Factorial!). Para cada recurso (como Employees, ContractVersions, Shifts, etc.), você invoca a função ListDataToTable passando a apikey e a URL do endpoint da API (como https://api.factorialhr.com/api/2024-10-01/resources/attendance/shifts). O que você obtém é uma tabela por recurso que pode ser usada posteriormente para criar seu relatório no PowerBI. Depois de obter os recursos desejados, você pode salvar essas consultas com o botão Salvar, caso queira modificá-las posteriormente (por exemplo, para adicionar um novo recurso) e, por fim, “Fechar e aplicar” para sair do Power Query Editor. Com essa etapa, seus dados estão prontos para serem usados no PowerBI.
4. Isso é tudo! Agora você pode visualizar os dados na Data View ou na Report View; em ambos os casos, use o menu do lado direito para adicionar colunas das funções invocadas na etapa 3.
Scripts do Power BI
1. Obter uma página de dados da API pública a partir 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. Recuperar recursivamente todas as páginas
= 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 em uma tabela
= let
Source = (baseURL as text, apiKey as text) =>
let
TableData = Table.FromList(GetAllPages(baseURL, apiKey), Splitter.SplitByNothing(), null, null)
in TableData
in
Source