Filtrar, ordenar y otras funciones con colecciones

<< Clic para mostrar Tabla de Contenidos >>

Filtrar, ordenar y otras funciones con colecciones

 

Filtrar, ordenar y otras funciones con colecciones

  •     Introducción
  •     Objeto que contiene la colección
  •         Filter
  •         Sort
  •         Distinct
  •         Sum
  • Introducción

    Cuando usa funciones en expresiones que devuelven una colección (BizagiArrayList), puede usar otras funciones en ese objeto que ayudan a filtrar, ordenar u obtener un subconjunto de registros.

     

    note_pin

    Las funciones descritas en este artículo solo se aplican a un tipo de objeto de lista de matriz de Bizagi. Por favor, comprenda la diferencia entre todos los tipos de matrices en el siguiente artículo, vea Iterar usando expresiones.

     

    Objeto que contiene la colección

    Usted puede usar algunas de las siguientes funciones para obtener los registros de una colección:

     

    CHelper.GetValueAsCollection("CollectionXpath")

    Me.getXPath("entity-list('','')",parameters)

    Me.getXPath("CollectionXpath")

    <CollectionXpath>

     

    Por ejemplo puede declarar una variable tipo objeto, para que contenga la colección, de la siguiente manera:

     

    var CollectionObject = CHelper.GetValueAsCollection(<ProcessEntity.Collection>);

     

    Ahora puede usar el objeto CollectionObject con las siguientes funciones:

     

    filter

    sort

    distinct

    sum

     

    Filter

    Esta función retorna una colección (BizagiArrayList) considerando una condición de filtro.

    Sintaxis: CollectionObject.filter("Condition");

    Condición: Cadena de texto con condiciones de filtro.

    Retorna: Colección (BizagiArrayList)

    Ejemplo:

     

    var CollectionObject = CHelper.GetValueAsCollection(<ProcessEntity.Collection>);

    var FilteredCollection = CollectionObject.filter("Attribute1 = ‘Value’ AND RelatedAttribute.Attribute2 != null");

     

    Usted puede usar los mismo operadores considerados en filtering xpath.

     

     

    Sort

    Esta función retorna una colección  (BizagiArrayList) ordenada por el atributo definido.

    Sintaxis: CollectionObject.sort("AtributoParaOrdenar");

    Atributo para ordenar: atributo para ordenar la colección

    Retorna: Colección (BizagiArrayList)

    Ejemplo:

     

    var CollectionObject = CHelper.GetValueAsCollection(<ProcessEntity.Collection>);

    var SortedCollection = CollectionObject.sort("Attribute1");

     

    Esta función solamente ordena en orden ascendente.

     

     

    Distinct

    Esta función retorna un ArrayList sin valores repetidos de una columna en la colección, definidos con el atributo asociado de la columna.

    Sintaxis: CollectionObject.distinct("Atributo");

    Atributo: atributo de la colección que define la columna para obtener los valores que no están repetidos.

    Retorna: Arraylist.

    Ejemplo:

     

    var CollectionObject = CHelper.GetValueAsCollection(<ProcessEntity.Collection>);

    var DistinctArray = CollectionObject.distinct("Attribute");

     

    Como esta función devuelve un Arraylist, y no una colección, la iteración debe manejarse como tal. Vea cómo iterar un arraylist.

     

    for (var i = 0; i < DistinctArray.Count; i++){

     //Get the object that contains the row

     ArrayObjectRow = DistinctArray[i];

    }

     

     

    Sum

    Esta función devuelve la suma de todos los valores numéricos en una columna de la colección.

     

    Sintaxis: CollectionObject.sum("AtributoNumérico");

    Atributo numérico: atributo de una colección para sumar sus valores.

    Retorna: Numeric object type.

    Ejemplo:

     

    var CollectionObject = CHelper.GetValueAsCollection(<ProcessEntity.Collection>);

    var sum = CollectionObject.sum("Attribute");

    En este articulo