Le web de Dominique Guebey – IBM AS/400 iSeries

Page : http://www.dg77.net/tekno/as400/rpg3.htm


   D o m i n i q u e   G u e b e y    J u n g l e     IBM AS/400 iSeries

Language RPG III (RPG 3 / GAP 3)

Liste des instructions

Instr. Définition Commentaire
ACQAcquérir
ADDAjouter
ANDxxEt
BEGSRDébut de sous-programme
BITOFDépositionner des bits
BITONPositionner des bits
CABxxComparer et brancher
CALLAppel d'un programme
CASxxAppel conditionnel de sous-programme
CATConcaténer deux chaînes
CHAINAccès sélectif à un fichier
CHECKVérifier de gauche à droite
CHEKRVérifier de droite à gauche
CLEARMettre à blanc
CLOSEFermer des fichiers
COMITValider des modifications apportées à des fichiers
COMPComparer
DEBUGFonction de débogage de programme
DEFNDéfinition de zone
DELETSupprimer un enregistrement
DIVDiviser
DOExécuter
DOUxxExécuter jusqu'à
DOWxxExécuter tant que
DSPLYFonction d'affichage
DUMPCliché programme
ELSESinon
ENDyyMettre fin à un groupe
ENDSRFin de sous-programme
EXCPTSortie pendant le traitement
EXFMTEcrire puis lire le format
EXSRAppeler un sous-programme
FEODForcer la fin de données
FORCEForcer la lecture d'un fichier lors du cycle suivant
FREEDésactiver un programme
GOTOAller à
IFxxSi
INExtraire une zone de données
ITERPasser le contrôle à ENDxx
KFLDDéfinition des parties d'une clé
KLISTDéfinition d'une clé composée
LEAVEQuitter un groupe DO
LOKUPRechercher dans un tableau ou une table
MHHZOMouvement du hors texte de position gauche vers position gauche cf infra
MHLZOMouvement du hors texte de position gauche vers position droite cf infra
MLHZOMouvement du hors texte de position droite vers position gauche cf infra
MLLZOMouvement du hors texte de position droite vers position droite cf infra
MOVEDéplacer ou modifier les zones
MOVEADéplacer un tableau
MOVELMouvement vers la gauche
MULTMultiplier
MVRDéplacer le reste
NEXTForcer l'entrée suivante
OCURDéfinir/extraire une occurrence de structure de données
OPENOuvrir des fichiers
ORxxOu
OTHERSinon Select
OUTEcrire une zone de données
PARMIdentifier des paramètres
PLISTIdentifier une liste de paramètres
POSTEnregistrer
READLire un enregistrement
READCLire l'enregistrement modifié suivant
READELire l'enregistrement suivant avec la même clé
READPLire l'enregistrement précédent
REDPELire l'enregistrement précédent avec la même clé
RELLibérer
RESETRéinitialiser
RETRNRetour à l'appelant
ROLBKInvalider
SCANExplorer une chaîne de caractères
SELECCommencer un groupe Select
SETGTPositionner sur valeur supérieure
SETLLPositionner sur valeur supérieure ou égale
SETOFMettre hors fonction
SETONMettre en fonction
SHTDNArrêt du système
SORTATri de tableau
SQRTRacine carrée
SUBSoustraire
SUBSTSous-chaîne
TAGEtiquette
TESTBTester un bit
TESTNTester la partie numérique
TESTZTester la partie hors texte
TIMEHeure et date
UNLCKDéverrouiller une zone de données ou un enregistrement
UPDATModifier un enregistrement existant
WHxxSi VRAI alors Select
WRITECréer de nouveaux enregistrements
XFOOTAdditionner les éléments d'un tableau
XLATETraduire
Z-ADDInitialiser à zéro et ajouter
Z-SUBInitialiser à zéro et soustraire

Codes d’édition

EDTCDE - EDITC - EDITW
Edit Code
Description
No
Sign
Sign-
(R)
CR
Sign
-Sign
(L)
Commas and zero balances1AJN
Commas2BKO
Zero balances3CLP
No commas or zero balances4DMQ
Date edit (4 digits)W   
No edit (suppress sign)X   
Date editY   
Suppress leading zerosZ   
     

MOVE ZONE

The move zone operations move only the zone portion of 
a character. A minus (-) sign in a move zone operation does not 
result in a negative character in the result field, because a 
minus sign is represented by a hexadecimal 60 internally and a 
D zone is required for a negative character. Characters J 
through R have D zones and can be used to obtain a negative 
value (J = hexadecimal D1, …, R = hexadecimal D9).
Note:
Whenever the word high is used in a move zone operation, the 
field involved must be a character field; whenever low is used, 
the field involved can be either a character or a numeric field.

Character |   |   |   |   |   | Factor
   |   | | | | | | | | | | | Two
   |   *--*--*--*--*--*--*--*--*--*--*
   |    ||      MLHZO     ||
   | MHHZO||*---------------------*|MLLZO
   |    |**---------------------*|
   |    |**     MHLZO     ||
   |    VV               VV
   |   |   |   |   |   |   |
   V   | | | | | | | | | | | Result
Character *--*--*--*--*--*--*--*--*--*--* Field
 
 
Character |   |   |   |   |   | Factor
   |   | | | | | | | | | | | Two
   |   *--*--*--*--*--*--*--*--*--*--*
   |    |                |
   |    |                |MLLZO
   |    *-----------------------*|
   |           MHLZO     ||
   |                    VV
   |   |   |   |   |   |   |
   V   | | | | | | | | | | | Result
 Numeric *--*--*--*--*--*--*--*--*--*--* Field
 
 
 Numeric |   |   |   |   |   | Factor
   |   | | | | | | | | | | | Two
   |   *--*--*--*--*--*--*--*--*--*--*
   |           MLHZO     ||
   |    *-----------------------*|MLLZO
   |    |                |
   |    |                |
   |    V                V
   |   |   |   |   |   |   |
   V   | | | | | | | | | | | Result
Character *--*--*--*--*--*--*--*--*--*--* Field
 
 
Numeric |   |   |   |   |   | Factor
  |   | | | | | | | | | | | Two
  |   *--*--*--*--*--*--*--*--*--*--*
  |                     |
  |                     |MLLZO
  |                     |
  |                     |
  |                     V
  |   |   |   |   |   |   |
  V   | | | | | | | | | | | Result
Numeric *--*--*--*--*--*--*--*--*--*--* Field