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 ‘:
Diese Funktion kapselt den Lookup vollständig – der Aufrufer braucht weder den Tabellennamen noch das Spalten-Layout zu kennen. Wenn die Übersetzung in der gewünschten Sprache fehlt, wird der Original-Tag (’:SUB@TYPE’) zurückgegeben statt einer leeren Zeichenkette oder Exception; so kann der Aufrufer Auflösungs-Fehler im UI erkennen.
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’). Default ist ‘DE’.
AUSGABEN #
[string]
- Der aufgelöste Klartext, wenn ein Eintrag in der Sprache existiert. - ‘:SubtypeChar@Type’ (Original-Tag), wenn 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.