Save Eul Excel Template
Zuletzt geändert: 24.05.2026 08:59

Übersicht

Save-EulExcelTemplate #

ÜBERSICHT #

Speichert eine wiederverwendbare Konfiguration für Export-EulToExcel und Import-EulFromExcel in der EULANDA-SQL-Registry.

SYNTAX #

Save-EulExcelTemplate [-Conn] <__ComObject> [-Table] <string> [-Name] <string> [[-Columns]
    <string[]>] [[-Where] <string>] [[-OrderBy] <string>] [[-Top] <int>] [-IncludeBreadcrumbs]
    [[-BreadcrumbColumnName] <string>] [[-KeyColumns] <string[]>] [[-Mode] <string>]
    [[-Description] <string>] [[-Language] <string>] [-StripHtml] [-NoAutoSize] [[-WorksheetName]
    <string>] [[-SupplierMatch] <string>] [-AutoCreate] [[-MatchStrategy] <string[]>]
    [[-BarcodeColumn] <string>] [-RecalcEkFromRabatt] [[-SupplierPriceColumns] <string[]>]
    [[-IgnoreFieldsOnUpdate] <string[]>] [[-Type] <string>]

BESCHREIBUNG #

Ein Template bündelt die typischen Parameter eines Excel-Roundtrips unter einem sprechenden Namen — Spaltenauswahl, WHERE-Filter, Sortierung, Top-N, Breadcrumb-Optionen, fachlicher Schlüssel und Upsert-Modus. Plugin-Autoren oder Power-User können so eine “Artikel Standard”-Auswertung einmal definieren und in Skripten oder im EulandaXcel-Plugin abrufen.

Speicherort in der SQL-Registry: \USER\.ALLUSER\PlugIn\EulandaXcel\Templates\<TableName>\<Name>\

Werte pro Template:

  • Table (string) — implizit aus dem Pfad
  • Name (string) — implizit aus dem Pfad
  • Columns (JSON-Array)
  • Where (string)
  • OrderBy (string)
  • Top (int)
  • IncludeBreadcrumbs (0/1)
  • BreadcrumbColumnName (string)
  • KeyColumns (JSON-Array)
  • Mode (Upsert/InsertOnly/UpdateOnly)
  • Description (string, optional)
  • Language (string, optional) — leer/nicht gesetzt = mehrsprachig (Tags und HTML bleiben), ISO-Code (z.B. ‘de’) = nur dieser Sprachanteil wird beim Export extrahiert.
  • StripHtml (0/1) — nur wirksam mit Language; entfernt HTML aus Memos.
  • NoAutoSize (0/1) — Spaltenbreiten beim Export nicht automatisch anpassen.
  • WorksheetName (string, optional) — Excel-Arbeitsblatt-Name. Leer = Tabellenname.
  • SupplierMatch (string, optional) — Adresse.Match des Lieferanten (sprechender Schlüssel, über Mandanten portabel - die numerische Kreditor.ID wäre beim Export in einen anderen Mandanten nutzlos). Leer = eigener Stamm. Der Caller löst beim Apply den Match per Get-EulSupplierList | Where Match -eq … zur aktuellen Kreditor.ID auf.
  • AutoCreate (0/1) — im Supplier-Modus fehlende ARTIKEL/KrArtikel automatisch anlegen.
  • MatchStrategy (JSON-Array, optional) — Resolver-Reihenfolge, z.B. @('Barcode','ArtNummer').
  • BarcodeColumn (string, optional) — Excel-Spalte für GTIN.
  • RecalcEkFromRabatt (0/1) — EkNetto = Vk * (100 - Rabatt) / 100.
  • SupplierPriceColumns (JSON-Array, optional) — Spalten die in KRARTIKEL geschrieben werden (Rest in ARTIKEL).
  • IgnoreFieldsOnUpdate (JSON-Array, optional) — Spalten die beim Import niemals geschrieben werden.
  • Type (string, optional) — ‘Export’ oder ‘Import’. Markiert wofür die Vorlage primär gedacht ist. Plugin-UI filtert die Vorlagen- Combo entsprechend. Leer = Legacy-Vorlage ohne Markierung (wird in beiden Combos angezeigt, für Rückwärtskompatibilität).

Bestehendes Template gleichen Namens wird überschrieben. Werte, die nicht angegeben sind, werden in der Registry gelöscht (damit der Get-Pfad unbelegte Felder als $null zurückliefert und nicht aus einem alten Stand erbt).

PARAMETER #

-Conn #

Type: __ComObject

Offene ADODB-Verbindung. Caller-owns-Connection.

-Table #

Type: string

Tabellenname (z.B. ‘Artikel’). Sortiert das Template in den Tabellen-Subtree.

-Name #

Type: string

Template-Name. Frei wählbar, sprechend (z.B. ‘Standard’, ‘Preisliste B2B’, ‘Inventur’).

-Columns #

Type: string[]

Spaltenliste für Export. $null = alle Spalten.

-Where #

Type: string

Optionale WHERE-Klausel OHNE Schlüsselwort.

-OrderBy #

Type: string

Optionale ORDER BY-Klausel OHNE Schlüsselwort.

-Top #

Type: int
Default: 0

Maximale Zeilenanzahl, 0 = unbegrenzt.

-IncludeBreadcrumbs #

Type: switch

Wenn gesetzt: Merkmal-Pfade als zusätzliche Spalte exportieren bzw. beim Import zurück synchronisieren.

-BreadcrumbColumnName #

Type: string
Default: '_Breadcrumbs'

Spaltenname für Breadcrumbs. Default _Breadcrumbs.

-KeyColumns #

Type: string[]

Fachlicher Schlüssel für Import-EulFromExcel (z.B. ‘ArtNummer’).

-Mode #

Type: string
Default: 'Upsert'

Upsert (Default) / InsertOnly / UpdateOnly für Import.

-Description #

Type: string

Freier Beschreibungstext, vom UI in der Vorlagen-Auswahl angezeigt.

-Language #

Type: string

Sprach-Auswahl für Export-EulToExcel-Single-Lang-Modus. Leer/nicht gesetzt = mehrsprachig (Tags bleiben). ISO-Code (z.B. ‘de’, ’en’) = nur dieser Sprachanteil wird beim Export extrahiert.

-StripHtml #

Type: switch

Entfernt HTML-Tags aus Memo-Spalten beim Export. Nur wirksam in Kombination mit -Language.

-NoAutoSize #

Type: switch

Spaltenbreiten im Excel-Ergebnis nicht automatisch anpassen.

-WorksheetName #

Type: string

Name des Excel-Arbeitsblatts. Leer = Tabellenname.

-SupplierMatch #

Type: string

Adresse.Match des Lieferanten für den Supplier-Modus von Import-EulFromExcel. Sprechend statt numerisch, damit eine Vorlage auch nach Export in einen anderen Mandanten wiederverwendbar bleibt. Der Caller löst beim Anwenden den Match zur aktuellen Kreditor.ID auf (z.B. über Get-EulSupplierList).

-AutoCreate #

Type: switch

Supplier-Modus: fehlende ARTIKEL/KrArtikel automatisch anlegen.

-MatchStrategy #

Type: string[]

Supplier-Modus: Resolver-Reihenfolge für Resolve-EulandaArticleId. Default beim Import: @('Barcode','ArtNummer').

-BarcodeColumn #

Type: string

Supplier-Modus: Excel-Spalte für GTIN. Default ‘Barcode’.

-RecalcEkFromRabatt #

Type: switch

Berechnet EkNetto = Vk * (100 - Rabatt) / 100 beim Import, wenn Vk und Rabatt in der Zeile vorhanden sind und Rabatt != 0.

-SupplierPriceColumns #

Type: string[]

Supplier-Modus: Spalten die in KRARTIKEL geschrieben werden (Rest in ARTIKEL). Default beim Import: @('EkNetto','Vk','BruttoFlg', 'RabattGr','WarenGr','ArtMatch').

-IgnoreFieldsOnUpdate #

Type: string[]

Spalten die beim Import niemals geschrieben werden. Pendant zur Registry-Liste RV_IgnoreFieldsOnUpdate aus dem Delphi-Wizard.

-Type #

Type: string

‘Export’ oder ‘Import’. Plugin-UI filtert die Vorlagen-Combo entsprechend (Export-Tab zeigt nur Export-Vorlagen + Legacy, Import-Tab zeigt nur Import-Vorlagen + Legacy). Leer = legacy.

AUSGABEN #

[string] — Registry-Pfad des gespeicherten Templates.

BEISPIELE #

Save-EulExcelTemplate -Conn $conn -Table 'Artikel' -Name 'Standard' `
  -Columns 'ArtNummer','Kurztext1','Vk','Bestand' `
  -OrderBy 'ArtNummer ASC' `
  -KeyColumns 'ArtNummer' `
  -Description 'Vereinfachte Artikelsicht für schnelle Pflege'

HINWEISE #

Phase 4 Tier 3 – Vorlagen-Verwaltung für Excel-Pipeline. Pendants: Get-EulExcelTemplate, Remove-EulExcelTemplate.