ADELIA |
VADELIA |
SADELIA |
WADELIA |
MADELIA |
(I/B) |
(I/B) (C/S) |
(B) (S) |
(I/B) (C/S) |
(I) (C/S) |
Attention : dans le cas des programmes de type ADELIA, cet ordre n'est pas compatible avec le générateur C.
Paragraphe d'utilisation
Tous
Syntaxe
INSERER_LST NomListe1 NomListe2 Position
Position |
→ |
*DEBUT | *FIN | *AVANT | *APRES | Rien |
Description
Cet ordre insère la liste NomListe1 dans la liste NomListe2, lesquelles doivent être composées par des zones de même définition (même type, même longueur, même nombre de décimales).
La position d'insertion Position indique l'endroit où sont insérés les nouveaux éléments. Voici un tableau récapitulatif :
*DEBUT |
En début de liste |
*FIN |
En fin de liste |
*AVANT |
Avant la position courante |
*APRES |
Après la position courante |
La position est optionnelle, par défaut elle vaut *APRES.
Après l'exécution de cet ordre, l'élément courant de la liste NomListe2 est le dernier élément inséré. L'élément courant de la liste NomListe1 est son dernier élément. Si la liste à insérer est vide, l'élément courant est inchangé.
Si l'opération s'est bien déroulée, &CODE_LST rend *NORMAL.
Voici les différents résultats :
Etat de la liste |
Résultat |
Liste vide |
OK |
Après une suppression |
*AVANT = *APRES, *FIN et *DEBUT : OK |
Après la fin de la liste |
*AVANT = *APRES = *FIN, *DEBUT : OK |
Avant le début de la liste |
*AVANT = *APRES = *DEBUT, *FIN : OK |
Elément courant défini |
OK |
Par exemple
INSERER_LST Liste Liste2
INSERER_LST Liste Liste2 *DEBUT
INSERER_LST Liste Liste2 *FIN
INSERER_LST Liste Liste2 *AVANT
INSERER_LST Liste Liste2 *APRES
Autre exemple d'utilisation
* gestion 3 tiers
* Chargement de la liste graphique LST_PERSO:LISTE
* par la liste mémoire PW_LST_MEMO passée en paramètre
* au programme batch WEB_CHGLST_VAB
APPELER WEB_CHGLST_VAB PW_PAS_LST PW_CHOIX PW_VAL P_COD_MAT PW_LST_MEMO PW_COD_RET
SI *CODE_RETOUR = 0
SI P_COD_MAT <> ZZ_COD_MATRICUL
INSERER_LST PW_LST_MEMO FEN_PERSO.LST_PERSO:LISTE
FIN
SINON
ENVOYER_MSG 0011 *BOITE(*OK)
FIN