4D v16.3

Recherches par formule

Accueil

 
4D v16.3
Recherches par formule

Recherches par formule  


 

 

Les recherches par formule vous permettent de rechercher des enregistrements sur la base du résultat d’un calcul. Dans votre formule, vous pouvez employer des fonctions du langage de 4D ainsi que des méthodes projet spécifiquement désignées par le développeur (le cas échéant).

Les recherches par formule sont utiles pour écrire des conditions de recherche contenant notamment :

  • des opérations ou des évaluations avec des chaînes alphanumériques,
  • des calculs sur des dates,
  • des calculs arithmétiques.

Voici quelques exemples de recherches par formule : 

  • La formule suivante est utilisée pour rechercher les enregistrements dans lesquels les 7 derniers caractères du champ Numéro Tel sont égaux à “2524444”.
     Substring([Emp]Numéro Tel;4;7)="2524444"
  • La formule suivante recherche les personnes nées à la date du jour, sans tenir compte de l’année :
     (Day of(Current date)=Day of([Emp]Anniversaire)) & (Month of(Current date)=Month of([Emp]Anniversaire))
  • La formule suivante divise les ventes annuelles par le coût d’un produit et sélectionne les enregistrements pour lesquels le résultat est supérieur à 1 000 :
     ([Stats]Ventes annuelles/[Stats]Coût du produit)>1000

Une formule doit être une expression Booléenne, c’est-à-dire qu’elle ne peut retourner que deux valeurs, VRAI ou FAUX. Par exemple, la formule :

 [Stats]Ventes annuelles/[Stats]Coût du produit

est incorrecte car elle retourne une valeur numérique, et non VRAI ou FAUX.

Vous ne pouvez pas écrire de formules de plus d’une ligne logique, c’est-à-dire que vous ne pouvez pas appuyer sur la touche Retour Chariot et taper une deuxième ligne. Si vous souhaitez utiliser une formule de recherche plus complexe (nécessitant plus d’une ligne de code), écrivez-la sous forme de méthode projet et appelez-la dans la ligne de recherche.

Les recherches par formule sont écrites depuis l’éditeur de recherche standard. La recherche par formule est un mode de recherche avancé.

Pour définir une recherche par formule, affichez l'Editeur de recherches et effectuez Alt+clic (Windows) ou Option+clic (OS X) sur le bouton d’ajout de ligne de recherche .

Note : Pour obtenir une seule ligne de recherche par formule, supprimez la première ligne ajoutée par défaut.

La ligne ajoutée comporte des menus additionnels :

  • : affiche sous forme hiérarchique la liste des tables et des champs de la base dont le type est compatible avec une recherche par formule.
  • : affiche sous forme hiérarchique la liste des opérateurs utilisables dans le contexte d’une recherche par formule.
  • : affiche la liste des fonctions 4D disponibles par défaut dans le contexte d’une recherche par formule. Vous pouvez inclure des méthodes projet dans cette liste à l’aide de la commande SET ALLOWED METHODS.

Grâce à ce fonctionnement, les critères de recherche par formule peuvent être combinés avec des critères de recherche standard :

Du fait de leur intégration à la boîte de dialogue de recherche, les recherches par formule bénéficient des mêmes fonctionnalités que les recherches standard : 



Voir aussi  

Editeur de recherches

 
PROPRIÉTÉS 

Produit : 4D
Thème : Rechercher des enregistrements

 
HISTORIQUE 

 
UTILISATION DE L'ARTICLE

4D - Mode Développement ( 4D v16)
4D - Mode Développement ( 4D v16.1)
4D - Mode Développement ( 4D v16.3)