Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v19.8
entitySelection.slice( )

entitySelection.slice( ) 


 

entitySelection.slice ( àPartirDe {; fin} ) -> Résultat 
Paramètre Type   Description
àPartirDe  Entier long in Position à laquelle démarrer l'opération (incluse)
fin  Entier long in Position de fin (non incluse)
Résultat  EntitySelection in Nouvelle sélection d'entités contenant les entités copiées (copie superficielle)

La méthode entitySelection.slice( ) retourne une partie de sélection d'entités, définie par l'entité àPartirDe jusqu'à l'entité fin (fin étant non incluse), dans une autre sélection d'entités. La méthode effectue une copie superficielle (shallow copy) de la sélection d'entités (les mêmes références d'entités sont utilisées).

Note : Cette méthode ne modifie pas la sélection d'entités d'origine.

La sélection d'entités retournée contient les entités comprises entre l'entité désignée par àPartirDe et, sans la contenir, celle désignée par fin. Si seul le paramètre àPartirDe est défini, la sélection d'entités retournée contient toutes les entités entre àPartirDe et la dernière entité de la sélection d'entités d'origine.

  • Si àPartirDe < 0, le paramètre est recalculé comme àPartirDe:=àPartirDe+length (il est considéré comme partant de la fin de la sélection d'entités). Si la valeur calculée < 0, àPartirDe prend la valeur 0.
  • Si àPartirDe >= length, la méthode retourne une sélection d'entités vide.
  • Si fin < 0 , le paramètre est recalculé comme fin:=fin+length.
  • Si fin < àPartirDe (valeurs passées ou recalculées), la méthode ne fait rien.

Si la sélection d'entités contient des entités qui ont été supprimées entre-temps, elles sont également retournées.

Vous souhaitez obtenir une sous-sélection des 9 premières entités de la sélection d'entités :

 C_OBJET($sel;$sliced)
 $sel:=ds.Employee.query("salary > :1";50000)
 $sliced:=$sel.slice(0;9)

En supposant que ds.Employee.all().length = 10

 C_OBJET($slice)
 $slice:=ds.Employee.all().slice(-1;-2) //tente de retourner les entités de position 9 à 8, mais comme 9 > 8, retourne une sélection d'entités vide



Voir aussi  

FIXER LIMITE RECHERCHE
Lire limite recherche

 
PROPRIÉTÉS 

Produit : 4D
Thème : ORDA - EntitySelection
Nom intl. : entitySelection.slice( )

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v17

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v19)
4D - Langage ( 4D v19.1)
4D - Langage ( 4D v19.4)
4D - Langage ( 4D v19.5)
4D - Langage ( 4D v19.6)
4D - Langage ( 4D v19.7)
4D - Langage ( 4D v19.8)