The entitySelection.and( ) method combines the entity selection with an entity or entitySelection parameter using the logical AND operator; it returns a new, unordered entity selection that contains only the entities that are referenced in both the entity selection and the parameter.
- If you pass entity as parameter, you combine this entity with the entity selection. If the entity belongs to the entity selection, a new entity selection containing only the entity is returned. Otherwise, an empty entity selection is returned.
- If you pass entitySelection as parameter, you combine both entity selections. A new entity selection that contains only the entities that are referenced in both selections is returned. If there is no intersecting entity, an empty entity selection is returned.
Note: You can compare ordered and/or unordered entity selections. The resulting selection is always unordered. For more information, please refer to the Ordered vs Unordered entity selections paragraph in the 4D Developer Guide.
If the original entity selection or the entitySelection parameter is empty, or if the entity is Null, an empty entity selection is returned.
If the original entity selection and the parameter are not related to the same dataClass, an error is raised.
C_OBJECT($employees1;$employee;$result)
$employees1:=ds.Employee.query("lastName = :1";"H@")
$employee:=ds.Employee.get(710)
$result:=$employees1.and($employee)
We want to have a selection of employees named "Jones" who live in New York:
C_OBJECT($sel1;$sel2;$sel3)
$sel1:=ds.Employee.query("name =:1";"Jones")
$sel2:=ds.Employee.query("city=:1";"New York")
$sel3:=$sel1.and($sel2)