image\Dql_0024.gifend

Type

Procedural Command

Purpose

The end command marks the end of the span of control of other processing and/or procedural commands.

Syntax

 ACTION 1 .

 ACTION 2 .

 .

 .

 ACTION N .

end

 

Usage

An end command is required following the last specified action invoked by a for, case, if, or while command.

When multiple procedural commands are used in a script, the proper positioning of end commands is critical to correct processing. Each end command refers to the most recent procedural command in the script. Each procedural command controls processing of the script until it reaches its matching end command (see Example 2).

Example 1

for MEMBERS ;

list records

LAST NAME ;

TOTAL DUE .

end

 

This script tells DataEase: Process all the MEMBERS records and list each member's LAST NAME and TOTAL DUE in the report output.

 

Example 2

for MEMBERS ;

if highest of RESERVATIONS DATE < 01/01/99 then

delete records

else

delete records in RESERVATIONS

with ( DATE < 01/01/99)

end

if highest of RESERVATIONS DATE >= 01/01/99 then

list records

LAST NAME in order ;

highest of RESERVATIONS DATE .

end

end

 

This script tells DataEase: (1) For each MEMBERS record, find the most recently dated record in the related RESERVATIONS table, (2) if the most recent reservation is dated before January 1st, 1999, delete the MEMBERS record, (3) if a member's most recent reservation is dated on or after January 1st, 1999, delete all of that member's RESERVATIONS records dated prior to 1999, and (4) for all members with reservations dated on or after January 1st 1999, list the members in order by LAST NAME and show the date of each member's most recent reservation.

Notice that for each if command in the script, there is a corresponding end command. The first end marks the end of the if command that selects which records to delete. The second end marks the end of the if command that selects which records to include in the report output. The third end marks the end of the for command that selects the records from the Primary table.