Progress
Language Tutorial
for Character


Glossary

Abbreviated Index

Uses just the first few characters of a field, if the field is a character data field. Indexes not comprised of character data require an exact match.

Accelerator Keys

Function and special key combinations that you can press to choose a menu option.

Active Database

The database that is currently in use. If you have more than one database, the Data Dictionary requires you to select an active, working database.

Aggregate Functions

A set of functions that allow you to evaluate groups of values.

Aggregate Phrase

A Progress language element that identifies one or more values to be calculated based on a change in a break group.

Alert Box

A window that appears on the screen requesting user response. The user must dismiss the alert box before the application can continue.

Application

A set of programming language instructions that accomplishes a specific task. An application can be created from Progress procedures.

Argument

A piece of data that a calling procedure gives to a called procedure. Progress evaluates the passed data at compilation time.

Array

A field or variable with multiple elements. Each element in an array has the same data type.

Array Extent

The number of elements contained in the array.

Assignment Operator

The equal sign (=).

Attribute

A value associated with a widget or system handle. The value represents an aspect (e.g. size or color), state (e.g. visibility), or capability (e.g. to allow scrolling).

Block

A series of statements that Progress treats as a single unit. Typically, each block begins with a block header statement and concludes with an END statement.

Block Header

The statement that begins a block. It is different from other kinds of statements in two ways: it ends with a colon (:) (all other statements end with a period) and it can have a label (the label also ends with a colon).

Block Label

Text in a procedure block that identifies the block.

Box

In a frame, the four lines around the outside of the frame that designate its boundary. By default, frames have boxes; however, an application can turn off the box.

Break Group

A set of records having a common value in a certain database field. Break groups are used in reports to display file and record relationships.

Browse Widget

A widget that displays the results of a database query. There are two types of browse widget: updateable and read-only. An updateable browse lets the user view, update, add, and delete data in records. A read-only browse is used for display only. It shares properties of a container and field-level widget.

Buffer

A small amount of memory used as a temporary storage area for data during input or output operations. See also data buffer, record buffer, screen buffer. See also edit buffer.

Button Widget

A field-level widget that the user can choose to direct an application to execute a trigger or control the interface.

Character Client

A combination of hardware and software components that support a character-based interface. The following platforms support Progress running in character mode: UNIX, Windows NT, and Windows 95. Windows NT and Windows 95 only support the character mode by enabling a character client to run in DOS only when DOS is running under one of these 32-bit Windows operating systems.

Character Constant

A value made up of non-numeric or character data, or a combination of numeric and non-numeric data that remains unchanged during a procedure. Character constants must be enclosed in quotation marks when used in a procedure.

Character Data Type

A property of a field or variable that determines that the data stored there can be of the character data type.

Character Field

A field having a character data type.

Child Frame

A frame parented to (contained by) another frame. See also parent frame.

Child Window

A window parented to (owned by) another window. See also parent window.

Child Window Family

A child window and all of its descendant windows.

Column

1.) A component of a record, a field. 2.) A vertically aligned set of character cells in the character coordinate system.

Column Label

A label displayed above a column of data (field values). This label is useful for creating lists of values, like columnar reports. See also side labels.

Combo Box Widget

A field-level widget that presents a scrolling list of character strings. The list is only visible when the user chooses the button next to the combo box. When the user selects a value, the combo box closes and displays only the selected value.

Comparison Expression

A combination of constants, variables, operators, and parentheses used to compare values.

Concatenation Operator

The plus sign (+) used to link or join two or more character strings into a single character string.

Conditional Processing

A means of processing based on one or more logical expressions.

Connected Database

A database that is accessible and can be worked on in the Data Dictionary.

Constant

A value that remains unchanged during the execution of a program. A constant can be of any data type: character, date, decimal, integer or logical.

Container Widget

A widget that can contain other widgets. For example, a frame is a container widget.

Current Buffer

The contents displayed in the procedure area of the Procedure Editor.

Current Window

1.) The window in which one is working and so indicated by a filled-in window title bar. 2.) The window that contains the current widget.

Current Widget

The widget that has input focus.

Cycling Sequence

A sequence that begins at an initial value and increments in one direction until it reaches the designated limit.

Database

A collection of data organized in logically related tables or fields that can be accessed or retrieved.

Database Event

An action performed against a database, such as finding or writing to a record.

Database Object

A component of the database that is defined in the database schema such as a field or a table.

Database Properties

The schema definitions that define the database, such as the database name, the database type, and so on.

Database Trigger

A piece of code that an application associates with a component of a database and a database action (such as writing a record). When the action occurs on the component, Progress locates this piece of code and executes it on behalf of the application.

Data Dictionary

An interactive tool that enables you to create, modify, and delete Progress database objects. You can also use it to generate database reports.

Data Type

A property of a field or variable that determines the nature of data that can be stored there (integers as opposed to characters, for example). Progress supports five data types: character, integer, decimal, date, and logical.

DATE Data Type

A property of a field or variable that determines that the data stored there can be a date. In Progress, a date data type may contain a date and time from 1/1/32768 B.C. through 12/31/32767 A.D.

Date Field

A field having a date data type. You can specify dates in this century with either a two-digit year, such as 8/9/90, or a four-digit year (8/9/1990). Dates in other centuries require a four-digit year.

Decimal Data Type

A property of a field or variable that determines that the data stored there can be a decimal.

Decimal Field

A field having a decimal data type. A decimal field can contain decimal numbers up to 50 digits in length. Progress allows up to 10 digits to the right of the decimal point.

Dialog Box Widget

A container widget that either notifies the user of important information or requests more information. The main interface is disabled until the user is done working with the dialog box. A dialog box is a frame, but it has some properties of a window. Dialog boxes have modal properties.

Directory

A file-system object that lists or contains files and, possibly, other directories.

Display Format

The way data appears on screen and in printed reports. Progress automatically supplies a default display format for each data type, but you can change that default format.

Down Frame

A frame that displays multiple records, one per line, one after another. See also frame.

Edit Buffer

A temporary work area for procedures under construction in the Procedure Editor. The Procedure Editor allows you to open several buffers simultaneously. If a buffer has no name assigned, it appears as “Untitled” plus a number that makes it unique (Untitled:1).

Editor Widget

A field-level widget that allows editing of large character variables or database fields. By default, editor widgets support features such as cut, copy, paste, and word-wrap.

Event Action

Any simple user interaction, like a single keystroke.

Event Function

An abstraction of one or more event actions.

Event-driven Programming

Think of event-driven programming as bottom-up programming, because you define the smaller components before you define the larger components.

Expression

In a program, a combination of constants, variables, operations, and parentheses used to perform a desired computation.

External Procedure

A group of Progress 4GL statements that you store as an operating-system file.

Field

1.) The “atomic particle” of a database-that is, the smallest unit of useful information.
2.) A component of a record that holds a data value. Also called a column.

Field-level Widget

Any widget that can be placed in a frame.

Field Label

A label on the screen or printed reports that identifies the field. If you do not supply a label, Progress uses the field name as the label.

Field Properties

The schema definitions that define the field, such as the field name, the field type, and so on.

Fill-in Field Widget

A field-level widget that handles text entry and display. The fill-in field is the default widget for displaying a variable or database field. Also known as a fill-in.

Footer

Text, such as a page number, placed at the bottom of each page of a report.

Format Phrase

A Progress language description of the display characteristics for a field, variable, or expression.

Frame

A container widget composed of a display area within a window that Progress uses to display field-level widgets.

Frame Family

A related collection of parent and child frames.

Frame Scope

The range or extent of a frame’s availability within a procedure.

Function

A prepackaged solution to a task that can be used in an expression-a “shortcut” to handling tasks. Progress supports two types of functions: pre-defined function that the Progress 4GL supplies, and user-defined function that allows you to create functions based on specific programming tasks you want to solve.

Function Keys

Special keys to which Progress assigns certain actions. In procedures, you can reassign these actions to different keys.

Graphical User Interface (GUI)

Features high-resolution graphics and an additional user input device called a mouse.

Handle

An internal identifier for a widget. See also system handle and widget handle.

Header

Text, such as a page number, title, or date, placed at the top of each page of a report.

Icon

A small, rectangular graphic image that represents a window when the user has “minimized” (or “iconified”) it.

Image

A field-level widget used to display an image from a bitmap file.

Include File

A separate file containing Progress code that you can call from other procedures by placing the filename in braces within the procedure. Include files have a .i extension.

Index

A directory or table containing 1) the field or fields identifying the records in a file, and 2) the locations where the records are stored.

Index Properties

The schema definitions that define the index, such as the index name, the fields it comprises, and so on.

Initial Value

The value to which a field is set when it’s created.

Inner Join

A join where records from the first (left-hand) table (or join) are only returned to the results list that also return a corresponding record from the second (right-hand) table.

Input Focus

The ability for a widget to receive user-interface events.

Integer Data Type

A property of a field or variable that determines that the data stored there can be an integer.

Integer Field

A field having an integer data type.

Internal Procedure

Code blocks that you write and compile as part of a larger containing procedure.

Iteration

A repetition of a procedure block.

Join

A type of query operation that requests information from two tables or joins at a time. The output is a results list where each row contains a record from each joined table. A join can only occur when the two queried tables or joins have a common field.

Join Condition

The criteria used to relate the fields of one table in a join with those of another.

Key Functions

Tool functions that map to a keystroke.

Key Index

A primary, unique index field in a table.

Label

Text that appears with a field or variable when it is displayed.

Left Outer Join

A join that returns all the records of the first (left-hand) table, including the records from the second (right-hand) table for an inner join and null field values for all records in the right-hand table that have no corresponding records in the left-hand table.

Local Variable

A variable that you can use only within the procedure in which you defined it. The data in the variable is no longer available when you exit the procedure.

Literal

An alphanumeric constant. Literals can be character strings, numerics, dates, or logical data.

Logical Data Type

Can be one of two values consisting of yes/no, true/false, or a logical value pair.

Logical Database Name

The name of a physically connected database. The logical database name is used to resolve ambiguous database references.

Logical Expression

An expression that, when evaluated, yields true or false.

Logical Field

A field having a logical data type.

Logical Operator

An operator such as AND, OR, or NOT used in an expression that yields a true or false value.

Menu

A widget containing a list of commands that users frequently use. The two kinds of menu widgets available are menu bars and submenus.

Menu Accelerator Keys

A key or key combination which when pressed invokes an associated menu item. See also accelerator key.

Menu Bar

A horizontal bar displayed at the top of a window. The menu bar contains menu labels arranged horizontally. When you select a menu label, a pull-down menu containing a vertically arranged list of items is displayed.

Menu Item

A menu component that the user can choose to direct an application to perform some action or task.

Menu Titles

The text strings in a menu bar.

Menu Owner

The widget a menu is associated with. For menu bars, the owner is always a window.

Message Area of Screen

Three lines at the bottom of a Progress screen. The first two lines are for procedure-specific messages. The third line is for Progress system and help messages.

Method

A function associated with a widget or system handle that performs a specific action and returns a value (like a function) representing the result of that action.

Mnemonic

A single letter that you can press to choose a menu option. The mnemonic for each option is underlined when it is displayed.

Modal Application

An application or part of an application that forces you to perform a specific action before you can go on to other tasks.

Modeless Application

An application that gives you control over which tasks you perform when. It allows you a number of processing choices and then reacts depending on the event you trigger.

Mouse

A device for communicating with a user interface.

Nonterminating Sequence

A sequence that begins at an initial value and increments in one direction with no limit. See also terminating sequence.

One-to-one Relationship

Occurs when one record can relate to only one instance of a record in another table.

One-to-many Relationship

Occurs when one record can relate to many records in another table.

Operating System

Software that controls and manages the execution of computer programs and services.

Operator

The symbol you use to perform numeric calculations, date calculations, character string manipulations, or data comparisons (+, /, and GT, for example).

Options

Similar to a phrase, only smaller. Options also modify the way Progress executes a statement. Options usually consist of a single keyword and a possible accompanying value.

Output Destination

A file or device to which a program sends output. Output destinations can include a terminal, a printer, an ASCII file, or a printer queue.

Outer Join

See left outer join.

Parameter

A variable or constant passed between a subroutine and the main program. Also, a Progress startup option.

Parent

The widget that contains or owns other widgets.

Parent Frame

A frame that contains another frame. See also root frame, child frame.

Parent Window

A window that owns another window. See also root window, child window.

Pathname

Specifies the complete name of a directory or file by starting at the root directory or disk volume and tracing the hierarchy of the file.

Phrase

A collection of keywords and values that modifies the way Progress executes a statement.

Physical Database Name

The actual name of the database on a disk.

Predefined Function

A Progress-supplied function that provides short cuts for accomplishing common programming tasks. See also Function.

Primary Index

Usually the most frequently used index. Progress allows you to set one index as primary and uses it by default when searching for a record.

Procedure

The largest Progress unit of execution, consisting of one or more Progress source or r-code statements in a single, outer block.

Procedure Area

The visible part of the current edit buffer. This is where you type and edit Progress procedures. It is also called a text pane.

Procedure Block

A series of statements that Progress treats as a single unit.

Procedure Editor

An interactive utility that provides operations for editing code. You can use it to create, compile, and run Progress procedure files.

Procedure File (.p file)

A source file containing Progress 4GL code which can be compiled into r-code. Procedure files normally have a .p or .w (window procedure files) file extension.

Progress 4GL

An application development language which has a highly readable syntax employing a default behavior while performing the work of multiple 3GL statements.

Pull-down Menu

A vertically displayed list of menu elements (menu items and submenus) appearing when the user selects a menu title in a menu bar.

Query

1. ) A request for information from a database. 2.) A set of database records that you create with your procedures. A query can involve one or more tables and can consist of all the records in a particular table or just a subset. The browse widget is a ready-made interface to a query.

Radio Button

One of the components of a radio set; it represents one of the possible values that the radio set can take on.

Radio-set Widget

A field-level widget composed of a series of buttons that represent a single field or variable, with each button representing a different possible value. Derived from the preset tuning buttons on many automobile radios-when one button is selected, any previously selected button is deselected.

Readable

Means that your application can read the current value and assign that value to a variable.

Record

A single occurrence of the data contained in a table. Records are treated as single units. Records are made up of fields.

Record Buffer

A temporary storage area in data memory for a record, field, or variable. When you write a record to the database, Progress gets that record from the record buffer.

Record Scope

The life span of a record in a record buffer. When the scope of a record ends, Progress releases the record and writes the changes made to the record buffer to the database.

Rectangle Widget

A decorative parallelogram (all of whose angles equal 90 degrees) displayed in a frame or in a frame background. Rectangles are display-only and cannot receive user input.

Related Tables

Tables that have at least one field in common.

Relational Database Management System (RDBMS)

A collection of hardware and software that organizes and provides access to a relational database.

Relational Operator

A symbol such as = (equal to), < (less than), or > (greater than) that is used to compare two values. It specifies a condition that can be either true or false.

Report

An organized display of data from a database.

Root Frame

A parent frame that is owned by a window and is the top parent of a frame family. See also parent frame, child frame.

Root Window

A parent window that is parented only by the window system and is the top parent of a window family. See also parent window, child window.

Row

1.) A collection of related items. Also called a record. 2.) A horizontally aligned set of character cells in the character coordinate system.

Schema

A description of a database’s structure-the tables it contains, the fields within the tables, views, etc. In addition to database structure, Progress database schemas contain items such as validation expression and validation message.

Screen Buffer

A display area for a field, variable, or the result of a calculation. When you prompt for information or display information for the user, Progress places that information in the screen buffer.

Selection Criteria

Conditional expressions used to select particular records from a database table or tables.

Selection-list Widget

A scrolling list of character strings. The strings are the possible values for an underlying field or variable.

Self

In a trigger, SELF is a system-handle whose value is the widget handle of the widget that received the event that fired the trigger. See also system handle and widget handle.

Sensitive Widget

A widget that reacts to user actions.

Sequence

A database object that provides incremental values to an application. Sequences can generate sequential values within any integer range with a positive or negative value.

Sequence Properties

The schema definitions that define the sequence, such as the sequence name, the initial value, and so on.

Setable Attribute

An attribute to which the application can assign a new value.

Shared Variable

A variable used to pass information from one procedure to another.

Side Labels

Field labels to the left of the data and separated from the data by a colon and a space. See also column labels.

Slider Widget

A field-level widget composed of a rectangular scale that represents a range of INTEGER values. A marker within the scale indicates the current value. Only values of type INTEGER can be viewed as sliders.

Sports Database

A sample Progress database containing files, fields, and indexes (including some data) that procedures in Progress documentation use to acquaint you with the way Progress operates.

Statement

An instruction written in the Progress language.

Stream

A sequence of characters or items.

String

A character expression (a constant, field name, variable name, or any combination of these that results in a character string value).

Submenu

A vertically displayed list of menu items and submenus that appears when the user selects a menu title in a menu bar.

Subprocedure

A procedure that runs from the main procedure. A subprocedure can be either an internal or external procedure.

System Handle

A pseudo widget handle that provides a range of system capabilities sometimes associated with a visual widget. System handles that reference instances of visual widgets (for example, FOCUS) adopt all the attributes, methods, and events of the widget. Other system handles provide monitoring and control capabilities (for example, CLIPBOARD). System handles have their own attributes and methods, but do not respond to Progress events.

Table

A collection of logically related records organized into rows and columns. A table can contain a program, data, or text. A table is made up of records. It is also called a file.

Table Properties

The schema definitions that define the table, such as the table name, the table type, and so on.

Terminating Sequence

A sequence which begins at an initial value and increments in one direction until it reaches the designated limit. See also nonterminating sequence.

Text Widget

A field-level widget that displays any kind of data. It is read-only, and does not receive normal user events. Text widgets cannot have input focus.

Toggle Box Widget

A field-level widget composed of a small box that represents a logical value. Only values of type LOGICAL can be viewed as toggle boxes. The presence (TRUE) or absence (FALSE) of filling in the toggle box indicates the current value. A toggle box can be a field-level widget or a special type of menu item.

Top-down Programming

Traditional programming where you define larger structures first and then define smaller and smaller components.

Trigger

A piece of code that Progress executes on behalf of an application when a certain database action occurs or a certain user-interface event occurs. There are two types of triggers: database triggers and user-interface triggers.

Unique Index

An indexed field where every index key must be different. For example, Social Security number could be a unique index.

User-defined Function

A function that you can create based on a programming task that you want to solve. You can reuse this code once you create it. See also function.

User Interface Triggers

A piece of code that an application associates with one or more event-widget pairs. When the widget receives the event, Progress locates this piece of code and executes it on behalf of the application.

Validation Expression

A test to make sure that the user does not enter invalid data in a field.

Validation Message

A user-defined message the Dictionary displays when the user attempts to delete the selected table without meeting the table-validation criteria.

Variable

A temporary field for storing data.

Widget

An object that provides visual and interactive capabilities for a Progress application. A widget is a 4GL-aware control. That is, it is a control that shares common capabilities with other controls of the same type defined in the 4GL. There are several widget types that form a hierarchy in the 4GL, starting with windows. Windows can own other windows. Windows also contain frames and dialog boxes. Frames and dialog boxes contain field groups, and field groups contain field-level widgets or other frames. Widgets have attributes and methods and respond to events. Widgets serve as receptors for user input and also display application output.

Widget Attributes

Characteristics of the widget such as its type, screen location, size, color, font, and relationship to other widgets.

Widget Handle

To allow you to reference widgets within an application, Progress assigns each widget a unique widget handle. A widget handle is a pointer to the widget. Progress provides the WIDGET-HANDLE data type, to support handle values.

Window Family

A related collection of parent and child windows.

Window Widget

The workspace of your application. Each time you start a Progress session, it automatically creates a default window.

Word Index

Contains all the words from a character field or array of character fields. Searching with this index makes it very easy to locate records that contain specific words.

Working Directory

The directory you are in when you issue a command.

Working Database

The connected database that is currently in use. Multiple databases can be connected at any time, but only one is the current, working database.


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095