Painéis da plataforma — Gerenciador, construtor e Painel de Processos
Antes, cada painel vivia num canto diferente da plataforma — e era fácil perder de vista o que já existia, ou montar um painel que sumia ao sair da tela. Hoje existe um único lugar para ver todos os painéis — o Gerenciador de Painéis — e um único construtor de painéis de canvas, com persistência garantida e pré-visualização com dados reais. Você encontra, abre, cria e edita qualquer painel da plataforma sem procurar em menus diferentes.
O que você encontra
- Um único construtor — todo painel de canvas é criado, editado e visualizado no mesmo construtor: canvas de 12 colunas com arrastar e redimensionar, widgets de métrica, tabela, filtro e busca, e fontes Neo4j (grafo), OpenSearch (índices), Trino (tabelas) ou banco externo via Agente JDBC. O painel montado é interativo: filtros e busca aplicam nos widgets da mesma fonte, tabelas ordenam por clique no cabeçalho e paginam, e ações de linha podem abrir um processo BPM com a chave de negócio interpolada dos dados da própria linha.
- Gerenciador de Painéis — em , uma lista única com os painéis nativos da plataforma (selo Plataforma), os painéis de canvas de cada workspace e os dashboards do DATTABI (selo Dashboard BI), com busca e ações.
- Visualizador somente leitura — qualquer painel de canvas abre em modo de visualização, com dados reais e sem ferramentas de edição.
- Painel nativo por tipo de contexto — cada workspace recebe o painel nativo do tipo do contexto de dados que ele agrupa: contexto de processo judicial abre o Painel de Processos; contexto de dossiê cadastral abre o Painel de Onboarding PJ (a lista de dossiês PJ por CNPJ) e o Pendências de Compliance (certidões e critérios pendentes). O vínculo é criado e corrigido automaticamente, inclusive em instalações antigas, sem nenhuma migração manual.
Ver todos os painéis da plataforma
- Acesse . A trilha de navegação mostra
DATTA > Sistema > Contextos > Paineis. - O Gerenciador de Painéis carrega o catálogo de painéis e a lista de workspaces em paralelo, então a tela abre inteira de uma vez. Use a busca para filtrar por nome ou workspace.
- Cada linha mostra o título, o workspace de origem e o selo do tipo: Plataforma para os painéis nativos, gerenciados pelo sistema, e Dashboard BI para dashboards do DATTABI.
Enquanto carrega, a tela mostra o indicador de progresso; sem nenhum painel, mostra o estado vazio; e qualquer falha aparece como aviso amigável em português, nunca como erro técnico.
Abrir um painel (somente leitura)
- Clique em Abrir na linha do painel.
- Painéis de canvas abrem no visualizador, com dados reais e barra reduzida: título do painel, Atualizar (reroda a pré-visualização) e Abrir no construtor. A paleta de widgets, o painel de propriedades e os botões de edição não aparecem, e a pré-visualização roda sozinha assim que o painel termina de carregar.
- Painéis nativos navegam para a tela correspondente dentro da própria aplicação; dashboards de BI abrem no DATTABI.
Esse mesmo visualizador é usado pelo atalho de painéis da tela inicial. Há ainda um modo sem moldura (embed=1), criado para os cartões da galeria "Painéis" do workspace (ver Workspaces: dashboards do DATTABI e filtro por contexto): ele esconde a barra inteira e já implica somente leitura.
Criar um painel novo
- Clique em Novo Painel, escolha o workspace de destino, informe o título (ex.: "Visão Geral dos Processos") e uma descrição opcional.
- Confirme — o painel é criado e abre direto no construtor.
- Monte os widgets (métrica, tabela, filtro, busca), escolha a fonte, os campos e a agregação: contagem (
COUNT), contagem distinta (COUNT_DISTINCT), soma (SUM), média (AVG), mínimo (MIN) e máximo (MAX). - Use Pré-visualizar para ver os números com dados reais e Salvar para gravar.
Filtros e busca vivos
- O widget filtro escolhe um campo da fonte; em modo de visualização ele vira um seletor com os valores reais daquele campo ("Todos" limpa). O valor escolhido filtra todos os widgets da mesma fonte (mesmo tipo + recurso).
- O widget busca declara em quais campos o texto procura; a busca é aplicada com "contém", sem diferenciar maiúsculas, nos widgets da mesma fonte.
Enteratualiza. - O filtro por widget (campo "Filtro" da métrica) continua existindo e é combinado com E ao filtro do painel.
Tabelas: ordenação, paginação e ações
- Clique no cabeçalho de uma coluna para ordenar (segundo clique inverte).
- "Linhas por página" controla a paginação (‹ › no rodapé).
- Ações de linha: cada ação é um botão por linha —
Linknavega para uma URL com valores da linha interpolados (${campo}), eAbrir BPMcria uma instância do processo publicado com chave de negócio, título e variáveis da linha. - Processo BPM (status por linha): informando o nome do modelo publicado e o template da chave de negócio, a tabela ganha a coluna "Processo" com o estado da instância correspondente (clicável — abre o Process Monitor). A mesma chave faz o botão "Abrir BPM" sumir quando já existe tratamento.
Publicar na galeria
Marque Publicar na galeria na barra do construtor e salve. Sem a marca, o painel continua acessível apenas pelo Gerenciador de Painéis.
O construtor de painéis está em preview. Enquanto estiver, painéis de canvas não aparecem na galeria "Painéis" nem no atalho de painéis da tela inicial, mesmo marcados como publicados — essas superfícies mostram só os painéis nativos da plataforma e os dashboards do DATTA BI. A marca continua valendo e passa a ter efeito quando o construtor sair de preview; até lá, o caminho para abrir um painel de canvas é o Gerenciador de Painéis.
Editar um painel existente
- Painéis de canvas: Editar abre o construtor.
- Dashboards de BI: Editar abre o editor do DATTABI.
- Painéis nativos (selo Plataforma) não são editáveis — o conteúdo é gerenciado pela plataforma, e a tela avisa em português se você tentar.
Links configurados em painéis passam por validação antes de abrir: só endereços http/https ou relativos são aceitos, o que bloqueia endereços maliciosos do tipo javascript: e data:.
Por que existe um só construtor
Existiam dois construtores de painéis. O antigo, na entrada , montava cartões de indicador por descoberta interativa sem persistência — o usuário perdia tudo ao sair da tela. O outro, o construtor de workspaces, era o construtor real: canvas, pré-visualização com dados reais e persistência. Como as capacidades do primeiro eram um subconjunto das do segundo, a unificação retirou o construtor fraco em vez de fundir código.
Hoje "Contextos → Painéis" é uma tela fina de gerenciamento sobre o catálogo de painéis da plataforma — o mesmo catálogo que alimenta o atalho de painéis da tela inicial e o menu lateral (ver Workspaces: dashboards do DATTABI e filtro por contexto). Além dos painéis de canvas e dos dashboards de BI de cada workspace, esse catálogo traz as entradas nativas do registro de painéis da plataforma.
Painel nativo escolhido pelo tipo do contexto
O painel nativo de um workspace não é fixo: ele é escolhido pelo tipo do contexto de dados que o workspace agrupa.
| Tipo do contexto | Painel nativo | O que ele mostra |
|---|---|---|
| Processo judicial | Painel de Processos | triagem e auditoria de processos judiciais |
| Dossiê cadastral | Painel de Onboarding PJ | lista de dossiês PJ com razão social, CNPJ, documentos, fase do fluxo e resultado da triagem |
| Dossiê cadastral | Pendências de Compliance | certidões vencidas e critérios pendentes dos dossiês, com tratamento em processo BPM |
| Demais tipos | nenhum painel nativo | o workspace mostra apenas seus painéis de canvas e dashboards de BI |
Um tipo de contexto pode ofertar mais de um painel — é o caso do dossiê cadastral, que traz dois cartões. Um workspace que agrupa contextos de tipos diferentes recebe os painéis de cada tipo. Um workspace cujo tipo não tem painel nativo declarado não recebe cartão nenhum — antes recebia o painel de processos judiciais mesmo quando o contexto era de dossiê cadastral, e a tela abria com a lista errada.
Ao trocar os contextos de um workspace (aba Contextos do gerenciador de workspaces), o vínculo com o painel nativo é ajustado na mesma gravação: a referência antiga é trocada, nunca duplicada. Painéis de canvas e painéis vinculados a mão continuam intactos.
Os cartões de dossiê cadastral só são oferecidos a quem tem permissão para consultar dossiês PJ — a mesma permissão que já esconde o item "Onboarding PJ" no menu lateral, e que os dois painéis exigem para ler os dados. Sem ela o cartão não aparece em lugar nenhum (galeria, atalho de painéis da tela inicial ou gerenciador), em vez de aparecer e abrir sem acesso.
Contexto cadastrado antes do campo "tipo de contexto" existir fica sem tipo conhecido. Nesse caso o painel já vinculado é preservado como está — sem tipo não há decisão, e apagar o painel que o usuário já usa seria pior que mantê-lo. Basta editar o contexto e informar o tipo para a escolha passar a valer.
Criação automática e correção na subida
O seed de workspaces roda na inicialização da plataforma, é best-effort (uma falha de seed nunca derruba a subida do sistema) e idempotente por nome:
- Instalação nova — cria o workspace "Processos" já com o painel de canvas "Painel de Processos" e com o vínculo ao painel nativo do tipo do contexto.
- Instalação existente — localiza o workspace "Processos" pré-existente e adiciona o painel de canvas que faltar (checagem por título, sem diferenciar maiúsculas). Painéis criados pelo admin nunca são tocados.
- Correção do vínculo nativo — na mesma subida, todo workspace cujo painel nativo não corresponde ao tipo do seu contexto tem a referência corrigida (o workspace de dossiê cadastral deixa de apontar para o painel de processos judiciais). A correção é idempotente: rodar de novo não duplica nada, e o log registra quantos workspaces foram corrigidos. Workspace cujos contextos ainda não estão cadastrados — ou estão, mas sem o tipo informado — fica intacto: sem tipo conhecido não há decisão, e um vínculo já gravado não é apagado por suposição.
A configuração inicial do painel de canvas traz uma métrica "Total de Processos" (contagem sobre o recurso Processo no Neo4j) e uma tabela com as colunas número, classe e status. O vínculo com o contexto é dinâmico: usa o contexto ativo cadastrado pela interface, se houver; sem contexto, o painel nasce sem vínculo e o admin associa depois no construtor — nada fica fixo no código.
Para o admin: numa instalação existente cujo workspace "Processos" ainda não tinha o painel, basta reiniciar a plataforma — o log registra Workspace seed: 'Processos' atualizado. A correção do painel nativo aparece no mesmo log como Painel nativo reconciliado (uma linha por workspace) seguida do total corrigido.
Quem pode o quê
| Ação | Permissão exigida |
|---|---|
| Listar o catálogo de painéis | PANEL_VIEW ou CONFIG_VIEW |
| Criar painel (Novo Painel) | CONFIG_EDIT |
| Salvar painel no construtor | CONFIG_EDIT |
O frontend esconde as ações sem permissão apenas como dica visual; a barreira real é a validação no backend. Uma negação retorna mensagem em português explicando a falta de permissão, sem detalhe técnico na tela.
Endereços diretos e telemetria
O construtor aceita os parâmetros ws (workspace), panel (painel), mode=view (visualizador) e embed=1 (sem moldura, já implica visualização).
As duas telas — gerenciador e construtor — enviam telemetria de navegação e uso (identificadas como datta-fe-paineis e datta-fe-panelbuilder), propagam o contexto de rastreamento nas chamadas ao backend e reportam a atividade do usuário para a aplicação.
A criação e a atualização de painéis também estão disponíveis pela API — veja a referência de API.
Limitações conhecidas
- Sem widgets de gráfico (barras, rosca, linha) no construtor. O Painel de Processos nativo é replicável com métrica + tabela + filtro; para dashboards com gráficos ricos, use o DATTABI.
- Painel nativo não é editável pelo construtor — ele é uma tela da própria aplicação, não um canvas.
- Só dois tipos de contexto têm painel nativo hoje (processo judicial e dossiê cadastral). Contexto de código processual ou personalizado fica sem cartão nativo até que um painel seja declarado para o tipo — de propósito: um cartão errado é pior que nenhum.
- Painéis de canvas não aparecem na galeria "Painéis" nem no atalho da tela inicial enquanto o construtor estiver em preview — nem com a marca "Publicar na galeria". Eles continuam acessíveis pelo Gerenciador de Painéis e pela aba de painéis do workspace.
- Paginação em bancos JDBC usa a sintaxe
LIMIT/OFFSET(Postgres, MySQL, H2, SQLite). Dialetos sem esse suporte mostram o erro do próprio banco no widget. - Identificação do painel recém-criado no fluxo Novo Painel usa a data de criação mais recente do workspace retornado — heurística suficiente porque a criação é síncrona, mas o identificador do painel não vem direto na resposta.