Documentacióntotaliza_campo(tabla, campo)

totaliza_campo(tabla,campo)\texttt{totaliza\_campo}(tabla, campo)

Nombre

totaliza_campo - Suma los valores numericos de un campo en toda la tabla.

Sinopsis

suma = tablas.totaliza_campo(tabla, campo)

Descripcion

Recorre una TABLA y acumula la suma de todos los valores presentes en el campo indicado.

Esta funcion esta pensada solo para campos de tipo NUMERICO.

Es util para:

  • obtener totales de una columna numerica
  • preparar promedios u otros calculos derivados
  • resumir magnitudes acumuladas en la tabla

Comportamiento

  • Verifica que el campo exista y sea NUMERICO.
  • Recorre todos los registros y suma los valores disponibles del campo.
  • Devuelve la suma total acumulada.
  • Si el campo no existe o no es numerico, produce error.

Funciones API relacionadas

  • tablas.contar_todos()
  • tablas.agrupar_por_campo()
  • tablas.contar()
  • tablas.valores_distintos()
  • tablas.buscar_distintos()
  • tablas.max_en_campo()
  • tablas.min_en_campo()
  • tablas.promedio_campo()

Parámetros

ParámetroTipoDescripción
tablaTABLATabla a analizar.
campoSTRINGCampo numérico.

Valor de retorno

NUMERICO - Suma total de los valores numericos encontrados en el campo.

Ejemplo

ejemplo.blox
INCLUIR "tablas.api"


FUNCION PRINCIPAL
INICIO

	TABLA  persona, filtrado
	NUMERICO i, total, prom
	STRING campo



    persona = {
        nombre = "Carlos",
        edad = 30,
        ciudad = "Asuncion",
    }
    persona = {
        nombre = "Juan",
        edad = 21,
        ciudad = "Encarnacion",
    }
    persona = {
        nombre = "Roberto",
        edad = 45,
        ciudad = "Concepcion",
    }
    persona = {
        nombre = "Maria",
        edad = 19,
        ciudad = "Concepcion",
    }



//
// Testado OK
//
// Copia el contenido de un campo de la tabla en un vector de string. 
//

    campo = "edad"
	total = tablas.totaliza_campo(persona, campo)
    IMPRIMIR("\nLa suma de edades en todos los registros de la tabla es: ", total)

    prom = tablas.promedio_campo(persona, campo)
    IMPRIMIR("\nEl promedio de edad en todos los registros de la tabla es: ", prom)
 
FINAL