El método entitySelection.slice( ) devuelve una parte de selección de entidades en una nueva selección de entidades, seleccionada desde el indice iniciarDesde hasta el indice fin (fin no incluido). Este método devuelve una copia superficial de la selección de entidades (se utilizan las mismas referencias de entidades).
Nota: este método no modifica la selección de entidades original.
La selección de entidades devuelta contiene las entidades especificadas por iniciarDesde y todas las entidades posteriores hasta, pero sin incluir, la entidad especificada por fin. Si solo se especifica el parámetro iniciarDesde, la selección de entidades devuelta contiene todas las entidades desde iniciarDesde hasta la última entidad de la selección de entidades original.
- Si iniciarDesde < 0, se vuelve a calcular como iniciarDesde :=iniciarDesde +length (se considera como el desplazamiento desde el final de la selección de entidades). Si el valor calculado es < 0, iniciarDesde se establece en 0.
- Si iniciarDesde >= length, el método devuelve una selección de entidades vacía.
- Si fin < 0, se vuelve a calcular como fin:=fin +length.
- Si fin < iniciarDesde (valores pasados o calculados), el método no hace nada.
Si la selección de entidades contiene entidades eliminadas, se devuelven.
Usted desea obtener una selección de las 9 primeras entidades de la selección de una entidad:
C_OBJECT($sel;$sliced)
$sel:=ds.Employee.query("salary > :1";50000)
$sliced:=$sel.slice(0;9)
Suponiendo que tenemos ds.Employee.all().length = 10
C_OBJECT($slice)
$slice:=ds.Employee.all().slice(-1;-2)