Fonctionnement
Le programme de service contient une seule procédure nommée CREATEIFSDOC qui gère la création d’un fichier dans l’IFS.
La procédure est appelée avec 3 paramètres :
Le nom du fichier dans l’IFS (chemin compris).
Le mode de gestion du fichier.
Le CCSID du fichier
Comportement :
Si fichier n’existe pas, le fichier est créé avec le CCSID passé en paramètre.
Si le fichier existe et le mode est *REPLACE alors il y a supression puis création du fichier avec le CCSID passé en paramètre.
Si le fichier existe et le mode est *ADD, aucune action n’est effectuée sur le fichier.
Installation
Créer une bibliothèque, ou utiliser une bibliothèque existente. Pour la suite je l’appelle MYBIB dans cette procédure.
Mettre MYBIB dans la liste de bibliothèque et définir MYBIB comme bibliothèque par défaut.
Créer les fichiers sources QRPGLESRC, QCPYSRC et QSRVSRC dans la bibliothèque MYBIB.
Copier le source du programme SRVPAPIIFS dans QRPGLESRC.
Copier les sources de DC_IFS, DC_LIKE et PR_APICIFS dans le fichier QCPYSRC.
Copier le fichier signature SRVPAPIIFS dans le fichier QSRVSRC.
Créer un répertoire de liage nommé MYBNDDIR dans MYBIB : CRTBNDDIR BNDDIR(MYBNDDIR) TEXT(‘Répertoire de liage outils’)
Créer le programme de service et ajouter le au répertoire de liage :
- CRTSQLRPGI OBJ(SRVPAPIIFS) OBJTYPE(*MODULE) TGTRLS(*CURRENT) DBGVIEW(*SOURCE)
- CRTSRVPGM SRVPGM(SRVPAPIIFS)
- ADDBNDDIRE BNDDIR(MYBNDDIR) OBJ((SRVPAPIIFS))
Utilisation
Appel (free rpg) en mode remplacement du fichier s’il existe.
f_Ok = CreateIFSDoc(ifspath:'*REPLACE':pCCSID);