Download Latest Version EbQueryBuilderLinux.zip (305.6 MB)
Home
Name Modified Size InfoDownloads / Week
2.2.0 2026-10-15
readme.md 2026-10-15 14.5 kB
Totals: 2 Items   14.5 kB 5

📘 EB QueryBuilder — Manual do Usuário

Versão 2.0
Desenvolvedor: Eliemar Bueno
Tecnologia: Python + PySide6 (Qt)
Licença: Gratuito para uso pessoal e profissional


Sumário

  1. Apresentação
  2. O que é o EB QueryBuilder
  3. Principais Funcionalidades
  4. Pré-requisitos
  5. Instalação
  6. Configuração
  7. Como Usar — Passo a Passo
  8. 7.1 Carregar um Modelo PDM
  9. 7.2 Aba 1 — JOINs (Tabelas e Relacionamentos)
  10. 7.3 Aba 2 — Campos / SELECT
  11. 7.4 Aba 3 — Critérios / WHERE
  12. 7.5 Importar SQL Existente
  13. 7.6 Dialetos SQL Suportados
  14. Funcionalidades Detalhadas
  15. Agrupamento, Agregações e HAVING
  16. Contribuição e Apoio

1. Apresentação

O EB QueryBuilder é uma ferramenta visual e 100% offline para geração de consultas SQL a partir de modelos físicos do SAP Power Designer (arquivos .pdm).

Se você trabalha com bancos de dados relacionais e utiliza o Power Designer para modelagem de dados, esta ferramenta vai economizar horas do seu dia — eliminando a digitação manual de SQL e evitando erros de sintaxe.

"Economize tempo e proteja a segurança dos seus dados com um gerador SQL confiável que roda totalmente offline."


2. O que é o EB QueryBuilder

O EB QueryBuilder (anteriormente PD SQL Builder) é um construtor visual de consultas SQL que:

  • ✅ Lê arquivos .pdm do SAP Power Designer (formato XML)
  • ✅ Extrai automaticamente todas as tabelas, colunas, chaves primárias e estrangeiras
  • ✅ Monta consultas SELECT ... FROM ... JOIN ... WHERE visualmente, sem digitar SQL
  • ✅ Detecta automaticamente as condições ON dos JOINs através das chaves estrangeiras do modelo
  • ✅ Suporta múltiplos dialetos SQL: Oracle, PostgreSQL, SQL Server e MySQL
  • ✅ Gera SQL em tempo real — cada alteração reflete imediatamente no preview
  • ✅ Permite importar SQL existente para continuar a edição visualmente
  • ✅ Funciona 100% offline — seus dados nunca saem da sua máquina

3. Principais Funcionalidades

Funcionalidade Descrição
Carregamento de modelos PDM Abre arquivos .pdm (XML) do SAP Power Designer
Conversão de PDM binário Detecta e converte arquivos binários para XML (Windows c/ Power Designer instalado)
Seleção visual de tabelas Navegue por todas as tabelas do modelo com busca por nome/código
Auto-JOIN por chave estrangeira As condições ON são geradas automaticamente a partir das FKs do modelo
Navegação de relacionamentos Mostra tabelas pais (⬆) e filhas (⬇) sugeridas para cada tabela selecionada
Múltiplos dialetos SQL Oracle, PostgreSQL, SQL Server e MySQL
Preview SQL em tempo real O SQL gerado é atualizado automaticamente a cada alteração
Alias de colunas Nome conceitual, físico ou alias personalizado com prefixo/sufixo
Batch prefixo/sufixo Aplica prefixo/sufixo em várias colunas de uma vez
Reordenação de colunas Move colunas para cima/baixo no SELECT
Colunas duplicadas Mesma coluna pode aparecer múltiplas vezes com sufixos _2, _3
Construtor WHERE Condições com operadores de comparação básicos e lógica AND/OR; expressões raw disponíveis para critérios complexos
Importar SQL Cole um SQL existente para popular as abas; expressões com funções no SELECT são importadas como raw, preservando aliases em consultas com JOIN explícito
Copiar SQL Um clique para copiar o SQL gerado para a área de transferência
Configuração de exibição Mostrar/ocultar nome conceitual, código físico e alias nas listas
Tela de abertura (Splash) Apresentação inicial com informações do aplicativo
Funções de agregação Atalhos para COUNT, SUM, AVG, MIN e MAX; o GROUP BY é derivado das colunas não agregadas
Cláusula HAVING Construtor visual para filtrar agregações, com operadores e conectores AND/OR
Feedback e Apoio Diálogo com QR Code PIX para contribuições voluntárias

4. Pré-requisitos

Para executar o código-fonte

Requisito Versão mínima
Python 3.13+
PySide6 6.8.0+
lxml 5.3.0+

Para executar o binário compilado

  • Windows: Nenhum — o executável é autossuficiente
  • Linux: Bibliotecas Qt do sistema (libxcb-xinerama0, libgl1-mesa-glx)

5. Instalação

Opção 1: Executável compilado (recomendado)

Baixe o executável da versão mais recente e execute diretamente — sem necessidade de instalar Python ou dependências.

Opção Sistema operacional Observações
Opção 01 Linux Executável único e auto-contido (maior, mais robusto). Ideal para quem não tem Python instalado na máquina alvo
Opção 02 Windows Executável único e auto-contido (maior, mais robusto). Ideal para quem não tem Python instalado na máquina alvo
Opção 03 Windows Ideal quando a máquina alvo já tem Python e parte das dependências instaladas.
Opção 04 Windows Ideal quando se pretende iniciar por um executável menor, mas com as dependências em uma pasta

6. Configuração

O arquivo config.ini (na raiz do projeto ou ao lado do executável) permite personalizar:

[app]
default_model   = Nome do Modelo
default_dialect = oracle          ; oracle | postgres | sqlserver | mysql

[powerdesigner]
install_dir = C:\caminho\PowerDesigner16   ; necessário para converter .pdm binário

[models]
; Formato: Nome = caminho\do\arquivo.pdm | dialeto (opcional)
Meu Modelo      = C:\Modelos\meu_modelo.pdm | oracle
Sistema Legado  = C:\Modelos\legado.pdm     | sqlserver

💡 Dica: Você pode definir um dialeto diferente para cada modelo! Se omitido, usa o default_dialect. Se você colocar os arquivos.pdm e apagar o arquivo config.ini dentro da pasta onde o executável está, a aplicação vai pesquisar por todos os subdiretórios para preparar identificar os possíveis odelos que você tem acesso e trabalha e se configurar.


7. Como Usar — Passo a Passo

7.1 Carregar um Modelo PDM

  1. Selecione o modelo desejado no combo superior
  2. Clique em "Carregar modelo"
  3. O aplicativo lê o arquivo .pdm e extrai todas as tabelas, colunas e relacionamentos
  4. As três abas (JOINs, Campos, WHERE) são populadas automaticamente

⚠️ Se o arquivo estiver no formato binário do Power Designer, o botão "Converter binário → XML" aparecerá. Clique nele para converter (requer Power Designer instalado no Windows). Importante lembrar que nem sempre a conversão garante que o aplicativo vai conseguir ler o arquivo .pdm.

7.2 Aba 1 — JOINs (Tabelas e Relacionamentos)

Objetivo: Definir quais tabelas farão parte da consulta e como elas se relacionam.

  1. Painel esquerdo — "Tabelas disponíveis": lista todas as tabelas do modelo. Use o campo de busca para filtrar.
  2. Selecione uma tabela e clique "→ Adicionar" (ou dê duplo-clique)
  3. Um diálogo será exibido para configurar:
  4. Alias da tabela (sugerido automaticamente com 3 letras)
  5. Tipo de JOIN (INNER, LEFT, RIGHT)
  6. Condições ON (detectadas automaticamente via FK, mas editáveis)
  7. Painel direito (superior) — "Tabelas na consulta": mostra a tabela principal [FROM] e as tabelas adicionadas com JOIN
  8. Painel direito (inferior) — "Tabelas sugeridas": mostra pais (⬆) e filhas (⬇) da tabela selecionada, facilitando a navegação pelos relacionamentos
  9. Use "✎ Editar alias" para renomear o alias de uma tabela já adicionada

7.3 Aba 2 — Campos / SELECT

Objetivo: Selecionar as colunas que aparecerão no SELECT.

  1. Selecione a tabela no combo (com busca)
  2. Escolha as colunas desejadas na lista
  3. Clique "→ Adicionar" ou dê duplo-clique para adicionar
  4. Use "⇨ Adicionar todos" para incluir todas as colunas de uma vez
  5. Colunas com 🔑 são chaves primárias
  6. Reordene as colunas com "↑ Subir" e "↓ Descer"
  7. Configure cada coluna com "✎ Configurar coluna":
  8. Nome Conceitual — ex: Employee ID → vira Employee_ID
  9. Nome Físico — ex: EMPLOYEE_ID (sem alias)
  10. Alias personalizado — você define o nome
  11. Prefixo/Sufixo — aplicado em lote ou individualmente

💡 A mesma coluna pode ser adicionada múltiplas vezes (sufixos _2, _3...).

7.4 Aba 3 — Critérios / WHERE

Objetivo: Adicionar filtros à consulta.

  1. Selecione a tabela (com busca)
  2. Selecione a coluna (com busca)
  3. Escolha o operador: =, IN ou LIKE
  4. Digite o valor
  5. Escolha o conectivo lógico: AND ou OR (para o próximo critério)
  6. Clique "Adicionar critério"

Os critérios aparecem na lista abaixo e podem ser removidos individualmente. Funções e expressões mais complexas podem ser inseridas como expressão raw. Operadores dedicados como BETWEEN, NOT IN e IS NULL não devem ser presumidos como disponíveis no construtor visual.

7.5 Importar SQL Existente

Se você já tem um SQL pronto e quer editá-lo visualmente:

  1. Clique em "Importar SQL"
  2. Cole o SQL no diálogo
  3. Clique em OK
  4. O aplicativo analisa o SQL e preenche automaticamente:
  5. Aba JOINs → tabelas e joins
  6. Aba Campos → colunas do SELECT
  7. Aba WHERE → condições de filtro
  8. Se já existir uma consulta em andamento, você pode Substituir ou Mesclar

Expressões funcionais nas colunas do SELECT são mantidas como raw. Em consultas com JOIN explícito, os aliases SQL explícitos também são preservados. A importação de funções em condições WHERE e de JOINs implícitos (FROM t1, t2 WHERE ...) permanece como pendência nas anotações de desenvolvimento.

Itens importados são marcados com 📥 para fácil identificação.

7.6 Dialetos SQL Suportados

Dialeto Quoting de identificadores Exemplo
Oracle "aspas duplas" SELECT t1."EMPLOYEE_ID"
PostgreSQL "aspas duplas" SELECT t1."EMPLOYEE_ID"
SQL Server [colchetes] SELECT t1.[EMPLOYEE_ID]
MySQL `crases` SELECT t1.`EMPLOYEE_ID`

Basta selecionar o dialeto desejado no combo superior — o SQL é regenerado automaticamente.


8. Funcionalidades Detalhadas

🔍 Navegação Inteligente por Relacionamentos

Ao selecionar uma tabela na aba JOINs, o painel "Tabelas sugeridas" mostra automaticamente:

  • ⬆ Tabelas pais (tabelas referenciadas por chaves estrangeiras da tabela atual)
  • ⬇ Tabelas filhas (tabelas que referenciam a tabela atual)

Isso permite construir consultas complexas com múltiplos JOINs de forma intuitiva.

🎨 Display Customizável

Você pode controlar como tabelas e colunas são exibidas nas listas:

  • Nome conceitual — o nome lógico do Power Designer (ex: "Employees")
  • Código físico — o nome real no banco de dados (ex: "EMPLOYEES")
  • Alias — o alias definido na consulta (ex: "emp")

🔄 Conversão de PDM Binário

O Power Designer pode salvar modelos em formato binário. O EB QueryBuilder:

  1. Detecta automaticamente arquivos binários pela assinatura PDM_DATA-MODEL_BIN
  2. Oferece conversão via Power Designer instalado (Windows)
  3. Usa múltiplas estratégias de conversão (COM automation, VBScript)

📋 SQL Import Inteligente

O importador de SQL:

  • Reconhece SELECT, FROM, JOIN (INNER/LEFT/RIGHT), WHERE
  • Resolve tabelas e colunas contra o modelo PDM carregado (case-insensitive)
  • Detecta subconsultas e avisa o usuário
  • Valida se tabelas/colunas existem no modelo
  • Oferece substituir ou mesclar com consulta existente

9. Agrupamento, Agregações e HAVING

A seleção de colunas permite configurar funções de agregação (COUNT, SUM, AVG, MIN e MAX). Quando uma consulta combina colunas agregadas e não agregadas, o GROUP BY é gerado a partir das colunas não agregadas selecionadas; COUNT(*) também participa da ativação da lógica de agrupamento.

A aba HAVING disponibiliza as agregações presentes no SELECT para montar condições sobre os resultados agregados. É possível adicionar/remover comparações, escolher operadores e combinar condições com AND/OR. A cláusula é gerada após o GROUP BY.


10. Contribuição e Apoio

💡 Contribua com Ideias

O EB QueryBuilder é um projeto em constante evolução. Se você tem ideias para novas funcionalidades, encontrou algum bug ou quer sugerir melhorias, sua contribuição é muito bem-vinda!

Entre em contato pelo LinkedIn:

☕ Apoie o Desenvolvimento com PIX

Este software foi desenvolvido de forma independente, 100% offline e sem anúncios. Se ele ajudou você no seu trabalho, considere fazer uma contribuição voluntária para manter o projeto ativo e em evolução.

Chave PIX (aleatória): 604f7cf3-dfae-4a17-afda-ff63cf2b7e5f

Você pode escanear o QR Code diretamente no aplicativo através do botão "Feedback e Apoio" na janela principal.

🙏 Obrigado por usar o EB QueryBuilder!
Sua contribuição, seja financeira ou com ideias, ajuda a manter esta ferramenta gratuita e cada vez melhor.


Documentação revisada em outubro de 2026 • EB QueryBuilder v2.0

Source: readme.md, updated 2026-10-15