Skip to main content
Skip table of contents

Dynamische Parameter verwenden

Wie kann ich dynamische Parameter verwenden?

Innerhalb eines Technical Processes können Sie in Abhängigkeit von verarbeiteten Daten mit sogenannten dynamischen Parametern Prozessbausteine ansteuern und ggf. bereits gesetzte Parameter zur Prozesslaufzeit überschreiben.

Dynamische Parameter werden in XSL-Mappings als Processing Instruction erzeugt und vom darauf folgenden Prozessbaustein (beispielsweise einem Adapter) verarbeitet.

Hierbei haben Sie mehrere Möglichkeiten:

  • Parameter via XSL-Mapping setzen: Hier können Sie ein einzelnes XSL-Daten-Mapping einsetzen, das XML-Daten transformiert und gleichzeitig dynamisch Processing Instruction-Definitionen enthält.
  • Dynamisch parametrieren ohne Datentransformation: Sie können auch ein separates XSL-Mapping erstellen, das nur die Processing Instructions generiert.
  • Dynamisch parametrieren mit Processing Instructions und Dynamic Parameter: Sie können auch ein separates XSL-Mapping erstellen, das die Processing Instruction-Definitionen mit dynamischen Parametern enthält.


Hinweis

Beachten Sie folgende Priorisierung bei der Nutzung von Component-Parameter und dynamischen Parametern:

  • Component-Parameter überschreiben die Konfiguration von Prozessbausteinen im Repository (beispielsweise Funktions-Adapter) während der Prozesslaufzeit.
  • Dynamische Parameter überschreiben gesetzte globale, Projekt- und System-Parameter sowie die Konfiguration von Prozessbausteinen im Repository (beispielsweise Funktions-Adapter) zur Prozesslaufzeit.

Parameter dynamisch via XSL-Mapping setzen

  1. Positionieren Sie ein XSL-Mapping im Technical Process vor dem Adapter oder der Datenbank-Verbindung.

  2. Definieren Sie die Processing Instruction im XSL-Mapping nach folgendem Muster: <xsl:processing-instruction name="DynamicParameter">ParameterName="ParameterValue"</xsl:processing-instruction>

  3. Ersetzen Sie ParameterName durch den gewünschten Parameternamen.

  4. Ersetzen Sie ParameterValue durch den gewünschten Wert, meist in Form eines XSL-Befehls.

  5. Wenn das XSL-Mapping ausschließlich dynamische Parameter erzeugen soll: Lesen Sie zusätzlich mit <xsl:processing-instruction name="NoResult"/> fest, dass das XSL-Mapping kein Ergebnis-Dokument erzeugt.

Hinweis

Das XSL-Mapping muss in jedem Fall ein Wurzel-Element generieren, damit das XSL-Mapping ausgeführt werden kann.

Dynamisch parametrieren ohne Datentransformation

Wenn ein Input-Dokument direkt an einen dynamisch parametrierten Adapter übergeben werden soll, ist es erforderlich, eine Gabelung (mithilfe des Fork-Bausteins) in das Diagramm des Technical Processes einzufügen:

  1. Setzen Sie ein XSL-Mapping in einen Ausführzweig.
  2. Setzen Sie den zu übergebenden Prozessbaustein in einen zweiten Ausführzweig.
  3. Setzen Sie den Adapter direkt hinter den Join-Baustein.

Beispiel

Ein aus einem XML-Dokument ausgelesener Dateiname soll als dynamischer Parameter an einen Filesystem Transfer Adapter übergeben werden:

Im Beispiel besteht das XSL-Mapping aus folgendem Quelltext:

XML
<xsl:stylesheet xmlns:xsl="http://www.w3.org/" version="1.1">
  <xsl:output method="xml" media-type="text/xml"/>
  <xsl:template match="/"> 
    <xsl:processing-instruction name="DynamicParameter">path=" 
      <xsl:value-of select="data"/>"
    </xsl:processing-instruction>
    <xsl:processing-instruction name="NoResult"/> 
    <root/> 
 </xsl:template>
</xsl:stylesheet>

Dynamische Parameter mit DynamicParameter

Mit XSL-Mappings können Sie die Konfiguration von Adaptern und Datenbank-Verbindungen zur Laufzeit beeinflussen. Innerhalb des XSL-Mappings wird eine Logik implementiert, die in Abhängigkeit von den verarbeiteten Daten benutzerdefinierte Parameterwerte ausgibt. Diese benutzerdefinierten Parameterwerte können von einem nachfolgenden Adapter-, Transfer-Adapter- oder Datenbank-Baustein verarbeitet werden und überschreiben bereits gesetzte Werte.

Parameterwerte erzeugen
Um dynamische Werte innerhalb von Technical Processes zu setzen, können Sie mithilfe von XSL-Mappings 
Processing Instructions erzeugen, die an den nachfolgenden Prozess-Schritt übergeben werden und entsprechend interpretiert werden können.

XML
<xsl:processing-instruction name="DynamicParameter">
parameterName="parameterValue"</xsl:processing-instruction>

Die Ausgabe des XSL-Mappings:

XML
<?DynamicParameter parameterName="parameterValue" ?>

Parameter und Parameterwerte

Im XSL-Mapping können Sie beliebig viele unterschiedliche dynamische Parameter mit jeweils einem zugehörigen Wert definieren:

  • parameterNameZu überschreibender Parametername
  • parameterValueZu überschreibender Parameterwert; immer innerhalb von Anführungszeichen

Hinweis

Beachten Sie, dass das XSL-Mapping ein Wurzel-Element generieren muss, damit das XSL-Mapping ausgeführt und ein gültiges XML-Dokument erzeugt werden kann.

Beispiel

XML
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
version="1.0">  
  <xsl:output encoding="UTF-8" method="xml" indent="yes" version="1.0"/>  
  <xsl:template match="/"> 
    <xsl:processing-instruction 
    name="DynamicParameter">key="i"</xsl:processing-instruction>  
    <root/> 
  </xsl:template> 
</xsl:stylesheet>
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.