4D v16.3

SUPPRIMER SELECTION

Accueil

 
4D v16.3
SUPPRIMER SELECTION

SUPPRIMER SELECTION 


 

SUPPRIMER SELECTION {( laTable )} 
Paramètre Type   Description
laTable  Table in Table de laquelle supprimer la sélection courante ou Table par défaut si ce paramètre est omis

La commande SUPPRIMER SELECTION supprime la sélection courante d'enregistrements de laTable. Si la sélection courante est vide, SUPPRIMER SELECTION ne fait rien. Après la suppression des enregistrements, la sélection courante est vide. Les enregistrements supprimés pendant une transaction sont verrouillés pour les autres utilisateurs et/ou process jusqu'à ce que la transaction soit validée ou annulée.

Attention : La suppression d'une sélection d'enregistrements est une opération définitive. Elle ne peut être annulée par la suite.

Désélectionner l'option Enregistrement(s) définitivement supprimé(s) dans l'Inspecteur des tables vous permet d'augmenter la vitesse des suppressions lors de l'utilisation de SUPPRIMER SELECTION (cf. paragraphe Enregistrement(s) définitivement supprimé(s) dans le manuel Mode Développement).

L'exemple suivant affiche tous les enregistrements de la table [Personnes] et permet à l'utilisateur de sélectionner ceux qu'il souhaite effacer. L'exemple est en deux parties. La première est la méthode affichant les enregistrements. La seconde est la méthode objet d'un bouton 'Supprimer'. Voici la première méthode :

 TOUT SELECTIONNER([Personnes]) ` Sélection de tous les enregistrements
 FORM FIXER SORTIE([Personnes];"FormSortie") ` Définition du formulaire listant les enregistrements
 VISUALISER SELECTION([Personnes]) ` Affichage de tous les enregistrements

Voici la méthode objet du bouton Supprimer, apparaissant dans le pied de page du formulaire sortie. La méthode utilise les enregistrements sélectionnés par l'utilisateur (l'ensemble système UserSet) pour effacer la sélection (notez que si l'utilisateur ne sélectionne aucun enregistrement, SUPPRIMER SELECTION ne fait rien) :

  ` Demander confirmation que l'utilisateur veut réellement supprimer les enregistrements
 CONFIRMER("Vous avez sélectionné "+Chaine(Enregistrements dans ensemble("UserSet"))+
 " enregistrements à supprimer."+Caractere(13)+"Cliquez sur OK pour confirmer l'opération.")
 Si(OK=1)
    UTILISER ENSEMBLE("UserSet") ` Utiliser l'ensemble défini par l'utilisateur
    SUPPRIMER SELECTION([Personnes]) ` Supprimer la sélection d'enregistrements
 Fin de si
 TOUT SELECTIONNER([Personnes]) ` Sélection de tous les enregistrements

Lorsqu'un SUPPRIMER SELECTION rencontre un enregistrement verrouillé, celui-ci n'est pas supprimé. Tous les enregistrements verrouillés sont placés dans un ensemble système nommé LockedSet. Après l'exécution de SUPPRIMER SELECTION, vous pouvez tester cet ensemble afin de vérifier si des enregistrements étaient verrouillés. La boucle suivante s'exécutera jusqu'à ce que tous les enregistrements aient été supprimés.

 Repeter ` Répéter pour chaque enregistrement verrouillé
    SUPPRIMER SELECTION([CetteTable])
    Si(Enregistrements dans ensemble("LockedSet")#0) ` Si des enregistrements sont verrouillés
       UTILISER ENSEMBLE("LockedSet") ` Sélectionner les enregistrements verrouillés
    Fin de si
 Jusque(Enregistrements dans ensemble("LockedSet")=0) ` Jusqu'à ce qu'il n'y en ait plus



Voir aussi  

MODIFIER SELECTION
Présentation des ensembles
Verrouillage d'enregistrements
VIDER TABLE
VISUALISER SELECTION

 
PROPRIÉTÉS 

Produit : 4D
Thème : Sélections
Numéro : 66
Nom intl. : DELETE SELECTION

Cette commande modifie l'ensemble système LockedSetCette commande change la sélection couranteCommande(s) éligible(s) à l'exécution dans un process préemptif

 
HISTORIQUE 

Créé : < 4D v6

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)