Si tenemos un campo field collection con campos como números decimales, números enteros, etc. es posible que queramos sumar esos valores en otro campo Computed.
Por ejemplo imaginemos que tenemos un campo field collection llamado: field_superf y este tiene campo de texto Nombre y un campo decimal llamado field_constr y tenemos los siguientes datos:
Sotano 50,00 m2
Planta baja 60,00 m2
Los valores del campo field_constr los podemos sumar en otro campo Computed escribiendo lo siguiente en el Computed Code (PHP):
$sum = 0; $wrapper = entity_metadata_wrapper($entity_type, $entity); foreach($wrapper->field_superf as $collection) { $sum += $collection->field_constr->value(); } $entity_field[0]['value'] = $sum;
Donde hemos puesto field_superf ponemos el nombre del campo field collection y donde hemos puesto field_constr ponemos el nombre del campo del que queremos sumar todos sus elementos.
En el Display Code (PHP) ponemos:
$display_output = $entity_field_item['value'];
Al ver el resultado obtendríamos en este caso: 110,00, que es la suma de 50,00 y 60,00 del ejemplo que hemos visto.