AndRecordsetNew (Recordset function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
 
m (1 revision)
(No difference)

Revision as of 19:30, 12 April 2011

<section begin=dpl_desc/><section end=dpl_desc/>

AndRecordsetNew is a member of the Recordset class.

AndRecordsetNew “ANDs” a Recordset object's records with the records in an another Recordset object and produces a new Recordset object that contains the records in both Recordsets. It does the same processing as AndRecordset, but it produces a new output Recordset and leaves the two input Recordsets unmodified.

AndRecordset syntax

%target = %rs:AndRecordset(recordsetObject)

Syntax Terms

%target The Recordset object variable created by this method.
%rs A non-null Recordset object, which must have the same file context as %target.
recordsetObject A non-null Recordset object, which must have the same file context as %target.

Usage Notes

  • The AndRecordsetNew method is only available in Sirius Mods 7.1 and later.
  • The LockStrength and LoopLockStrength of the output Recordset object is the same as that of the method object (%rs).
  • If the Recordset object argument of AndRecordsetNew is null, the request is cancelled.
  • Since AndRecordsetNew never adds records to a Recordset, there are no lock strength requirements for either the method or input object.
  • The AndRecordsetNew method can be thought of as a Recordset AND operation; AddRecordsetNew can be thought of as an OR; and RemoveRecordsetNew as a NOT. No basic method is the analog of an exclusive OR operation, but you can use the basic methods to achieve such an OR, as shown in "Examples".

Example

In the following example, the result of one Find is used to limit the result of another Find. Of course, identical processing could be better done with an And in a Find statement.

%review is object recordSet in file orders %bigCust is object recordSet in file orders %bigReview is object recordSet in file orders find records to %review status = 'REVIEW' end find find records to %bigCust company ='TOXICO' end find %bigReview = %review:andRecordsetNew(%bigCust)