AWE Workflow Application Class Criteria

I had a little trouble creating my first App Class criteria so I thought I would share some tips on how to write an App Class for use as AWE criteria. Here are the primary secrets:

  • Your App Class must extend EOAW_CRITERIA:DEFINITION:CriteriaBase (PTAF_CRITERIA:DEFINITION:CriteriaBase for 9.0 apps).
  • Your constructor must take a Record definition as a parameter.
  • Your constructor must set %Super by passing the criteria's ID. The following example uses the criteria ID value specified in the parameter record.
  • Your App Class must implement the Check(&bindRec_ As Record) Returns boolean method.

Here is a sample template:

import EOAW_CRITERIA:DEFINITION:CriteriaBase;

class MyCriteria extends EOAW_CRITERIA:DEFINITION:CriteriaBase
method MyCriteria(&REC_ As Record);
method Check(&bindRec_ As Record) Returns boolean;
end-class;

method MyCriteria
/+ &REC_ as Record +/
%Super = create EOAW_CRITERIA:DEFINITION:CriteriaBase(&REC_.EOAWCRTA_ID.Value);
end-method;

method Check
/+ &bindRec_ as Record +/
/+ Returns Boolean +/
/+ Extends/implements EOAW_CRITERIA:DEFINITION:CriteriaBase.Check +/
REM ** TODO evaluate something here;
Return True;
end-method;