sapdev logo background
sapdev logo sapdev logo
Comments

SAP ST TT SWITCH-VAR documentation, setup help and example usage



Return to SAP documentation index


ARTICLE

ST - tt:switch-var , Case Distinction for Variables

Syntax
<(><<)>tt:switch-var>
<(><<)>tt:[s-|d-]cond-var ...
<(><<)>tt:[s-|d-]cond-var ...
...
/tt:switch-var

Effect
The statement tt:switch-var allows case distinctions in which, unlike tt:switch , you can only specify cases for data content, not for data flow. In tt:switch , a list of cases can be shown where each case is formulated syntactically by a condition for variables, a tt:cond-var subelement. Other direct subelements are not possible in tt:switch-var .
You can specify no more than one case that does not contain a check condition.

Serialization and Deserialization
Serialization and deserialization follow these rules:
The first case tt:cond-var , whose explicitly specified condition check is met, is processed and the element tt:switch-var is left.
If no condition is met for any case with explicitly specified conditions, the case without condition is executed by default (if it e
xists) and the element tt:switch-var is left.
If no case without condition exists, the element tt:switch-var is left without any case being processed.

Note
Unlike the general case distinction with
tt:switch , the content of the cases is irrelevant.

Example
The following transformation extends the example from Conditions for Variables .
<(><<)>tt:transform
xmlns:tt="http://www.sap.com/transformation-templates">
tt:root name="ROOT"/
<(><<)>tt:template>
<(><<)>tt:apply name="SUB">
tt:with-parameter name="PARA" ref="ROOT"/
<(><<)>/tt:apply>
<(><<)>/tt:template>
<(><<)>tt:template name="SUB">
<(><<)>tt:context>
tt:parameter name="PARA"/
<(><<)>/tt:context>
<(><<)>tt:switch-var>
<(><<)>tt:cond-var check="PARA<(><<)>50">
<(><<)>X val="small">...<(><<)>/X>
<(><<)>/tt:cond-var>
<(><<)>tt:cond-var check="PARA<(><<)>100">
<(><<)>X val="medium">...<(><<)>/X>
<(><<)>/tt:cond-var>
<(><<)>tt:cond-var>
<(><<)>X val="big">...<(><<)>/X>
<(><<)>/tt:cond-var>
<(><<)>/tt:switch-var>
<(><<)>/tt:template>
/tt:transform
Depending on the value of the ABAP data object bound to ROOT , the serialization generates either of the following:
X val="small" ... /X
or
X val="medium" ... /X
or
X val="big" ... /X
is created. The position of the element tt:cond-var without explicit condition within tt:switch-var is irrelevant. However, the order of the elements tt:cond-var with explicit conditions is relevant.
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved




ST_TT_SWITCH
ST_TT_TEMPLATE_MAIN




comments powered by Disqus