🗄️ Titularidade de Cilindro

Tabela auxiliar que armazena titularidade dos cilindros.
🔗 Tabela relacionada: cilindros

📋 7 colunas 🔗 0 relacionamentos 🎮 1 controles 👁️ view_cilindros_titularidade 🔑 PRIMARY KEY 🎮 1 ações externas 📱 GetCollector

📋 Estrutura da Tabela

A tabela cilindros_titularidade possui 7 colunas.

🔑 Id PRIMARY KEY
🔑 PRIMARY KEY🔒 Somente leitura💾 Grava
Campo Tabela id
Campo VIEW / Exibido id_cilindro_titularidade 🔹 Alias na VIEW: id_cilindro_titularidade
Tipo number (readonly - PRIMARY KEY)
Data Table cilindros_titularidade
Descrição

Campo id

🔑 PRIMARY KEY

Campo na tabela: id

Alias na VIEW: id_cilindro_titularidade

Readonly: ✅ Gerado automaticamente pelo sistema

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id
  • Alias OndeVou id_cilindro_titularidade
  • Tabela OndeVou cilindros_titularidade
  • Alias: id_cilindro_titularidade
  • Tabelas: cilindros_titularidade ✅
  • 🔑 PRIMARY KEY
  • VIEW: id_cilindro_titularidade
📋 Participante
🔒 Somente leitura👁️ Oculto📋 Somente view
Campo Tabela participante
Campo VIEW / Exibido participante ⚠️ (somente view)
Tipo number
Data Table view_cilindros_titularidade
Descrição

Campo participante

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
⚙️ Comportamento
  • Valor padrão 1
📊 Dados
  • Campo OndeVou participante
  • Tabela OndeVou view_cilindros_titularidade
  • Tabelas: view_cilindros_titularidade (só view)
  • Hidden: ✓ (dados ocultos)
  • Value: 1
📋 Cilindro
✅ Obrigatório🔒 Somente leitura💾 Grava
Campo Tabela id_cilindro
Campo VIEW / Exibido id_cilindro
Tipo number
Data Table cilindros_titularidade,cilindros
Descrição

Campo cilindro

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Obrigatório ✅ Sim
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id_cilindro
  • Tabela OndeVou cilindros_titularidade,cilindros
🚀 Launch
  • {
      "menu": {
        "data-id": "134"
      },
      "formsearch": {
        "cilindro-id": "id_cilindro"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
🎮 Controls Acao
  • {
      "qrcode": {
        "acao": "getQRcode",
        "messagem": "Gerar QR Code"
      }
    }
  • Tabelas: cilindros_titularidade, cilindros ✅
  • Launch: ✓
  • ControlsAcao: ✓
  • FormSearch: ✓
📋 Referência
✅ Obrigatório🔒 Somente leitura📋 Somente view
Campo Tabela referencia
Campo VIEW / Exibido referencia_cilindro ⚠️ (somente view)
Tipo text
Data Table cilindros
Descrição

Campo referência

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Obrigatório ✅ Sim
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou referencia
  • Alias OndeVou referencia_cilindro
  • Tabela OndeVou cilindros
🔍 Formsearch
  • {
      "required": ""
    }
  • Alias: referencia_cilindro
  • Tabelas: cilindros (só view)
  • FormSearch: ✓
📋 Descrição
✅ Obrigatório🔒 Somente leitura📋 Somente view
Campo Tabela descricao
Campo VIEW / Exibido descricao_cilindro ⚠️ (somente view)
Tipo text
Data Table cilindros
Descrição

Campo descrição

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Obrigatório ✅ Sim
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou descricao
  • Alias OndeVou descricao_cilindro
  • Tabela OndeVou cilindros
  • Alias: descricao_cilindro
  • Tabelas: cilindros (só view)
📋 Participante de
✅ Obrigatório🔒 Somente leitura💾 Grava
Campo Tabela id_participante
Campo VIEW / Exibido razao_social_participante_de (ID: id_participante_de)
Tipo number
Data Table cilindros_titularidade
Descrição

Campo participante de

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Obrigatório ✅ Sim
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou razao_social_participante_de
  • ID OndeVou id_participante
  • ID Alias OndeVou id_participante_de
  • Tabela OndeVou cilindros_titularidade
  • ID: id_participante
  • ID VIEW: id_participante_de
  • Tabelas: cilindros_titularidade ✅
📋 Participante para
✅ Obrigatório🔒 Somente leitura💾 Grava
Campo Tabela participante
Campo VIEW / Exibido razao_social_participante_para (ID: id_participante_para)
Tipo number
Data Table cilindros_titularidade,cilindros
Descrição

Campo participante para

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Obrigatório ✅ Sim
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou razao_social_participante_para
  • ID OndeVou participante
  • ID Alias OndeVou id_participante_para
  • Tabela OndeVou cilindros_titularidade,cilindros
  • ID: participante
  • ID VIEW: id_participante_para
  • Tabelas: cilindros_titularidade, cilindros ✅
📌 Legenda: 🔑 PRIMARY KEY ✅ Obrigatório 🔒 Somente leitura 👁️ Oculto 💾 Grava 📋 Somente view 🔗 getdata 📝 putdata 🔢 AutoInc 📱 QR Code 📋 Auditoria 📱 GetCollector

🔗 Relacionamentos

Tabelas relacionadas via getdata.

Nenhum relacionamento detectado.

🔍 Filtros (formsearch)

Campos disponíveis para filtragem na busca.

Apenas titularidades realizadas checkbox

🎮 Controles Disponíveis

Ações que o usuário pode realizar na tabela.

📂 Controle
💾 Salvar save

👁️ View Associada

Nome: view_cilindros_titularidade

📱 GetCollector - Coleta de Dados

A tabela cilindros_titularidade possui suporte a coleta de dados via QR Code através do sistema GetCollector.

Configuração (JSON expandido)

{
  "qrcode": {
    "qrcode-type": [
      "cl"
    ]
  },
  "table-setups": {
    "search": "nao",
    "html": "nao",
    "controls": [
      "info",
      "remove"
    ]
  }
}

Tipos de QR Code

  • cl: Cilindro

Detalhes

  • Table Add: addTableColetar_dados_leituras

🔑 PRIMARY KEY - Campo Id

O campo Id é a chave primária da tabela cilindros_titularidade.

Configuração

'Id': {
    'input': {
        'readonly': 'readonly',
        'data-type-ondevou': 'number',
        'data-field-ondevou': 'id',
        "data-field-alias-ondevou": "id_cilindro_titularidade",
        'data-table-ondevou': 'cilindros_titularidade'
    }
}

Comportamento

  • 🔒 Readonly: Campo não editável
  • 📊 Tipo: number
  • 🔹 Alias na VIEW: id_cilindro_titularidade

🎮 Controls-Ação em Outros Campos

Outros campos com ações configuradas.

📋 Cilindro

qrcode: Gerar QR Code getQRcode

💾 JSON da Tabela

Estrutura completa em JSON para integração com APIs e IAs.

code Clique para ver o JSON completo 5 KB
{
  "table-id": "cilindros_titularidade",
  "data-table-ondevou": "cilindros_titularidade",
  "table-class": "highlight",
  "putdata": {
    "inputsExtras": "latitude,longitude,ip,id_membro"
  },
  "controls": [
    "save"
  ],
  "html": {
    "div": {
      "before": "",
      "after": ""
    }
  },
  "search": {
    "id_search_cilindro": {
      "data-type-ondevou": "number",
      "texto_label": "Cilindro",
      "data-field-ondevou": "id_search_cilindro",
      "data-table-ondevou": "view_cilindros_titularidade",
      "getcollector": "{\"qrcode\":\"{\\\"qrcode-type\\\":[\\\"cl\\\"]}\",\"table-setups\":\"{\\\"search\\\":\\\"nao\\\",\\\"html\\\":\\\"nao\\\",\\\"controls\\\":[\\\"info\\\",\\\"remove\\\"]}\"}",
      "getdata": "{\"view\":\"view_cilindros_titularidade\",\"data\":\"view_cilindros_titularidade\",\"text-empty-search\":\"sim\",\"data-update-full-fields\":\"sim\",\"campo-data-id\":\"id_cilindro\",\"campo-data-value-input\":\"id_cilindro,referencia_cilindro,nome_tipo,nome_aplicacao,nome_capacidade,nome_unidade_capacidade\",\"campo-data-input-select-view\":\"id_cilindro,referencia_cilindro,nome_tipo,nome_aplicacao,nome_capacidade,nome_unidade_capacidade\",\"query\":{\"select\":\"* from view_cilindros_titularidade\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_cilindro,` `,referencia_cilindro,` `,nome_tipo,` `,nome_aplicacao,` `,nome_capacidade,` `,nome_unidade_capacidade))) ilike `%\",\"right\":\"%`) and (participante!=`1`)\"}}},\"order\":\"id_cilindro desc\"}}"
    }
  },
  "headers": {
    "Id": {
      "width": "7%"
    },
    "Participante": {
      "type": "hidden"
    },
    "Cilindro": {
      "width": "10%"
    },
    "Referência": {
      "width": "10%"
    },
    "Descrição": {
      "width": "30%"
    },
    "Participante de": {
      "width": "30%"
    },
    "Participante para": {
      "width": "30%"
    }
  },
  "columns": {
    "Id": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "id",
        "data-field-alias-ondevou": "id_cilindro_titularidade",
        "data-table-ondevou": "cilindros_titularidade"
      }
    },
    "Participante": {
      "input": {
        "readonly": "readonly",
        "clear-not-participante": "sim",
        "value": "1",
        "data-type-ondevou": "number",
        "data-field-ondevou": "participante",
        "data-table-ondevou": "view_cilindros_titularidade"
      }
    },
    "Cilindro": {
      "input": {
        "required": "required",
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "id_cilindro",
        "data-table-ondevou": "cilindros_titularidade,cilindros",
        "controls-acao": {
          "qrcode": {
            "acao": "getQRcode",
            "messagem": "Gerar QR Code"
          }
        },
        "formsearch": {
          "required": "",
          "getcollector": "{\"qrcode\":\"{\\\"qrcode-type\\\":[\\\"cl\\\"]}\",\"table-setups\":\"{\\\"search\\\":\\\"nao\\\",\\\"html\\\":\\\"nao\\\",\\\"controls\\\":[\\\"info\\\",\\\"remove\\\"]}\"}"
        },
        "launch": {
          "menu": {
            "data-id": "134"
          },
          "formsearch": {
            "cilindro-id": "id_cilindro"
          }
        }
      }
    },
    "Referência": {
      "input": {
        "readonly": "readonly",
        "required": "required",
        "data-type-ondevou": "text",
        "data-field-ondevou": "referencia",
        "data-field-alias-ondevou": "referencia_cilindro",
        "data-table-ondevou": "cilindros",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Descrição": {
      "input": {
        "readonly": "readonly",
        "required": "required",
        "data-type-ondevou": "text",
        "data-field-ondevou": "descricao",
        "data-field-alias-ondevou": "descricao_cilindro",
        "data-table-ondevou": "cilindros"
      }
    },
    "Participante de": {
      "input": {
        "readonly": "readonly",
        "required": "required",
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_participante",
        "data-id-field-alias-ondevou": "id_participante_de",
        "data-field-ondevou": "razao_social_participante_de",
        "data-table-ondevou": "cilindros_titularidade"
      }
    },
    "Participante para": {
      "input": {
        "readonly": "readonly",
        "required": "required",
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "participante",
        "data-id-field-alias-ondevou": "id_participante_para",
        "data-field-ondevou": "razao_social_participante_para",
        "data-table-ondevou": "cilindros_titularidade,cilindros"
      }
    }
  },
  "formsearch": {
    "data-table-ondevou": "view_cilindros_titularidade",
    "data-view-ondevou": "view_cilindros_titularidade",
    "data-where-order": "order by id_cilindro_titularidade desc",
    "input": {
      "apenas_titularidades_realizadas": {
        "data-field-ondevou": "apenas_titularidades_realizadas",
        "data-type-ondevou": "number",
        "type": "checkbox",
        "texto_label": "Apenas titularidades realizadas",
        "data-where-true": "((participante=1) and (id_cilindro_titularidade is not null))",
        "data-where-false": "((participante!=1) and (id_cilindro_titularidade is null))"
      }
    }
  },
  "url_documentacao": "/docs/ondevou-db-cilindros_titularidade.html",
  "nome_tabela": "cilindros_titularidade"
}

📝 SQL CREATE TABLE - Estrutura Completa

Comando SQL COMPLETO para criar a tabela cilindros_titularidade no PostgreSQL. Esta estrutura foi extraída DIRETAMENTE do banco de dados.

🏗️ Estrutura Completa

📋 9 colunas 🔗 2 constraints 📑 9 índices ⚡ 0 triggers
code Clique para ver o SQL completo ✅ COMPLETO
-- ============================================================
-- ESTRUTURA COMPLETA DA TABELA cilindros_titularidade
-- Fonte: PostgreSQL - 12/08/2026 10:24:14
-- ============================================================

CREATE TABLE public.cilindros_titularidade (
    id integer NOT NULL DEFAULT nextval('cilindros_titularidade_id_seq'::regclass),
    participante integer,
    id_participante integer,
    id_cilindro integer,
    id_membro integer,
    latitude numeric(25, 20),
    longitude numeric(25, 20),
    ip varchar(255),
    data timestamp DEFAULT now(),
    CONSTRAINT cilindros_titularidade_pkey PRIMARY KEY (id),
    CONSTRAINT 2200_221138_1_not_null CHECK (id IS NOT NULL)
);

-- ============================================================
-- ÍNDICES
-- ============================================================
CREATE UNIQUE INDEX cilindros_titularidade_pk_id ON public.cilindros_titularidade USING btree (id);
CREATE INDEX idx_cilindros_titularidade_id_cilindro ON public.cilindros_titularidade USING btree (id_cilindro);
CREATE INDEX idx_cilindros_titularidade_id_membro ON public.cilindros_titularidade USING btree (id_membro);
CREATE INDEX idx_cilindros_titularidade_id_participante ON public.cilindros_titularidade USING btree (id_participante);
CREATE INDEX idx_cilindros_titularidade_p_data ON public.cilindros_titularidade USING btree (participante, data DESC);
CREATE INDEX idx_cilindros_titularidade_p_id ON public.cilindros_titularidade USING btree (participante, id DESC);
CREATE INDEX idx_cilindros_titularidade_p_id_cilindro ON public.cilindros_titularidade USING btree (participante, id_cilindro DESC);
CREATE INDEX idx_cilindros_titularidade_p_id_participante ON public.cilindros_titularidade USING btree (participante, id_participante);
CREATE INDEX idx_cilindros_titularidade_participante ON public.cilindros_titularidade USING btree (participante);

SQL extraído DIRETAMENTE do banco de dados

📊 Comparação: JSON Config vs Banco Real

Verifique se a configuração JSON está sincronizada com a estrutura do banco de dados.

Campo Tipo (JSON) Tipo (Banco) Status
data - timestamp without time zone ❌ Só no banco
descricao text - ⚠️ Só no JSON
id number integer ✅ OK
id_cilindro number integer ✅ OK
id_membro - integer ❌ Só no banco
id_participante - integer ❌ Só no banco
ip - character varying ❌ Só no banco
latitude - numeric ❌ Só no banco
longitude - numeric ❌ Só no banco
participante number integer ✅ OK
razao_social_participante_de number - ⚠️ Só no JSON
razao_social_participante_para number - ⚠️ Só no JSON
referencia text - ⚠️ Só no JSON

💡 Dica: Use esta comparação para garantir que a configuração JSON está atualizada com a estrutura do banco.
📌 Legenda: ✅ OK = presente em ambos | ⚠️ Só no JSON = pode ser um campo virtual | ❌ Só no banco = falta adicionar ao JSON

💡 Como Popular a Tabela

Exemplo prático usando o padrão OndeVou.

📋 Fluxo completo padrão

// 1. Buscar dados com getData
var dados_retorno = getData({
    'query': `SELECT * FROM view_cilindros_titularidade WHERE participante = ${globais.dados_fixo.participante}`,
    'view': 'view_cilindros_titularidade'
});

// 2. Definir painel e slide
var painel = globais.dados_pagina.visivel.painel;
var slide = globais.dados_pagina.visivel.slide;

// 3. Encontrar a tabela no DOM
var idTable = getIdTableFromSlide({ 'table-id': 'cilindros_titularidade' });

// 4. Resetar a tabela
setTableControlsReset(idTable);

// 5. Popular a tabela
setTableControlsSetValue(idTable, dados_retorno);

🏆 Propriedade Intelectual

OndeVou.com Marca Registrada

Marca Registrada

OndeVou.com®

Propriedade Intelectual Assegurada

Processo INPI:
908765967
Titular:
ONDEVOU.COM TECNOLOGIA LTDA
CNPJ:
17.058.605/0001-36
Classificação:
Classe 42 - Serviços de TI