Skip to content
ispyisail edited this page Sep 11, 2026 · 1 revision

Importing EPLAN parts (.edz)

QET can import a part from the EPLAN Data Portal β€” the de-facto parts catalogue for electrical CAD (ifm, Phoenix Contact, Siemens, Rittal, WeidmΓΌller, Schneider and others) β€” directly into an elements collection. Portal parts ship as .edz files; this feature reads the factual data out of one and generates a QET element from it.

This is not a symbol import. The result is a working, correctly labelled element with the right terminals β€” not a copy of the manufacturer's EPLAN symbol. See Β§3.

Source: sources/import/edz/ β€” the module carries its own developer README, which this page is based on.


1. Using it

Right-click a writable collection folder in the elements panel β†’ Import an EPLAN part (.edz)… β†’ choose the file. The generated element is written into that folder and the panel reloads.

Only 7-Zip-format .edz files are supported today. Some EPLAN exports use zip format instead (PK\x03\x04 rather than the 7z magic number); QET detects this and reports it rather than failing silently, but cannot import it yet.


2. What is imported

A .edz is an archive containing a part definition (part.xml), an EPLAN macro (.ema), a product image and metadata. QET reads only the portable part data β€” the facts, not EPLAN's own symbol geometry:

From the .edz Becomes
Each <functiontemplate> with a physical connection a QET terminal
Pin designation (e.g. 1, PE) the terminal's label
Manufacturer manufacturer element-information field
Order number manufacturer_reference
Description (DESCR1) designation
Comment (DESCR2) comment
<name lang="xx">, one per language the part provides a localized element name, so it appears in whatever language QET's UI is running in

Those four information fields are exactly the ones the BOM/nomenclature already reads β€” see The project database β€” so an imported part appears correctly in a parts list with no further setup.

Pins are grouped and sorted by their functional block, then by designation within it: power/terminal connections carrying a terminalNr are grouped by that; others fall back to their functiondefinition.


3. The symbol is generic, on purpose

The importer draws a plain body rectangle with one west-facing terminal per pin β€” it does not reproduce the EPLAN macro's geometry. The .ema macro is tokenised EPLAN PXF that references EPLAN's own symbol libraries; there is nothing portable in it to draw from.

The generic symbol is enough to wire the part correctly and get it into a BOM immediately. If you want a nicer-looking symbol, open the imported element in the element editor afterward and redraw the graphics β€” the terminals, labels and information are already correct and do not need to be touched.


4. A note on where the data comes from

.edz files are downloaded from the EPLAN Data Portal (data.eplan.com), operated by EPLAN Software & Service GmbH & Co. KG. The Data Portal's own Terms of Use restrict use of downloaded data to EPLAN products.

QET does not endorse or encourage violating those terms. Whether using a given .edz outside EPLAN products is permitted depends on your agreement with EPLAN and the part's manufacturer β€” QET has no part in that agreement and cannot answer it for you. If in doubt, ask EPLAN or the manufacturer directly.

What QET's reader itself does: it parses only the portable, factual part data β€” pin designations, order numbers, manufacturer names β€” and does not reproduce any EPLAN-proprietary geometry or symbol data. That is a description of what the code does, not legal advice about your specific situation.


5. How it fits together

File Role
edzarchive.* extracts the .edz to a temp directory, locates part.xml
edzsevenzip.* 7-Zip extraction via a bundled, decode-only LZMA SDK β€” no external 7-Zip install needed
edzpart.* parses part.xml into the portable model in the table above
edzelementbuilder.* builds the .elmt from that model
edzimporter.* orchestrates the above and writes into the chosen collection folder

The non-UI classes are deliberately decoupled from the widget, so the whole pipeline is testable headless β€” docker compose run --rm qet-edz-fuzz fuzzes EdzImporter::importToDirectory() directly against a corpus of malformed .edz files under AddressSanitizer/UBSan.


See also: Linking elements Β· The project database

Getting Started

Home

🌐 Languages β€” English Β· FranΓ§ais Β· Deutsch

Downloads

Windows without admin rights β€” the portable archive, no installer

Quick Start Guide

User Manual

FAQ

Tips & Tricks

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

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

File formats
Elements XML
Project XML
Development

Building from Source

Contributing Code

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

Development Roadmap

Vision β€” proposal, under discussion

Developer Tools

About

Features

History

Community

License

Contributing to this Wiki

Clone this wiki locally