4D v16.3

APPLIQUER A SELECTION

Accueil

 
4D v16.3
APPLIQUER A SELECTION

APPLIQUER A SELECTION 


 

APPLIQUER A SELECTION ( laTable ; formule ) 
Paramètre Type   Description
laTable  Table in Table dans laquelle appliquer la formule
formule  Instruction in Ligne de code ou méthode

La commande APPLIQUER A SELECTION applique formule à chaque enregistrement de la sélection courante de laTable. La formule peut être une ligne d'instructions ou une méthode (dans ce cas, le nom de la méthode doit être saisi sans ""). Si formule entraîne la modification d'un enregistrement de laTable, l'enregistrement modifié est sauvegardé. Si formule ne modifie pas d'enregistrement, aucune sauvegarde n'est réalisée. Si la sélection courante est vide, APPLIQUER A SELECTION ne fait rien. La formule peut faire appel à un champ d'une table liée si le lien est automatique.

La commande APPLIQUER A SELECTION peut être utilisée pour récupérer et traiter des informations sur une sélection d'enregistrements (par exemple, calcul d'un total), ou pour modifier une sélection (par exemple, mettre en majuscule la première lettre d'un champ). Si cette commande est utilisée à l'intérieur d'une transaction, toutes les opérations réalisées pourront être annulées si la transaction n'est pas validée.

4D Server : Le serveur n'exécute aucune des commandes passées dans formule. Chaque enregistrement de la sélection est renvoyé sur le poste client pour traitement et modification.

Un thermomètre de progression s'affiche pendant l'exécution d'un APPLIQUER A SELECTION. Un appel préalable à la commande SUPPRIMER MESSAGES permet de supprimer ce thermomètre. Lorsque le thermomètre de progression est affiché, l'utilisateur peut annuler l'opération.

L'exemple suivant met en majuscule tous les noms de la table :

 APPLIQUER A SELECTION([Emp];[Emp]Nom:=Majusc([Emp]Nom))

Lorsque APPLIQUER A SELECTION rencontre un enregistrement verrouillé et le modifie, celui-ci n'est pas sauvegardé. Tous les enregistrements verrouillés rencontrés par la commande sont placés dans un ensemble système appelé LockedSet. Après l'exécution d'un APPLIQUER A SELECTION, il est recommandé de tester l'ensemble LockedSet pour vérifier la présence d'enregistrements verrouillés. La boucle suivante s'exécute jusqu'à ce que tous les enregistrements aient été modifiés :

 Repeter ` Pour chaque enregistrement verrouillé
    APPLIQUER A SELECTION([Emp];[Emp]Nom:=Majusc([Emp]Nom))
    UTILISER ENSEMBLE("LockedSet") ` Sélection des enregistrements verrouillés uniquement
  ` Jusqu'à ce qu'il n'y ait plus d'enregistrement verrouillé
 Jusque(Enregistrements dans ensemble("LockedSet")=0)

Cet exemple utilise une méthode :

 TOUT SELECTIONNER([Emp])
 APPLIQUER A SELECTION([Emp];Capitales)

Si l'utilisateur clique sur le bouton Stop dans le thermomètre de progression, la variable système OK prend la valeur 0. Sinon, elle prend la valeur 1.



Voir aussi  

EDITER FORMULE
Présentation des ensembles

 
PROPRIÉTÉS 

Produit : 4D
Thème : Sélections
Numéro : 70
Nom intl. : APPLY TO SELECTION

Cette commande modifie la variable système OKCette commande modifie l'ensemble système LockedSetCommande(s) éligible(s) à l'exécution dans un process préemptifComportement différent en mode distant

 
HISTORIQUE 

Modifié : 4D v11 SQL

 
UTILISATION DE L'ARTICLE

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