unit-code
1

Situação da stage

A stage guarda os pontos em formato longo (unit × tag × granularidade × data/hora → valor) na tabela stage_pontos — pronta para Excel e Power BI (aba Ajuda).

2

Batch diário

O batch entende sozinho o último dado buscado e roda dali até o momento atual — hora e dia refazem o dia anterior (fechado, valor final) e o dia em andamento; o mês refaz o mês anterior e o corrente. Nada além disso é varrido e nada duplica. Consolida as tags marcadas como ativas na lista abaixo; a execução manual (inclusive de tags específicas) fica na aba Execução.

3

Conexão e credenciais

Token e code ficam guardados no banco e nunca são exibidos nesta tela. Preencha os campos apenas para cadastrar ou substituir.

4

Tags da unidade

A coluna ativa define o que o batch diário consolida. As demais colunas mostram a consolidação no banco: quantos pontos e qual período cada tag cobre, por granularidade.

Substituir a lista de tags (avançado)

Uma tag por linha, formato tagCode;Nome. Substitui a lista inteira; a marcação de ativas é preservada para os códigos que continuarem.

5

Usuários do portal

Perfil admin acessa tudo; perfil operação vê apenas Execução, Consulta, Exportação e Ajuda — ideal para o cliente acompanhar e consultar sem tocar nas configurações. As senhas são guardadas com hash no banco.

1

Executar batch agora

O batch parte do último dado no banco e reprocessa o período em andamento — pode rodar quantas vezes quiser, nada duplica. O campo "Início do histórico" só é usado quando a unidade ainda não tem dados (primeira carga). Falha em uma tag não interrompe as demais (status "parcial" lista os erros).

2

Execuções

1

Consultar a stage

1

Tags a exportar

0 tags
2

Período e formato

O arquivo é gerado a partir da stage — sem chamadas à API, em segundos. Período vazio exporta tudo o que está consolidado. Se precisar do dado mais recente, rode antes o batch na aba Execução.

?

Como consumir os dados da stage

O modelo

A tabela stage_pontos guarda os pontos em formato longo — uma linha por medição:

unit | tag_code | granularidade | ts | valor | company | atualizado_em
002  | ENERGIA_BRUTA | hora | 13-08-2026 14:00:00 | 3.42 | BIOSUL | 14-08-2026 02:07:11
  • granularidade: janela de agregação — hora (um valor por hora), dia (por dia) ou mes (por mês — ts no dia 1º).
  • ts: rótulo do período, exibido como dd-mm-aaaa hh:mm:ss — os dados já vêm tratados da plataforma, sem nenhuma conversão (batem 1:1 com o Postman). No banco a coluna é datetime; filtros SQL usam a forma padrão, ex.: '2026-08-01'.
  • stage_tags: nome amigável, ordem e flag "ativa" de cada tag; batch_execucoes: histórico das cargas.
  • O batch diário atualiza a partir do último valor — o mesmo ponto rebuscado é sobrescrito, nunca duplicado.

Power BI (conexão direta ao banco)

  1. Obter Dados → Banco de dados PostgreSQL.
  2. Servidor: <host-deste-servidor>:5433 · Banco: intelup.
  3. Usuário somente-leitura: leitura · senha: leitura.
  4. Selecione stage_pontos (e stage_tags, se quiser os nomes) — ou use uma consulta SQL:
SELECT p.tag_code, t.nome_tag, p.ts, p.valor
FROM stage_pontos p
LEFT JOIN stage_tags t ON t.unit = p.unit AND t.tag_code = p.tag_code
WHERE p.unit = '002' AND p.granularidade = 'hora'
  AND p.ts >= '2026-08-01' AND p.ts < '2026-09-01'
ORDER BY p.ts, p.tag_code;

Excel (Power Query, sem instalar driver)

Dados → Obter Dados → De Outras Fontes → Da Web, com a URL de consulta em CSV:

http://<host-deste-servidor>:8990/api/stage/consulta?unit=002&gran=hora&ini=2026-08-01&fim=2026-09-01&formato=csv&limite=200000

Ou cole no Editor Avançado (a atualização passa a ser 1 requisição — segundos, não minutos):

let
  F = Web.Contents("http://<host>:8990/api/stage/consulta",
        [Query=[unit="002", gran="hora", ini="2026-08-01", fim="2026-09-01",
                formato="csv", limite="200000"]]),
  T = Csv.Document(F, [Delimiter=";", Encoding=65001]),
  P = Table.PromoteHeaders(T)
in
  P

Para visão pivotada (horas nas colunas), use Transformar → Coluna Dinâmica sobre valor — ou simplesmente baixe o arquivo pronto na aba Exportação XLSX/CSV. Quem preferir conexão direta ao banco no Excel: instale o driver ODBC do PostgreSQL (psqlODBC) e use Dados → Obter Dados → ODBC.

Parâmetros da consulta web (/api/stage/consulta)

  • unit (obrigatório) · gran: hora | dia | mes.
  • tags: lista separada por vírgula (vazio = todas) · ini/fim: datas — na URL o fim é exclusivo; nas telas os campos "Até"/"Fim" já são inclusivos.
  • formato: json (padrão) ou csv (separador ";", decimal vírgula) · limite: máx. 200000 linhas.

Datas e horários

  • Datas no formato dd-mm-aaaa e horas hh:mm:ss (24h) em todas as telas e arquivos.
  • Os rótulos de data/hora são os fornecidos pela plataforma — os dados já vêm tratados na origem; nenhuma conversão é aplicada.
  • Apenas o horário do batch diário (Configurações) é informado no relógio de Brasília.

Batch diário

  • Roda uma vez por dia, no horário de Brasília configurado, partindo automaticamente do último dado buscado: hora e dia refazem o dia anterior (que fechou com valor final) e o dia em andamento; o mês refaz o mês anterior e o corrente até o momento.
  • Consolida as tags marcadas como ativas em Configurações. Administradores podem, na aba Execução, rodar manualmente todas ou só um subconjunto — e fazer a primeira carga de uma unidade nova informando o "início do histórico"; o perfil operação acompanha as execuções.
  • Usa as credenciais guardadas no banco (Configurações › Conexão e credenciais — nunca exibidas).
Datas em dd-mm-aaaa e horas com segundos (24h); rótulos como a plataforma fornece, sem conversões. A stage é a fonte única: o batch diário alimenta o banco, e consultas/exportações leem dele — sem novas chamadas à API.