<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Konzepte &amp; Abläufe on Handbuch</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/</link><description>Recent content in Konzepte &amp; Abläufe on Handbuch</description><generator>Hugo</generator><language>de</language><lastBuildDate>Sun, 19 Apr 2026 04:52:23 +0200</lastBuildDate><atom:link href="https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/index.xml" rel="self" type="application/rss+xml"/><item><title>Einführung</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/10-einfuehrung/</link><pubDate>Sun, 19 Apr 2026 04:42:24 +0200</pubDate><guid>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/10-einfuehrung/</guid><description>&lt;h1 id="einführung">
 Einführung
 &lt;a class="anchor" href="#einf%c3%bchrung">#&lt;/a>
&lt;/h1>
&lt;p>&lt;strong>EulandaXtools&lt;/strong> ist ein umfangreiches PowerShell-Modul für die
EULANDA-Warenwirtschaft. Es stellt über 400 Funktionen bereit, um
datenbankgestützte Abläufe zu automatisieren: Belege anlegen und exportieren,
elektronische Rechnungen erzeugen (Peppol, ZUGFeRD, XRechnung), Shopify
synchronisieren, EDIFACT verarbeiten, Newsletter versenden und vieles mehr.&lt;/p>
&lt;p>Das Modul läuft unter Windows PowerShell 5.1 und PowerShell 7+ und wird
typischerweise in einem der drei folgenden Szenarien eingesetzt.&lt;/p>
&lt;h2 id="ansatz-1-standalone-skripte">
 Ansatz 1: Standalone-Skripte
 &lt;a class="anchor" href="#ansatz-1-standalone-skripte">#&lt;/a>
&lt;/h2>
&lt;p>Der einfachste Weg. Ein PowerShell-Skript öffnet eine Verbindung zur
EULANDA-Datenbank über eine UDL-Datei und ruft Funktionen auf. Für den
Verbindungs-Aufbau gibt es den Helfer &lt;code>Get-ConnByUdl&lt;/code>.&lt;/p></description></item><item><title>SQL-Registry</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/20-sql-registry/</link><pubDate>Sun, 19 Apr 2026 04:42:24 +0200</pubDate><guid>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/20-sql-registry/</guid><description>&lt;h1 id="sql-registry">
 SQL-Registry
 &lt;a class="anchor" href="#sql-registry">#&lt;/a>
&lt;/h1>
&lt;p>Die EULANDA-Datenbank hat eine eigene hierarchische Konfigurations-Ablage,
die SQL-Registry genannt wird. Sie funktioniert konzeptionell wie die
Windows-Registry, ist aber in der Tabelle &lt;code>Registry&lt;/code> der Datenbank abgelegt
und damit pro Mandant unterschiedlich.&lt;/p>
&lt;p>Dort werden unter anderem gespeichert:&lt;/p>
&lt;ul>
&lt;li>Firmenstamm-Einstellungen (Bankverbindungen, Briefpapier-Defaults)&lt;/li>
&lt;li>Plugin-Konfigurationen (DMS-Pfad, Shopify-Tokens, Mailprovider)&lt;/li>
&lt;li>Grundwerte (USt-Sätze, Umrechnungsfaktoren, Textvorlagen)&lt;/li>
&lt;li>Pfade zu Reports, Dateien, Scans&lt;/li>
&lt;/ul>
&lt;h2 id="drei-ebenen--nur-eine-davon-nutzt-man-direkt">
 Drei Ebenen &amp;ndash; nur eine davon nutzt man direkt
 &lt;a class="anchor" href="#drei-ebenen--nur-eine-davon-nutzt-man-direkt">#&lt;/a>
&lt;/h2>
&lt;p>Aus Sicht des PowerShell-Anwenders liegen zwischen dem Skript und der
Tabelle &lt;code>Registry&lt;/code> zwei Abstraktionsschichten:&lt;/p></description></item><item><title>Registry-Cache</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/30-registry-cache/</link><pubDate>Sun, 19 Apr 2026 04:42:24 +0200</pubDate><guid>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/30-registry-cache/</guid><description>&lt;h1 id="registry-cache">
 Registry-Cache
 &lt;a class="anchor" href="#registry-cache">#&lt;/a>
&lt;/h1>
&lt;p>Der Registry-Cache ist eine reine Performance-Optimierung für das Lesen
aus der SQL-Registry. Er ist für den normalen Anwendungsfall transparent,
sollte aber einmal verstanden sein, wenn man viele Registry-Zugriffe
hintereinander macht oder auf einem VPN arbeitet.&lt;/p>
&lt;h2 id="zwei-betriebsarten">
 Zwei Betriebsarten
 &lt;a class="anchor" href="#zwei-betriebsarten">#&lt;/a>
&lt;/h2>
&lt;p>EulandaXtools kann die Registry auf zwei Arten lesen:&lt;/p>
&lt;h3 id="legacystore-ohne-cache">
 LegacyStore (ohne Cache)
 &lt;a class="anchor" href="#legacystore-ohne-cache">#&lt;/a>
&lt;/h3>


&lt;p class="mermaid">
flowchart TD
 L1[Get-EulandaRegistryValue]:::anlegen
 L2[SQL-Roundtrip&lt;br/>cnf_RegReadString]:::storno
 L3[(SQL-Registry)]:::store
 L1 --> L2 --> L3

 classDef anlegen fill:#2e86c1,color:#fff,stroke:#1a5276
 classDef storno fill:#c0392b,color:#fff,stroke:#7b241c
 classDef store fill:#566573,color:#fff,stroke:#2c3e50
&lt;/p></description></item><item><title>DMS (Dokumentenmanagement)</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/40-dms/</link><pubDate>Sun, 19 Apr 2026 04:42:24 +0200</pubDate><guid>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/40-dms/</guid><description>&lt;h1 id="dms">
 DMS
 &lt;a class="anchor" href="#dms">#&lt;/a>
&lt;/h1>
&lt;p>Das &lt;strong>DMS&lt;/strong> (&amp;ldquo;Dokumentenmanagement&amp;rdquo;) ist ein EULANDA-Plugin (&lt;code>esol.DMS&lt;/code>),
das Dokumente strukturiert an Stammdaten und Belege anhängt &amp;ndash; z.B. den
Lieferanten-Zertifikats-PDF an den Lieferanten, die unterschriebene
Auftragsbestätigung an den Auftrag, einen Scan der Eingangsrechnung
an die Rechnung.&lt;/p>
&lt;p>EulandaXtools stellt dünne Wrapper bereit, um den physischen Pfad zu
einem DMS-Ordner für ein bestimmtes Objekt zu berechnen und optional
auch anzulegen.&lt;/p>
&lt;h2 id="grundaufbau">
 Grundaufbau
 &lt;a class="anchor" href="#grundaufbau">#&lt;/a>
&lt;/h2>
&lt;p>Alle DMS-Inhalte liegen unter einem &lt;strong>BaseFolder&lt;/strong>. Der Pfad dorthin
steht in der SQL-Registry:&lt;/p></description></item><item><title>Merkmalbaum &amp; Breadcrumbs</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/50-merkmalbaum/</link><pubDate>Sun, 19 Apr 2026 04:52:23 +0200</pubDate><guid>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/50-merkmalbaum/</guid><description>&lt;h1 id="merkmalbaum--breadcrumbs">
 Merkmalbaum &amp;amp; Breadcrumbs
 &lt;a class="anchor" href="#merkmalbaum--breadcrumbs">#&lt;/a>
&lt;/h1>
&lt;p>EULANDA hat für Adressen und Artikel einen &lt;strong>Merkmalbaum&lt;/strong> &amp;ndash; eine
hierarchische Klassifizierung, mit der Datensätze frei kategorisiert
werden können. Ein Artikel kann z.B. den Merkmalen
&lt;code>\KEYWORDS\Software&lt;/code>, &lt;code>\KEYWORDS\Warenwirtschaft&lt;/code> und &lt;code>\Shop\Software&lt;/code>
gleichzeitig zugeordnet sein.&lt;/p>
&lt;p>Die Pfade durch diesen Baum heißen &lt;strong>Breadcrumbs&lt;/strong>. Ein Breadcrumb-Pfad
beginnt immer mit einem Backslash und listet die Knotennamen durch
weitere Backslashes getrennt auf. Ein Tabellenpräfix (&lt;code>:AR@...&lt;/code>, &lt;code>:AD@...&lt;/code>)
wird auf PowerShell-Ebene &lt;strong>nicht&lt;/strong> verwendet &amp;ndash; der Tabellenbezug kommt
über den Parameter &lt;code>-TableName&lt;/code>.&lt;/p></description></item><item><title>Beleg-Pipeline (Auftrag → Lieferschein → Rechnung)</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/60-beleg-pipeline/</link><pubDate>Sun, 19 Apr 2026 04:42:24 +0200</pubDate><guid>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/60-beleg-pipeline/</guid><description>&lt;h1 id="beleg-pipeline">
 Beleg-Pipeline
 &lt;a class="anchor" href="#beleg-pipeline">#&lt;/a>
&lt;/h1>
&lt;p>Der typische Verkaufsprozess in EULANDA läuft über eine Kette
zusammenhängender Belege. Jeder Folgebeleg wird aus dem Vorgänger
abgeleitet und bleibt mit diesem verknüpft. EulandaXtools bietet für
jeden Schritt dieser Kette ein passendes Cmdlet.&lt;/p>
&lt;h2 id="die-pipeline-auf-einen-blick">
 Die Pipeline auf einen Blick
 &lt;a class="anchor" href="#die-pipeline-auf-einen-blick">#&lt;/a>
&lt;/h2>


&lt;p class="mermaid">
flowchart TD
 A1[New-SalesOrder]:::anlegen --> A2[New-SalesOrderLineItem]:::anlegen
 A2 --> A3[Close-SalesOrder]:::buchen
 A3 --> B1[New-DeliveryNoteFromSalesOrder]:::umwandlung
 B1 --> B2[Close-DeliveryNote]:::buchen
 B2 --> C1[New-InvoiceFromDeliveryNote]:::umwandlung
 A3 -. Direkt ohne LS .-> C2[New-InvoiceFromSalesOrder]:::umwandlung
 C1 --> D1[Send-InvoiceByEmail]:::versand
 C2 --> D1
 D1 --> D2[Send-InvoiceToPrintQueue]:::versand

 classDef anlegen fill:#2e86c1,color:#fff,stroke:#1a5276
 classDef buchen fill:#27ae60,color:#fff,stroke:#196f3d
 classDef umwandlung fill:#8e44ad,color:#fff,stroke:#5b2c6f
 classDef versand fill:#566573,color:#fff,stroke:#2c3e50
&lt;/p></description></item><item><title>Plugins im ErpXe-Umfeld</title><link>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/70-plugins/</link><pubDate>Sun, 19 Apr 2026 04:52:23 +0200</pubDate><guid>https://sdk.eulanda.eu/de/docs/Eulanda-Xtools/konzepte/70-plugins/</guid><description>&lt;h1 id="plugins-im-erpxe-umfeld">
 Plugins im ErpXe-Umfeld
 &lt;a class="anchor" href="#plugins-im-erpxe-umfeld">#&lt;/a>
&lt;/h1>
&lt;p>&lt;strong>ErpXe&lt;/strong> ist die Warenwirtschafts-Anwendung, die auf der EULANDA-Datenbank
aufsetzt (der Endanwender-Client). Sie hat ein Plugin-System, über das
Funktionalität nachgerüstet wird, ohne am Kern zu schrauben &amp;ndash; Xfacture
(elektronische Rechnungen), DATEV-Export, Shopify-Sync, Dachser-Versand
und viele weitere Module laufen auf diesem Weg.&lt;/p>
&lt;p>Lange Zeit waren Plugins ausschließlich in VBScript geschrieben. Seit
&lt;strong>ErpXe 2026.4&lt;/strong> kommt ein neues Plugin-Framework dazu: &lt;strong>PowerShell-Plugins&lt;/strong>,
die direkt gehostet und &lt;strong>vollautomatisch installiert&lt;/strong> werden können.&lt;/p></description></item></channel></rss>