Repository navigation
element_linking FR
La plupart des éléments de la collection sont simples : on les dessine, on les place, on les câble, et c'est tout. Quelques types d'éléments font davantage — ils se lient entre eux, ils limitent ce que l'utilisateur peut raccorder, et ils modifient ce qui apparaît dans le bloc de renvoi de folio ainsi que dans la nomenclature.
Ce comportement est déterminé par un seul attribut du fichier .elmt,
réglé dans l'éditeur d'élément via Fichier → Propriétés de l'élément. Cette
page documente ce que fait chaque choix, ce qu'il écrit dans le fichier, et sur
quelles options on peut compter aujourd'hui.
La source de référence pour tout ce qui suit est
sources/properties/elementdata.cpp(typeFromString,masterTypeToString,slaveTypeToString,slaveStateToString,kindInfoToXml,kindInfoFromXml) etsources/editor/ui/elementpropertieseditorwidget.cppcôté éditeur.
link_type est un attribut de la balise racine <definition> :
<definition version="0.90" type="element" link_type="master"
width="200" height="70" hotspot_x="100" hotspot_y="35">link_type |
Libellé de l'éditeur | Signification |
|---|---|---|
simple |
Simple | Élément ordinaire. La valeur par défaut — une valeur inconnue ou absente revient à celle-ci. |
master |
Maître | Porte un renvoi de folio : bobines, protections, commutateurs, modules API. |
slave |
Esclave | Un contact rattaché à un maître, listé dans son renvoi de folio. |
next_report |
Renvoi de folio suivant | Renvoi de folio, vers l'avant. |
previous_report |
Renvoi de folio précédent | Renvoi de folio, vers l'arrière. |
terminal |
Bornier | Une borne de bornier. |
thumbnail |
Vignette | Élément vignette. |
conductor_definition |
Définition de conducteur | Définition de conducteur. |
Toute valeur non reconnue devient silencieusement simple (avec un
avertissement sur la sortie d'erreur). Il n'y a pas d'erreur de validation :
une faute de frappe dans un .elmt édité à la main se manifeste seulement par
un élément qui a mystérieusement cessé de se référencer.
master, slave et terminal sont les trois types qui écrivent également un
bloc <kindInformations>. Les autres types n'en écrivent pas.
<kindInformations>
<kindInformation name="type">coil</kindInformation>
</kindInformations>Valeur de type
|
Libellé de l'éditeur | Élément typique |
|---|---|---|
coil |
Bobine | Bobines de contacteur et de relais. Valeur de repli. |
protection |
Organe de protection | Disjoncteurs, relais thermiques, fusibles à contacts. |
commutator |
Commutateur / bouton | Commutateurs, boutons-poussoirs. |
plc |
Module PLC | Module API / E-S (voir §5). |
<kindInformations>
<kindInformation name="type">coil</kindInformation>
<kindInformation name="max_slaves">4</kindInformation>
</kindInformations>Écrit uniquement lorsqu'une limite est définie. La valeur par défaut est
-1, c'est-à-dire illimité, et -1 n'est jamais écrit dans le fichier : un
max_slaves absent et max_slaves = -1 signifient la même chose.
max_slaves compte des éléments esclaves, pas des contacts. Un même
élément esclave peut déclarer number = 4 : un maître avec max_slaves = 4
peut donc porter bien plus de quatre contacts physiques. C'est le contresens
le plus fréquent au sujet de cette fonction ; le maître se déclare plein
lorsque le nombre d'éléments esclaves rattachés atteint la limite, quel que
soit le nombre de contacts que chacun représente.
Dans l'éditeur, la limite est une case à cocher accompagnée d'un compteur,
affichée pour coil, protection et commutator. Choisir plc la masque et
force -1.
Un maître peut décrire les contacts qu'il offre réellement, typés et étiquetés :
<kindInformations>
<kindInformation name="type">coil</kindInformation>
<slaveContactGroups>
<group type="NO" subtype="simple" contactCount="2" terminalCount="2">
<label>13</label>
<label>14</label>
</group>
<group type="NC" subtype="simple" contactCount="1" terminalCount="2">
<label>21</label>
<label>22</label>
</group>
</slaveContactGroups>
</kindInformations>| Attribut | Valeurs | Signification |
|---|---|---|
type |
NO, NC, SW, Other
|
État du contact. Par défaut NO. |
subtype |
simple, power, delayOn, delayOff, delayOnOff, plc
|
Genre de contact. Par défaut simple. |
contactCount |
entier | Nombre de contacts fournis par ce groupe. Par défaut 1. |
terminalCount |
entier | Bornes par contact. Par défaut 1. |
<label> |
texte | Une par borne, dans l'ordre (13, 14, …). |
Le bloc entier n'est écrit que si la case Groupes de contacts est cochée dans
l'éditeur ; sa présence au chargement recoche cette case. Il n'est pas
disponible pour les maîtres plc.
État : livré mais inutilisé. Sur les 6 918 éléments de la collection
10_electric, 0 déclarent slaveContactGroups et 0 déclarent
max_slaves. La fonction marche, mais aucun élément de la collection livrée ne
s'en sert : un nouvel élément qui l'utilise ouvre la voie plutôt qu'il ne suit
un modèle existant.
<kindInformations>
<kindInformation name="type" show="1">simple</kindInformation>
<kindInformation name="state" show="1">NO</kindInformation>
<kindInformation name="number" show="1">1</kindInformation>
</kindInformations>Les trois clés sont toujours écrites pour un esclave.
| Clé | Valeurs | Signification |
|---|---|---|
type |
simple, power, delayOn, delayOff, delayOnOff, plc
|
Genre de contact. Repli : simple. |
state |
NO, NC, SW, Other
|
Normalement ouvert / fermé / inverseur / autre. Repli : NO. |
number |
entier | Nombre de contacts que cet élément représente. |
Libellés de l'éditeur : Simple, Puissance, Temporisé travail, Temporisé
repos, Temporisé travail & repos pour type ; Normalement ouvert,
Normalement fermé, Inverseur, Other pour state.
La liste d'états de l'éditeur comporte une entrée supplémentaire, Esclave
PLC, qui n'est pas un état : la choisir fixe type = plc et state = Other,
et désactive la liste des types. C'est pourquoi plc figure dans le
vocabulaire de type mais jamais dans celui de state.
number est ce qui rend le total de contacts d'un maître supérieur à son
nombre d'esclaves — voir la note sur max_slaves ci-dessus.
<kindInformations>
<kindInformation name="type">generic</kindInformation>
<kindInformation name="function">phase</kindInformation>
</kindInformations>| Clé | Valeurs | Libellés de l'éditeur |
|---|---|---|
type |
generic, fuse, sectional, diode, ground
|
Générique, Fusible, Séctionnable, Diode, Terre |
function |
generic, phase, neutral
|
Générique, Phase, Neutre |
Les deux se replient sur generic.
Régler le type d'un maître sur plc remplace les réglages max_slaves et
groupes de contacts par une table d'E-S API, sérialisée en un bloc
<plcMasterData> à l'intérieur de <kindInformations> : hauteur de ligne,
positions de coupure, largeurs, visibilité, noms et ordre des colonnes, polices
d'en-tête et de cellule, et une liste <plcIOs> d'entrées <plcIO> portant
type, address, functionText, comment, crossRef, terminalCount et
les noms de bornes.
Aucun élément de la collection 10_electric livrée n'est un maître plc.
Ceux-ci ne sont pas dans <kindInformations>. Ils vivent dans
<elementInformations> comme des entrées <elementInformation> ordinaires, et
se règlent élément par élément sur le folio, pas dans l'éditeur d'élément :
<elementInformations>
<elementInformation show="1" name="potential_isolating">true</elementInformation>
</elementInformations>| Clé | S'applique à | Effet |
|---|---|---|
potential_isolating |
éléments bornier | Empêche le potentiel de se propager à travers la borne ; les deux côtés sont numérotés comme des potentiels distincts. |
auto_num_locked |
éléments bornier | La numérotation des bornes saute cette borne au lieu de la renuméroter. |
exclude_from_bom |
tout élément | L'élément est exclu de la nomenclature. |
Les trois sont comparés à la chaîne exacte "true". "True", "1" et
"yes" sont tous lus comme non défini. Les cases à cocher du dialogue
d'informations écrivent toujours "true" ; le piège ne se présente donc que
pour un .qet édité ou généré à la main.
exclude_from_bom est filtré en SQL, dans la définition de
element_nomenclature_view dans sources/dataBase/projectdatabase.cpp.
Un élément porte quatre blocs d'informations auxiliaires, auxiliary1 à
auxiliary4, chacun avec ses variantes description_, designation_,
manufacturer_, manufacturer_reference_,
machine_manufacturer_reference_, supplier_, quantity_ et unity_ — par
exemple manufacturer_reference_auxiliary2. Ils sont prévus pour les
accessoires vendus avec un composant (blocs de contacts auxiliaires, bobines,
kits de montage), afin que la nomenclature puisse les lister comme des lignes
distinctes rattachées au même élément.
Comme les groupes de contacts, c'est livré et dormant : aucun projet des exemples livrés ne les utilise.
| Je veux… | Régler |
|---|---|
| une bobine vers laquelle des contacts se réfèrent |
link_type="master", type = coil
|
| un contact qui se rattache à une bobine |
link_type="slave", state = NO/NC/SW
|
| indiquer qu'un bloc de contacts en contient trois | esclave number = 3
|
| plafonner ce qui peut se rattacher à une bobine | maître max_slaves = N (N compte des éléments esclaves) |
| décrire le vrai budget de contacts d'une bobine | maître <slaveContactGroups>
|
| couper un potentiel au niveau d'une borne | info d'élément potential_isolating = true
|
| conserver le numéro d'une borne lors d'une renumérotation | info d'élément auto_num_locked = true
|
| masquer un élément dans la nomenclature | info d'élément exclude_from_bom = true
|
Voir aussi : Elements XML · kindInformations · elementInformations · attribut definition
Getting Started
🌐 Languages — English · Français · Deutsch
Windows without admin rights — the portable archive, no installer
Guides
Conductors — wire properties, what feeds which export, cables, and hops where wires cross
Wires per terminal — limit the wires on a terminal, chain wiring instead of stars
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
Generic devices — a quick box symbol with terminals on any side, made by a wizard (pending)
Grid size and element size — why symbols aren't all the same scale, and scaling one without leaving the grid
Preferences reference — what each settings page does
Saving and loading settings — your whole setup in one file, to copy or keep
Keyboard-only control — mouseless QET, and what still needs a mouse
Mouse modifiers — what Shift, Ctrl and Alt change while you drag
3D mouse — SpaceMouse pan, zoom and buttons
Aligning items — snap symbols back to the grid, or line them up
Pictures on a sheet — labels, crop, transparency, what they cost in the file
Arcs and curved wires — the Arc tool, pulling an arc in or out, rounding a corner with a fillet, dashed arcs for lighting layouts
Grouping items — select, move and copy several items as one
Finding your place on a sheet — go to a cell like B13 or 4-B7, keep the headers in sight, show the cell limits, zoom and pan
Showing and hiding kinds of items — hide texts, wire numbers, shapes, pictures, tables or cross-references on every sheet
Drawing faster — place without dragging, the S shortcut bar, command search, gestures
Customising QElectroTech — keys, toolbar size and contents, the gesture ring (partly pending)
Managing collections — folders, writability, building your own shortlist
Templates — reusable multi-element blocks, placed by double-click or drag
Search & Replace — bulk property changes
Building a nomenclature query — the BOM/summary table builder
Linking wires across pages — sheet 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; command-line export and layers
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
MCP server — let an AI assistant read, verify and edit projects
Connecting an AI assistant — setup for Claude, Copilot, Gemini, Codex, Cursor, LM Studio
Script buttons — stored scripts with an icon, by hand or by an assistant
Live mode — an assistant working in the open project while you watch
Macro recorder — record a task by hand, for an assistant to script
Vision — proposal, under discussion
