*SELECTCASE/*ENDSELECT

Pour écrire des formules comprenant plusieurs instructions IIF( ) imbriquées, utilisez la syntaxe suivante :

*SELECTCASE {expression}

*CASE {value1}[,{value2},…]

{formulas}

[*CASE {value1}[,{value2},…]

{formulas}

[*CASEELSE]

{formulas}

*ENDSELECT

{expression} est la condition à évaluer.

{value1},.. est la plage des résultats séparés par des virgules qui répondent aux conditions du cas actuel.

Cette structure permet d'améliorer considérablement la lisibilité d'une instruction logique.

Exemple

*BEGIN

#A = IIF([ACCOUNT].[E]=1 OR [ACCOUNT].[E]=2,X+Y,

IIF([ACCOUNT].[E]=3 OR [ACCOUNT].[E]=4,X-Y,X*Y))

*END

#C = IIF([ACCOUNT].[E]=1 OR [ACCOUNT].[E]=2,W+Z,null)

#B = IIF([ACCOUNT].[E]=3 OR [ACCOUNT].[E]=4,W*Z,null)

Les formules suivantes peuvent être écrites comme suit :

*SELECTCASE [ACCOUNT].[E]

*CASE 1,2

#A=X+Y

#C=W+Z

*CASE 3,4

#A=X-Y

#B=W*Z

*CASEELSE

#A=X*Y

*ENDSELECT

Remarque

Actuellement, les structures SELECTCASE ne peuvent PAS être imbriquées.

Tous les codes logiciels et/ou lignes/chaînes de code ("Code") inclus dans cette documentation sont fournis à titre d'exemples et ne sont en aucun cas destinés à un usage dans un environnement système productif.Le Code a pour but de mieux expliquer et d'offrir un exemple visuel des règles de syntaxe et de rédaction de certains codes.SAP ne garantit pas l'exactitude et l'exhaustivité du Code ci-après et SAP ne pourra pas être tenu responsable des erreurs ou dommages causés par l'utilisation dudit Code, sauf si de tels dommages ont été causés volontairement par SAP ou par négligence grave de SAP.