🗄️ Gerenciamento de Lotes de Produção: Controle e Qualidade com OndeVou.com

Monitore seus lotes de produção de forma eficiente com OndeVou.com. Nossa plataforma permite rastrear e garantir a qualidade dos seus produtos em cada etapa do processo.
🔗 Tabela relacionada: lote

📋 21 colunas 🔗 6 relacionamentos 🎮 9 controles 👁️ view_lote_producao 📱 QR Code 🔑 PRIMARY KEY 🎮 1 ações externas 📱 GetCollector

📋 Estrutura da Tabela

A tabela lote_producao possui 21 colunas.

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

Campo id

🔑 PRIMARY KEY

Campo na tabela: id

Alias na VIEW: id_lote_producao

Readonly: ✅ Gerado automaticamente pelo sistema

Grava em auditoria: ✅ Sim

Launch: ✅ Abre documento relacionado

Formsearch: ✅ Permite busca avançada

Coleta QR Code: ✅ Permite leitura via QR Code

📱 qrcode: Gerar QR Code Documento
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id
  • Alias OndeVou id_lote_producao
  • Tabela OndeVou lote_producao,auditor_lote_producao
🚀 Launch
  • {
      "type": "qrcode",
      "menu": {
        "data-id": "172"
      },
      "formsearch": {
        "id": "id_lote_producao"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
🎮 Controls Acao
  • {
      "qrcode": {
        "acao": "getQRcode",
        "messagem": "Gerar QR Code"
      }
    }
  • Alias: id_lote_producao
  • Tabelas: lote_producao, auditor_lote_producao ✅
  • Launch: ✓
  • ControlsAcao: ✓
  • FormSearch: ✓
  • 🔑 PRIMARY KEY
  • VIEW: id_lote_producao
  • 📋 Auditoria
  • 🚀 Launch
  • 📋 FormSearch
  • 📱 Coleta QR Code
📋 qrcode
🔒 Somente leitura📋 Somente view📱 QRCode: Lote Produção
Campo Tabela qrcode
Campo VIEW / Exibido qrcode ⚠️ (somente view)
Tipo canvas (QR Code: Lote Produção)
Data Table qrcode
Descrição

Campo qrcode

📱 QR Code

Tipo: Lote Produção (lp)

Texto: Campos nome

Formato: ondevou_lp_{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: Lote Produção
  • QRCode Texto: nome
📋 Participante
✅ Obrigatório🔒 Somente leitura👁️ Oculto💾 Grava
Campo Tabela participante
Campo VIEW / Exibido participante
Tipo text
Data Table lote_producao
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 lote_producao
  • Tabelas: lote_producao ✅
  • Hidden: ✓ (dados ocultos)
  • Value: 1
📋 Data hora inclusão
🔒 Somente leitura📋 Somente view
Campo Tabela data_hora_inclusao_lote_producao
Campo VIEW / Exibido data_hora_inclusao_lote_producao ⚠️ (somente view)
Tipo date
Data Table view_lote_producao
Descrição

Campo data hora inclusão

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados date
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou data_hora_inclusao_lote_producao
  • Tabela OndeVou view_lote_producao
  • Tabelas: view_lote_producao (só view)
📋 Lote produção
👁️ Oculto📋 Somente view🔗 getdata
Campo Tabela id_lote_producao
Campo VIEW / Exibido nome_lote_producao ⚠️ (somente view)
Tipo number (getdata)
Data Table view_lote_producao
Descrição

Campo lote produção

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou nome_lote_producao
  • ID OndeVou id_lote_producao
  • Tabela OndeVou view_lote_producao
🔗 Getdata
  • {
      "view": "view_lote_producao",
      "data": "view_lote_producao",
      "text-empty-search": "sim",
      "data-update-full-fields": "sim",
      "campo-data-id": "id_lote_producao",
      "campo-data-value-input": "id_lote_producao,nome_lote_producao",
      "campo-data-input-select-view": "id_lote_producao,nome_lote_producao,nome_tipo,nome_situacao",
      "query": {
        "select": "* from view_lote_producao",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_lote_producao,` `,nome_lote_producao))) ilike `%",
              "right": "%`) and (participante=`1`)"
            }
          }
        },
        "order": "id_lote_producao desc"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_lote_producao
  • Tabelas: view_lote_producao (só view)
  • Hidden: ✓ (dados ocultos)
  • FormSearch: ✓
📋 Nome/Razão Social
💾 Grava🔗 getdata
Campo Tabela id_participante
Campo VIEW / Exibido razao_social_participante (ID: id_participante)
Tipo number (getdata)
Data Table lote_producao
Descrição

Campo nome/razão social

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou razao_social_participante
  • ID OndeVou id_participante
  • Tabela OndeVou lote_producao
🔗 Getdata
  • {
      "view": "view_participantes_privado",
      "data": "view_participantes_privado",
      "campo-data-id": "id_participante",
      "campo-data-value-input": "id_participante,razao_social",
      "campo-data-input-select-view": "id_participante,codigo_erplinux_cliente,codigo_erplinux_fornecedor,razao_social,nome_fantasia,cnpj,cpf,cep,cep_erplinux,nome_bairro,nome_cidade,sigla_uf",
      "query": {
        "select": "* from view_participantes_privado",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_participante,` `,codigo_erplinux_cliente,` `,codigo_erplinux_fornecedor,` `,razao_social,` `,nome_fantasia,` `,cnpj,` `,cpf,` `,cep,` `,cep_erplinux,` `,nome_bairro,` `,nome_cidade,` `,sigla_uf))) ilike `%",
              "right": "%`) and (participante=`1`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_participante
  • Tabelas: lote_producao ✅
  • FormSearch: ✓
📋 Descrição
✅ Obrigatório💾 Grava
Campo Tabela nome
Campo VIEW / Exibido nome_lote_producao
Tipo text
Data Table lote_producao
Descrição

Campo descrição

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Obrigatório ✅ Sim
📊 Dados
  • Campo OndeVou nome
  • Alias OndeVou nome_lote_producao
  • Tabela OndeVou lote_producao
  • Alias: nome_lote_producao
  • Tabelas: lote_producao ✅
📋 Número do lote
💾 Grava
Campo Tabela numero_lote
Campo VIEW / Exibido numero_lote
Tipo text
Data Table lote_producao
Descrição

Campo número do lote

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou numero_lote
  • Tabela OndeVou lote_producao
  • Tabelas: lote_producao ✅
📋 Nota fiscal
💾 Grava
Campo Tabela nota_fiscal
Campo VIEW / Exibido nota_fiscal
Tipo text
Data Table lote_producao
Descrição

Campo nota fiscal

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
📊 Dados
  • Campo OndeVou nota_fiscal
  • Tabela OndeVou lote_producao
  • Tabelas: lote_producao ✅
📋 Data da nota
💾 Grava
Campo Tabela data_nota_fiscal
Campo VIEW / Exibido data_nota_fiscal
Tipo date
Data Table lote_producao
Descrição

Campo data da nota

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados date
📊 Dados
  • Campo OndeVou data_nota_fiscal
  • Tabela OndeVou lote_producao
  • Tabelas: lote_producao ✅
📋 Data do lote
💾 Grava
Campo Tabela data_lote_producao
Campo VIEW / Exibido data_lote_producao
Tipo date
Data Table lote_producao
Descrição

Campo data do lote

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados date
  • Tipo de input datetime-local
📊 Dados
  • Campo OndeVou data_lote_producao
  • Tabela OndeVou lote_producao
  • Tabelas: lote_producao ✅
📋 Tipo
✅ Obrigatório💾 Grava🔗 getdata
Campo Tabela id_tipo
Campo VIEW / Exibido nome_tipo (ID: id_tipo)
Tipo number (getdata)
Data Table lote_producao,auditor_lote_producao
Descrição

Campo tipo

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

Campo situação

Getdata🔗 lote_producao_situacao
📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Obrigatório ✅ Sim
📊 Dados
  • Campo OndeVou nome_situacao
  • ID OndeVou id_situacao
  • ID Default OndeVou 1
  • Tabela OndeVou lote_producao,auditor_lote_producao
🔗 Getdata
  • {
      "view": "view_lote_producao_situacao",
      "data": "view_lote_producao_situacao",
      "text-empty-search": "sim",
      "campo-data-id": "id_situacao",
      "campo-data-value-input": "nome_situacao",
      "campo-data-input-select-view": "nome_situacao",
      "query": {
        "select": "* from view_lote_producao_situacao",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_situacao,` `,nome_situacao))) ilike `%",
              "right": "%`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_situacao
  • Tabelas: lote_producao, auditor_lote_producao ✅
  • Default: 1
  • FormSearch: ✓
📋 Fórmula
💾 Grava🔗 getdata
Campo Tabela id_formula
Campo VIEW / Exibido nome_formula (ID: id_formula)
Tipo number (getdata)
Data Table lote_producao,auditor_lote_producao
Descrição

Campo fórmula

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou nome_formula
  • ID OndeVou id_formula
  • Tabela OndeVou lote_producao,auditor_lote_producao
🔗 Getdata
  • {
      "view": "view_formulas",
      "data": "view_formulas",
      "text-empty-search": "sim",
      "campo-data-id": "id_formula",
      "campo-data-value-input": "nome_formula",
      "campo-data-input-select-view": "id_formula,nome_formula",
      "query": {
        "select": "* from view_formulas",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_formula,` `,nome_formula))) ilike `%",
              "right": "%`) and (participante=`1`)"
            }
          }
        },
        "order": "id_formula desc"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_formula
  • Tabelas: lote_producao, auditor_lote_producao ✅
  • FormSearch: ✓
📋 Produção
🔒 Somente leitura📋 Somente view
Campo Tabela producao
Campo VIEW / Exibido producao ⚠️ (somente view)
Tipo number
Data Table view_lote_producao
Descrição

Campo produção

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou producao
  • Tabela OndeVou view_lote_producao
🚀 Launch
  • {
      "menu": {
        "data-id": "41"
      },
      "formsearch": {
        "nome_lote_producao": "id_lote_producao"
      }
    }
  • Tabelas: view_lote_producao (só view)
  • Launch: ✓
📋 Enchimentos
🔒 Somente leitura📋 Somente view
Campo Tabela enchimentos
Campo VIEW / Exibido enchimentos ⚠️ (somente view)
Tipo number
Data Table view_lote_producao
Descrição

Campo enchimentos

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou enchimentos
  • Tabela OndeVou view_lote_producao
🚀 Launch
  • {
      "menu": {
        "data-id": "72"
      },
      "formsearch": {
        "nome_lote_producao": "id_lote_producao"
      }
    }
  • Tabelas: view_lote_producao (só view)
  • Launch: ✓
📋 Membro
🔒 Somente leitura📋 Somente view🔗 getdata
Campo Tabela id_membro
Campo VIEW / Exibido nome_membro ⚠️ (somente view)
Tipo number (getdata)
Data Table view_lote_producao
Descrição

Campo membro

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou nome_membro
  • ID OndeVou id_membro
  • Tabela OndeVou view_lote_producao
🔗 Getdata
  • {
      "view": "view_membros_participantes",
      "data": "view_membros_participantes",
      "text-empty-search": "sim",
      "campo-data-id": "id_membro",
      "campo-data-value-input": "nome_membro",
      "campo-data-input-select-view": "nome_membro,email_membro,nome_situacao",
      "query": {
        "select": "* from view_membros_participantes",
        "where": {
          "and": {
            "texto_digitado": {
              "left": "(unaccent(LOWER(concat(id_membro,` `,nome_membro,` `,email_membro))) ilike `%",
              "right": "%`) and (id_participante=`1`)"
            }
          }
        }
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • ID: id_membro
  • Tabelas: view_lote_producao (só view)
  • FormSearch: ✓
📋 Latitude
🔒 Somente leitura👁️ Oculto📋 Somente view
Campo Tabela latitude
Campo VIEW / Exibido latitude ⚠️ (somente view)
Tipo number
Data Table view_lote_producao
Descrição

Campo latitude

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou latitude
  • Tabela OndeVou view_lote_producao
  • Tabelas: view_lote_producao (só view)
  • Hidden: ✓ (dados ocultos)
📋 Longitude
🔒 Somente leitura👁️ Oculto📋 Somente view
Campo Tabela longitude
Campo VIEW / Exibido longitude ⚠️ (somente view)
Tipo number
Data Table view_lote_producao
Descrição

Campo longitude

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou longitude
  • Tabela OndeVou view_lote_producao
  • Tabelas: view_lote_producao (só view)
  • Hidden: ✓ (dados ocultos)
📋 Ip
🔒 Somente leitura👁️ Oculto📋 Somente view
Campo Tabela ip
Campo VIEW / Exibido ip ⚠️ (somente view)
Tipo text
Data Table view_lote_producao
Descrição

Campo ip

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou ip
  • Tabela OndeVou view_lote_producao
  • Tabelas: view_lote_producao (só view)
  • Hidden: ✓ (dados ocultos)
📋 Data inclusão
🔒 Somente leitura👁️ Oculto📋 Somente view
Campo Tabela data_inclusao_lote_producao
Campo VIEW / Exibido data_inclusao_lote_producao ⚠️ (somente view)
Tipo date
Data Table view_lote_producao
Descrição

Campo data inclusão

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados date
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou data_inclusao_lote_producao
  • Tabela OndeVou view_lote_producao
  • Tabelas: view_lote_producao (só view)
  • Hidden: ✓ (dados ocultos)
📌 Legenda: 🔑 PRIMARY KEY ✅ Obrigatório 🔒 Somente leitura 👁️ Oculto 💾 Grava 📋 Somente view 🔗 getdata 📝 putdata 🔢 AutoInc 📱 QR Code 📋 Auditoria 📱 GetCollector

🔗 Relacionamentos

Tabelas relacionadas via getdata.

lote_producao · Auxiliar: Lote produção 📄
participantes_privado · Auxiliar: Nome/Razão Social 📄
lote_producao_tipos · Auxiliar: Tipo 📚
lote_producao_situacao · Auxiliar: Situação 📚
formulas · Principal: Fórmula 📄
membros_participantes · Auxiliar: Membro 📄

🔍 Filtros (formsearch)

Campos disponíveis para filtragem na busca.

Data Inicial date
Data Final date

🎮 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 🔘 Marker marker
📂 Documento
📱 Gerar QR Code qrcode Linha do tempo timeline

👁️ View Associada

Nome: view_lote_producao

📱 GetCollector - Coleta de Dados

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

Configuração (JSON expandido)

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

Tipos de QR Code

  • lp: Lote Produção

Detalhes

  • Table Add: addTableColetar_dados_leituras

📱 QR Code

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

Configuração

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

Como funciona

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

🔑 PRIMARY KEY - Campo Id

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

Configuração

'Id': {
    'input': {
        'readonly': 'readonly',
        'data-type-ondevou': 'number',
        'data-field-ondevou': 'id',
        "data-field-alias-ondevou": "id_lote_producao",
        'data-table-ondevou': 'lote_producao,auditor_lote_producao'
    }
}

Comportamento

  • 🔒 Readonly: Campo não editável
  • 📊 Tipo: number
  • 🔹 Alias na VIEW: id_lote_producao
  • 📋 Auditoria: Grava em lote_producao,auditor_lote_producao
  • 🚀 Launch: Abre documento relacionado

🎮 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 37 KB
{
  "table-id": "lote_producao",
  "data-table-ondevou": "lote_producao",
  "data-table-auditor": "auditor_lote_producao",
  "data-field-auditor": "id_lote_producao",
  "data-table-related": "produtos_lote_producao",
  "data-table-update": "sim",
  "readonly": "nao",
  "table-class": "highlight",
  "putdata": {
    "inputsExtras": "id_membro",
    "trigger": "setTableFromPutData();setTableProdutosLoteProducaoFromPutData();",
    "insertInputsClones": {
      "data_lote_producao": "now()"
    }
  },
  "controls": [
    "add",
    "copy",
    "edit",
    "save",
    "delete",
    "remove",
    "qrcode",
    "marker",
    "timeline"
  ],
  "html": {
    "div": {
      "before": "",
      "after": ""
    }
  },
  "entidade": {
    "page": "lote-producao",
    "title": "Lote de produção",
    "table": "lote_producao",
    "campo_id": "id_lote_producao",
    "view": "view_lote_producao",
    "where_post": "",
    "function": "getLoteProducaoQrCode",
    "ogTitle": "Gerenciamento de Lotes de Produção: Controle e Qualidade com OndeVou.com",
    "ogDescription": "Monitore seus lotes de produção de forma eficiente com OndeVou.com. Nossa plataforma permite rastrear e garantir a qualidade dos seus produtos em cada etapa do processo.",
    "ogImage": "",
    "ogUrl": "https://ondevou.com/lote-producao",
    "ogKeywords": "lote de produto, gestão de lotes, monitoramento, qualidade, rastreamento, produtos, ondevou, onde, onde ir, software",
    "sobre": {},
    "posts": {
      "1": {
        "id_post": "1",
        "nome_rotina": "Sobre OndeVou Produção",
        "descricao": "OndeVou Produção é uma ferramenta completa para gerenciar, monitorar e otimizar processos produtivos. Projetado para atender indústrias e empresas que buscam eficiência, qualidade e integração total em suas operações.",
        "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": 1786541070349,
        "link_post": {
          "title": "Saiba mais sobre o OndeVou Produção",
          "url": "plataforma/produto/producao",
          "onclick": "navClose();startMenu(this);return false;",
          "menu": "495"
        }
      }
    }
  },
  "routines": {
    "add": "27",
    "edit": "28"
  },
  "pdf": {
    "format": "a3",
    "orientation": "landscape",
    "columns-remove": [
      "qrcode",
      "Participante"
    ]
  },
  "search": {
    "id_search_lote_producao": {
      "data-type-ondevou": "number",
      "texto_label": "Lote de produção",
      "data-field-ondevou": "id_search_lote_producao",
      "data-table-ondevou": "view_lote_producao",
      "getcollector": "{\"qrcode\":\"{\\\"qrcode-type\\\":[\\\"lp\\\"]}\",\"table-setups\":\"{\\\"search\\\":\\\"nao\\\",\\\"html\\\":\\\"nao\\\",\\\"controls\\\":[\\\"info\\\",\\\"remove\\\"]}\"}",
      "getdata": "{\"view\":\"view_lote_producao\",\"data\":\"view_lote_producao\",\"text-empty-search\":\"sim\",\"data-update-full-fields\":\"sim\",\"campo-data-id\":\"id_lote_producao\",\"campo-data-value-input\":\"id_lote_producao,nome_lote_producao\",\"campo-data-input-select-view\":\"id_lote_producao,nome_lote_producao,nome_tipo,nome_situacao\",\"query\":{\"select\":\"* from view_lote_producao\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_lote_producao,` `,nome_lote_producao))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}},\"order\":\"id_lote_producao desc\"}}"
    }
  },
  "headers": {
    "Id": {
      "width": "7%"
    },
    "qrcode": {
      "width": "100px",
      "align": "left",
      "class": "qrcode"
    },
    "Participante": {
      "type": "hidden",
      "width": "10%"
    },
    "Data hora inclusão": {
      "width": "7%"
    },
    "Lote produção": {
      "type": "hidden"
    },
    "Nome/Razão Social": {
      "width": "20%"
    },
    "Descrição": {
      "width": "20%"
    },
    "Número do lote": {
      "width": "15%"
    },
    "Nota fiscal": {
      "width": "15%"
    },
    "Data da nota": {
      "type": "date",
      "width": "12%"
    },
    "Data do lote": {
      "type": "datetime-local",
      "width": "17%"
    },
    "Tipo": {
      "width": "10%"
    },
    "Situação": {
      "width": "10%"
    },
    "Fórmula": {
      "width": "20%"
    },
    "Produção": {
      "width": "10%"
    },
    "Enchimentos": {
      "width": "12%"
    },
    "Membro": {
      "width": "10%"
    },
    "Latitude": {
      "type": "hidden"
    },
    "Longitude": {
      "type": "hidden"
    },
    "Ip": {
      "type": "hidden"
    },
    "Data inclusão": {
      "type": "hidden"
    }
  },
  "columns": {
    "Id": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "id",
        "data-field-alias-ondevou": "id_lote_producao",
        "data-table-ondevou": "lote_producao,auditor_lote_producao",
        "controls-acao": {
          "qrcode": {
            "acao": "getQRcode",
            "messagem": "Gerar QR Code"
          }
        },
        "formsearch": {
          "required": "",
          "getcollector": "{\"qrcode\":\"{\\\"qrcode-type\\\":[\\\"lp\\\"]}\",\"table-setups\":\"{\\\"search\\\":\\\"nao\\\",\\\"html\\\":\\\"nao\\\",\\\"controls\\\":[\\\"info\\\",\\\"remove\\\"]}\"}"
        },
        "launch": {
          "type": "qrcode",
          "menu": {
            "data-id": "172"
          },
          "formsearch": {
            "id": "id_lote_producao"
          }
        }
      }
    },
    "qrcode": {
      "input": {
        "readonly": "readonly",
        "type": "canvas",
        "qrcode-type": "lp",
        "data-type-ondevou": "text",
        "qrcode-text-fields": "nome",
        "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": "lote_producao"
      }
    },
    "Data hora inclusão": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "date",
        "data-field-ondevou": "data_hora_inclusao_lote_producao",
        "data-table-ondevou": "view_lote_producao"
      }
    },
    "Lote produção": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_lote_producao",
        "data-field-ondevou": "nome_lote_producao",
        "data-table-ondevou": "view_lote_producao",
        "getdata": "{\"view\":\"view_lote_producao\",\"data\":\"view_lote_producao\",\"text-empty-search\":\"sim\",\"data-update-full-fields\":\"sim\",\"campo-data-id\":\"id_lote_producao\",\"campo-data-value-input\":\"id_lote_producao,nome_lote_producao\",\"campo-data-input-select-view\":\"id_lote_producao,nome_lote_producao,nome_tipo,nome_situacao\",\"query\":{\"select\":\"* from view_lote_producao\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_lote_producao,` `,nome_lote_producao))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}},\"order\":\"id_lote_producao desc\"}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Nome/Razão Social": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_participante",
        "data-field-ondevou": "razao_social_participante",
        "data-table-ondevou": "lote_producao",
        "getdata": "{\"view\":\"view_participantes_privado\",\"data\":\"view_participantes_privado\",\"campo-data-id\":\"id_participante\",\"campo-data-value-input\":\"id_participante,razao_social\",\"campo-data-input-select-view\":\"id_participante,codigo_erplinux_cliente,codigo_erplinux_fornecedor,razao_social,nome_fantasia,cnpj,cpf,cep,cep_erplinux,nome_bairro,nome_cidade,sigla_uf\",\"query\":{\"select\":\"* from view_participantes_privado\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_participante,` `,codigo_erplinux_cliente,` `,codigo_erplinux_fornecedor,` `,razao_social,` `,nome_fantasia,` `,cnpj,` `,cpf,` `,cep,` `,cep_erplinux,` `,nome_bairro,` `,nome_cidade,` `,sigla_uf))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Descrição": {
      "input": {
        "required": "required",
        "data-type-ondevou": "text",
        "data-field-ondevou": "nome",
        "data-field-alias-ondevou": "nome_lote_producao",
        "data-table-ondevou": "lote_producao"
      }
    },
    "Número do lote": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "numero_lote",
        "data-table-ondevou": "lote_producao"
      }
    },
    "Nota fiscal": {
      "input": {
        "data-type-ondevou": "text",
        "data-field-ondevou": "nota_fiscal",
        "data-table-ondevou": "lote_producao"
      }
    },
    "Data da nota": {
      "input": {
        "data-type-ondevou": "date",
        "data-field-ondevou": "data_nota_fiscal",
        "data-table-ondevou": "lote_producao"
      }
    },
    "Data do lote": {
      "input": {
        "type": "datetime-local",
        "data-type-ondevou": "date",
        "data-field-ondevou": "data_lote_producao",
        "data-table-ondevou": "lote_producao"
      }
    },
    "Tipo": {
      "input": {
        "required": "required",
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_tipo",
        "data-field-ondevou": "nome_tipo",
        "data-table-ondevou": "lote_producao,auditor_lote_producao",
        "getdata": "{\"view\":\"view_lote_producao_tipos\",\"data\":\"view_lote_producao_tipos\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_tipo\",\"campo-data-value-input\":\"nome_tipo\",\"campo-data-input-select-view\":\"nome_tipo\",\"query\":{\"select\":\"* from view_lote_producao_tipos\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_tipo,` `,nome_tipo))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Situação": {
      "input": {
        "required": "required",
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_situacao",
        "data-id-field-ondevou-default": "1",
        "data-field-ondevou": "nome_situacao",
        "data-table-ondevou": "lote_producao,auditor_lote_producao",
        "getdata": "{\"view\":\"view_lote_producao_situacao\",\"data\":\"view_lote_producao_situacao\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_situacao\",\"campo-data-value-input\":\"nome_situacao\",\"campo-data-input-select-view\":\"nome_situacao\",\"query\":{\"select\":\"* from view_lote_producao_situacao\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_situacao,` `,nome_situacao))) ilike `%\",\"right\":\"%`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Fórmula": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_formula",
        "data-field-ondevou": "nome_formula",
        "data-table-ondevou": "lote_producao,auditor_lote_producao",
        "getdata": "{\"view\":\"view_formulas\",\"data\":\"view_formulas\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_formula\",\"campo-data-value-input\":\"nome_formula\",\"campo-data-input-select-view\":\"id_formula,nome_formula\",\"query\":{\"select\":\"* from view_formulas\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_formula,` `,nome_formula))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}},\"order\":\"id_formula desc\"}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Produção": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "producao",
        "data-table-ondevou": "view_lote_producao",
        "launch": {
          "menu": {
            "data-id": "41"
          },
          "formsearch": {
            "nome_lote_producao": "id_lote_producao"
          }
        }
      }
    },
    "Enchimentos": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "enchimentos",
        "data-table-ondevou": "view_lote_producao",
        "launch": {
          "menu": {
            "data-id": "72"
          },
          "formsearch": {
            "nome_lote_producao": "id_lote_producao"
          }
        }
      }
    },
    "Membro": {
      "input": {
        "data-type-ondevou": "number",
        "readonly": "readonly",
        "data-id-field-ondevou": "id_membro",
        "data-field-ondevou": "nome_membro",
        "data-table-ondevou": "view_lote_producao",
        "getdata": "{\"view\":\"view_membros_participantes\",\"data\":\"view_membros_participantes\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_membro\",\"campo-data-value-input\":\"nome_membro\",\"campo-data-input-select-view\":\"nome_membro,email_membro,nome_situacao\",\"query\":{\"select\":\"* from view_membros_participantes\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_membro,` `,nome_membro,` `,email_membro))) ilike `%\",\"right\":\"%`) and (id_participante=`1`)\"}}}}}",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Latitude": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "latitude",
        "data-table-ondevou": "view_lote_producao"
      }
    },
    "Longitude": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "longitude",
        "data-table-ondevou": "view_lote_producao"
      }
    },
    "Ip": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "text",
        "data-field-ondevou": "ip",
        "data-table-ondevou": "view_lote_producao"
      }
    },
    "Data inclusão": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "date",
        "data-field-ondevou": "data_inclusao_lote_producao",
        "data-table-ondevou": "view_lote_producao"
      }
    }
  },
  "formsearch": {
    "data-table-ondevou": "view_lote_producao",
    "data-view-ondevou": "view_lote_producao",
    "data-where-fixed": "participante=`1`",
    "data-where-order": "order by id_lote_producao desc",
    "input": {
      "data_inicial": {
        "data-field-ondevou": "data_inicial",
        "data-type-ondevou": "date",
        "type": "date",
        "class": "datepicker",
        "texto_label": "Data Inicial",
        "data-field-where": "data"
      },
      "data_final": {
        "data-field-ondevou": "data_final",
        "data-type-ondevou": "date",
        "type": "date",
        "class": "datepicker",
        "texto_label": "Data Final",
        "data-field-where": "data"
      }
    }
  },
  "graficos": {
    "1": {
      "data": {
        "Ocorrência": {
          "type": "bar",
          "name": "Ocorrência",
          "x": "data_inclusao_lote_producao",
          "y": "count",
          "texttemplate": "%{y}"
        },
        "Enchimentos": {
          "type": "bar",
          "name": "Enchimentos",
          "x": "data_inclusao_lote_producao",
          "y": "count|enchimentos",
          "texttemplate": "%{y}"
        }
      },
      "layout": {
        "title": {
          "text": "Lote produção por data"
        }
      }
    },
    "2": {
      "data": {
        "Ocorrência": {
          "type": "bar",
          "name": "Ocorrência",
          "x": "data_inclusao_lote_producao",
          "y": "count",
          "texttemplate": "%{y}"
        },
        "Enchimentos": {
          "type": "bar",
          "name": "Enchimentos",
          "x": "data_inclusao_lote_producao",
          "y": "count|enchimentos",
          "texttemplate": "%{y}"
        }
      },
      "layout": {
        "title": {
          "text": "Lote produção por data"
        }
      }
    },
    "3": {
      "data": {
        "Ocorrência": {
          "type": "bar",
          "name": "Ocorrência",
          "x": "data_inclusao_lote_producao",
          "y": "count",
          "texttemplate": "%{y}"
        },
        "Enchimentos": {
          "type": "bar",
          "name": "Enchimentos",
          "x": "data_inclusao_lote_producao",
          "y": "count|enchimentos",
          "texttemplate": "%{y}"
        }
      },
      "layout": {
        "title": {
          "text": "Lote produção por data"
        }
      }
    },
    "4": {
      "data": {
        "Ocorrência": {
          "type": "bar",
          "name": "Ocorrência",
          "x": "data_inclusao_lote_producao",
          "y": "count",
          "texttemplate": "%{y}"
        },
        "Enchimentos": {
          "type": "bar",
          "name": "Enchimentos",
          "x": "data_inclusao_lote_producao",
          "y": "count|enchimentos",
          "texttemplate": "%{y}"
        }
      },
      "layout": {
        "title": {
          "text": "Lote produção por data"
        }
      }
    }
  },
  "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 LOTES DE PRODUÇÃO",
      "subtitle": "Visão executiva da produção",
      "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_resumo_executivo": {
        "type": "summary_cards_full",
        "title": "RESUMO EXECUTIVO",
        "class": "dashboard-section dashboard-section-full-width",
        "icon": "📊",
        "config": {
          "container_id": "cards-resumo-lote",
          "size": "full",
          "cards": [
            {
              "title": "TOTAL DE LOTES",
              "value": "COUNT:id_lote_producao",
              "format": "numero",
              "decimals": 0,
              "suffix": " lotes",
              "icon": "📋",
              "color": "#3b82f6"
            },
            {
              "title": "TOTAL CILINDROS",
              "value": "SUM:enchimentos",
              "format": "numero",
              "decimals": 0,
              "suffix": " cil",
              "icon": "🏭",
              "color": "#22c55e"
            },
            {
              "title": "TOTAL PRODUTOS",
              "value": "SUM:producao",
              "format": "numero",
              "decimals": 0,
              "suffix": " unid",
              "icon": "📦",
              "color": "#8b5cf6"
            },
            {
              "title": "MÉDIA CIL/LOTE",
              "value": "CALC:sum(enchimentos)/count(id_lote_producao)",
              "format": "numero",
              "decimals": 1,
              "suffix": " cil/lote",
              "icon": "📊",
              "color": "#f97316"
            },
            {
              "title": "TIPOS DE LOTE",
              "value": "COUNT_DISTINCT:nome_tipo",
              "format": "numero",
              "decimals": 0,
              "icon": "🏷️",
              "color": "#06b6d4"
            },
            {
              "title": "SITUAÇÕES",
              "value": "COUNT_DISTINCT:nome_situacao",
              "format": "numero",
              "decimals": 0,
              "icon": "📌",
              "color": "#a855f7"
            },
            {
              "title": "FÓRMULAS USADAS",
              "value": "COUNT_DISTINCT:nome_formula",
              "filters": "nome_formula IS NOT NULL",
              "format": "numero",
              "decimals": 0,
              "icon": "🧪",
              "color": "#ec4899"
            },
            {
              "title": "OPERADORES ATIVOS",
              "value": "COUNT_DISTINCT:nome_membro",
              "filters": "nome_membro IS NOT NULL",
              "format": "numero",
              "decimals": 0,
              "icon": "👤",
              "color": "#14b8a6"
            }
          ]
        }
      },
      "bloco2_metricas_detalhadas": {
        "type": "summary_cards_grid",
        "title": "MÉTRICAS DETALHADAS",
        "class": "dashboard-section dashboard-section-full-width",
        "icon": "🔢",
        "config": {
          "container_id": "cards-metricas-detalhadas-lote",
          "size": "full",
          "sections": [
            {
              "title": "DIVERSIDADE",
              "cards": [
                {
                  "title": "TIPOS DE LOTE",
                  "value": "COUNT_DISTINCT:nome_tipo",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "🏷️",
                  "color": "#3b82f6"
                },
                {
                  "title": "SITUAÇÕES",
                  "value": "COUNT_DISTINCT:nome_situacao",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "📌",
                  "color": "#8b5cf6"
                },
                {
                  "title": "FÓRMULAS",
                  "value": "COUNT_DISTINCT:nome_formula",
                  "filters": "nome_formula IS NOT NULL",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "🧪",
                  "color": "#ec4899"
                },
                {
                  "title": "OPERADORES",
                  "value": "COUNT_DISTINCT:nome_membro",
                  "filters": "nome_membro IS NOT NULL",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "👤",
                  "color": "#f97316"
                }
              ]
            },
            {
              "title": "ESTATÍSTICAS DOS LOTES",
              "cards": [
                {
                  "title": "MÉDIA CIL/LOTE",
                  "value": "CALC:sum(enchimentos)/count(id_lote_producao)",
                  "format": "numero",
                  "decimals": 1,
                  "suffix": " cil",
                  "icon": "📊",
                  "color": "#f97316"
                },
                {
                  "title": "MAIOR LOTE",
                  "value": "MAX:enchimentos",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " cil",
                  "icon": "📈",
                  "color": "#ef4444"
                },
                {
                  "title": "MENOR LOTE",
                  "value": "MIN:enchimentos",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " cil",
                  "icon": "📉",
                  "color": "#f59e0b"
                },
                {
                  "title": "MEDIANA",
                  "group_by": "id_lote_producao",
                  "value": "METRICA_AGRUPAMENTO:mediana",
                  "format": "numero",
                  "decimals": 1,
                  "suffix": " cil",
                  "icon": "📊",
                  "color": "#a855f7"
                }
              ]
            },
            {
              "title": "DISTRIBUIÇÃO DOS LOTES",
              "cards": [
                {
                  "title": "ACIMA DA MÉDIA",
                  "group_by": "id_lote_producao",
                  "value": "METRICA_AGRUPAMENTO:acima_media",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "icon": "🟢",
                  "color": "#22c55e"
                },
                {
                  "title": "ABAIXO DA MÉDIA",
                  "group_by": "id_lote_producao",
                  "value": "METRICA_AGRUPAMENTO:abaixo_media",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "icon": "🔴",
                  "color": "#ef4444"
                },
                {
                  "title": "PEQUENOS (< 15)",
                  "group_by": "id_lote_producao",
                  "filters_aggregation": "valor < 15",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "🥚",
                  "color": "#94a3b8"
                },
                {
                  "title": "MÉDIOS (15-30)",
                  "group_by": "id_lote_producao",
                  "filters_aggregation": "valor >= 15 and valor < 30",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "📦",
                  "color": "#3b82f6"
                },
                {
                  "title": "GRANDES (≥ 30)",
                  "group_by": "id_lote_producao",
                  "filters_aggregation": "valor >= 30",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "🚀",
                  "color": "#f97316"
                }
              ]
            }
          ]
        }
      },
      "bloco3_metricas_operador": {
        "type": "summary_cards_grid",
        "title": "MÉTRICAS POR OPERADOR",
        "class": "dashboard-section dashboard-section-full-width",
        "icon": "👤",
        "config": {
          "container_id": "cards-metricas-operador-lote",
          "size": "full",
          "sections": [
            {
              "title": "📊 PRODUÇÃO GERAL",
              "cards": [
                {
                  "title": "OPERADORES ATIVOS",
                  "group_by": "nome_membro",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "👥",
                  "color": "#3b82f6"
                },
                {
                  "title": "TOTAL LOTES",
                  "group_by": "nome_membro",
                  "value": "METRICA_AGRUPAMENTO:soma",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "📋",
                  "color": "#22c55e"
                },
                {
                  "title": "MÉDIA LOTES/OPERADOR",
                  "group_by": "nome_membro",
                  "value": "METRICA_AGRUPAMENTO:media",
                  "format": "numero",
                  "decimals": 1,
                  "suffix": " lotes",
                  "icon": "📊",
                  "color": "#f97316"
                }
              ]
            },
            {
              "title": "🏆 DESTAQUES INDIVIDUAIS",
              "cards": [
                {
                  "title": "MAIOR PRODUTOR",
                  "group_by": "nome_membro",
                  "value": "METRICA_AGRUPAMENTO:maior_grupo",
                  "format": "texto",
                  "icon": "🥇",
                  "color": "#f1c40f"
                },
                {
                  "title": "RECORDE DE LOTES",
                  "group_by": "nome_membro",
                  "value": "METRICA_AGRUPAMENTO:maior",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "icon": "📈",
                  "color": "#e74c3c"
                },
                {
                  "title": "MENOR PRODUÇÃO",
                  "group_by": "nome_membro",
                  "value": "METRICA_AGRUPAMENTO:menor",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "icon": "📉",
                  "color": "#95a5a6"
                }
              ]
            }
          ]
        }
      },
      "bloco4_evolucao": {
        "type": "charts_grid_section",
        "title": "EVOLUÇÃO TEMPORAL",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-2",
        "icon": "📈",
        "config": {
          "container_id": "evolucao-lote-grid",
          "charts": [
            {
              "type": "chart_bar_aggregated_evolution",
              "config": {
                "container_id": "evolucao-lotes-count",
                "data_config": {
                  "campo_data": "data_inclusao_lote_producao",
                  "operation": "COUNT:id_lote_producao",
                  "granularidade": "mensal"
                },
                "display_config": {
                  "title": "LOTES POR PERÍODO",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "350px",
                  "color": "#3b82f6"
                }
              }
            },
            {
              "type": "chart_bar_aggregated_evolution",
              "config": {
                "container_id": "evolucao-cilindros-produzidos",
                "data_config": {
                  "campo_data": "data_inclusao_lote_producao",
                  "operation": "SUM:enchimentos",
                  "granularidade": "mensal"
                },
                "display_config": {
                  "title": "CILINDROS PRODUZIDOS",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " cil",
                  "height": "350px",
                  "color": "#22c55e"
                }
              }
            }
          ]
        }
      },
      "bloco5_ranking": {
        "type": "charts_grid_section",
        "title": "RANKING DE PRODUÇÃO",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-3",
        "icon": "🏆",
        "config": {
          "container_id": "ranking-lote-grid",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-operador-lotes",
                "data_config": {
                  "group_by": "nome_membro",
                  "operation": "COUNT:id_lote_producao",
                  "filters": "nome_membro IS NOT NULL"
                },
                "display_config": {
                  "title": "LOTES POR OPERADOR",
                  "layout": "ranking",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "450px",
                  "color": "#f97316",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 10
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-tipo-lote",
                "data_config": {
                  "group_by": "nome_tipo",
                  "operation": "COUNT:id_lote_producao"
                },
                "display_config": {
                  "title": "LOTES POR TIPO",
                  "layout": "ranking",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "450px",
                  "color": "#3b82f6",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 10
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-situacao",
                "data_config": {
                  "group_by": "nome_situacao",
                  "operation": "COUNT:id_lote_producao"
                },
                "display_config": {
                  "title": "LOTES POR SITUAÇÃO",
                  "layout": "ranking",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "450px",
                  "color": "#a855f7",
                  "sort_by": "value",
                  "sort_order": "DESC"
                }
              }
            }
          ]
        }
      },
      "bloco6_analise_tipo_lote": {
        "type": "charts_grid_section",
        "title": "ANÁLISE POR TIPO DE LOTE",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-3",
        "icon": "🏷️",
        "config": {
          "container_id": "analise-tipo-lote-grid",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-tipo-lote-lotes",
                "data_config": {
                  "group_by": "nome_tipo",
                  "operation": "COUNT:id_lote_producao"
                },
                "display_config": {
                  "title": "QUANTIDADE DE LOTES",
                  "layout": "ranking",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "400px",
                  "color": "#3b82f6",
                  "sort_by": "value",
                  "sort_order": "DESC"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-tipo-lote-cilindros",
                "data_config": {
                  "group_by": "nome_tipo",
                  "operation": "SUM:enchimentos"
                },
                "display_config": {
                  "title": "CILINDROS PRODUZIDOS",
                  "layout": "ranking",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " cil",
                  "height": "400px",
                  "color": "#22c55e",
                  "sort_by": "value",
                  "sort_order": "DESC"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-tipo-lote-produtos",
                "data_config": {
                  "group_by": "nome_tipo",
                  "operation": "SUM:producao",
                  "filters": "producao > 0"
                },
                "display_config": {
                  "title": "PRODUTOS PRODUZIDOS",
                  "layout": "ranking",
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " unid",
                  "height": "400px",
                  "color": "#8b5cf6",
                  "sort_by": "value",
                  "sort_order": "DESC"
                }
              }
            }
          ]
        }
      },
      "bloco7_distribuicao": {
        "type": "charts_grid_section",
        "title": "DISTRIBUIÇÃO DOS LOTES",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-3",
        "icon": "🥧",
        "config": {
          "container_id": "distribuicao-lote-grid",
          "charts": [
            {
              "type": "chart_pie",
              "config": {
                "container_id": "graf-tipo-pie",
                "data_config": {
                  "group_by": "nome_tipo",
                  "operation": "COUNT:id_lote_producao"
                },
                "display_config": {
                  "title": "LOTES POR TIPO",
                  "donut": true,
                  "show_percentages": true,
                  "show_values": true,
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "400px"
                }
              }
            },
            {
              "type": "chart_pie",
              "config": {
                "container_id": "graf-situacao-pie",
                "data_config": {
                  "group_by": "nome_situacao",
                  "operation": "COUNT:id_lote_producao"
                },
                "display_config": {
                  "title": "LOTES POR SITUAÇÃO",
                  "donut": true,
                  "show_percentages": true,
                  "show_values": true,
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "400px"
                }
              }
            },
            {
              "type": "chart_pie",
              "config": {
                "container_id": "graf-formula-pie",
                "data_config": {
                  "group_by": "nome_formula",
                  "operation": "COUNT:id_lote_producao",
                  "filters": "nome_formula IS NOT NULL"
                },
                "display_config": {
                  "title": "LOTES POR FÓRMULA",
                  "donut": true,
                  "show_percentages": true,
                  "show_values": true,
                  "format": "numero",
                  "decimals": 0,
                  "suffix": " lotes",
                  "height": "400px",
                  "limit": 10
                }
              }
            }
          ]
        }
      }
    }
  },
  "url_documentacao": "/docs/ondevou-db-lote_producao.html",
  "nome_tabela": "lote_producao"
}

📝 SQL CREATE TABLE - Estrutura Completa

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

🏗️ Estrutura Completa

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

CREATE TABLE public.lote_producao (
    id integer NOT NULL DEFAULT nextval('lote_producao_id_seq'::regclass),
    participante integer NOT NULL,
    nome varchar(255) NOT NULL,
    id_situacao integer NOT NULL DEFAULT 1,
    id_tipo integer,
    data timestamp DEFAULT now(),
    id_membro integer,
    id_rotina integer,
    id_participante integer,
    numero_lote varchar(255),
    nota_fiscal varchar(255),
    data_nota_fiscal date,
    id_formula integer,
    data_lote_producao timestamp DEFAULT now(),
    CONSTRAINT lote_producao_pkey PRIMARY KEY (id),
    CONSTRAINT 2200_221550_1_not_null CHECK (id IS NOT NULL),
    CONSTRAINT 2200_221550_2_not_null CHECK (participante IS NOT NULL),
    CONSTRAINT 2200_221550_3_not_null CHECK (nome IS NOT NULL),
    CONSTRAINT 2200_221550_4_not_null CHECK (id_situacao IS NOT NULL)
);

-- ============================================================
-- ÍNDICES
-- ============================================================
CREATE INDEX idx_lote_producao_id_membro ON public.lote_producao USING btree (id_membro);
CREATE INDEX idx_lote_producao_id_participante ON public.lote_producao USING btree (id_participante);
CREATE INDEX idx_lote_producao_id_rotina ON public.lote_producao USING btree (id_rotina);
CREATE INDEX idx_lote_producao_id_situacao ON public.lote_producao USING btree (id_situacao);
CREATE INDEX idx_lote_producao_id_tipo ON public.lote_producao USING btree (id_tipo);
CREATE INDEX idx_lote_producao_p_data ON public.lote_producao USING btree (participante, data DESC);
CREATE INDEX idx_lote_producao_p_id ON public.lote_producao USING btree (participante, id DESC);
CREATE INDEX idx_lote_producao_p_id_participante ON public.lote_producao USING btree (participante, id_participante);
CREATE INDEX idx_lote_producao_participante ON public.lote_producao USING btree (participante);
CREATE UNIQUE INDEX lote_producao_pk_id ON public.lote_producao 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
data - timestamp without time zone ❌ Só no banco
data_hora_inclusao_lote_producao date - ⚠️ Só no JSON
data_inclusao_lote_producao date - ⚠️ Só no JSON
data_lote_producao date timestamp without time zone ✅ OK
data_nota_fiscal date date ✅ OK
enchimentos number - ⚠️ Só no JSON
id number integer ✅ OK
id_formula - integer ❌ Só no banco
id_membro - integer ❌ Só no banco
id_participante - integer ❌ Só no banco
id_rotina - integer ❌ Só no banco
id_situacao - integer ❌ Só no banco
id_tipo - integer ❌ Só no banco
ip text - ⚠️ Só no JSON
latitude number - ⚠️ Só no JSON
longitude number - ⚠️ Só no JSON
nome text character varying ✅ OK
nome_formula number - ⚠️ Só no JSON
nome_lote_producao number - ⚠️ Só no JSON
nome_membro number - ⚠️ Só no JSON
nome_situacao number - ⚠️ Só no JSON
nome_tipo number - ⚠️ Só no JSON
nota_fiscal text character varying ✅ OK
numero_lote text character varying ✅ OK
participante text integer ✅ OK
producao number - ⚠️ Só no JSON
qrcode text - ⚠️ Só no JSON
razao_social_participante number - ⚠️ 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_lote_producao WHERE participante = ${globais.dados_fixo.participante}`,
    'view': 'view_lote_producao'
});

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

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