Note | This 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 |
Tally the number of records from the current work area that match the specified record scope and condition, and place the result in the specified variable.
COUNT TO <idVar> [<Scope>] [WHILE <lCondition>] [FOR <lCondition>]
TO <idVar> | The variable or field that holds the COUNT result. A variable that either does not exist or is invisible is created as a private variable. |
<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. |
This example demonstrates a COUNT using a particular Branch in SALES.DBF:
USE sales NEW
COUNT TO nBranchCnt FOR Branch = 100
? nBranchCnt // Result: 4
The next example tallies the number of records in SALES.DBF whose Branch has the value of 100 and assigns the result to the Count field in BRANCH.DBF for branch 100:
USE branch INDEX branch NEW
SEEK 100
USE sales INDEX salesbranch NEW
SEEK 100
COUNT TO Branch->Count WHILE Sales->Branch = 100
XSharp.RT.DLL