> Tech > Un exemple RPG classique

Un exemple RPG classique

Tech - Par iTPro - Publié le 24 juin 2010
email

Prenons un exemple d'application RPG " classique " et voyons comment l'intégrer à  une application Java écrite avec l'AS/400 Toolkit for Java. La figure 1 présente notre exemple de programme RPG, PROMO.RPG, un programme simple qui vérifie le prix d'un article pour déterminer s'il est en promotion. Dans ce programme,

on entre comme paramètres dans le programme un numéro de pièce (part number) et
le prix normal de la pièce, probablement à  partir d’un système TPV (Terminal Point
de Vente) existant quelconque. Un autre paramètre renvoie la description de la
pièce associée au numéro de pièce, pour un complément de vérification.

L’appel de ce programme RPG, que ce soit à  partir d’une ligne de commande AS/400,
d’un programme CL ou d’un autre programme RPG, se présenterait ainsi :



CALL PGM(MYLIB/PROMO)

PARM(&PART, &DESC, &PRICE)



On voit sur la figure 1 que chaque paramètre représentant le numéro de pièce,
la description, et les prix, a un paramètre correspondant sous la ligne *ENTRY
PLIST avec le code opération parm. C’est une utilisation habituelle des paramètres
dans un programme RPG classique.



L’autre composante de cette implémentation, à  laquelle il est fait référence sans
qu’elle apparaisse dans la figure 1, est le fichier PRT002, indexé par un numéro
de pièce unique. Ce fichier contient des informations promotionnelles concernant
la pièce, y compris la description de la pièce et la remise à  déduire de son prix
au détail. Comme mentionné précédemment, le numéro de pièce et les prix de détail
sont externes au programme PROMO.RPG et sont entrés dans le programme comme paramètres
part et prc. Le paramètre desc est une sorte d’occupant d’emplacement. Par son
intermédiaire, un paramètre vierge est transmis au programme pour occuper la place
des données qui seront extraites ultérieurement.



Le numéro de pièce (part number) est utilisé pour extraire un enregistrement du
fichier PRT002, qui contient les champs nécessaires pour offrir au programme PROMO.RPG
le reste des informations requises, la description de pièce (DESC) et le facteur
de remise (DISC). S’il ne trouve pas d’enregistrement, le programme met à  jour
le paramètre desc avec un message d’erreur au lieu du contenu du champ DESC de
PRT002. Le programme met ensuite à  jour le prix de détail avec le prix de vente,
via le paramètre prc qui a été transmis dans le programme comme un prix de détail.
La valeur renvoyée est le prix de détail moins la valeur de la remise d’après
le pourcentage indiqué par le facteur de remise (DISC dans PRT002), c’est-à -dire,
le prix de vente.



Le programme PROMO.RPG complet peut faire partie d’un système TPV de type AS/400
ou iSeries RPG existant, qui extrait et applique des remises aux articles en vente,
dans les cas prévus. Cet exemple d’application ne tient pas compte du fait que
le business model standard d’un système terminal point de vente a changé et prend
en compte désormais les ventes sur le Web. On peut utiliser des programmes Java
pour étendre les applications RPG existantes comme dans notre exemple, afin qu’elles
traitent des transactions TPV sur le Web ainsi que des ventes  » brique et mortier
 » traditionnelles.

Téléchargez gratuitement cette ressource

TOP 5 Modernisation & Sécurité des Postes Clients

TOP 5 Modernisation & Sécurité des Postes Clients

Pour aider les entreprises à allier les restrictions liées à la crise et la nécessaire modernisation de leurs outils pour gagner en réactivité, souplesse et sécurité, DIB-France lance une nouvelle offre « Cloud-In-One » combinant simplement IaaS et DaaS dans le Cloud, de façon augmentée.

Tech - Par iTPro - Publié le 24 juin 2010