Test for Existence by Retieving a Single Row
When you need to check if at least one row matches a particular criteria, for best performance select only the primary key field and just the first row of the result. If it's not null, then the existence test succeeds.
      Object Function: 
        
          Boolean employeeExistsInDepartmentWithJob( Long
      department, String jobCode)
        
      
    
def employees = newView('StaffMember')
addBindVariable(employees,'Job','Text')
addBindVariable(employees,'Dept','Number')
// Make sure that either JobId or DepartmentId is indexed!
employees.appendViewCriteria('JobId = :Job and DepartmentId = :Dept')
// Retrieve only the primary key field
selectAttributesBeforeQuery(employees,['EmployeeId'])
setBindVariable(employees,'Job',jobCode)
setBindVariable(employees,'Dept',department)
employees.executeQuery()
// Retrieve just the first row!
return employees.first() != null
  Using the queryMap() or queryRow() helper functions described
   in Simplifying Business Logic Queries you can perform
   the same optimized query in the example above with fewer lines of code like this:
      Object Function: 
  
        
          Boolean employeeExistsInDepartmentWithJob( Long
      department, String
   jobCode)
        
      
      // Retrieve only the primary key field and just the first row
return adf.util.queryRow(select:'EmployeeId',
                           from: 'StaffMember',
                          where: 'JobId = :Job and DepartmentId = :Dept',
                          binds:[Job:jobCode,Dept:department]) != null
    With the 
 employeeExistsInDepartmentWithJob() helper function in place, our
   business logic in the StaffMember object can use it like
   this:if (employeeExistsInDepartmentWithJob(50,'SH_CLERK')) { /* etc. */ }