4D v16.3

Average

Página Inicial

 
4D v16.3
Average

Average 


 

Average ( series {; atributoRota} ) -> Resultado 
Parâmetro Tipo   Descrição
series  Campo, Array in Dados para os quais se retorna a média
atributoRota  Texto in Rota do atributo para o qual vai retornar a média
Resultado  Real in Média aritmética da série

Average retorna a média aritmética de series. Se series for um campo indexado, o índice é utilizado para calcular a média. 

Você pode passar um array (de uma ou duas dimensões) em series. Neste caso, o array deve ser do tipo Inteiro, Inteiro longo ou Real.

Este comando aceita um parâmetro opcional atributoRota do tipo Texto, que pode usar se series for um campo objeto. Permite que defina a rota do atributo a computar. Use a notação padrão ponto para definir rotas para atributos aninhados, por exemplo "company.address.number". Lembre que nomes de atributo objeto diferenciam entre maiúsculas e minúsculas.

Apenas valores de atributo numérico são computados. Se houver valores na rota atributo que não forem do tipo numérico, serão ignoradas.

Se o comando for executado corretamente, a variável sistema OK toma o valor 1. Se for interrompida (por exemplo se o usuário clicar no botão Deter do termômetro de progresso) a variável OK toma o valor 0.

O exemplo a seguir define a variável vMedia que está na área de quebra B0 de um formulário de saída. A linha de código é o método de objeto para vMedia. O método de objeto não é executado até o nível de quebra 0:

 vMedia:=Average([Empregados] Salário)

O método a seguir é chamado para imprimir os registros na seleção e ativar o processo de quebra:

 ALL RECORDS([Empregados])
 ORDER BY([Empregados];[Empregados]Sobrenome;>)
 BREAK LEVEL(1)
 ACCUMULATE([Empregados]Salário)
 FORM SET OUTPUT([Empregados];"Imprimir formulário")
 PRINT SELECTION([Empregados])

Nota: O parâmetro do comando BREAK LEVEL deve ser igual ao número de rupturas em seu relatório. Para maior informação sobre quebras, consulte Imprimir.

Este exemplo permite obter a média das 15 primeiras notas da seleção:

 ARRAY REAL($ArrGrades;0)
 QUERY([Exams];[Exams]Exam_Date=!01/07/11!)
 ORDER BY([Exams];[Exams]Exam_Grade;<)
 SELECTION TO ARRAY([Exams]Exam_Grade;$ArrGrades)
 ARRAY REAL($ArrGrades;15)
 vAverage:=Average($ArrGrades)

Sua tabela [Customer] contém um campo objeto "full_Data" com os seguintes dados:

Pode fazer os seguintes cálculos:

 C_REAL($vAvg)
 ALL RECORDS([Customer])
 $vAvg:=Average([Customer]full_Data;"age")
  //$vAvg is 44,46
 
 C_LONGINT($vTot)
 $vTot:=Sum([Customer]full_Data;"Children[].age")
  //$vTot is 105



Ver também 

ACCUMULATE
BREAK LEVEL
Max
Min
ORDER BY
PRINT SELECTION
Subtotal
Sum

 
PROPRIEDADES 

Produto: 4D
Tema: Funções estatísticas
Número 2

Este comando modifica a variável sistema OKThis command can be run in preemptive processes

 
HISTÓRIA 

New
Modificado: 4D v11 SQL Release 3
Modificado: 4D v13
Modificado: 4D v16

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v16)
Manual de linguagem 4D ( 4D v16.1)
Manual de linguagem 4D ( 4D v16.2)
Manual de linguagem 4D ( 4D v16.3)