🗄️ Gestão de Frota Inteligente: Controle Total com OndeVou.com

Otimize sua frota com OndeVou.com. Monitore manutenção, consumo, desempenho e documentação, garantindo eficiência máxima para sua operação.

📋 30 colunas 🔗 10 relacionamentos 🎮 7 controles 👁️ view_veiculos 📝 3 com putdata 📱 QR Code 🔑 PRIMARY KEY 🎮 1 ações externas 📱 GetCollector

📋 Estrutura da Tabela

A tabela veiculos possui 30 colunas.

🔑 Id PRIMARY KEY
🔑 PRIMARY KEY🔒 Somente leitura💾 Grava📋 Auditoria
Campo Tabela id
Campo VIEW / Exibido id_veiculo 🔹 Alias na VIEW: id_veiculo
Tipo number (readonly - PRIMARY KEY)
Data Table veiculos,auditor_veiculos 📋 Grava em auditoria
Descrição

Campo id

🔑 PRIMARY KEY

Campo na tabela: id

Alias na VIEW: id_veiculo

Readonly: ✅ Gerado automaticamente pelo sistema

Grava em auditoria: ✅ Sim

Formsearch: ✅ Permite busca avançada

📱 qrcode: Gerar QR Code Documento
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id
  • Alias OndeVou id_veiculo
  • Tabela OndeVou veiculos,auditor_veiculos
🔍 Formsearch
  • {
      "required": ""
    }
🎮 Controls Acao
  • {
      "qrcode": {
        "acao": "getQRcode",
        "messagem": "Gerar QR Code"
      }
    }
  • Alias: id_veiculo
  • Tabelas: veiculos, auditor_veiculos ✅
  • ControlsAcao: ✓
  • FormSearch: ✓
  • 🔑 PRIMARY KEY
  • VIEW: id_veiculo
  • 📋 Auditoria
  • 📋 FormSearch
📋 qrcode
🔒 Somente leitura📋 Somente view📱 QRCode: Veículo
Campo Tabela qrcode
Campo VIEW / Exibido qrcode ⚠️ (somente view)
Tipo canvas (QR Code: Veículo)
Data Table qrcode
Descrição

Campo qrcode

📱 QR Code

Tipo: Veículo (vei)

Texto: Campos placa_veiculo

Formato: ondevou_vei_{participante}_{id}

Uso: Identificação física do registro. Clique para imprimir.

Geração: Automática ao salvar o registro. Biblioteca QRious.

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
  • Tipo de input canvas
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou qrcode
  • Tabela OndeVou qrcode
  • Tabelas: qrcode (só view)
  • QRCode: Veículo
  • QRCode Texto: placa_veiculo
📋 Participante
✅ Obrigatório🔒 Somente leitura💾 Grava
Campo Tabela participante
Campo VIEW / Exibido participante
Tipo text
Data Table veiculos,auditor_veiculos
Descrição

Campo participante

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Obrigatório ✅ Sim
  • Somente leitura 🔒 Sim
⚙️ Comportamento
  • Valor padrão 1
📊 Dados
  • Campo OndeVou participante
  • Tabela OndeVou veiculos,auditor_veiculos
  • Tabelas: veiculos, auditor_veiculos ✅
  • Value: 1
📋 Placa
✅ Obrigatório💾 Grava🔗 getdata
Campo Tabela placa
Campo VIEW / Exibido placa_veiculo
Tipo text
Data Table veiculos
Descrição

Campo placa

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Obrigatório ✅ Sim
📊 Dados
  • Campo OndeVou placa
  • Alias OndeVou placa_veiculo
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos",
      "data": "view_veiculos",
      "text-empty-search": "sim",
      "campo-data-id": "id_veiculo",
      "campo-data-value-input": "id_veiculo,placa_veiculo,descricao_veiculo",
      "campo-data-input-select-view": "id_veiculo,placa_veiculo,descricao_veiculo,renavam",
      "query": {
        "select": "* from view_veiculos",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_veiculo,` `,placa_veiculo,` `,descricao_veiculo,` `,renavam))) ilike `%",
              "right": "%`) and (participante=`1`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • Alias: placa_veiculo
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 UF placa
✅ Obrigatório💾 Grava🔗 getdata
Campo Tabela id_uf_licenciamento
Campo VIEW / Exibido sigla_uf_licenciamento (ID: id_uf_licenciamento)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo uf placa

Getdata🔗 uf
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Obrigatório ✅ Sim
📊 Dados
  • Campo OndeVou sigla_uf_licenciamento
  • ID OndeVou id_uf_licenciamento
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_uf",
      "data": "view_uf",
      "text-empty-search": "sim",
      "campo-data-id": "id_uf",
      "campo-data-value-input": "sigla_uf",
      "campo-data-input-select-view": "nome_uf,sigla_uf",
      "query": {
        "select": "* from view_uf",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(nome_uf,` `,sigla_uf))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_uf_licenciamento
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Descrição
✅ Obrigatório💾 Grava🔗 getdata
Campo Tabela descricao
Campo VIEW / Exibido descricao_veiculo
Tipo text
Data Table veiculos
Descrição

Campo descrição

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Obrigatório ✅ Sim
📊 Dados
  • Campo OndeVou descricao
  • Alias OndeVou descricao_veiculo
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos",
      "data": "view_veiculos",
      "text-empty-search": "sim",
      "campo-data-id": "id_veiculo",
      "campo-data-value-input": "id_veiculo,placa_veiculo,descricao_veiculo",
      "campo-data-input-select-view": "id_veiculo,placa_veiculo,descricao_veiculo,renavam",
      "query": {
        "select": "* from view_veiculos",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_veiculo,` `,placa_veiculo,` `,descricao_veiculo,` `,renavam))) ilike `%",
              "right": "%`) and (participante=`1`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • Alias: descricao_veiculo
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Marca
💾 Grava🔗 getdata📝 putdata
Campo Tabela id_marca
Campo VIEW / Exibido nome_marca (ID: id_marca)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo marca

Getdata🔗 veiculos_marca
Putdata
{
  "tabela": "veiculos_marca",
  "unique": "nome",
  "fields": {
    "nome": "nome_marca"
  }
}
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou nome_marca
  • ID OndeVou id_marca
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_marca",
      "data": "view_veiculos_marca",
      "text-empty-search": "sim",
      "campo-data-id": "id_marca",
      "campo-data-value-input": "nome_marca",
      "campo-data-input-select-view": "nome_marca",
      "query": {
        "select": "* from view_veiculos_marca",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_marca,` `,nome_marca))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
📝 Putdata
  • {
      "tabela": "veiculos_marca",
      "unique": "nome",
      "fields": {
        "nome": "nome_marca"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_marca
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Modelo
💾 Grava🔗 getdata📝 putdata
Campo Tabela id_modelo
Campo VIEW / Exibido nome_modelo (ID: id_modelo)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo modelo

Getdata🔗 veiculos_modelo
Putdata
{
  "tabela": "veiculos_modelo",
  "unique": "nome",
  "fields": {
    "nome": "nome_modelo"
  }
}
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou nome_modelo
  • ID OndeVou id_modelo
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_modelo",
      "data": "view_veiculos_modelo",
      "text-empty-search": "sim",
      "campo-data-id": "id_modelo",
      "campo-data-value-input": "nome_modelo",
      "campo-data-input-select-view": "nome_modelo",
      "query": {
        "select": "* from view_veiculos_modelo",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_modelo,` `,nome_modelo))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
📝 Putdata
  • {
      "tabela": "veiculos_modelo",
      "unique": "nome",
      "fields": {
        "nome": "nome_modelo"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_modelo
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Cor
💾 Grava🔗 getdata📝 putdata
Campo Tabela id_cor
Campo VIEW / Exibido nome_cor (ID: id_cor)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo cor

Getdata🔗 veiculos_cor
Putdata
{
  "tabela": "veiculos_cor",
  "unique": "nome",
  "fields": {
    "nome": "nome_cor"
  }
}
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou nome_cor
  • ID OndeVou id_cor
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_cor",
      "data": "view_veiculos_cor",
      "text-empty-search": "sim",
      "campo-data-id": "id_cor",
      "campo-data-value-input": "nome_cor",
      "campo-data-input-select-view": "nome_cor",
      "query": {
        "select": "* from view_veiculos_cor",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_cor,` `,nome_cor))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
📝 Putdata
  • {
      "tabela": "veiculos_cor",
      "unique": "nome",
      "fields": {
        "nome": "nome_cor"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_cor
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Propriedade
💾 Grava🔗 getdata
Campo Tabela id_propriedade
Campo VIEW / Exibido descricao_propriedade (ID: id_propriedade)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo propriedade

Getdata🔗 veiculos_propriedade
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou descricao_propriedade
  • ID OndeVou id_propriedade
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_propriedade",
      "data": "view_veiculos_propriedade",
      "text-empty-search": "sim",
      "campo-data-id": "id_propriedade",
      "campo-data-value-input": "descricao_propriedade",
      "campo-data-input-select-view": "descricao_propriedade",
      "query": {
        "select": "* from view_veiculos_propriedade",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_propriedade,` `,descricao_propriedade))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_propriedade
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Tipo proprietário
💾 Grava🔗 getdata
Campo Tabela id_tipo_proprietario
Campo VIEW / Exibido descricao_tipo_proprietario (ID: id_tipo_proprietario)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo tipo proprietário

Getdata🔗 veiculos_tipo_proprietario
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou descricao_tipo_proprietario
  • ID OndeVou id_tipo_proprietario
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_tipo_proprietario",
      "data": "view_veiculos_tipo_proprietario",
      "text-empty-search": "sim",
      "campo-data-id": "id_tipo_proprietario",
      "campo-data-value-input": "tipo_proprietario,descricao_tipo_proprietario",
      "campo-data-input-select-view": "tipo_proprietario,descricao_tipo_proprietario",
      "query": {
        "select": "* from view_veiculos_tipo_proprietario",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_tipo_proprietario,` `,tipo_proprietario,` `,descricao_tipo_proprietario))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_tipo_proprietario
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Tipo carroceria
💾 Grava🔗 getdata
Campo Tabela id_tipo_carroceria
Campo VIEW / Exibido descricao_tipo_carroceria (ID: id_tipo_carroceria)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo tipo carroceria

Getdata🔗 veiculos_tipo_carroceria
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou descricao_tipo_carroceria
  • ID OndeVou id_tipo_carroceria
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_tipo_carroceria",
      "data": "view_veiculos_tipo_carroceria",
      "text-empty-search": "sim",
      "campo-data-id": "id_tipo_carroceria",
      "campo-data-value-input": "tipo_carroceria,descricao_tipo_carroceria",
      "campo-data-input-select-view": "tipo_carroceria,descricao_tipo_carroceria",
      "query": {
        "select": "* from view_veiculos_tipo_carroceria",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_tipo_carroceria,` `,tipo_carroceria,` `,descricao_tipo_carroceria))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_tipo_carroceria
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Tipo rodado
💾 Grava🔗 getdata
Campo Tabela id_tipo_rodado
Campo VIEW / Exibido descricao_tipo_rodado (ID: id_tipo_rodado)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo tipo rodado

Getdata🔗 veiculos_tipo_rodado
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou descricao_tipo_rodado
  • ID OndeVou id_tipo_rodado
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_tipo_rodado",
      "data": "view_veiculos_tipo_rodado",
      "text-empty-search": "sim",
      "campo-data-id": "id_tipo_rodado",
      "campo-data-value-input": "tipo_rodado,descricao_tipo_rodado",
      "campo-data-input-select-view": "tipo_rodado,descricao_tipo_rodado",
      "query": {
        "select": "* from view_veiculos_tipo_rodado",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_tipo_rodado,` `,tipo_rodado,` `,descricao_tipo_rodado))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_tipo_rodado
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Tipo veículo
💾 Grava🔗 getdata
Campo Tabela id_tipo_veiculo
Campo VIEW / Exibido descricao_tipo_veiculo (ID: id_tipo_veiculo)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo tipo veículo

Getdata🔗 veiculos_tipo_veiculo
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou descricao_tipo_veiculo
  • ID OndeVou id_tipo_veiculo
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_veiculos_tipo_veiculo",
      "data": "view_veiculos_tipo_veiculo",
      "text-empty-search": "sim",
      "campo-data-id": "id_tipo_veiculo",
      "campo-data-value-input": "descricao_tipo_veiculo",
      "campo-data-input-select-view": "descricao_tipo_veiculo",
      "query": {
        "select": "* from view_veiculos_tipo_veiculo",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_tipo_veiculo,` `,descricao_tipo_veiculo))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_tipo_veiculo
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Nome proprietário
💾 Grava
Campo Tabela razao_social_nome_proprietario
Campo VIEW / Exibido razao_social_nome_proprietario
Tipo text
Data Table veiculos
Descrição

Campo nome proprietário

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou razao_social_nome_proprietario
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 UF proprietário
💾 Grava🔗 getdata
Campo Tabela id_uf_proprietario
Campo VIEW / Exibido sigla_uf_proprietario (ID: id_uf_proprietario)
Tipo number (getdata)
Data Table veiculos
Descrição

Campo uf proprietário

Getdata🔗 uf
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou sigla_uf_proprietario
  • ID OndeVou id_uf_proprietario
  • Tabela OndeVou veiculos
🔗 Getdata
  • {
      "view": "view_uf",
      "data": "view_uf",
      "text-empty-search": "sim",
      "campo-data-id": "id_uf",
      "campo-data-value-input": "sigla_uf",
      "campo-data-input-select-view": "nome_uf,sigla_uf",
      "query": {
        "select": "* from view_uf",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(nome_uf,` `,sigla_uf))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
  • ID: id_uf_proprietario
  • Tabelas: veiculos ✅
📋 CNPJ proprietário
💾 Grava
Campo Tabela cnpj_proprietario
Campo VIEW / Exibido cnpj_proprietario
Tipo text
Data Table veiculos
Descrição

Campo cnpj proprietário

📋 Todos os Atributos
Eventos
  • Tecla solta setInputFormatCnpj(this) 📌 setInputFormatCnpj
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados text
  • Máximo de caracteres 18
  • Mínimo de caracteres 18
📊 Dados
  • Campo OndeVou cnpj_proprietario
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • Eventos: keyup
  • FormSearch: ✓
📋 CPF proprietário
💾 Grava
Campo Tabela cpf_proprietario
Campo VIEW / Exibido cpf_proprietario
Tipo text
Data Table veiculos
Descrição

Campo cpf proprietário

📋 Todos os Atributos
Eventos
  • Tecla solta setInputFormatCpf(this) 📌 setInputFormatCpf
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados text
  • Máximo de caracteres 14
  • Mínimo de caracteres 14
📊 Dados
  • Campo OndeVou cpf_proprietario
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • Eventos: keyup
  • FormSearch: ✓
📋 Inscrição estadual proprietário
💾 Grava
Campo Tabela inscricao_estadual_proprietario
Campo VIEW / Exibido inscricao_estadual_proprietario
Tipo text
Data Table veiculos
Descrição

Campo inscrição estadual proprietário

📋 Todos os Atributos
Eventos
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou inscricao_estadual_proprietario
  • Tabela OndeVou veiculos
  • Tabelas: veiculos ✅
📋 RNTRC
💾 Grava
Campo Tabela rntrc_proprietario
Campo VIEW / Exibido rntrc_proprietario
Tipo text
Data Table veiculos
Descrição

Campo rntrc

📋 Todos os Atributos
Eventos
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou rntrc_proprietario
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Renavam
💾 Grava
Campo Tabela renavam
Campo VIEW / Exibido renavam
Tipo text
Data Table veiculos
Descrição

Campo renavam

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou renavam
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Chassi
💾 Grava
Campo Tabela chassi
Campo VIEW / Exibido chassi
Tipo text
Data Table veiculos
Descrição

Campo chassi

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou chassi
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Ano fabricação
💾 Grava
Campo Tabela ano_fabricacao
Campo VIEW / Exibido ano_fabricacao
Tipo text
Data Table veiculos
Descrição

Campo ano fabricação

📋 Todos os Atributos
Eventos
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados text
  • Máximo de caracteres 4
  • Mínimo de caracteres 4
📊 Dados
  • Campo OndeVou ano_fabricacao
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Ano modelo
💾 Grava
Campo Tabela ano_modelo
Campo VIEW / Exibido ano_modelo
Tipo text
Data Table veiculos
Descrição

Campo ano modelo

📋 Todos os Atributos
Eventos
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados text
  • Máximo de caracteres 4
  • Mínimo de caracteres 4
📊 Dados
  • Campo OndeVou ano_modelo
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📋 Tara KG
💾 Grava
Campo Tabela tara_kg
Campo VIEW / Exibido tara_kg
Tipo number
Data Table veiculos
Descrição

Campo tara kg

📋 Todos os Atributos
Eventos
  • Tecla solta setInputFormatNumber(this,`0`) 📌 setInputFormatNumber
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou tara_kg
  • Tabela OndeVou veiculos
  • Tabelas: veiculos ✅
  • Eventos: keyup
📋 Capacidade KG
💾 Grava
Campo Tabela capacidade_kg
Campo VIEW / Exibido capacidade_kg
Tipo number
Data Table veiculos
Descrição

Campo capacidade kg

📋 Todos os Atributos
Eventos
  • Tecla solta setInputFormatNumber(this,`0`) 📌 setInputFormatNumber
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou capacidade_kg
  • Tabela OndeVou veiculos
  • Tabelas: veiculos ✅
  • Eventos: keyup
📋 Capacidade M3
💾 Grava
Campo Tabela capacidade_m3
Campo VIEW / Exibido capacidade_m3
Tipo number
Data Table veiculos
Descrição

Campo capacidade m3

📋 Todos os Atributos
Eventos
  • Tecla solta setInputFormatNumber(this,`0`) 📌 setInputFormatNumber
  • Tecla pressionada/solta return SomenteNumero(event) 📌 return
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou capacidade_m3
  • Tabela OndeVou veiculos
  • Tabelas: veiculos ✅
  • Eventos: keyup
📋 Ativo
💾 Grava
Campo Tabela ativo
Campo VIEW / Exibido ativo
Tipo text
Data Table veiculos,auditor_veiculos
Descrição

Campo ativo

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
  • Tipo de input checkbox
  • Checkbox options {"Sim":["S","N"]}
📊 Dados
  • Campo OndeVou ativo
  • Tabela OndeVou veiculos,auditor_veiculos
  • Tabelas: veiculos, auditor_veiculos ✅
  • Checkbox: configurado
📋 Disponível
💾 Grava
Campo Tabela disponivel
Campo VIEW / Exibido disponivel
Tipo text
Data Table veiculos,auditor_veiculos
Descrição

Campo disponível

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
  • Tipo de input checkbox
  • Checkbox options {"Sim":["S","N"]}
📊 Dados
  • Campo OndeVou disponivel
  • Tabela OndeVou veiculos,auditor_veiculos
  • Tabelas: veiculos, auditor_veiculos ✅
  • Checkbox: configurado
📋 Observação
💾 Grava
Campo Tabela observacao
Campo VIEW / Exibido observacao
Tipo text
Data Table veiculos
Descrição

Campo observação

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou observacao
  • Tabela OndeVou veiculos
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: veiculos ✅
  • FormSearch: ✓
📌 Legenda: 🔑 PRIMARY KEY ✅ Obrigatório 🔒 Somente leitura 👁️ Oculto 💾 Grava 📋 Somente view 🔗 getdata 📝 putdata 🔢 AutoInc 📱 QR Code 📋 Auditoria 📱 GetCollector

🔗 Relacionamentos

Tabelas relacionadas via getdata.

veiculos · Principal: Placa 📄
uf · Principal: UF placa 📄
veiculos_marca · Auxiliar: Marca 📚
veiculos_modelo · Auxiliar: Modelo 📚
veiculos_cor · Auxiliar: Cor 📚
veiculos_propriedade · Auxiliar: Propriedade 📚
veiculos_tipo_proprietario · Auxiliar: Tipo proprietário 📚
veiculos_tipo_carroceria · Auxiliar: Tipo carroceria 📚
veiculos_tipo_rodado · Auxiliar: Tipo rodado 📚
veiculos_tipo_veiculo · Auxiliar: Tipo veículo 📚

🔍 Filtros (formsearch)

Campos disponíveis para filtragem na busca.

Apenas veículos ativos checkbox
Apenas veículos inativos checkbox
Apenas veículos disponíveis checkbox
Apenas veículos indisponíveis checkbox

🎮 Controles Disponíveis

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

📂 Controle
🔘 Add add 🔘 Copy copy 🔘 Edit edit 💾 Salvar save 🔘 Delete delete 🔘 Remove remove
📂 Documento
📱 Gerar QR Code qrcode

👁️ View Associada

Nome: view_veiculos

📱 GetCollector - Coleta de Dados

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

Configuração (JSON expandido)

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

Tipos de QR Code

  • vei: Veículo

Detalhes

  • Table Add: addTableColetar_dados_leituras

📱 QR Code

A tabela veiculos possui geração automática de QR Code.

Configuração

'qrcode': {
    'input': {
        'readonly': 'readonly',
        'type': 'canvas',
        'qrcode-type': 'vei',
        'qrcode-text-fields': 'placa_veiculo',
        'data-type-ondevou': 'text',
        'data-field-ondevou': 'qrcode',
        'data-table-ondevou': 'qrcode'
    }
}

Como funciona

  • Geração automática: Ao salvar o registro
  • Formato: ondevou_vei_{participante}_{id}
  • Uso: Identificação física do registro

🔑 PRIMARY KEY - Campo Id

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

Configuração

'Id': {
    'input': {
        'readonly': 'readonly',
        'data-type-ondevou': 'number',
        'data-field-ondevou': 'id',
        "data-field-alias-ondevou": "id_veiculo",
        'data-table-ondevou': 'veiculos,auditor_veiculos'
    }
}

Comportamento

  • 🔒 Readonly: Campo não editável
  • 📊 Tipo: number
  • 🔹 Alias na VIEW: id_veiculo
  • 📋 Auditoria: Grava em veiculos,auditor_veiculos

🎮 Controls-Ação

📂 Documento
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 45 KB
{
  "table-id": "veiculos",
  "data-table-ondevou": "veiculos",
  "data-table-auditor": "auditor_veiculos",
  "data-field-auditor": "id_veiculo",
  "table-launch-filter": "nao",
  "table-class": "highlight",
  "controls": [
    "add",
    "copy",
    "edit",
    "save",
    "qrcode",
    "delete",
    "remove"
  ],
  "html": {
    "div": {
      "before": "",
      "after": ""
    }
  },
  "entidade": {
    "page": "veiculo",
    "title": "Veículo",
    "table": "veiculos",
    "campo_id": "id_veiculo",
    "view": "view_veiculos",
    "where_post": "",
    "function": "getVeiculoQrCode",
    "ogTitle": "Gestão de Frota Inteligente: Controle Total com OndeVou.com",
    "ogDescription": "Otimize sua frota com OndeVou.com. Monitore manutenção, consumo, desempenho e documentação, garantindo eficiência máxima para sua operação.",
    "ogImage": "",
    "ogUrl": "https://ondevou.com/veiculo",
    "ogKeywords": "gestão de frota, controle de veículos, monitoramento de frota, eficiência logística, frota empresarial, ondevou, onde, onde ir, software",
    "sobre": {},
    "posts": {
      "1": {
        "id_post": "1",
        "nome_rotina": "Sobre OndeVou Veículos",
        "descricao": "O OndeVou Veículos é a solução ideal para empresas que precisam gerenciar frotas de forma eficiente. Com rastreamento em tempo real, controle de manutenção, abastecimento e relatórios detalhados, reduzimos custos operacionais e aumentamos a eficiência.",
        "id_rotina": "",
        "id_membro": "",
        "nome_membro": "Firmino Moreira Gusmão",
        "razao_social": "ONDEVOU.COM TECNOLOGIA LTDA",
        "cnpj": "17.058.605/0001-36",
        "razao_social_cliente": "",
        "nome_fantasia_cliente": "",
        "tabela_origem": "",
        "id_origem": "",
        "data_criacao": 1786541101054,
        "link_post": {
          "title": "Saiba mais sobre o OndeVou Veículos",
          "url": "plataforma/produto/veiculos",
          "onclick": "navClose();startMenu(this);return false;",
          "menu": "506"
        }
      }
    }
  },
  "routines": {
    "view": "266",
    "add": "29",
    "edit": "30"
  },
  "pdf": {
    "orientation": "landscape",
    "format": "a3",
    "unit": "pt",
    "data-view": "table",
    "columns": [
      "Id",
      "Placa",
      "UF placa",
      "Descrição",
      "Marca",
      "Modelo",
      "Cor",
      "Propriedade",
      "Nome proprietário",
      "Renavam",
      "Ano fabricação",
      "Ano modelo",
      "Ativo",
      "Disponível",
      "Observação"
    ]
  },
  "search": {
    "id_search_veiculo": {
      "data-type-ondevou": "number",
      "texto_label": "Veículo",
      "title": "Digite parte do descrição ou placa do véiculo",
      "data-field-ondevou": "id_search_veiculo",
      "data-table-ondevou": "view_veiculos",
      "getcollector": "{\"qrcode\":\"{\\\"qrcode-type\\\":[\\\"vei\\\"]}\",\"table-setups\":\"{\\\"search\\\":\\\"nao\\\",\\\"html\\\":\\\"nao\\\",\\\"controls\\\":[\\\"info\\\",\\\"remove\\\"]}\"}",
      "getdata": "{\"view\":\"view_veiculos\",\"data\":\"view_veiculos\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_veiculo\",\"campo-data-value-input\":\"id_veiculo,placa_veiculo,descricao_veiculo\",\"campo-data-input-select-view\":\"id_veiculo,placa_veiculo,descricao_veiculo,renavam\",\"query\":{\"select\":\"* from view_veiculos\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_veiculo,` `,placa_veiculo,` `,descricao_veiculo,` `,renavam))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}}}}"
    }
  },
  "headers": {
    "Id": {
      "width": "7%"
    },
    "qrcode": {
      "width": "100px",
      "align": "left",
      "class": "qrcode"
    },
    "Participante": {
      "width": "11%"
    },
    "Placa": {
      "width": "10%"
    },
    "UF placa": {
      "width": "7%"
    },
    "Descrição": {
      "width": "15%"
    },
    "Marca": {
      "width": "10%"
    },
    "Modelo": {
      "width": "10%"
    },
    "Cor": {
      "width": "10%"
    },
    "Propriedade": {
      "width": "10%"
    },
    "Tipo proprietário": {
      "width": "10%"
    },
    "Tipo carroceria": {
      "width": "10%"
    },
    "Tipo rodado": {
      "width": "10%"
    },
    "Tipo veículo": {
      "width": "10%"
    },
    "Nome proprietário": {
      "width": "15%"
    },
    "UF proprietário": {
      "width": "10%"
    },
    "CNPJ proprietário": {
      "width": "10%"
    },
    "CPF proprietário": {
      "width": "10%"
    },
    "Inscrição estadual proprietário": {
      "width": "10%"
    },
    "RNTRC": {
      "width": "10%"
    },
    "Renavam": {
      "width": "10%"
    },
    "Chassi": {
      "width": "10%"
    },
    "Ano fabricação": {
      "width": "10%"
    },
    "Ano modelo": {
      "width": "10%"
    },
    "Tara KG": {
      "width": "10%"
    },
    "Capacidade KG": {
      "width": "10%"
    },
    "Capacidade M3": {
      "width": "10%"
    },
    "Ativo": {
      "width": "7%"
    },
    "Disponível": {
      "width": "8%"
    },
    "Observação": {
      "width": "15%"
    }
  },
  "columns": {
    "Id": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "clear-not-participante": "sim",
        "data-field-ondevou": "id",
        "data-field-alias-ondevou": "id_veiculo",
        "data-table-ondevou": "veiculos,auditor_veiculos",
        "controls-acao": {
          "qrcode": {
            "acao": "getQRcode",
            "messagem": "Gerar QR Code"
          }
        },
        "formsearch": {
          "required": ""
        }
      }
    },
    "qrcode": {
      "input": {
        "readonly": "readonly",
        "type": "canvas",
        "qrcode-type": "vei",
        "qrcode-text-fields": "placa_veiculo",
        "data-type-ondevou": "text",
        "data-field-ondevou": "qrcode",
        "data-table-ondevou": "qrcode"
      }
    },
    "Participante": {
      "input": {
        "readonly": "readonly",
        "required": "required",
        "data-type-ondevou": "text",
        "value": "1",
        "data-field-ondevou": "participante",
        "data-table-ondevou": "veiculos,auditor_veiculos"
      }
    },
    "Placa": {
      "input": {
        "required": "required",
        "data-type-ondevou": "text",
        "data-field-ondevou": "placa",
        "data-field-alias-ondevou": "placa_veiculo",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_veiculos\",\"data\":\"view_veiculos\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_veiculo\",\"campo-data-value-input\":\"id_veiculo,placa_veiculo,descricao_veiculo\",\"campo-data-input-select-view\":\"id_veiculo,placa_veiculo,descricao_veiculo,renavam\",\"query\":{\"select\":\"* from view_veiculos\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_veiculo,` `,placa_veiculo,` `,descricao_veiculo,` `,renavam))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "UF placa": {
      "input": {
        "required": "required",
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_uf_licenciamento",
        "data-field-ondevou": "sigla_uf_licenciamento",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_uf\",\"data\":\"view_uf\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_uf\",\"campo-data-value-input\":\"sigla_uf\",\"campo-data-input-select-view\":\"nome_uf,sigla_uf\",\"query\":{\"select\":\"* from view_uf\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(nome_uf,` `,sigla_uf))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Descrição": {
      "input": {
        "required": "required",
        "data-type-ondevou": "text",
        "data-field-ondevou": "descricao",
        "data-field-alias-ondevou": "descricao_veiculo",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_veiculos\",\"data\":\"view_veiculos\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_veiculo\",\"campo-data-value-input\":\"id_veiculo,placa_veiculo,descricao_veiculo\",\"campo-data-input-select-view\":\"id_veiculo,placa_veiculo,descricao_veiculo,renavam\",\"query\":{\"select\":\"* from view_veiculos\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_veiculo,` `,placa_veiculo,` `,descricao_veiculo,` `,renavam))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Marca": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_marca",
        "data-field-ondevou": "nome_marca",
        "data-table-ondevou": "veiculos",
        "putdata": "{\"tabela\":\"veiculos_marca\",\"unique\":\"nome\",\"fields\":{\"nome\":\"nome_marca\"}}",
        "getdata": "{\"view\":\"view_veiculos_marca\",\"data\":\"view_veiculos_marca\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_marca\",\"campo-data-value-input\":\"nome_marca\",\"campo-data-input-select-view\":\"nome_marca\",\"query\":{\"select\":\"* from view_veiculos_marca\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_marca,` `,nome_marca))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Modelo": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_modelo",
        "data-field-ondevou": "nome_modelo",
        "data-table-ondevou": "veiculos",
        "putdata": "{\"tabela\":\"veiculos_modelo\",\"unique\":\"nome\",\"fields\":{\"nome\":\"nome_modelo\"}}",
        "getdata": "{\"view\":\"view_veiculos_modelo\",\"data\":\"view_veiculos_modelo\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_modelo\",\"campo-data-value-input\":\"nome_modelo\",\"campo-data-input-select-view\":\"nome_modelo\",\"query\":{\"select\":\"* from view_veiculos_modelo\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_modelo,` `,nome_modelo))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Cor": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_cor",
        "data-field-ondevou": "nome_cor",
        "data-table-ondevou": "veiculos",
        "putdata": "{\"tabela\":\"veiculos_cor\",\"unique\":\"nome\",\"fields\":{\"nome\":\"nome_cor\"}}",
        "getdata": "{\"view\":\"view_veiculos_cor\",\"data\":\"view_veiculos_cor\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_cor\",\"campo-data-value-input\":\"nome_cor\",\"campo-data-input-select-view\":\"nome_cor\",\"query\":{\"select\":\"* from view_veiculos_cor\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_cor,` `,nome_cor))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Propriedade": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_propriedade",
        "data-field-ondevou": "descricao_propriedade",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_veiculos_propriedade\",\"data\":\"view_veiculos_propriedade\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_propriedade\",\"campo-data-value-input\":\"descricao_propriedade\",\"campo-data-input-select-view\":\"descricao_propriedade\",\"query\":{\"select\":\"* from view_veiculos_propriedade\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_propriedade,` `,descricao_propriedade))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Tipo proprietário": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_tipo_proprietario",
        "data-field-ondevou": "descricao_tipo_proprietario",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_veiculos_tipo_proprietario\",\"data\":\"view_veiculos_tipo_proprietario\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_tipo_proprietario\",\"campo-data-value-input\":\"tipo_proprietario,descricao_tipo_proprietario\",\"campo-data-input-select-view\":\"tipo_proprietario,descricao_tipo_proprietario\",\"query\":{\"select\":\"* from view_veiculos_tipo_proprietario\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_tipo_proprietario,` `,tipo_proprietario,` `,descricao_tipo_proprietario))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Tipo carroceria": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_tipo_carroceria",
        "data-field-ondevou": "descricao_tipo_carroceria",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_veiculos_tipo_carroceria\",\"data\":\"view_veiculos_tipo_carroceria\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_tipo_carroceria\",\"campo-data-value-input\":\"tipo_carroceria,descricao_tipo_carroceria\",\"campo-data-input-select-view\":\"tipo_carroceria,descricao_tipo_carroceria\",\"query\":{\"select\":\"* from view_veiculos_tipo_carroceria\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_tipo_carroceria,` `,tipo_carroceria,` `,descricao_tipo_carroceria))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Tipo rodado": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_tipo_rodado",
        "data-field-ondevou": "descricao_tipo_rodado",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_veiculos_tipo_rodado\",\"data\":\"view_veiculos_tipo_rodado\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_tipo_rodado\",\"campo-data-value-input\":\"tipo_rodado,descricao_tipo_rodado\",\"campo-data-input-select-view\":\"tipo_rodado,descricao_tipo_rodado\",\"query\":{\"select\":\"* from view_veiculos_tipo_rodado\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_tipo_rodado,` `,tipo_rodado,` `,descricao_tipo_rodado))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Tipo veículo": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_tipo_veiculo",
        "data-field-ondevou": "descricao_tipo_veiculo",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_veiculos_tipo_veiculo\",\"data\":\"view_veiculos_tipo_veiculo\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_tipo_veiculo\",\"campo-data-value-input\":\"descricao_tipo_veiculo\",\"campo-data-input-select-view\":\"descricao_tipo_veiculo\",\"query\":{\"select\":\"* from view_veiculos_tipo_veiculo\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_tipo_veiculo,` `,descricao_tipo_veiculo))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Nome proprietário": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "razao_social_nome_proprietario",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    },
    "UF proprietário": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_uf_proprietario",
        "data-field-ondevou": "sigla_uf_proprietario",
        "data-table-ondevou": "veiculos",
        "getdata": "{\"view\":\"view_uf\",\"data\":\"view_uf\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_uf\",\"campo-data-value-input\":\"sigla_uf\",\"campo-data-input-select-view\":\"nome_uf,sigla_uf\",\"query\":{\"select\":\"* from view_uf\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(nome_uf,` `,sigla_uf))) ilike `%\",\"right\":\"%`)\"}}}}}"
      }
    },
    "CNPJ proprietário": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "cnpj_proprietario",
        "maxlength": "18",
        "minlength": "18",
        "onkeypress": "return SomenteNumero(event)",
        "onkeyup": "setInputFormatCnpj(this)",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    },
    "CPF proprietário": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "cpf_proprietario",
        "maxlength": "14",
        "minlength": "14",
        "onkeypress": "return SomenteNumero(event)",
        "onkeyup": "setInputFormatCpf(this)",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Inscrição estadual proprietário": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "inscricao_estadual_proprietario",
        "onkeypress": "return SomenteNumero(event)",
        "data-table-ondevou": "veiculos"
      }
    },
    "RNTRC": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "rntrc_proprietario",
        "onkeypress": "return SomenteNumero(event)",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Renavam": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "renavam",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Chassi": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "chassi",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Ano fabricação": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "ano_fabricacao",
        "maxlength": "4",
        "minlength": "4",
        "onkeypress": "return SomenteNumero(event)",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Ano modelo": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "ano_modelo",
        "data-table-ondevou": "veiculos",
        "maxlength": "4",
        "minlength": "4",
        "onkeypress": "return SomenteNumero(event)",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Tara KG": {
      "input": {
        "data-type-ondevou": "number",
        "data-field-ondevou": "tara_kg",
        "onkeypress": "return SomenteNumero(event)",
        "onkeyup": "setInputFormatNumber(this,`0`)",
        "data-table-ondevou": "veiculos"
      }
    },
    "Capacidade KG": {
      "input": {
        "data-type-ondevou": "number",
        "data-field-ondevou": "capacidade_kg",
        "onkeypress": "return SomenteNumero(event)",
        "onkeyup": "setInputFormatNumber(this,`0`)",
        "data-table-ondevou": "veiculos"
      }
    },
    "Capacidade M3": {
      "input": {
        "data-type-ondevou": "number",
        "data-field-ondevou": "capacidade_m3",
        "onkeypress": "return SomenteNumero(event)",
        "onkeyup": "setInputFormatNumber(this,`0`)",
        "data-table-ondevou": "veiculos"
      }
    },
    "Ativo": {
      "input": {
        "data-type-ondevou": "text",
        "type": "checkbox",
        "checkbox-options": "{\"Sim\":[\"S\",\"N\"]}",
        "data-field-ondevou": "ativo",
        "data-table-ondevou": "veiculos,auditor_veiculos"
      }
    },
    "Disponível": {
      "input": {
        "data-type-ondevou": "text",
        "type": "checkbox",
        "checkbox-options": "{\"Sim\":[\"S\",\"N\"]}",
        "data-field-ondevou": "disponivel",
        "data-table-ondevou": "veiculos,auditor_veiculos"
      }
    },
    "Observação": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "observacao",
        "data-table-ondevou": "veiculos",
        "formsearch": {
          "required": ""
        }
      }
    }
  },
  "formsearch": {
    "data-table-ondevou": "view_veiculos",
    "data-where-order": "order by id_veiculo desc",
    "data-where-fixed": "participante in (`1`)",
    "input": {
      "apenas_veiculos_ativos": {
        "data-field-ondevou": "apenas_veiculos_ativos",
        "data-type-ondevou": "text",
        "type": "checkbox",
        "divClass": "col s12 m1",
        "texto_label": "Apenas veículos ativos",
        "data-where-true": "ativo=`S`"
      },
      "apenas_veiculos_inativos": {
        "data-field-ondevou": "apenas_veiculos_inativos",
        "data-type-ondevou": "text",
        "type": "checkbox",
        "divClass": "col s12 m1",
        "texto_label": "Apenas veículos inativos",
        "data-where-true": "ativo!=`S`"
      },
      "apenas_veiculos_disponiveis": {
        "data-field-ondevou": "apenas_veiculos_disponiveis",
        "data-type-ondevou": "text",
        "type": "checkbox",
        "divClass": "col s12 m1",
        "texto_label": "Apenas veículos disponíveis",
        "data-where-true": "disponivel=`S`"
      },
      "apenas_veiculos_indisponiveis": {
        "data-field-ondevou": "apenas_veiculos_indisponiveis",
        "data-type-ondevou": "text",
        "type": "checkbox",
        "divClass": "col s12 m1",
        "texto_label": "Apenas veículos indisponíveis",
        "data-where-true": "disponivel!=`S`"
      }
    }
  },
  "dashboard": {
    "enabled": true,
    "theme": "modern",
    "layout": "free",
    "auto_refresh": false,
    "header": {
      "logo": {
        "src": "img/ondevou_plataforma.png",
        "alt": "OndeVou Plataforma",
        "class": "dashboard-logo-img"
      },
      "title": "GESTÃO DE FROTA - VEÍCULOS",
      "subtitle": "Controle completo da frota: características, propriedades, tipos e disponibilidade",
      "filters_area": {
        "container_id": "dashboard-filters-area",
        "empty_message": "Sem filtros"
      },
      "actions": [
        {
          "type": "button",
          "container_id": "dashboard-atualizar-dados",
          "class": "dashboard-btn dashboard-btn-sm dashboard-btn-primary",
          "icon": "fas fa-sync-alt",
          "text": "Atualizar",
          "action": "dashboard_refreshData",
          "title": "Atualizar Dados"
        },
        {
          "type": "button",
          "container_id": "dashboard-voltar-dados",
          "class": "dashboard-btn dashboard-btn-sm dashboard-btn-outline",
          "icon": "fas fa-table",
          "text": "Voltar para dados",
          "action": "voltarParaDadosFromDashboard",
          "title": "Voltar para dados"
        },
        {
          "type": "button",
          "container_id": "dashboard-auto-refresh",
          "class": "dashboard-btn dashboard-btn-sm dashboard-btn-info",
          "icon": "fas fa-clock",
          "text": "Auto-Refresh",
          "action": "dashboard_toggleAutoRefresh",
          "title": "Alternar escuta automática de dados"
        }
      ]
    },
    "sections": {
      "bloco1_resumos_frota": {
        "type": "summary_cards_full",
        "title": "🚗 RESUMOS PRINCIPAIS - FROTA",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "cards-resumos-frota",
          "size": "full",
          "cards": [
            {
              "title": "TOTAL DE VEÍCULOS",
              "value": "COUNT:id_veiculo",
              "format": "numero",
              "decimals": 0,
              "suffix": " veículos",
              "icon": "🚗",
              "color": "#2c3e50"
            },
            {
              "title": "VEÍCULOS ATIVOS",
              "value": "COUNT:id_veiculo",
              "filters": "ativo = \"S\"",
              "format": "numero",
              "decimals": 0,
              "suffix": " veículos",
              "icon": "✅",
              "color": "#27ae60"
            },
            {
              "title": "VEÍCULOS DISPONÍVEIS",
              "value": "COUNT:id_veiculo",
              "filters": "disponivel = \"S\"",
              "format": "numero",
              "decimals": 0,
              "suffix": " veículos",
              "icon": "🟢",
              "color": "#2ecc71"
            },
            {
              "title": "VEÍCULOS PRÓPRIOS",
              "value": "COUNT_DISTINCT:placa_veiculo",
              "filters": "id_propriedade = 1",
              "format": "numero",
              "decimals": 0,
              "suffix": " veículos",
              "icon": "🏢",
              "color": "#3498db"
            },
            {
              "title": "VEÍCULOS TERCEIROS",
              "value": "COUNT_DISTINCT:placa_veiculo",
              "filters": "id_propriedade = 2",
              "format": "numero",
              "decimals": 0,
              "suffix": " veículos",
              "icon": "🤝",
              "color": "#9b59b6"
            },
            {
              "title": "CAPACIDADE TOTAL",
              "value": "SUM:capacidade_kg",
              "format": "numero",
              "decimals": 0,
              "suffix": " kg",
              "icon": "⚖️",
              "color": "#16a085"
            },
            {
              "title": "CAPACIDADE MÉDIA",
              "value": "AVG:capacidade_kg",
              "format": "numero",
              "decimals": 0,
              "suffix": " kg",
              "icon": "📊",
              "color": "#1abc9c"
            }
          ]
        }
      },
      "bloco2_metricas_frota": {
        "type": "summary_cards_grid",
        "title": "📊 MÉTRICAS DETALHADAS - FROTA",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "cards-metricas-frota",
          "size": "full",
          "sections": [
            {
              "title": "📈 ESTATÍSTICAS",
              "cards": [
                {
                  "title": "VEÍCULOS INATIVOS",
                  "value": "COUNT:id_veiculo",
                  "filters": "ativo = \"N\"",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " veículos",
                  "icon": "⛔",
                  "color": "#e74c3c"
                },
                {
                  "title": "VEÍCULOS INDISPONÍVEIS",
                  "value": "COUNT:id_veiculo",
                  "filters": "disponivel = \"N\"",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " veículos",
                  "icon": "🔴",
                  "color": "#e67e22"
                },
                {
                  "title": "MARCAS DIFERENTES",
                  "value": "COUNT_DISTINCT:nome_marca",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " marcas",
                  "icon": "🏭",
                  "color": "#e74c3c"
                },
                {
                  "title": "MODELOS DIFERENTES",
                  "value": "COUNT_DISTINCT:nome_modelo",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " modelos",
                  "icon": "🚙",
                  "color": "#f39c12"
                }
              ]
            },
            {
              "title": "⚖️ CAPACIDADE",
              "cards": [
                {
                  "title": "TARA TOTAL",
                  "value": "SUM:tara_kg",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " kg",
                  "icon": "🏋️",
                  "color": "#d35400"
                },
                {
                  "title": "TARA MÉDIA",
                  "value": "AVG:tara_kg",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " kg",
                  "icon": "⚖️",
                  "color": "#e67e22"
                },
                {
                  "title": "PBT MÉDIO",
                  "value": "CALC:AVG(tara_kg + capacidade_kg)",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " kg",
                  "icon": "🚛",
                  "color": "#8e44ad"
                },
                {
                  "title": "CAPACIDADE M3 TOTAL",
                  "value": "SUM:capacidade_m3",
                  "format": "numero",
                  "decimals": 2,
                  "suffix": " m³",
                  "icon": "📦",
                  "color": "#3498db"
                }
              ]
            },
            {
              "title": "🏢 PROPRIEDADE",
              "cards": [
                {
                  "title": "PROPRIETÁRIOS ÚNICOS",
                  "value": "COUNT_DISTINCT:razao_social_nome_proprietario",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " proprietários",
                  "icon": "👥",
                  "color": "#3498db"
                },
                {
                  "title": "MÉDIA POR PROPRIETÁRIO",
                  "value": "CALC:COUNT(id_veiculo)/COUNT_DISTINCT(razao_social_nome_proprietario)",
                  "format": "numero",
                  "decimals": 1,
                  "suffix": " veículos",
                  "icon": "📊",
                  "color": "#f39c12"
                },
                {
                  "title": "TIPOS DE PROPRIEDADE",
                  "value": "COUNT_DISTINCT:descricao_propriedade",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " tipos",
                  "icon": "🏠",
                  "color": "#2ecc71"
                },
                {
                  "title": "ESTADOS DE PROPRIETÁRIOS",
                  "value": "COUNT_DISTINCT:nome_uf_proprietario",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " estados",
                  "icon": "🗺️",
                  "color": "#2ecc71"
                }
              ]
            }
          ]
        }
      },
      "bloco3_analise_distribuicao": {
        "type": "charts_grid_section",
        "title": "📊 ANÁLISE DE DISTRIBUIÇÃO - STATUS E DISPONIBILIDADE",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-distribuicao-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_pie",
              "config": {
                "container_id": "distribuicao-status",
                "data_config": {
                  "group_by": "ativo",
                  "operation": "COUNT:id_veiculo",
                  "labels_map": {
                    "S": "Ativo",
                    "N": "Inativo"
                  }
                },
                "display_config": {
                  "title": "✅ STATUS DOS VEÍCULOS",
                  "colors": [
                    "#2ecc71",
                    "#e74c3c"
                  ],
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "limit": 5,
                  "show_legend": true,
                  "show_values": true,
                  "show_percentages": true,
                  "donut": true,
                  "legend_position": "right",
                  "height": "350px"
                }
              }
            },
            {
              "type": "chart_pie",
              "config": {
                "container_id": "distribuicao-disponibilidade",
                "data_config": {
                  "group_by": "disponivel",
                  "operation": "COUNT:id_veiculo",
                  "labels_map": {
                    "S": "Disponível",
                    "N": "Indisponível"
                  }
                },
                "display_config": {
                  "title": "🟢 DISPONIBILIDADE",
                  "colors": [
                    "#2ecc71",
                    "#e67e22"
                  ],
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "limit": 5,
                  "show_legend": true,
                  "show_values": true,
                  "show_percentages": true,
                  "donut": true,
                  "legend_position": "right",
                  "height": "350px"
                }
              }
            }
          ]
        }
      },
      "bloco4_analise_tipos": {
        "type": "charts_grid_section",
        "title": "🚗 ANÁLISE POR TIPO DE VEÍCULO E CARROCERIA",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-tipos-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-tipo-veiculo",
                "data_config": {
                  "group_by": "descricao_tipo_veiculo",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "🏷️ DISTRIBUIÇÃO POR TIPO DE VEÍCULO",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "400px",
                  "color": "#3498db"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-tipo-carroceria",
                "data_config": {
                  "group_by": "descricao_tipo_carroceria",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "🚚 DISTRIBUIÇÃO POR TIPO DE CARROCERIA",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "400px",
                  "color": "#e74c3c"
                }
              }
            }
          ]
        }
      },
      "bloco5_analise_marca_modelo": {
        "type": "charts_grid_section",
        "title": "🏭 ANÁLISE POR MARCA E MODELO",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-marca-modelo-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "ranking-marcas",
                "data_config": {
                  "group_by": "nome_marca",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "🏆 TOP MARCAS DA FROTA",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "400px",
                  "color": "#e74c3c"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "ranking-modelos",
                "data_config": {
                  "group_by": "nome_modelo",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "🏆 TOP MODELOS DA FROTA",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "400px",
                  "color": "#3498db"
                }
              }
            }
          ]
        }
      },
      "bloco6_analise_propriedade": {
        "type": "charts_grid_section",
        "title": "🏢 ANÁLISE POR PROPRIEDADE E PROPRIETÁRIO",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-propriedade-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-tipo-propriedade",
                "data_config": {
                  "group_by": "descricao_propriedade",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "📊 DISTRIBUIÇÃO POR TIPO DE PROPRIEDADE",
                  "layout": "vertical",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#2ecc71"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "top-proprietarios",
                "data_config": {
                  "group_by": "razao_social_nome_proprietario",
                  "operation": "COUNT:id_veiculo",
                  "filters_aggregation": "value > 1"
                },
                "display_config": {
                  "title": "👥 TOP PROPRIETÁRIOS (MAIS VEÍCULOS)",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#9b59b6"
                }
              }
            }
          ]
        }
      },
      "bloco7_analise_ano": {
        "type": "charts_grid_section",
        "title": "📅 ANÁLISE POR ANO DE FABRICAÇÃO E MODELO",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-ano-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-ano-fabricacao",
                "data_config": {
                  "group_by": "ano_fabricacao",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "📈 EVOLUÇÃO POR ANO DE FABRICAÇÃO",
                  "layout": "vertical",
                  "format": "numero",
                  "format_legend": "ano_4_digitos",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "ASC",
                  "limit": 15,
                  "height": "350px",
                  "color": "#3498db"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-ano-modelo",
                "data_config": {
                  "group_by": "ano_modelo",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "📈 EVOLUÇÃO POR ANO DO MODELO",
                  "layout": "vertical",
                  "format": "numero",
                  "format_legend": "ano_4_digitos",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "ASC",
                  "limit": 15,
                  "height": "350px",
                  "color": "#2ecc71"
                }
              }
            }
          ]
        }
      },
      "bloco8_analise_capacidade": {
        "type": "charts_grid_section",
        "title": "⚖️ ANÁLISE DE CAPACIDADE POR TIPO DE VEÍCULO",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-capacidade-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "capacidade-kg-tipo",
                "data_config": {
                  "group_by": "descricao_tipo_veiculo",
                  "operation": "AVG:capacidade_kg"
                },
                "display_config": {
                  "title": "🏋️ CAPACIDADE MÉDIA EM KG POR TIPO",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " kg",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#16a085"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "pbt-medio-tipo",
                "data_config": {
                  "group_by": "descricao_tipo_veiculo",
                  "operation": "CALC:AVG(tara_kg + capacidade_kg)"
                },
                "display_config": {
                  "title": "🚛 PBT MÉDIO POR TIPO DE VEÍCULO",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " kg",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#8e44ad"
                }
              }
            }
          ]
        }
      },
      "bloco9_analise_geografica": {
        "type": "charts_grid_section",
        "title": "🗺️ ANÁLISE GEOGRÁFICA - UF LICENCIAMENTO E PROPRIETÁRIO",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-geografica-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-uf-licenciamento",
                "data_config": {
                  "group_by": "sigla_uf_licenciamento",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "📍 DISTRIBUIÇÃO POR UF DE LICENCIAMENTO",
                  "layout": "vertical",
                  "format": "numero",
                  "format_legend": "maiusculo",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#3498db"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-uf-proprietario",
                "data_config": {
                  "group_by": "nome_uf_proprietario",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "👤 DISTRIBUIÇÃO POR UF DO PROPRIETÁRIO",
                  "layout": "vertical",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#2ecc71"
                }
              }
            }
          ]
        }
      },
      "bloco10_analise_participante_cor": {
        "type": "charts_grid_section",
        "title": "👥 ANÁLISE POR PARTICIPANTE E CORES",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "analise-participante-cor-grid",
          "layout": "grid-2",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "ranking-participantes",
                "data_config": {
                  "group_by": "participante",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "🏆 TOP PARTICIPANTES POR VEÍCULOS",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#9b59b6"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "distribuicao-cores",
                "data_config": {
                  "group_by": "nome_cor",
                  "operation": "COUNT:id_veiculo"
                },
                "display_config": {
                  "title": "🎨 DISTRIBUIÇÃO POR COR DOS VEÍCULOS",
                  "layout": "vertical",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " veículos",
                  "sort_order": "DESC",
                  "limit": 10,
                  "height": "350px",
                  "color": "#e74c3c"
                }
              }
            }
          ]
        }
      }
    }
  },
  "url_documentacao": "/docs/ondevou-db-veiculos.html",
  "nome_tabela": "veiculos"
}

📝 SQL CREATE TABLE - Estrutura Completa

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

🏗️ Estrutura Completa

📋 29 colunas 🔗 2 constraints 📑 13 índices ⚡ 0 triggers
code Clique para ver o SQL completo ✅ COMPLETO
-- ============================================================
-- ESTRUTURA COMPLETA DA TABELA veiculos
-- Fonte: PostgreSQL - 12/08/2026 10:25:01
-- ============================================================

CREATE TABLE public.veiculos (
    id integer NOT NULL DEFAULT nextval('veiculos_id_seq'::regclass),
    participante integer,
    placa varchar(255),
    descricao varchar(255),
    renavam varchar(255),
    tara_kg integer,
    capacidade_kg integer,
    capacidade_m3 integer,
    cpf_proprietario varchar(255),
    cnpj_proprietario varchar(255),
    inscricao_estadual_proprietario varchar(255),
    rntrc_proprietario varchar(255),
    razao_social_nome_proprietario varchar(255),
    id_propriedade integer,
    id_tipo_carroceria integer,
    id_tipo_proprietario integer,
    id_tipo_rodado integer,
    id_tipo_veiculo integer,
    id_uf_proprietario integer,
    id_uf_licenciamento integer,
    ativo varchar(1),
    chassi varchar(255),
    id_marca integer,
    id_cor integer,
    ano_fabricacao varchar(4),
    ano_modelo varchar(4),
    id_modelo integer,
    disponivel varchar(1),
    observacao varchar(255),
    CONSTRAINT veiculos_pkey PRIMARY KEY (id),
    CONSTRAINT 2200_222252_1_not_null CHECK (id IS NOT NULL)
);

-- ============================================================
-- ÍNDICES
-- ============================================================
CREATE INDEX idx_veiculos_id_cor ON public.veiculos USING btree (id_cor);
CREATE INDEX idx_veiculos_id_marca ON public.veiculos USING btree (id_marca);
CREATE INDEX idx_veiculos_id_modelo ON public.veiculos USING btree (id_modelo);
CREATE INDEX idx_veiculos_id_propriedade ON public.veiculos USING btree (id_propriedade);
CREATE INDEX idx_veiculos_id_tipo_carroceria ON public.veiculos USING btree (id_tipo_carroceria);
CREATE INDEX idx_veiculos_id_tipo_proprietario ON public.veiculos USING btree (id_tipo_proprietario);
CREATE INDEX idx_veiculos_id_tipo_rodado ON public.veiculos USING btree (id_tipo_rodado);
CREATE INDEX idx_veiculos_id_tipo_veiculo ON public.veiculos USING btree (id_tipo_veiculo);
CREATE INDEX idx_veiculos_id_uf_licenciamento ON public.veiculos USING btree (id_uf_licenciamento);
CREATE INDEX idx_veiculos_id_uf_proprietario ON public.veiculos USING btree (id_uf_proprietario);
CREATE INDEX idx_veiculos_p_id ON public.veiculos USING btree (participante, id DESC);
CREATE INDEX idx_veiculos_participante ON public.veiculos USING btree (participante);
CREATE UNIQUE INDEX veiculos_pk_id ON public.veiculos USING btree (id);

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
ano_fabricacao text character varying ✅ OK
ano_modelo text character varying ✅ OK
ativo text character varying ✅ OK
capacidade_kg number integer ✅ OK
capacidade_m3 number integer ✅ OK
chassi text character varying ✅ OK
cnpj_proprietario text character varying ✅ OK
cpf_proprietario text character varying ✅ OK
descricao text character varying ✅ OK
descricao_propriedade number - ⚠️ Só no JSON
descricao_tipo_carroceria number - ⚠️ Só no JSON
descricao_tipo_proprietario number - ⚠️ Só no JSON
descricao_tipo_rodado number - ⚠️ Só no JSON
descricao_tipo_veiculo number - ⚠️ Só no JSON
disponivel text character varying ✅ OK
id number integer ✅ OK
id_cor - integer ❌ Só no banco
id_marca - integer ❌ Só no banco
id_modelo - integer ❌ Só no banco
id_propriedade - integer ❌ Só no banco
id_tipo_carroceria - integer ❌ Só no banco
id_tipo_proprietario - integer ❌ Só no banco
id_tipo_rodado - integer ❌ Só no banco
id_tipo_veiculo - integer ❌ Só no banco
id_uf_licenciamento - integer ❌ Só no banco
id_uf_proprietario - integer ❌ Só no banco
inscricao_estadual_proprietario text character varying ✅ OK
nome_cor number - ⚠️ Só no JSON
nome_marca number - ⚠️ Só no JSON
nome_modelo number - ⚠️ Só no JSON
observacao text character varying ✅ OK
participante text integer ✅ OK
placa text character varying ✅ OK
qrcode text - ⚠️ Só no JSON
razao_social_nome_proprietario text character varying ✅ OK
renavam text character varying ✅ OK
rntrc_proprietario text character varying ✅ OK
sigla_uf_licenciamento number - ⚠️ Só no JSON
sigla_uf_proprietario number - ⚠️ Só no JSON
tara_kg number integer ✅ OK

💡 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_veiculos WHERE participante = ${globais.dados_fixo.participante}`,
    'view': 'view_veiculos'
});

// 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': 'veiculos' });

// 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