GetFieldsUpdatedThisEntireAction
Description
Returns a FieldInfo object for each field that was modified by the entire action, including changes made in any initialization hooks. The GetFieldsUpdatedThisEntireAction method (new in version 2003.03.15) resolves an issue with the logic used for determining which fields have changed during an action.
This method reports the fields that changed during the entire action, including all fields that changed before the call to BuildEntity or EditEntity returns. Fields that were implicitly changed during the action's initialization (which includes FIELD_DEFAULT_VALUE hooks setting initial default field values) are reported; fields that were modified by hooks during the initialization of the action are also reported. This method reports fields that were changed by hooks after the initialization phase of the action; see the HCL Compass Designer documentation for the timing and execution order of hooks.
Syntax
VBScript
entity.GetFieldsUpdatedThisEntireAction
Perl
$entity->GetFieldsUpdatedThisEntireAction
();
- Identifier
- Description
- entity
- An Entity object representing a user data record. Inside a hook, if you omit this part of the syntax, the Entity object corresponding to the current data record is assumed (VBScript only).
- Return value
- For VBScript, a Variant containing an Array of FieldInfo Objects is returned. Each FieldInfo object corresponds to a field of the Entity object whose value was changed since the most recent action was initiated. If no fields were updated, this method returns an Empty Variant. For Perl, a FieldInfos Object collection is returned.
Examples
VBScript
DIM CQFieldInfo
DIM CQFieldInfos
DIM sessionObj
set sessionObj = GetSession
' Report any fields that changed during the recent action
CQFieldInfos = CQEntity.GetFieldsUpdatedThisEntireAction
' Get the list of field names returned by this function ...
For Each CQFieldInfo In CQFieldInfos
' Report the fields to the user
sessionObj.OutputDebugString "Field " & CQFieldInfo.GetName & " changed."
Next
Perl
my(@ActualUpdatedFields);
my($CQFieldInfos);
my($CQEntity);
# Report any fields that changed during the recent action
$CQFieldInfos = $CQEntity->GetFieldsUpdatedThisEntireAction();
# Get the list of field names returned by this function ...
@ActualUpdatedFields = &GetFieldNames($CQFieldInfos);