Resolve Eulanda Message Ref
Zuletzt geändert: 23.07.2026 19:01

Übersicht

Resolve-EulandaMessageRef #

ÜBERSICHT #

Löst genau eine EULANDA-Message-Referenz im Format ‘:SUB@TYPE’ in den sprachabhängigen Klartext auf.

SYNTAX #

Resolve-EulandaMessageRef [-Conn] <__ComObject> [-SubtypeChar] <string> [-Type] <int> [[-Language]
    <string>] [<CommonParameters>]

BESCHREIBUNG #

EULANDA nutzt in vielen System-Tabellen Platzhalter-Strings der Form ‘:@’, um sprachabhängige Bezeichner zu kodieren – z.B. ‘:AR@1071’ für ‘Artikel’ (DE) bzw. ‘Article’ (EN). Die Auflösung erfolgt über die interne Message-Tabelle der EULANDA-Datenbank.

Diese Funktion kapselt den Lookup vollständig – der Aufrufer braucht weder den Tabellennamen noch das Spalten-Layout zu kennen. Fehlt die Übersetzung in der gewünschten Sprache, wird auf Deutsch ausgewichen; fehlt auch die, kommt der Original-Tag (’:SUB@TYPE’) statt einer leeren Zeichenkette oder Exception zurück, so dass der Aufrufer echte Auflösungs-Fehler im UI erkennen kann.

Der Subtype im Tag darf alphanumerisch (’:AR@1071’) ODER rein numerisch (’:1000@1086’) sein; die Funktion trifft die passende Schlüsselspalte (SubTypeChar bzw. numerisches SubType) selbst.

Für Texte mit mehreren Tags oder zur Wiederverwendung über mehrere Aufrufe hinweg: Expand-EulandaMessageRefs (mit eingebautem Cache).

PARAMETER #

-Conn #

Type: __ComObject

ADODB.Connection-Objekt zur EULANDA-Datenbank. Caller-owns-Connection.

-SubtypeChar #

Type: string

Der zweistellige Subtype-Code aus dem Tag, z.B. ‘AR’ für Artikel, ‘AD’ für Adresse.

-Type #

Type: int

Der numerische Type-Code aus dem Tag, z.B. 1071.

-Language #

Type: string
Default: 'DE'

ISO-Sprachcode (Großbuchstaben: ‘DE’, ‘EN’, ‘FR’, ‘IT’, ‘ES’, ‘NL’, ‘PL’, ‘PT’). Default ist ‘DE’; fehlende Übersetzungen fallen auf ‘DE’ zurück.

AUSGABEN #

[string]
  • Der aufgelöste Klartext (gewünschte Sprache, sonst Deutsch). - ‘:SubtypeChar@Type’ (Original-Tag), wenn auch in Deutsch kein Treffer.

BEISPIELE #

Resolve-EulandaMessageRef -Conn $conn -SubtypeChar 'AR' -Type 1071 -Language 'DE'
# → 'Artikel'
Resolve-EulandaMessageRef -Conn $conn -SubtypeChar 'AR' -Type 1071 -Language 'EN'
# → 'Article'
# Nicht existierender Tag liefert den Tag selbst zurück
Resolve-EulandaMessageRef -Conn $conn -SubtypeChar 'XX' -Type 9999 -Language 'DE'
# → ':XX@9999'

HINWEISE #

Pendant zur Delphi-Funktion ‘CnMessages.PatchMsg’ aus EulandaLib\pas\elApp.pas (siehe Funktion ‘DoMsg’).

Die zugrundeliegende Tabelle ist Basisbestandteil jeder EULANDA-DB, daher kein Datenbank-Präfix nötig. Bei nicht erreichbarer Tabelle wirft die Funktion – das ist Konfigurationsfehler, kein Daten-Miss.