#PROCEDURE (begin a procedure template) 

Top  Previous  Next

 

#PROCEDURE( name, description [, target ] )[, REPORT ] [, WINDOW ] [, HLP( helpid ) ]

[, PRIMARY( message [, flag ] ) ] [, QUICK( wizard ) ] [, PARENT( name(family) ) ]

#PROCEDURE

Begins a procedure template.

name

The label of the procedure template. This must be a valid Clarion label.

description

A string constant describing the procedure Template.

target

A string constant that specifies the source language the template generates. If omitted, it defaults to Clarion.

REPORT

Tells the Application Generator to make the Report Formatter available.

WINDOW

Tells the Application Generator to make the Window Formatter available.

HLP

Specifies on-line help is available.

helpid

A string constant containing the help identifier. This may be either a Help keyword or "context string."

PRIMARY

Specifies at least one file must be placed in the procedure's Data / Tables Pad.

message

A string constant containing a message that appears in the Data / Tables Pad next to the procedure's Primary file.

flag

If present, contains OPTIONAL (the file is not required), OPTKEY (the key is not required), or NOKEY (the file is not required to have a key).

QUICK

Specifies the procedure has a wizard #UTILITY that runs when the Use Procedure Wizard box is checked.

wizard

The identifier (including template class, if necessary) of the wizard #UTILITY template.

PARENT

Specifies that the procedure has a parent procedure, and inherits all of the prompts and interfaces of that parent procedure.

name

A string constant naming the parent procedure – Example: window

family

The name of the template class where the parent procedure name is defined. Example: ABC

 

 

The #PROCEDURE statement begins a Procedure template. A Procedure template contains the Template and target language statements used to generate the source code for a procedure within your application. A #PROCEDURE section is terminated by the first occurrence of a Template Code Section (#PROGRAM, #MODULE, #PROCEDURE, #CONTROL, #CODE, #EXTENSION, or #GROUP) statement, or the end of the file. Within a Template set you may have multiple #PROCEDURE sections, but they must all have unique name parameters.

Example:

#PROCEDURE(ProcName1,'This is a sample window procedure'),WINDOW

#PROCEDURE(ProcName2,'This is a sample report procedure'),REPORT

#PROCEDURE(ProcName3,'This is a sample anything procedure'),WINDOW,REPORT

#PROCEDURE(Browse,'List with Wizard'),WINDOW,QUICK(BrowseWizard(Wizards))

#PROCEDURE(Splash,'Splash Window'),WINDOW,REPORT,PARENT(Window(ABC))