Skip to main content

<case>

<switch> 要素内で条件が一致した場合に、一連のアクティビティを実行します。

構文

<switch>
   <case>
     ...
   </case>
    ...
   <default>
     ...
   </default> 
</switch>

属性と要素

condition 属性

必須項目。この式の結果が真の場合、この <case> 要素の内容が実行されます。偽の場合、この <case> 要素は無視されます。

整数値 1 (真の場合) または 0 (偽の場合) を求める式を指定します。

LanguageOverride 属性

オプション。(この要素内の) 式が記述されるスクリプト言語を指定します。

"python""objectscript"、または "basic" (記載されていません) になります。既定は、この属性が含まれる <process> 要素で指定される言語です。

namedisabledxposyposxendyend 属性

"一般的な属性と要素" を参照してください。

"一般的な属性と要素" を参照してください。

その他の要素

オプション。<case> には、<alert>、<assign>、<branch>、<break>、<call>、<code>、<continue>、<delay>、<empty>、<flow>、<foreach>、<if>、<label>、<milestone>、<reply>、<rule>、<scope>、<sequence>、<sql>、<switch>、<sync>、<throw>、<trace>、<transform>、<until>、<while>、<xpath>、および <xslt> をゼロ個以上、自由に組み合わせて使用できます。

説明

<case> 要素は <switch> 内で使用されます。

<switch> 要素には、連続する 1 つ以上の <case> 要素と、オプションの <default> 要素が含まれます。

<switch> 要素が実行されると、さらに各 <case> 条件が評価されます。これらの条件は、それを含む <process> 要素のスクリプト言語で記述された論理式です。いずれかの式の結果が整数値 1 (真) の場合、それに対応する <case> 要素の内容が実行されます。それ以外の場合は、次の <case> 要素の式が評価されます。

どの <case> 条件も真でない場合は、<default> 要素の内容が実行されます。

いずれかの <case> 要素が実行されるとすぐに、対応する <switch> 文から実行制御が離れます。どの <case> 条件も一致しない場合は、<default> アクティビティを実行した後で <switch> から制御が離れます。

<case> 要素内では、いずれかの BPL アクティビティを使用できます。例えば、以下の例では <assign> 要素が使用されています。

<switch name='Approved?'>
  <case name='No PrimeRate' condition='context.PrimeRate=""'>
    <assign name='Not Approved' property="response.IsApproved" value="0"/>
  </case>
  <case name='No Credit' condition='context.CreditRating=""'>
    <assign name='Not Approved' property="response.IsApproved" value="0"/>
  </case>
  <default name='Approved' >
    <assign name='Approved' property="response.IsApproved" value="1"/>
    <assign name='InterestRate'
            property="response.InterestRate"
            value="context.PrimeRate+10+(99*(1-(context.CreditRating/100)))">
      <annotation>
        Copy InterestRate into response object.
      </annotation>
    </assign>
  </default>
</switch>

関連項目

FeedbackOpens in a new tab