| Name | Modified | Size | Downloads / 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
- Apresentação
- O que é o EB QueryBuilder
- Principais Funcionalidades
- Pré-requisitos
- Instalação
- Configuração
- Como Usar — Passo a Passo
- 7.1 Carregar um Modelo PDM
- 7.2 Aba 1 — JOINs (Tabelas e Relacionamentos)
- 7.3 Aba 2 — Campos / SELECT
- 7.4 Aba 3 — Critérios / WHERE
- 7.5 Importar SQL Existente
- 7.6 Dialetos SQL Suportados
- Funcionalidades Detalhadas
- Agrupamento, Agregações e HAVING
- 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
.pdmdo SAP Power Designer (formato XML) - ✅ Extrai automaticamente todas as tabelas, colunas, chaves primárias e estrangeiras
- ✅ Monta consultas
SELECT ... FROM ... JOIN ... WHEREvisualmente, sem digitar SQL - ✅ Detecta automaticamente as condições
ONdos 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 osarquivos.pdme apagar o arquivoconfig.inidentro 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
- Selecione o modelo desejado no combo superior
- Clique em "Carregar modelo"
- O aplicativo lê o arquivo
.pdme extrai todas as tabelas, colunas e relacionamentos - 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.
- Painel esquerdo — "Tabelas disponíveis": lista todas as tabelas do modelo. Use o campo de busca para filtrar.
- Selecione uma tabela e clique "→ Adicionar" (ou dê duplo-clique)
- Um diálogo será exibido para configurar:
- Alias da tabela (sugerido automaticamente com 3 letras)
- Tipo de JOIN (INNER, LEFT, RIGHT)
- Condições ON (detectadas automaticamente via FK, mas editáveis)
- Painel direito (superior) — "Tabelas na consulta": mostra a tabela principal
[FROM]e as tabelas adicionadas com JOIN - Painel direito (inferior) — "Tabelas sugeridas": mostra pais (⬆) e filhas (⬇) da tabela selecionada, facilitando a navegação pelos relacionamentos
- 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.
- Selecione a tabela no combo (com busca)
- Escolha as colunas desejadas na lista
- Clique "→ Adicionar" ou dê duplo-clique para adicionar
- Use "⇨ Adicionar todos" para incluir todas as colunas de uma vez
- Colunas com
🔑são chaves primárias - Reordene as colunas com "↑ Subir" e "↓ Descer"
- Configure cada coluna com "✎ Configurar coluna":
- Nome Conceitual — ex:
Employee ID→ viraEmployee_ID - Nome Físico — ex:
EMPLOYEE_ID(sem alias) - Alias personalizado — você define o nome
- 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.
- Selecione a tabela (com busca)
- Selecione a coluna (com busca)
- Escolha o operador:
=,INouLIKE - Digite o valor
- Escolha o conectivo lógico:
ANDouOR(para o próximo critério) - 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:
- Clique em "Importar SQL"
- Cole o SQL no diálogo
- Clique em OK
- O aplicativo analisa o SQL e preenche automaticamente:
- Aba JOINs → tabelas e joins
- Aba Campos → colunas do SELECT
- Aba WHERE → condições de filtro
- 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:
- Detecta automaticamente arquivos binários pela assinatura
PDM_DATA-MODEL_BIN - Oferece conversão via Power Designer instalado (Windows)
- 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