Language RPG III (RPG 3 / GAP 3)
Liste des instructions
Instr. | Définition | Commentaire |
ACQ | Acquérir | |
ADD | Ajouter | |
ANDxx | Et | |
BEGSR | Début de sous-programme | |
BITOF | Dépositionner des bits | |
BITON | Positionner des bits | |
CABxx | Comparer et brancher | |
CALL | Appel d'un programme | |
CASxx | Appel conditionnel de sous-programme | |
CAT | Concaténer deux chaînes | |
CHAIN | Accès sélectif à un fichier | |
CHECK | Vérifier de gauche à droite | |
CHEKR | Vérifier de droite à gauche | |
CLEAR | Mettre à blanc | |
CLOSE | Fermer des fichiers | |
COMIT | Valider des modifications apportées à des fichiers | |
COMP | Comparer | |
DEBUG | Fonction de débogage de programme | |
DEFN | Définition de zone | |
DELET | Supprimer un enregistrement | |
DIV | Diviser | |
DO | Exécuter | |
DOUxx | Exécuter jusqu'à | |
DOWxx | Exécuter tant que | |
DSPLY | Fonction d'affichage | |
DUMP | Cliché programme | |
ELSE | Sinon | |
ENDyy | Mettre fin à un groupe | |
ENDSR | Fin de sous-programme | |
EXCPT | Sortie pendant le traitement | |
EXFMT | Ecrire puis lire le format | |
EXSR | Appeler un sous-programme | |
FEOD | Forcer la fin de données | |
FORCE | Forcer la lecture d'un fichier lors du cycle suivant | |
FREE | Désactiver un programme | |
GOTO | Aller à | |
IFxx | Si | |
IN | Extraire une zone de données | |
ITER | Passer le contrôle à ENDxx | |
KFLD | Définition des parties d'une clé | |
KLIST | Définition d'une clé composée | |
LEAVE | Quitter un groupe DO | |
LOKUP | Rechercher dans un tableau ou une table | |
MHHZO | Mouvement du hors texte de position gauche vers position gauche | cf infra |
MHLZO | Mouvement du hors texte de position gauche vers position droite | cf infra |
MLHZO | Mouvement du hors texte de position droite vers position gauche | cf infra |
MLLZO | Mouvement du hors texte de position droite vers position droite | cf infra |
MOVE | Déplacer ou modifier les zones | |
MOVEA | Déplacer un tableau | |
MOVEL | Mouvement vers la gauche | |
MULT | Multiplier | |
MVR | Déplacer le reste | |
NEXT | Forcer l'entrée suivante | |
OCUR | Définir/extraire une occurrence de structure de données | |
OPEN | Ouvrir des fichiers | |
ORxx | Ou | |
OTHER | Sinon Select | |
OUT | Ecrire une zone de données | |
PARM | Identifier des paramètres | |
PLIST | Identifier une liste de paramètres | |
POST | Enregistrer | |
READ | Lire un enregistrement | |
READC | Lire l'enregistrement modifié suivant | |
READE | Lire l'enregistrement suivant avec la même clé | |
READP | Lire l'enregistrement précédent | |
REDPE | Lire l'enregistrement précédent avec la même clé | |
REL | Libérer | |
RESET | Réinitialiser | |
RETRN | Retour à l'appelant | |
ROLBK | Invalider | |
SCAN | Explorer une chaîne de caractères | |
SELEC | Commencer un groupe Select | |
SETGT | Positionner sur valeur supérieure | |
SETLL | Positionner sur valeur supérieure ou égale | |
SETOF | Mettre hors fonction | |
SETON | Mettre en fonction | |
SHTDN | Arrêt du système | |
SORTA | Tri de tableau | |
SQRT | Racine carrée | |
SUB | Soustraire | |
SUBST | Sous-chaîne | |
TAG | Etiquette | |
TESTB | Tester un bit | |
TESTN | Tester la partie numérique | |
TESTZ | Tester la partie hors texte | |
TIME | Heure et date | |
UNLCK | Déverrouiller une zone de données ou un enregistrement | |
UPDAT | Modifier un enregistrement existant | |
WHxx | Si VRAI alors Select | |
WRITE | Créer de nouveaux enregistrements | |
XFOOT | Additionner les éléments d'un tableau | |
XLATE | Traduire | |
Z-ADD | Initialiser à zéro et ajouter | |
Z-SUB | Initialiser à zéro et soustraire |
Codes d’édition
Edit Code Description |
No Sign |
Sign- (R) |
CR Sign |
-Sign (L) |
Commas and zero balances | 1 | A | J | N |
Commas | 2 | B | K | O |
Zero balances | 3 | C | L | P |
No commas or zero balances | 4 | D | M | Q |
Date edit (4 digits) | W | |||
No edit (suppress sign) | X | |||
Date edit | Y | |||
Suppress leading zeros | Z | |||
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