TIME LINE#

O widget Time Line exibe intervalos de tempo em uma linha do tempo horizontal. Ele é útil para mostrar a duração de Jobs, etapas de um processo ou ações do usuário em um formulário.

Por exemplo, o Time Line pode mostrar quando cada Job começou e terminou, quanto durou cada etapa de uma solicitação ou como as ações se distribuíram ao longo do tempo.

Início da configuração do widget#

Para configurar o widget, clique no ícone de edição .

A janela "Configurações do widget" será aberta:

Preencha os campos necessários para configurar o widget.

Campos gerais#

N.ºCampoDescrição
1.Nome do widget *Nome exibido no cabeçalho do widget. Preenchido manualmente.
2.ModoForma de configurar a consulta de dados.
2.1.Modo construtorPermite montar a consulta com blocos: tabelas, junções, filtros, séries do widget, agrupamento, ordenação e número de linhas.
2.2.Modo avançadoPermite digitar uma consulta SQL manualmente. Esse modo é conveniente para Time Line porque os nomes de coluna necessários podem ser definidos explicitamente.

Campos adicionais disponíveis apenas no modo construtor#

Junção de tabelas#

A junção de tabelas permite obter dados de várias tabelas relacionadas e produzir resultados mais completos.

Os operadores abaixo são usados para comparar colunas de duas tabelas antes de uni-las:

Operador Descrição
= Retorna as linhas em que os valores nas colunas indicadas das duas tabelas são iguais.
!= Retorna as linhas em que os valores nas colunas indicadas das duas tabelas são diferentes.
> Retorna as linhas em que o valor da coluna indicada da primeira tabela é maior do que o da segunda tabela.
< Retorna as linhas em que o valor da coluna indicada da primeira tabela é menor do que o da segunda tabela.

Para unir apenas duas tabelas, preencha estes campos:

  1. Selecione a primeira "Coluna" na lista;
  2. Selecione o "Operador" na lista;
  3. Selecione a "Coluna 2" na lista.

Por exemplo:

Para unir mais de duas tabelas, clique em e preencha os campos necessários.

Para remover uma junção de tabelas, clique em .

Filtros#

Os filtros definem condições para os dados selecionados usando operadores de comparação e operadores lógicos.

Para definir uma condição, preencha estes campos:

  1. Selecione a "Coluna" na lista;
  2. Selecione o "Operador" na lista;
  3. Digite o "Valor".

Por exemplo:

Para combinar várias condições, por exemplo, ((robots.is_deleted = 0) AND (robots.id > 13)), use operadores lógicos. Clique em para alterar para OR ou em para alterar para AND. Depois, clique em e preencha os campos necessários:

Para definir uma condição complexa de Filtro com vários grupos de parênteses, clique em e preencha os campos necessários.

Para remover uma condição, clique em .

Séries do widget#

As séries do widget indicam quais colunas do banco de dados devem ser obtidas e retornadas nos resultados da consulta.

Para configurar as Séries do widget, preencha estes campos:

  1. Selecione a "Coluna" na lista;
  2. Selecione o "Operador" na lista;
  3. Digite o "Nome da série".

Por exemplo:

Para exibir dados adicionais na legenda, clique em .

Agrupar por#

Este campo agrupa linhas com os mesmos valores em uma ou mais colunas para permitir operações de agregação. Selecione uma coluna na lista.

Ordenação#

Estes campos determinam a ordem das linhas no resultado. Digite "ASC" em "Ordenar por" para ordem crescente ou "DESC" para decrescente e selecione uma "Coluna" na lista.

Número de linhas#

Digite um valor ou use o contador . Este campo limita o número de registros retornados pela consulta para montar o painel.

Teste#

Para verificar se a consulta está configurada corretamente, clique em . Uma tabela será exibida com os dados usados para montar o painel Line Chart.

Clique em "OK" para exibir o painel.

Clique em "Cancelar" para limpar todos os dados inseridos.

Formato de dados para Time Line#

Para que o widget seja montado corretamente, a consulta deve retornar três colunas:

Coluna Descrição
name Nome de uma linha na linha do tempo, como um Job, uma etapa ou um formulário.
StartTime Data e hora de início do intervalo.
FinishTime Data e hora de término do intervalo.

Se FinishTime estiver vazio, o widget exibirá um intervalo curto de 60 segundos a partir de StartTime.

Modo construtor (exemplo)#

Este exemplo mostra os Jobs mais recentes que têm horário de início. Cada Job aparece como um intervalo independente do início ao término.

Preencha estes campos:

Tabelas *

jobs

process_versions

processes

Junção de tabelas

Coluna Operador Coluna 2
jobs.process_version_id = process_versions.id
process_versions.process_id = processes.id

Filtros

Coluna Operador Valor
jobs.is_deleted = 0
jobs.created > 2026-01-01 00:00:00

Séries do widget

Coluna Operador Nome da série
processes.name name
jobs.created StartTime
jobs.updated FinishTime

No Time Line, as Séries do widget devem ter exatamente os nomes name, StartTime e FinishTime. O código do widget usa esses nomes para montar a linha do tempo.

Ordenar por

Campo Valor
Coluna jobs.created
Ordenar por DESC

Número de linhas

10

Modo avançado (exemplo)#

Este exemplo mostra os Jobs mais recentes que têm horário de início. Cada Job aparece como um intervalo independente do início ao término.

No campo SQL, informe a seguinte consulta:

SELECT
    COALESCE(processes.name, CONCAT('Работа ', jobs.id)) AS name,
    COALESCE(jobs.started, jobs.created) AS StartTime,
    DATE_ADD(COALESCE(jobs.started, jobs.created), INTERVAL 2 HOUR) AS FinishTime
FROM jobs
LEFT JOIN process_versions ON jobs.process_version_id = process_versions.id
LEFT JOIN processes ON process_versions.process_id = processes.id
WHERE
    jobs.is_deleted = 0
    AND COALESCE(jobs.started, jobs.created) IS NOT NULL
ORDER BY COALESCE(jobs.started, jobs.created) DESC
LIMIT 10

Clique em "OK" para exibir o widget no painel.