Construire une nomenclature ou un tableau récapitulatif personnalisé
Les tableaux de nomenclature (BOM) et de récapitulatif de folio placés sur un folio ne sont pas des mises en page figées — chacun s'appuie sur une requête construite de façon interactive, sur les mêmes vues que documente La base de données du projet.
Source : sources/dataBase/ui/elementquerywidget.{cpp,h} (nomenclature),
sources/dataBase/ui/summaryquerywidget.{cpp,h} (récapitulatif de folio),
reliés aux propriétés d'un tableau via
projectdbmodelpropertieswidget.cpp.
1. Deux constructeurs, deux vues
| Composant | Interroge | Tableau qu'il configure |
|---|---|---|
ElementQueryWidget |
element_nomenclature_view |
nomenclature / BOM |
SummaryQueryWidget |
project_summary_view |
récapitulatif de folio |
Les deux fonctionnent de la même façon : choisir des colonnes, les ordonner,
filtrer et grouper éventuellement, et le composant assemble le SELECT
pour vous.
2. Choisir et ordonner les colonnes
Une disposition à deux listes : les colonnes disponibles d'un côté, les colonnes choisies de l'autre. Un double-clic (ou le bouton Ajouter) fait passer une colonne d'un côté à l'autre ; les boutons Haut/Bas réordonnent la liste choisie, qui est aussi l'ordre des colonnes du tableau final.
3. Filtrer
Sélectionnez une colonne choisie et posez-lui un filtre. Sept modes :
| Filtre | SQL produit |
|---|---|
| Aucun filtre | (colonne ignorée pour le filtrage) |
| Non vide | colonne != '' |
| Vide | colonne IS NULL OR colonne = '' |
| Contient | colonne LIKE '%valeur%' |
| Ne contient pas | colonne NOT LIKE '%valeur%' |
| Est égal à | colonne = 'valeur' |
| N'est pas égal à | colonne != 'valeur' |
Les deux premiers ne nécessitent aucune valeur et désactivent la zone de texte ; les autres en prennent une.
4. Groupement, comptage, et passage au SQL brut
- Grouper par une colonne, pour agréger des lignes — par exemple une ligne par référence fabricant plutôt qu'une par élément.
- Compter — un total courant à côté du groupement.
- Éditer la requête SQL — une case à cocher qui vous donne le
SELECTgénéré directement, à modifier à la main. C'est l'échappatoire pour tout ce que le constructeur de colonnes/filtres ne peut exprimer ; une fois édité à la main, le composant se contente d'afficher du SQL brut, sans chercher à garder les deux synchronisés.
5. Enregistrer une configuration pour réutilisation
Donnez un nom à la configuration actuelle de colonnes/filtres/groupement et enregistrez-la ; rechargez-la plus tard plutôt que de reconstruire un rapport à chaque fois. Pratique pour une mise en page de BOM utilisée sur plusieurs projets.
6. Ce que ce n'est pas
- Pas un client SQL général. Il n'interroge jamais que la seule vue à
laquelle il est lié (
element_nomenclature_viewouproject_summary_view) — impossible de joindre des tables arbitraires, même avec « Éditer la requête SQL » activé : vous modifiez la forme duSELECT/WHERE, pas leFROM. - Pas actif en dehors de l'application. Comme le reste de la base de données du projet, cela interroge le cache en mémoire — voir La base de données du projet pour ce que cela implique et n'implique pas.
- Pas la même chose que
--export-bom. L'export en ligne de commande lit la même vue mais avec son propre jeu de colonnes fixe — voir Automatiser QElectroTech. Ce composant sert à un tableau rendu sur un folio, et ses choix de colonnes n'affectent ni l'export en ligne de commande, ni l'inverse.
Voir aussi : La base de données du projet · Automatiser QElectroTech
Getting Started
🌐 Languages — English · Français · Deutsch
Guides
Conductors — wire properties, what feeds which export, and cables
Wire & cable catalogue — cable types, IEC 60757 core colours, assigning a core to a conductor
Printing and exporting — paper, PDF, images, and what each path does differently
Linking elements — master, slave, terminal
PLC modules — I/O tables and linking a wire to a specific point
Using the element editor — drawing tools, saving, checks
Preferences reference — what each settings page does
Keyboard-only control — mouseless QET, and the one real gap
Mouse modifiers — what Shift, Ctrl and Alt change while you drag
Managing collections — folders, writability, building your own shortlist
Templates — reusable multi-element blocks, and why clicking one does nothing
Search & Replace — bulk property changes
Building a nomenclature query — the BOM/summary table builder
Linking wires across pages — folio reports
Variables & formulas — %f, %{label}, sequences
Auto-numbering — schemes, sequences, freezing
Terminal strips — strips, levels, bridges
Title block templates — the .titleblock format
Importing EPLAN parts (.edz) — EPLAN Data Portal
DXF import & export — two unrelated features, one format
The project database — the in-memory SQLite cache
Development
Automating QET — CLI, XML formats, external tools
CLI Reference — command line usage
JavaScript Scripting — --run, geometry editing, undo
Vision — proposal, under discussion
