Aller au contenu principal
Version: Next

CLEAR LIST

CLEAR LIST ( liste {; *} )

ParamètreTypeDescription
listeIntegerNuméro de référence de liste
*OperatorSi spécifié, effacer les sous-listes de la mémoire (s'il existe des sous-listes) Si omis, ne pas effacer les sous-listes

Cette commande n'est pas thread-safe, elle ne peut pas être utilisée dans du code préemptif.

Description

La commande CLEAR LIST efface de la mémoire la liste hiérarchique dont vous avez passé le numéro de référence dans le paramètre liste.

Généralement, vous devez passer le paramètre optionnel *, afin que les sous-listes et les sous-éléments (s'il y en a) rattachés à la liste soient également effacés.

Il n'est pas nécessaire de supprimer une liste associée à un objet de formulaire via la Liste des propriétés : 4D charge et efface la liste automatiquement. Sinon, à chaque fois que vous chargez, copiez, extrayez d'un BLOB ou créez une liste par programmation, appelez la commande CLEAR LIST lorsque vous n'en avez plus besoin.

Si vous voulez supprimer une sous-liste rattachée à un élément (à tout niveau) d'une autre liste affichée dans un formulaire, procédez de la manière suivante :
1. Appelez GET LIST ITEM avec l'élément parent pour obtenir le numéro de référence de la sous-liste.
2. Appelez SET LIST ITEM avec l'élément parent pour dissocier la sous-liste de l'élément de liste avant de l'effacer.
3. Appelez CLEAR LIST pour effacer la sous-liste dont vous avez obtenu le numéro de référence à l'aide de GET LIST ITEM.

Exemple 1

Vous disposez, dans votre application, d'une routine de "nettoyage" chargée d'effacer tous les objets et données dont vous n'avez plus besoin lorsque, par exemple, une fenêtre ou un formulaire est refermé(e). A un endroit de cette routine, vous supprimez une liste hiérarchique qui peut avoir déjà été supprimée, suivant les actions de l'utilisateur dans le formulaire. Vous utilisez la fonction Is a list pour effacer la liste uniquement si c'est nécessaire :

  // Extrait de la sous-routine de nettoyage
 If(Is a list(hlList))
    CLEAR LIST(hlList;*)
 End if

Exemple 2

Reportez-vous à l'exemple de la fonction Load list.

Exemple 3

Reportez-vous à l'exemple de la fonction BLOB to list.

Voir aussi

BLOB to list
Load list
New list