PT EN
Back to site

Platform panels — Manager, builder and the Painel de Processos

Panels used to live in different corners of the platform — it was easy to lose track of what already existed, or to build a panel that vanished when you left the screen. Today there is a single place to see every panel — the Panel Manager — and a single canvas panel builder, with guaranteed persistence and previews with real data. You find, open, create and edit any platform panel without hunting through different menus.

What you get

  1. A single builder — every canvas panel is created, edited and viewed in the same builder: a 12-column canvas with drag and resize and metric, table, filter and search widgets. Each widget reads a context data set — you pick the context and, inside it, the data by name (e.g. "Contrato", "Parte", "Trechos de documentos"), without knowing which database holds it or what it is called in the schema. The assembled panel is interactive: filters and search apply to widgets of the same data, tables sort by header click and paginate, and row actions can open a BPM process with the business key interpolated from the row's own data.

In view mode the filter widget becomes a live selector with the field's real values; the search widget declares which fields the text searches (case-insensitive "contains"). Tables take a page size, sort on header click, and support per-row actions: Link navigates to a URL with ${field} interpolation, and Open BPM creates an instance of a published process with the business key, title and variables taken from the row. Providing the table's BPM model and key template adds a "Process" column showing each row's instance state (clickable — opens the Process Monitor). Mark Publish to gallery in the toolbar to surface the panel in the workspace's "Painéis" gallery — the flag takes effect once the builder leaves preview (see below).

  1. Panel Manager — under SistemaContextosPainéis, a single list with the platform's native panels (Plataforma badge), each workspace's canvas panels and the DATTABI dashboards (Dashboard BI badge), with search and actions.
  2. Read-only viewer — any canvas panel opens in view mode, with real data and no editing tools.
  3. Native panel linked through the manager — the platform's native panels (Painel de Processos, Painel de Onboarding PJ, Pendências de Compliance and the triage panel of each custom context with an anchor) show up in a workspace only when someone links them in the workspace manager, Painéis tab. The data context type says which panel reads which context; linking a panel to a workspace without that context is allowed, with a warning of what it will show there. The Painéis gallery and the home screen panel shortcut only show a linked native panel.

Seeing every panel on the platform

  1. Open SistemaContextosPainéis. The breadcrumb reads DATTA > Sistema > Contextos > Paineis.
  2. The Panel Manager loads the panel catalog and the workspace list in parallel, so the screen opens complete in one go. Use the search to filter by name or workspace.
  3. Each row shows the title, the source workspace and the type badge: Plataforma for native panels, managed by the system, and Dashboard BI for DATTABI dashboards.

While loading, the screen shows a progress indicator; with no panels at all, it shows the empty state; and any failure appears as a friendly Portuguese notice, never as a technical error.

Opening a panel (read-only)

  1. Click Abrir on the panel's row.
  2. Canvas panels open in the viewer, with real data and a reduced toolbar: panel title, Atualizar (re-runs the preview) and Abrir no construtor. The widget palette, the properties drawer and the editing buttons do not render, and the preview runs on its own as soon as the panel finishes loading.
  3. Native panels navigate to the corresponding screen inside the application itself; BI dashboards open in DATTABI.

That same viewer is used by the home screen's panels shortcut. There is also a chromeless mode (embed=1), created for the workspace's "Painéis" gallery cards (see Workspaces: DATTABI dashboards and context filtering): it hides the entire toolbar and already implies read-only.

Creating a new panel

  1. Click Novo Painel, choose the target workspace, enter the title (e.g. "Visão Geral dos Processos") and an optional description.
  2. Confirm — the panel is created and opens directly in the builder.
  3. Add the widgets (metric, table, filter, search) from the palette — each one lands below the last, without covering what is already on the canvas.
  4. In the side drawer, under Dados, pick the context (the list shows the workspace's contexts) and the context data. The list shows what the context holds, with a readable name and a count:
    • Registros — the context's entities (e.g. Contrato, Parte, Cláusula). The context's main entity comes first, marked principal.
    • Documentos — the text passages of the documents sent to the context.
    • Bases externas — the tables of the external databases linked to the context. A database that does not answer shows up as a warning, and the rest of the list stays. When someone wrote the data description in the Knowledge Catalog's Ficha do Ativo, it shows as the item's second line.
  5. Choose the fields (by readable name — "Data assinatura", "Valor total") and the aggregation: count (COUNT), distinct count (COUNT_DISTINCT), sum (SUM), average (AVG), minimum (MIN) and maximum (MAX). In a table, Incluir todos os campos builds every column at once. The column description written in the Ficha do Ativo shows under the chosen field and as a hint when hovering the list.
  6. Use Pré-visualizar to see the numbers with real data and Salvar to store them.

Panels built before the choice by context keep working unchanged. When you open one of their widgets, the drawer says which data it reads and lets you switch it to the context data.

The metric has a Considerar só quando condition: pick the field, the comparison (equals, differs, contains, greater than, less than) and the value — no query syntax. Conditions written as text in older panels still apply and can be replaced by a simple condition.

In tables, drag the right edge of a column header to set its width, or type it in pixels in the drawer (60 to 800 px); the width is saved with the panel. Tables and the other widgets have horizontal and vertical scrollbars: text is not squeezed — what does not fit scrolls inside the widget, and the table header stays fixed while rows scroll. Numbers use the Brazilian format and are right-aligned.

Editing an existing panel

  • Canvas panels: Editar opens the builder.
  • BI dashboards: Editar opens the DATTABI editor.
  • Native panels (Plataforma badge) are not editable — their content is managed by the platform, and the screen warns you in Portuguese if you try.

Links configured in panels are validated before opening: only http/https or relative addresses are accepted, which blocks malicious addresses such as javascript: and data:.


Why there is a single builder

There used to be two panel builders. The old one, under SistemaContextosPainéis, assembled stat cards through interactive discovery without persistence — the user lost everything on leaving the screen. The other one, the workspace builder, was the real one: canvas, preview with real data and persistence. Since the first one's capabilities were a subset of the second one's, the unification removed the weak builder instead of merging code.

Today "Contextos → Painéis" is a thin management screen over the platform's panel catalog — the same catalog that feeds the home screen's panels shortcut and the side menu (see Workspaces: DATTABI dashboards and context filtering). Besides each workspace's canvas panels and BI dashboards, that catalog carries the native entries of the platform's panel registry.

The data context type says which context each native panel reads:

Context typeNative panelWhat it shows
Judicial processPainel de Processostriage and auditing of judicial processes
Registration dossierPainel de Onboarding PJlist of PJ dossiers with legal name, CNPJ, documents, workflow stage and triage outcome
Registration dossierPendências de Complianceexpired certificates and pending criteria of the dossiers, handled through a BPM process
Custom with a declared anchorPainel de \<type value\> (e.g. Painel de Contratos)the same triage panel, with the records of the context's anchor
Other typesno native panel—

A context type may offer more than one panel — the registration dossier does, with two cards. A type with no panel declared offers none — the judicial process panel used to show up even for a registration dossier context, and the screen opened with the wrong list.

The workspace manager is what links it. No native panel is added to a workspace on its own: not when the contexts are saved, not when the platform restarts, not on a new installation. To see a native panel in a workspace, open SistemaWorkspaces, pick the workspace and, in the Painéis tab, click Vincular existentes and tick the panel in the Nativo group. After saving contexts that offer a panel not linked yet, the Contextos de Dados tab reminds you: "Para ver o Painel de Processos neste workspace, ligue-o na aba Painéis" ("To see the Painel de Processos in this workspace, link it in the Painéis tab").

Linking a panel to a workspace that does not have the context it reads is allowed: the screen warns what the panel will show there and saves as usual. The Painel de Processos and the anchor panels are the same screen, which reads any anchored context of the workspace: with none, the warning is "Este workspace não tem contexto do tipo Processo Judicial; o painel abrirá sem registros" ("This workspace has no context of type Processo Judicial; the panel will open with no records"); with an anchored context of another type, the panel opens with that context's records — "…; o painel mostrará os registros de Contratos, com o título "Painel de Contratos"" ("the panel will show the records of Contratos, titled Painel de Contratos"). The dossier panels are not filtered by the workspace: they open on the workspace's dossier when it is the workspace's only context, and otherwise on the first dossier registered in the installation — the warning names it. A context registered before the "context type" field existed declares no type; in a workspace with only such contexts the triage panel warning does not show, because there is no way to know what it will show.

The Painéis gallery and the home screen panel shortcut show a native panel only when it is linked to the active workspace; under Todos os workspaces, the ones linked to some workspace you can see.

The 2026-09-27 change. Until that date the platform linked the native panel on its own, by the type of the workspace's contexts, and corrected the link at every restart. On the first startup after the change, every native panel link was removed from every workspace: link again through the Painéis tab the ones that should stay. Every panel you link through the manager is recorded next to the workspaces, in the file paineis-nativos-manuais.json, and is not removed by any restart; the same file keeps what was removed (removidos). If an earlier version of the platform comes back (rollback) and links panels again by type, the next startup of this version removes them again — only the ones the manager did not link.

The registration dossier cards are only offered to whoever has permission to consult PJ dossiers — the same permission that already hides the "Onboarding PJ" item in the side menu, and that both panels need to read their data. Without it the card shows up nowhere (gallery, home screen panel shortcut or manager), instead of showing up and opening with no access.

Automatic creation at startup

The workspace seed runs at platform startup and is best-effort (a seed failure never brings the system down):

  • New installation (no workspace yet) — creates the "Processos" and "Assistência Social" workspaces; "Processos" already comes with the "Painel de Processos" canvas panel. Neither is born linked to a native panel: link the ones you want through the manager's Painéis tab.
  • Existing installation — no workspace is created (not even one the admin renamed or deleted). Panels created by the admin are never touched, and a native panel link is not added, swapped or deleted.
  • The "Painel de Processos" canvas is added once per workspace, never again. A workspace named "Processos" not yet handled (created or renamed later) gets the missing canvas (checked by title, case-insensitive) and is recorded in upgrades-de-boot-aplicados.json, next to workspaces.json. If the user removes the canvas later, it does not come back on restart or release. Until 2026-09-29 the canvas came back on every startup. On the first startup with this rule, existing workspaces are only recorded, unchanged: previous versions had already added the canvas on every startup, so whatever is missing was removed by the user. Unreadable record: no startup adds anything, and the log warns with the file path. If the record is written but workspaces.json is not (full volume, disk failure), the workspace is taken out of the record and the next startup tries again — the log says sera retentado na proxima subida. If even that record correction cannot be written, the log names the workspace left without the canvas and warns there will be no new attempt. Limit: a rollback to a version prior to this rule brings the canvas back on every startup; back on the current version, remove it again and it no longer returns.

The canvas panel's initial configuration carries a "Total de Processos" metric (a count over the Processo resource in Neo4j) and a table with the number, class and status columns. The context binding is dynamic: it uses the active context registered through the interface, if any; without a context, the panel is born without a binding and the admin associates one later in the builder — nothing is hardcoded.

For the admin: when a "Processos" workspace receives the canvas, the log records Workspace seed: 'Processos' atualizado; the first startup with the upgrade record logs Workspace seed: registro ... criado. The removal of native links shows up in the log as Painel nativo desvinculado (remocao unica...), one line per workspace with the panels removed, followed by the total; on a startup after a rollback, as Painel nativo desvinculado: ... o vinculo nao foi feito pelo gerenciador.


Who can do what

ActionRequired permission
List the panel catalogPANEL_VIEW or CONFIG_VIEW
Create a panel (Novo Painel)CONFIG_EDIT
Save a panel in the builderCONFIG_EDIT

The frontend hides actions the user has no permission for, only as a visual hint; the real barrier is the backend check. A denial returns a Portuguese message explaining the missing permission, with no technical detail on screen.

Direct addresses and telemetry

The builder accepts the parameters ws (workspace), panel (panel), mode=view (viewer) and embed=1 (chromeless, already implying view mode).

Both screens — manager and builder — send navigation and usage telemetry (identified as datta-fe-paineis and datta-fe-panelbuilder), propagate the tracing context on calls to the backend and report user activity to the application.

Creating and updating panels is also available through the API — see the API reference.


Known limitations

  • Readable names come from the identifier: "dataAssinatura" becomes "Data assinatura", with accents restored for the most common words. The Ficha do Ativo holds descriptions, not names: the description shows next to the name without replacing it. Users without permission to see the Knowledge Catalog get the list without descriptions. External-database table descriptions do not show yet.
  • No chart widgets (bars, donut, line) in the builder. The native Painel de Processos can be replicated with metric + table + filter; for dashboards with rich charts, use DATTABI.
  • The native panel is not editable by the builder — it is a screen of the application itself, not a canvas.
  • Only three context families have a native panel today (judicial process, registration dossier and custom with a declared anchor). A procedural code, credit analysis or custom context without an anchor offers no native card until a panel is declared for the type — by design: a wrong card is worse than no card.
  • Canvas panels do not appear in the "Painéis" gallery or in the home screen shortcut while the builder is in preview — not even with the "Publish to gallery" flag set. They remain reachable from the Panel Manager and the workspace's panels tab.
  • JDBC pagination uses LIMIT/OFFSET syntax (Postgres, MySQL, H2, SQLite). Dialects without it surface the database's own error in the widget.
  • Identifying the newly created panel in the Novo Painel flow uses the most recent creation date of the returned workspace — a sufficient heuristic because creation is synchronous, but the panel identifier does not come back directly in the response.