Human Capital Management Apex API Developer Reference

vanahcm.ChangedSObjectFilteringDataSource

global class ChangedSObjectFilteringDataSource extends fferpcore.DataSource

Wrap a DataSource such that result rows are filtered to only include rows with changes in the requested fields. Filtering is only performed at the immediate object. Relationships are not followed, so a change to a related object's field is not detected.

Methods

ChangedSObjectFilteringDataSource

global ChangedSObjectFilteringDataSource(fferpcore.DataSource subject, Map<Id, SObject> prior, SObjectField keyField)

requireField

global override void requireField(SObjectField field)

Ask that this data source to query the given field. This method will be called by the Declarative Publish framework or by custom message Nodes during the preparation phase of declarative message building.

Input Parameters

Name Type Description
field SObjectField A field to be included in the query.

Sample Code

//Note: This sample code is for demonstration purposes only. It is not intended for
//use in a production environment, is not guaranteed against defects or errors, and
//is in no way optimized or streamlined.

You need to provide some sample code

requireLookupField

global override fferpcore.DataSource requireLookupField(SObjectField field)

Ask that this data source to query the given lookup. This method will be called by the Declarative Publish framework or by custom message Nodes during the preparation phase of declarative message building.

Input Parameters

Name Type Description
field SObjectField The field representing the lookup

Return Value

A DataSource representing the target of the look up.

Sample Code

//Note: This sample code is for demonstration purposes only. It is not intended for
//use in a production environment, is not guaranteed against defects or errors, and
//is in no way optimized or streamlined.

You need to provide some sample code

requireOneToManyField

global override fferpcore.DataSource requireOneToManyField(BackReference myBackReference)

Ask that this data source to query the given Master/Detail relationship. This method will be called by the Declarative Publish framework or by custom message Nodes during the preparation phase of declarative message building.

Input Parameters

Name Type Description
myBackReference BackReference A description of the relationship as viewed from the defining "Many" Detail end.

Return Value

A DataSource representing the target of the lookup.

Sample Code

//Note: This sample code is for demonstration purposes only. It is not intended for
//use in a production environment, is not guaranteed against defects or errors, and
//is in no way optimized or streamlined.

You need to provide some sample code

runQuery

global override Iterator<fferpcore.DataSource.Row> runQuery()

Load the data. This must only be performed on the top level DataSource, not any of the DataSources returned by the requireLookupField or requireOneToManyField methods. This method will be called by the Declarative Publish framework.

Return Value

An iterator of fferpcore.DataSource.Row objects containing the required data.

Sample Code

//Note: This sample code is for demonstration purposes only. It is not intended for
//use in a production environment, is not guaranteed against defects or errors, and
//is in no way optimized or streamlined.

You need to provide some sample code
© Copyright 2009–2018 FinancialForce.com, inc. Confidential – all rights reserved. Various trademarks held by their respective owners.