Accéder au contenu principal Passer au contenu complémentaire

Tests et branchements

 

If – Comparaison

Ce paramètre compare le contenu de deux chaînes de caractères/constantes/valeurs nulles.

IF b.Field1/N@n =/<>/</<=/>/>= b.Field2/N@n/Constant/Null Then  … 
…
Else
…
EndIf

 

IF b.Field1/N@n =/<>/</<=/>/>= b.Field2/N@n/Constant/Null Then Goto Tag 

 

Les valeurs nulles ne peuvent être comparées qu'à l'aide des opérateurs =, < ou >.

/* Assign value 1 in W.Field_2 if W.Field_1 is ‘O’,
/* else assign 0 
  W.Field_2 = 0
  If W.Field_1 <> 'O' Then
    W.Field_2 = 1
  EndIf 
 
/* Skip when I.codeX equal to X
  If I.CodeX = 'X' Then Goto *SKIP

 

SCAN – Recherche et branchement

Ce paramètre recherche la première occurrence d'une chaîne à l'intérieur d'une autre chaîne à partir d'une position donnée et se branche à un mot-clé selon que la chaîne a été trouvée ou non.

SCAN b.Field1 WITH b.Field2/Constant POS N@n IFFOUND    Tag 
                                             IFNOTFOUND 

 

SCAN recherche la suite d'octets de Field2 dans Field1 à partir de la position indiquée dans N@n et place la position de la première occurrence trouvée dans N@n, qui doit être numérique.

Le branchement au mot-clé s'effectue en fonction de la condition du test.

/* Find all occurrences in buffer I.DESCRIPTION
/* with the character à to replace it with @. 
  N@0 = 0 
  BEGIN_SCAN: 
    SCAN I.LIBELLE WITH 'à' POS N@0 IFNOTFOUND END_SCAN
    I.LIBELLE(N@0:1) = ’@’ 
    GOTO BEGIN_SCAN 
  END_SCAN:

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !