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'
VERWANDTE LINKS #
HINWEISE #
Phase 4 Tier 3 – Vorlagen-Verwaltung für Excel-Pipeline. Pendants: Get-EulExcelTemplate, Remove-EulExcelTemplate.