ItemChanged

Description

Occurs when a field in a DataWindow control has been modified and loses focus (for example, the user presses Enter, the Tab key, or an arrow key or clicks the mouse on another field within the DataWindow). It occurs before the change is applied to the item. ItemChanged can also occur when the AcceptText or Update method is called for a DataWindow control or DataStore object.

PowerBuilder event information Event ID: pbm_dwnitemchange

Argument

Description

row

Long by value. The number of the row containing the item whose value is being changed.

dwo

DWObject by value. A reference to the column containing the item whose value has been changed. Dwo is a reference to the column control, not the name of the column.

data

String by value. The new data the user has specified for the item.

Web DataWindow client control event information Event name: ItemChanged

Argument

Description

row

Number. The number of the row containing the item whose value is being changed.

columnName

String. The name of the column containing the item.

newValue

String. The new data the user has specified for the item.

Web ActiveX event information Event name: beforeItemChange

Argument

Description

Row

Number. The number of the row containing the item whose value is being changed.

Name

String. The name of the column containing the item whose value has been changed.

Data

String. The new data the user has specified for the item.

Returns

Set the return code to affect the outcome of the event:

For information on setting the return code in a particular environment, see “About return values for DataWindow events”.

Usage

The ItemChanged event does not occur when the DataWindow control itself loses focus. If the user clicks on an Update or Close button, you will need to write a script that calls AcceptText to see if a changed value should be accepted before the button’s action occurs. For information on the right way to do this, see AcceptText.

NoteObsolete techniques in PowerBuilder Information formerly provided by the GetText method is available in the data argument.

Instead of calling SetActionCode, use a RETURN statement with a return code.

Examples

Example 1

This example uses the ItemChanged event to provide additional validation; if the column is emp_name, it checks that only letters were entered in the column:

IF Dwo.name = "Emp_name" THEN

		IF NOT Match(Data, "^[A-za-z]$") THEN

			RETURN 2

		END IF

END IF

See also