| **Navigation:**  [[templates.htm|Templates]] > [[tlrcontents.htm|Template Language Reference]] > Complete Alpha Listing >====== #PROGRAM (global area) {{c6h0068.jpg|C6H0068.jpg}} ====== | [[ procedure begin a procedure template .htm|{{btn_prev_n.gif|Previous page}}]][[tlrcontents.htm|{{btn_home_n.gif|Return to chapter overview}}]][[ project add file to project .htm|{{btn_next_n.gif|Next page}}]] | | || **#PROGRAM(** //name, description// [, //target, extension// ] **)** [, **HLP(** //helpid// **)** ] {{blk2blue.jpg|blk2blue.jpg}} | **#PROGRAM** | Defines the beginning of the main program module. | | //name// | The name of the #PROGRAM which identifies it for the Template Registry and Template Language statements. This must be a valid Clarion label. | | //description// | A string constant describing the #PROGRAM section for the Template Registry and Application Generator. | | //target// | A string constant that specifies the source language the Template generates. If omitted, it defaults to Clarion. | | //extension// | A string constant that specifies the source code file extension for the //target//. If omitted, it defaults to .CLW. | | **HLP** | Specifies on-line help is available. | | //helpid// | A string constant containing the identifier to access the Help system. This may be either a Help keyword or "context string." | The **#PROGRAM** statement defines the beginning of the main program module of the Template. The #PROGRAM section is terminated by the next Template Code Section (#MODULE, #PROCEDURE, #CONTROL, #CODE, #EXTENSION, or #GROUP) statement encountered, or the end of the file. Only one #PROGRAM section is allowed in a Template set. #BUTTON, #PROMPT, and #DISPLAY statements are not valid within a #PROGRAM section. Global prompts go in the #APPLICATION section. **Example:** **#PROGRAM****(CLARION,'Standard Clarion Shipping Template')** **  PROGRAM                  !PROGRAM statement required** **  INCLUDE('Keycodes.clw')** **  INCLUDE('Errors.clw')** **  INCLUDE('Equates.clw')**