🗄️ Cilindros Envase Estoque Atual de View

Tabela auxiliar que armazena cilindros envase estoque atual dos view.
🔗 Tabela relacionada: view

📋 9 colunas 🔗 6 relacionamentos 🎮 1 controles 👁️ view_view_cilindros_envase_estoque_atual 🔑 PRIMARY KEY

📋 Estrutura da Tabela

A tabela view_cilindros_envase_estoque_atual possui 9 colunas.

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

Campo id

🔑 PRIMARY KEY

Campo na tabela: id

Alias na VIEW: order

Readonly: ✅ Gerado automaticamente pelo sistema

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
  • Alinhamento center
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id
  • Alias OndeVou order
  • Tabela OndeVou view_cilindros_envase_estoque_atual
  • Alias: order
  • Tabelas: view_cilindros_envase_estoque_atual ✅
  • 🔑 PRIMARY KEY
  • VIEW: order
📋 Participante
🔒 Somente leitura💾 Grava
Campo Tabela id_participante_cliente
Campo VIEW / Exibido id_participante_cliente
Tipo text
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo participante

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id_participante_cliente
  • Tabela OndeVou view_cilindros_envase_estoque_atual
  • Tabelas: view_cilindros_envase_estoque_atual ✅
📋 Razão social
🔒 Somente leitura💾 Grava
Campo Tabela razao_social_cliente
Campo VIEW / Exibido razao_social_cliente
Tipo text
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo razão social

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou razao_social_cliente
  • Tabela OndeVou view_cilindros_envase_estoque_atual
  • Tabelas: view_cilindros_envase_estoque_atual ✅
📋 Cidade UF
🔒 Somente leitura💾 Grava
Campo Tabela
Campo VIEW / Exibido nome_cidade_cliente + sigla_uf_cliente
Tipo text (concatenação)
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo cidade uf

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou nome_cidade_cliente,sigla_uf_cliente
  • Tabela OndeVou view_cilindros_envase_estoque_atual
  • Tabelas: view_cilindros_envase_estoque_atual ✅
📋 Id etiqueta
🔒 Somente leitura💾 Grava
Campo Tabela id_etiqueta_avulsa
Campo VIEW / Exibido id_etiqueta_avulsa
Tipo number
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo id etiqueta

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id_etiqueta_avulsa
  • Tabela OndeVou view_cilindros_envase_estoque_atual
  • Tabelas: view_cilindros_envase_estoque_atual ✅
📋 Id cilindro
🔒 Somente leitura💾 Grava
Campo Tabela id_cilindro
Campo VIEW / Exibido id_cilindro
Tipo number
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo id cilindro

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou id_cilindro
  • Tabela OndeVou view_cilindros_envase_estoque_atual
🚀 Launch
  • {
      "menu": {
        "data-id": "28"
      },
      "formsearch": {
        "id_cilindro": "id_cilindro"
      }
    }
🔍 Formsearch
  • {
      "required": ""
    }
  • Tabelas: view_cilindros_envase_estoque_atual ✅
  • Launch: ✓
  • FormSearch: ✓
📋 Referência
🔒 Somente leitura💾 Grava
Campo Tabela referencia
Campo VIEW / Exibido referencia_cilindro
Tipo text
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo referência

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou referencia
  • Alias OndeVou referencia_cilindro
  • Tabela OndeVou view_cilindros_envase_estoque_atual
🔍 Formsearch
  • {
      "required": ""
    }
  • Alias: referencia_cilindro
  • Tabelas: view_cilindros_envase_estoque_atual ✅
  • FormSearch: ✓
📋 Produto
🔒 Somente leitura💾 Grava
Campo Tabela descricao_produto
Campo VIEW / Exibido descricao_produto
Tipo text
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo produto

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados text
Validacao
  • Somente leitura 🔒 Sim
📊 Dados
  • Campo OndeVou descricao_produto
  • Tabela OndeVou view_cilindros_envase_estoque_atual
  • Tabelas: view_cilindros_envase_estoque_atual ✅
📋 Situação
💾 Grava
Campo Tabela id_situacao
Campo VIEW / Exibido nome_situacao (ID: id_situacao)
Tipo number
Data Table view_cilindros_envase_estoque_atual
Descrição

Campo situação

📋 Todos os Atributos
🎨 Formatacao
  • Tipo de dados number
📊 Dados
  • Campo OndeVou nome_situacao
  • ID OndeVou id_situacao
  • Tabela OndeVou view_cilindros_envase_estoque_atual
  • ID: id_situacao
  • Tabelas: view_cilindros_envase_estoque_atual ✅
📌 Legenda: 🔑 PRIMARY KEY ✅ Obrigatório 🔒 Somente leitura 👁️ Oculto 💾 Grava 📋 Somente view 🔗 getdata 📝 putdata 🔢 AutoInc 📱 QR Code 📋 Auditoria 📱 GetCollector

🔗 Relacionamentos

Tabelas relacionadas via getdata.

participantes_privado · Auxiliar: id_participante 📄
romaneios · Principal: id_romaneio 📄
rotas · Principal: id_rota 📄
produtos · Principal: id_produto 📄
produtos_familias · Auxiliar: id_familia_produto 📄
produtos_tipos · Auxiliar: id_tipo_produto 📄

🔍 Filtros (formsearch)

Campos disponíveis para filtragem na busca.

Participante text 🔗 Sim
Romaneio text 🔗 Sim
Rota text 🔗 Sim
Produto text 🔗 Sim
Família do produto text 🔗 Sim
Tipo do produto text 🔗 Sim
Data Inicial date
Data Final date

🎮 Controles Disponíveis

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

📂 Controle
🔘 Edit edit

👁️ View Associada

Nome: view_view_cilindros_envase_estoque_atual

🔑 PRIMARY KEY - Campo Id

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

Configuração

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

Comportamento

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

💾 JSON da Tabela

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

code Clique para ver o JSON completo 30 KB
{
  "table-id": "view_cilindros_envase_estoque_atual",
  "data-table-ondevou": "view_cilindros_envase_estoque_atual",
  "table-class": "striped",
  "table-launch-filter": "nao",
  "readonly": "sim",
  "controls": [
    "edit"
  ],
  "controls-remove": [
    "info",
    "cloud_sync"
  ],
  "html": {
    "div": {
      "before": "<h1>Estoque atual para envase</h1>",
      "after": "<br>"
    }
  },
  "pdf": {
    "format": "a4",
    "orientation": "portrait"
  },
  "headers": {
    "Id": {
      "align": "center",
      "width": "8%"
    },
    "Participante": {
      "width": "10%"
    },
    "Razão social": {
      "width": "30%"
    },
    "Cidade UF": {
      "width": "15%"
    },
    "Id etiqueta": {
      "width": "10%"
    },
    "Id cilindro": {
      "width": "10%"
    },
    "Referência": {
      "width": "10%"
    },
    "Produto": {
      "width": "25%"
    },
    "Situação": {
      "width": "10%"
    }
  },
  "columns": {
    "Id": {
      "input": {
        "readonly": "readonly",
        "align": "center",
        "data-type-ondevou": "number",
        "data-field-ondevou": "id",
        "data-field-alias-ondevou": "order",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual"
      }
    },
    "Participante": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "text",
        "data-field-ondevou": "id_participante_cliente",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual"
      }
    },
    "Razão social": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "text",
        "data-field-ondevou": "razao_social_cliente",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual"
      }
    },
    "Cidade UF": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "text",
        "data-field-ondevou": "nome_cidade_cliente,sigla_uf_cliente",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual"
      }
    },
    "Id etiqueta": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "id_etiqueta_avulsa",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual"
      }
    },
    "Id cilindro": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "number",
        "data-field-ondevou": "id_cilindro",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual",
        "formsearch": {
          "required": "",
          "getcollector": "{\"modal\":\"\",\"qrcode\":\"{\\\"qrcode-type\\\":[\\\"cl\\\"]}\",\"table-add\":\"addTableColetar_dados_leituras\",\"table-setups\":\"{\\\"search\\\":\\\"nao\\\",\\\"html\\\":\\\"nao\\\",\\\"controls\\\":[\\\"info\\\",\\\"remove\\\"]}\"}"
        },
        "launch": {
          "menu": {
            "data-id": "28"
          },
          "formsearch": {
            "id_cilindro": "id_cilindro"
          }
        }
      }
    },
    "Referência": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "text",
        "data-field-ondevou": "referencia",
        "data-field-alias-ondevou": "referencia_cilindro",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual",
        "formsearch": {
          "required": ""
        }
      }
    },
    "Produto": {
      "input": {
        "readonly": "readonly",
        "data-type-ondevou": "text",
        "data-field-ondevou": "descricao_produto",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual"
      }
    },
    "Situação": {
      "input": {
        "data-type-ondevou": "number",
        "data-id-field-ondevou": "id_situacao",
        "data-field-ondevou": "nome_situacao",
        "data-table-ondevou": "view_cilindros_envase_estoque_atual"
      }
    }
  },
  "formsearch": {
    "data-table-ondevou": "view_cilindros_envase_estoque_atual",
    "data-view-ondevou": "view_cilindros_envase_estoque_atual",
    "data-where-limit": "N",
    "data-table-full": "S",
    "data-where-fixed": "participante=`1`",
    "data-where-order": "order by razao_social_cliente asc",
    "input": {
      "id_participante": {
        "data-id-field-ondevou": "id_participante",
        "data-field-ondevou": "razao_social",
        "data-type-ondevou": "number",
        "type": "text",
        "texto_label": "Participante",
        "data-field-where": "id_participante",
        "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`)\"}}}}}"
      },
      "id_romaneio": {
        "data-id-field-ondevou": "id_romaneio",
        "data-field-ondevou": "descricao_romaneio",
        "data-type-ondevou": "number",
        "type": "text",
        "texto_label": "Romaneio",
        "data-field-where": "id_romaneio",
        "getdata": "{\"view\":\"view_romaneios\",\"data\":\"view_romaneios\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_romaneio\",\"campo-data-value-input\":\"id_romaneio,descricao_romaneio,romaneio_erplinux\",\"campo-data-input-select-view\":\"id_romaneio,descricao_romaneio,romaneio_erplinux,nome_situacao\",\"query\":{\"select\":\"* from view_romaneios\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_romaneio,` `,romaneio_erplinux,` `,descricao_romaneio))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}},\"order\":\"id_romaneio desc\"}}"
      },
      "id_rota": {
        "data-id-field-ondevou": "id_rota",
        "data-field-ondevou": "nome_rota",
        "data-type-ondevou": "number",
        "type": "text",
        "texto_label": "Rota",
        "data-field-where": "id_rota",
        "getdata": "{\"view\":\"view_rotas\",\"data\":\"view_rotas\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_rota\",\"campo-data-value-input\":\"nome_rota\",\"campo-data-input-select-view\":\"codigo_erplinux_rota,nome_rota\",\"query\":{\"select\":\"* from view_rotas\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_rota,` `,codigo_erplinux_rota,` `,nome_rota))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}}}}"
      },
      "id_produto": {
        "data-id-field-ondevou": "id_produto",
        "data-field-ondevou": "descricao_produto",
        "data-type-ondevou": "number",
        "type": "text",
        "texto_label": "Produto",
        "data-field-where": "id_produto",
        "getdata": "{\"view\":\"view_produtos\",\"data\":\"view_produtos\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_produto\",\"campo-data-value-input\":\"codigo_erplinux_produto,descricao_produto\",\"campo-data-input-select-view\":\"codigo_erplinux_produto,descricao_produto,nome_unidade_venda\",\"query\":{\"select\":\"* from view_produtos\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_produto,` `,codigo_erplinux_produto,` `,descricao_produto))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}},\"order\":\"id_produto desc\"}}"
      },
      "id_familia_produto": {
        "data-id-field-ondevou": "id_familia_produto",
        "data-field-ondevou": "descricao_familia_produto",
        "data-type-ondevou": "number",
        "type": "text",
        "texto_label": "Família do produto",
        "data-field-where": "id_familia_produto",
        "getdata": "{\"view\":\"view_produtos_familias\",\"data\":\"view_produtos_familias\",\"text-empty-search\":\"sim\",\"campo-data-id\":\"id_familia\",\"campo-data-value-input\":\"nome_familia\",\"campo-data-input-select-view\":\"nome_familia\",\"query\":{\"select\":\"* from view_produtos_familias\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_familia,` `,nome_familia))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}},\"order\":\"id_familia desc\"}}"
      },
      "id_tipo_produto": {
        "data-id-field-ondevou": "id_tipo_produto",
        "data-field-ondevou": "descricao_tipo_produto",
        "data-type-ondevou": "number",
        "type": "text",
        "texto_label": "Tipo do produto",
        "data-field-where": "id_tipo_produto",
        "getdata": "{\"view\":\"view_produtos_tipos\",\"data\":\"view_produtos_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_produtos_tipos\",\"where\":{\"and\":{\"texto_digitado\":{\"left\":\"(unaccent(LOWER(concat(id_tipo,` `,codigo_erplinux_tipo,` `,nome_tipo))) ilike `%\",\"right\":\"%`) and (participante=`1`)\"}}},\"order\":\"id_tipo desc\"}}"
      },
      "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"
      }
    }
  },
  "dashboard": {
    "enabled": true,
    "theme": "modern",
    "layout": "free",
    "auto_refresh": true,
    "header": {
      "logo": {
        "src": "img/ondevou_plataforma.png",
        "alt": "OndeVou Plataforma",
        "class": "dashboard-logo-img"
      },
      "title": "🏭 ESTOQUE PARA ENVASE",
      "subtitle": "Análise consolidada de cilindros disponíveis para envase por cliente, produto e localizaçã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 - ESTOQUE PARA ENVASE",
        "icon": "📊",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "cards-resumo-envase",
          "size": "full",
          "cards": [
            {
              "title": "TOTAL CILINDROS",
              "value": "COUNT:id_cilindro",
              "format": "numero",
              "decimals": 0,
              "suffix": " cil",
              "icon": "🏭",
              "color": "#3b82f6"
            },
            {
              "title": "CLIENTES",
              "value": "COUNT_DISTINCT:razao_social_cliente",
              "format": "numero",
              "decimals": 0,
              "suffix": " clientes",
              "icon": "👥",
              "color": "#8b5cf6"
            },
            {
              "title": "PRODUTOS",
              "value": "COUNT_DISTINCT:descricao_produto",
              "format": "numero",
              "decimals": 0,
              "suffix": " produtos",
              "icon": "📦",
              "color": "#f97316"
            },
            {
              "title": "CIDADES",
              "value": "COUNT_DISTINCT:nome_cidade_cliente",
              "format": "numero",
              "decimals": 0,
              "suffix": " cidades",
              "icon": "📍",
              "color": "#22c55e"
            },
            {
              "title": "CILINDROS ÚNICOS",
              "value": "COUNT_DISTINCT:id_cilindro",
              "format": "numero",
              "decimals": 0,
              "suffix": " cil",
              "icon": "🔢",
              "color": "#a855f7"
            },
            {
              "title": "ETIQUETAS",
              "value": "COUNT_DISTINCT:id_etiqueta_avulsa",
              "format": "numero",
              "decimals": 0,
              "suffix": " etiquetas",
              "icon": "🏷️",
              "color": "#ec4899"
            }
          ]
        }
      },
      "bloco2_metricas_clientes": {
        "type": "summary_cards_grid",
        "title": "MÉTRICAS POR CLIENTE",
        "icon": "👥",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "cards-metricas-clientes",
          "size": "full",
          "sections": [
            {
              "title": "TOP CLIENTES",
              "cards": [
                {
                  "title": "CLIENTE COM MAIS CILINDROS",
                  "group_by": "razao_social_cliente",
                  "value": "METRICA_AGRUPAMENTO:maior_grupo",
                  "format": "texto",
                  "icon": "🥇",
                  "color": "#f1c40f"
                },
                {
                  "title": "SEGUNDO LUGAR",
                  "group_by": "razao_social_cliente",
                  "value": "METRICA_AGRUPAMENTO:segundo",
                  "format": "texto",
                  "icon": "🥈",
                  "color": "#95a5a6"
                },
                {
                  "title": "TERCEIRO LUGAR",
                  "group_by": "razao_social_cliente",
                  "value": "METRICA_AGRUPAMENTO:terceiro",
                  "format": "texto",
                  "icon": "🥉",
                  "color": "#d35400"
                },
                {
                  "title": "TOTAL CLIENTES",
                  "group_by": "razao_social_cliente",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "👥",
                  "color": "#3498db"
                }
              ]
            },
            {
              "title": "MÉDIAS POR CLIENTE",
              "cards": [
                {
                  "title": "MÉDIA CILINDROS/CLIENTE",
                  "value": "CALC:count(id_cilindro)/count_distinct(razao_social_cliente)",
                  "format": "numero",
                  "decimals": 1,
                  "suffix": " cil",
                  "icon": "📊",
                  "color": "#f97316"
                },
                {
                  "title": "CLIENTE MAIS FREQUENTE",
                  "group_by": "razao_social_cliente",
                  "value": "METRICA_AGRUPAMENTO:moda",
                  "format": "texto",
                  "icon": "📈",
                  "color": "#2ecc71"
                }
              ]
            }
          ]
        }
      },
      "bloco3_metricas_produtos": {
        "type": "summary_cards_grid",
        "title": "MÉTRICAS POR PRODUTO",
        "icon": "📦",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "cards-metricas-produtos",
          "size": "full",
          "sections": [
            {
              "title": "TOP PRODUTOS",
              "cards": [
                {
                  "title": "PRODUTO COM MAIS ESTOQUE",
                  "group_by": "descricao_produto",
                  "value": "METRICA_AGRUPAMENTO:maior_grupo",
                  "format": "texto",
                  "icon": "🥇",
                  "color": "#f1c40f"
                },
                {
                  "title": "SEGUNDO LUGAR",
                  "group_by": "descricao_produto",
                  "value": "METRICA_AGRUPAMENTO:segundo",
                  "format": "texto",
                  "icon": "🥈",
                  "color": "#95a5a6"
                },
                {
                  "title": "TERCEIRO LUGAR",
                  "group_by": "descricao_produto",
                  "value": "METRICA_AGRUPAMENTO:terceiro",
                  "format": "texto",
                  "icon": "🥉",
                  "color": "#d35400"
                },
                {
                  "title": "TOTAL PRODUTOS",
                  "group_by": "descricao_produto",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "📦",
                  "color": "#3498db"
                }
              ]
            },
            {
              "title": "MÉDIAS POR PRODUTO",
              "cards": [
                {
                  "title": "MÉDIA CILINDROS/PRODUTO",
                  "value": "CALC:count(id_cilindro)/count_distinct(descricao_produto)",
                  "format": "numero",
                  "decimals": 1,
                  "suffix": " cil",
                  "icon": "📊",
                  "color": "#f97316"
                },
                {
                  "title": "PRODUTO MAIS FREQUENTE",
                  "group_by": "descricao_produto",
                  "value": "METRICA_AGRUPAMENTO:moda",
                  "format": "texto",
                  "icon": "📈",
                  "color": "#2ecc71"
                }
              ]
            }
          ]
        }
      },
      "bloco4_metricas_localizacao": {
        "type": "summary_cards_grid",
        "title": "MÉTRICAS POR LOCALIZAÇÃO",
        "icon": "📍",
        "class": "dashboard-section dashboard-section-full-width",
        "config": {
          "container_id": "cards-metricas-localizacao",
          "size": "full",
          "sections": [
            {
              "title": "TOP CIDADES",
              "cards": [
                {
                  "title": "CIDADE COM MAIS ESTOQUE",
                  "group_by": "nome_cidade_cliente",
                  "value": "METRICA_AGRUPAMENTO:maior_grupo",
                  "format": "texto",
                  "icon": "🥇",
                  "color": "#f1c40f"
                },
                {
                  "title": "SEGUNDO LUGAR",
                  "group_by": "nome_cidade_cliente",
                  "value": "METRICA_AGRUPAMENTO:segundo",
                  "format": "texto",
                  "icon": "🥈",
                  "color": "#95a5a6"
                },
                {
                  "title": "TERCEIRO LUGAR",
                  "group_by": "nome_cidade_cliente",
                  "value": "METRICA_AGRUPAMENTO:terceiro",
                  "format": "texto",
                  "icon": "🥉",
                  "color": "#d35400"
                },
                {
                  "title": "TOTAL CIDADES",
                  "group_by": "nome_cidade_cliente",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "📍",
                  "color": "#3498db"
                }
              ]
            },
            {
              "title": "TOP UFs",
              "cards": [
                {
                  "title": "UF COM MAIS ESTOQUE",
                  "group_by": "sigla_uf_cliente",
                  "value": "METRICA_AGRUPAMENTO:maior_grupo",
                  "format": "texto",
                  "icon": "🥇",
                  "color": "#f1c40f"
                },
                {
                  "title": "SEGUNDO LUGAR",
                  "group_by": "sigla_uf_cliente",
                  "value": "METRICA_AGRUPAMENTO:segundo",
                  "format": "texto",
                  "icon": "🥈",
                  "color": "#95a5a6"
                },
                {
                  "title": "TOTAL UFs",
                  "group_by": "sigla_uf_cliente",
                  "value": "METRICA_AGRUPAMENTO:total_grupos",
                  "format": "numero",
                  "decimals": 0,
                  "icon": "🗺️",
                  "color": "#22c55e"
                }
              ]
            }
          ]
        }
      },
      "bloco5_ranking_clientes": {
        "type": "charts_grid_section",
        "title": "RANKING POR CLIENTE",
        "icon": "👥",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-2",
        "config": {
          "container_id": "ranking-clientes-grid",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-clientes",
                "data_config": {
                  "group_by": "razao_social_cliente",
                  "operation": "COUNT:id_cilindro"
                },
                "display_config": {
                  "title": "🏭 Cilindros por Cliente",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " cil",
                  "height": "500px",
                  "color": "#3b82f6",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-clientes-produtos",
                "data_config": {
                  "group_by": "razao_social_cliente",
                  "operation": "COUNT_DISTINCT:descricao_produto"
                },
                "display_config": {
                  "title": "📦 Produtos por Cliente",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " produtos",
                  "height": "500px",
                  "color": "#f97316",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            }
          ]
        }
      },
      "bloco6_ranking_produtos": {
        "type": "charts_grid_section",
        "title": "RANKING POR PRODUTO",
        "icon": "📦",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-2",
        "config": {
          "container_id": "ranking-produtos-grid",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-produtos",
                "data_config": {
                  "group_by": "descricao_produto",
                  "operation": "COUNT:id_cilindro"
                },
                "display_config": {
                  "title": "🏭 Cilindros por Produto",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " cil",
                  "height": "450px",
                  "color": "#3b82f6",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-produtos-clientes",
                "data_config": {
                  "group_by": "descricao_produto",
                  "operation": "COUNT_DISTINCT:razao_social_cliente"
                },
                "display_config": {
                  "title": "👥 Clientes por Produto",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " clientes",
                  "height": "450px",
                  "color": "#8b5cf6",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            }
          ]
        }
      },
      "bloco7_ranking_cidades": {
        "type": "charts_grid_section",
        "title": "RANKING POR CIDADE",
        "icon": "📍",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-2",
        "config": {
          "container_id": "ranking-cidades-grid",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-cidades",
                "data_config": {
                  "group_by": "nome_cidade_cliente",
                  "operation": "COUNT:id_cilindro"
                },
                "display_config": {
                  "title": "🏭 Cilindros por Cidade",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " cil",
                  "height": "450px",
                  "color": "#3b82f6",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-ranking-cidades-clientes",
                "data_config": {
                  "group_by": "nome_cidade_cliente",
                  "operation": "COUNT_DISTINCT:razao_social_cliente"
                },
                "display_config": {
                  "title": "👥 Clientes por Cidade",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " clientes",
                  "height": "450px",
                  "color": "#8b5cf6",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            }
          ]
        }
      },
      "bloco8_analise_situacao": {
        "type": "charts_grid_section",
        "title": "ANÁLISE POR SITUAÇÃO",
        "icon": "📊",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-2",
        "config": {
          "container_id": "analise-situacao-grid",
          "charts": [
            {
              "type": "chart_pie",
              "config": {
                "container_id": "pie-situacao",
                "data_config": {
                  "group_by": "nome_situacao",
                  "operation": "COUNT:id_cilindro"
                },
                "display_config": {
                  "title": "Distribuição por Situação",
                  "donut": true,
                  "show_percentages": true,
                  "height": "400px"
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-situacao-clientes",
                "data_config": {
                  "group_by": "nome_situacao",
                  "operation": "COUNT_DISTINCT:razao_social_cliente"
                },
                "display_config": {
                  "title": "Clientes por Situação",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "capitalizado",
                  "decimals": 0,
                  "suffix": " clientes",
                  "height": "400px",
                  "color": "#22c55e"
                }
              }
            }
          ]
        }
      },
      "bloco9_analise_produto_detalhada": {
        "type": "charts_grid_section",
        "title": "ANÁLISE DETALHADA POR PRODUTO",
        "icon": "📊",
        "class": "dashboard-section dashboard-section-full-width",
        "grid_class": "dashboard-section-grid-2",
        "config": {
          "container_id": "analise-produto-detalhada-grid",
          "charts": [
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-produto-cilindros",
                "data_config": {
                  "group_by": "descricao_produto",
                  "operation": "COUNT:id_cilindro"
                },
                "display_config": {
                  "title": "Cilindros por Produto",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " cil",
                  "height": "450px",
                  "color": "#3b82f6",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            },
            {
              "type": "chart_bar_aggregated",
              "config": {
                "container_id": "graf-produto-clientes",
                "data_config": {
                  "group_by": "descricao_produto",
                  "operation": "COUNT_DISTINCT:razao_social_cliente"
                },
                "display_config": {
                  "title": "Clientes por Produto",
                  "layout": "ranking",
                  "format": "numero",
                  "format_legend": "completo",
                  "decimals": 0,
                  "suffix": " clientes",
                  "height": "450px",
                  "color": "#f97316",
                  "sort_by": "value",
                  "sort_order": "DESC",
                  "limit": 15
                }
              }
            }
          ]
        }
      }
    }
  },
  "url_documentacao": "/docs/ondevou-db-view_cilindros_envase_estoque_atual.html",
  "nome_tabela": "view_cilindros_envase_estoque_atual"
}

📝 SQL CREATE TABLE - Estrutura Completa

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

🏗️ Estrutura Completa

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

CREATE TABLE public.view_cilindros_envase_estoque_atual (
    order bigint,
    id_participante_cliente integer,
    razao_social_cliente varchar(255),
    nome_cidade_cliente varchar(255),
    sigla_uf_cliente varchar(5),
    id integer,
    tipo_id text,
    entrada numeric,
    saida numeric,
    total numeric,
    id_etiqueta_avulsa integer,
    id_cilindro integer,
    referencia_cilindro varchar(255),
    participante integer,
    descricao_produto text,
    id_tipo integer,
    nome_tipo varchar(255),
    id_aplicacao integer,
    nome_aplicacao varchar(255),
    id_capacidade integer,
    nome_capacidade varchar(255),
    id_unidade_capacidade integer,
    nome_unidade_capacidade varchar(255),
    id_situacao integer,
    nome_situacao varchar(255),
    id_localizacao integer,
    nome_localizacao varchar(255)
);

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
descricao_produto text text ✅ OK
entrada - numeric ❌ Só no banco
id number integer ✅ OK
id_aplicacao - integer ❌ Só no banco
id_capacidade - integer ❌ Só no banco
id_cilindro number integer ✅ OK
id_etiqueta_avulsa number integer ✅ OK
id_localizacao - integer ❌ Só no banco
id_participante_cliente text integer ✅ OK
id_situacao - integer ❌ Só no banco
id_tipo - integer ❌ Só no banco
id_unidade_capacidade - integer ❌ Só no banco
nome_aplicacao - character varying ❌ Só no banco
nome_capacidade - character varying ❌ Só no banco
nome_cidade_cliente - character varying ❌ Só no banco
nome_cidade_cliente,sigla_uf_cliente text - ⚠️ Só no JSON
nome_localizacao - character varying ❌ Só no banco
nome_situacao number character varying ✅ OK
nome_tipo - character varying ❌ Só no banco
nome_unidade_capacidade - character varying ❌ Só no banco
order - bigint ❌ Só no banco
participante - integer ❌ Só no banco
razao_social_cliente text character varying ✅ OK
referencia text - ⚠️ Só no JSON
referencia_cilindro - character varying ❌ Só no banco
saida - numeric ❌ Só no banco
sigla_uf_cliente - character varying ❌ Só no banco
tipo_id - text ❌ Só no banco
total - numeric ❌ Só no banco

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

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

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