CALL

Description

Calls an ancestor script from a script for a descendent object. You can call scripts for events in an ancestor of the user object, menu, or window. You can also call scripts for events for controls in an ancestor of the user object or window.

When you use the CALL statement to call an ancestor event script, the AncestorReturnValue variable is generated. For more information on the AncestorReturnValue variable, see “About events”.

Syntax

CALL ancestorobject {`controlname}::event

Parameter

Description

ancestorobject

An ancestor of the descendent object

controlname (optional)

The name of a control in an ancestor window or custom user object

event

An event in the ancestor object

Usage

NoteUsing the standard syntax For most purposes, you should use the standard syntax for calling functions and events. For more information about the standard syntax, see “Syntax for calling PocketBuilder functions and events”.

The standard syntax allows you to trigger or post an event or function in an ancestor and then pass arguments, but it does not allow you to call a script for a control in the ancestor.

In some circumstances, you can use the pronoun Super when ancestorobject is the descendant object’s immediate ancestor. See the discussion of “Super pronoun”.

If the call is being made to an ancestor event, the arguments passed to the current event are automatically propagated to the ancestor event. If you call a non-ancestor event and pass arguments, you need to use the new syntax, otherwise null will be passed for each argument.

Examples

Example 1

Example 1 This statement calls a script for an event in an ancestor window:

CALL w_emp::Open

Example 2

Example 2 This statement calls a script for an event in a control in an ancestor window:

CALL w_emp`cb_close::Clicked