A Package With Service Type Comparison
The Has Gas / No Electricity Package has the following eligibility rules:
Customer has gas service
Customer doesn't have electricity service
These rules require only one eligibility group on the package. It would looks as follows:
Group
No.
Group Description
If Group is TRUE
If Group is FALSE
1
Has Gas, Doesn't Have Electricity
Eligible
Ineligible
The following criteria will be required for this group:
Group 1: Has Gas, Doesn't Have Electricity
Seq
Field to Compare
Comparison Method
If TRUE
If FALSE
If Insufficient Data
10
Algorithm: check if customer has gas service
= TRUE
Check next condition
Group is false
Group is false
20
Algorithm: check if customer has electric service
= TRUE
Group is false
Group is true
Group is false
Both criteria are similar - they check if the customer has a given type of service and act accordingly. We used a "field to compare" algorithm to pull this off, but this algorithm is a bit counter intuitive (but understanding it will provide you with another way to implement complex eligibility criteria):
Field to Compare. We chose a "field to compare" algorithm that checks if an account has service agreements that belong to a given set of service types. It returns a value of TRUE if the customer has an active service agreement that matches one of the service types in the algorithm. In our example, the "check if customer has gas service" algorithm returns a value of TRUE if the customer has at least one active service agreement whose SA type references the gas service type. The "check if customer has electric service" algorithm is almost identical, only the service type differs. Refer to PKEL-SVCTYP for an example of this type of algorithm.
Comparison Method. We simply compare the value returned by the algorithm to TRUE and indicate the appropriate response.
Note: 
Bottom line. The "field to compare" algorithm isn't actually returning a specific field's value. Rather, it's returning a value of TRUE or FALS (this is not a misspelling). This value is, in turn, compared by the "comparison method" and the group is set to true, false or check next accordingly.