Show/Hide Toolbars

XSharp

NoteThis command is defined in a header file and will be preprocessed by the X# preprocessor to a function call. If you disable the standard header (-nostddefs) files then this command will not be available. If you tell the compiler to use a different standard header file (-stddef ) then this command may also be not available

Purpose

Calculate the average of one or more numeric expressions to variables for a range of records in the current database file.

Syntax

AVERAGE <nValueList> TO <idVarList> [<Scope>] [WHILE <lCondition>] [FOR <lCondition>]

Arguments

<nValueList>A list of the numeric values to average for each record processed.

 

TO <idVarList>A list of receiving variable or field names which will contain the average results.  Variables that either do not exist or are not visible are created as private variables.  <idVarList> must contain the same number of elements as <nValueList>.

 

<Scope>The portion of the current database file to process.  The default is all visible records. Scope is one or more clauses of:
[NEXT <NEXT>]        Optionally specifies the number of records to process starting
               with the first record of the source file.
[RECORD <rec>]        An optional record ID If specified, the processing begins
               with this data record in the source file.
[<rest:REST>]        The option REST specifies whether records are sequentially
               searched only from the current up to the last record.
               If a condition is specified, the option ALL is the default value.
[ALL]                The option ALL specifies that all records from the source file are imported.
               This is the default setting.

 

WHILE <lCondition>A condition that each visible record within the scope must meet, starting with the current record.  As soon as the while condition fails, the process terminates.  If no <Scope> is specified, having a while condition changes the default scope to the rest of the visible records in the file.

 

FOR <lCondition>A condition that each visible record within the scope must meet in order to be processed.  If a record does not meet the specified condition, it is ignored and the next visible record is processed.  If no <Scope> or WHILE clause is specified, having a for condition changes the default scope to all visible records.

 

Description

Zero (0) values are counted in the AVERAGE unless explicitly ruled out with a FOR condition.

Examples

This example averages a single numeric field using a condition to select a subset of records from the database file:

 

USE sales NEW
AVERAGE Amount TO nAvgAmount FOR Branch = "100"

 

The next example finds the average date for a range of dates:

 

AVERAGE (SaleDate - CToD("00/00/00")) ;

 TO nAvgDays FOR !Empty(SaleDate)

 dAvgDate := CToD("00/00/00") + nAvgDays

Assembly

XSharp.RT.DLL

See Also

COUNT, DBEval(), SUM, TOTAL