Argumente über Erweiterungsobjekt

Der Aufrufer der Transformation (Puzzle, Button, andere Anwendung) kann zusätzliche Daten über das Erweiterungsobjekt eo:iduCore bereit stellen. Diese können dann über Funktionen des Erweiterungsobjektes in der Transformation ausgewertet werden.

Auflistung aller Erweiterungsobjekt-Argumente:

<pre style="font-size:5pt">
  <xsl:value-of select="iduCore:ReformatXmlString(iduCore:GetAvailableXsltArguments())"/>
</pre>

 

Die Erweiterungsfunktion GetAvailableXsltArguments liefert einen String zurück, welcher ein als XML serialisiertes Array von Strings (den Parameternamen) enthält.

Damit dieses sinnvoll lesbar ausgegeben werden kann, wird der XML-String mit der Erweiterungsfunktion ReformatXmlString neu formatiert und wiederum als String zurück gegeben.

Schlussendlich wird das Ergebnis in einem HTML-Tag 'pre' eingeschlossen, damit die Formatierungen auch bei der Ausgabe erhalten bleiben.

Auslesen eines Erweiterungsobjekt-Argumentes

Ist das Format des XSLT-Argumentes nicht bekannt, kann dieser zur Analyse ausgegeben werden:

<div>
    <xsl:value-of select="iduCore:GetArgumentValue('abwicklung',0)"/>
</div>

 

Sollte es sich um ein serialisiertes XML handeln, können Sie dieses auch mit der Funktion ReformatXmlString wie oben beschrieben zur besseren Lesbarkeit neu formatieren.

Parameter, welche serialisiertes XML enthalten, können wieder in Knotensätze umgewandelt werden und sind dann über XPath-Ausdrücke zugreifbar:

<xsl:variable name="abwicklungData" select="iduCore:GetArgumentValue('abwicklung',0)" />
<div>
    <xsl:value-of select="iduCore:ParseXml($abwicklungData)/AbwicklungDaten/DomeaInfo/Auftraggeber"/>
</div>

 

Im Beispiel wird das serialisierte XML mit ParseXml wieder in einen Knotensatz umgewandelt.