group-by

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Funciones > Referencia de la biblioteca de funciones > core | sequence functions (secuencia) >

group-by

La función group-by crea grupos de registros conforme a las claves de agrupación que se indiquen. Por ejemplo, en el siguiente ejemplo de transformación abstracta la clave de agrupación es "Departmento". Como hay un total de tres departamentos únicos, al aplicar la función group-by se crean tres grupos:

mf_group-by

 

Argumentos

Nombre

Tipo

Descripción

nodes/rows

Una secuencia de elementos

Una secuencia de nodos o filas (por ejemplo, el origen de la conexión puede estar en un nodo XML de origen con secundarios, un registro CSV, etc.).

key

Un tipo variable

La clave conforme a la cual se agrupan los elementos.

 

Ejemplo

Imaginemos que sus datos de origen son un archivo XML con el siguiente contenido (tenga en cuenta que, para simplificar, en el código de ejemplo siguiente hemos eliminado el espacio de nombre y las declaraciones XML).

 

<company>
  <person department="Administration" name="Vernon Callaby"/>
  <person department="Marketing" name="Susi Sanna"/>
  <person department="Engineering" name="Michelle Butler"/>
  <person department="Engineering" name="Fred Landis"/>
  <person department="Administration" name="Frank Further"/>  
</company>

 

El requisito empresarial es agrupar registros de personas por departamento. Para conseguirlo, la siguiente asignación invoca la función group-by y da como clave el elemento department.

mf_group-by_map

El resultado de la asignación es el siguiente:

 

<groups>
  <group>
    <record key="Administration" value="Vernon Callaby"/>
    <record key="Administration" value="Frank Further"/>
  </group>
  <group>
    <record key="Marketing" value="Susi Sanna"/>
  </group>
  <group>
    <record key="Engineering" value="Michelle Butler"/>
    <record key="Engineering" value="Fred Landis"/>
  </group>
</groups>

 

Este ejemplo, junto con otros ejemplos de agrupación, es parte de esta asignación: <Documentos>\Altova\MapForce2019\MapForceExamples\Tutorial\GroupingFunctions.mfd. Antes de hacer clic en la pestaña Resultados, recuerde hacer clic en el botón Vista previa mf_ic_preview de la función que quiere comprobar.


© 2019 Altova GmbH