New (RecordsetCursor constructor): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (Created page with "<span class="pageSubtitle"><section begin=dpl_desc/><section end=dpl_desc/></span> New constructor <p> <var>New</var> is a member of the <var...")
 
mNo edit summary
Line 11: Line 11:
Available as of <var class="product">Sirius Mods</var> version 7.6, the <var>New</var> method is an alternative
Available as of <var class="product">Sirius Mods</var> version 7.6, the <var>New</var> method is an alternative
to using the (<var>Recordset</var> or <var>SortedRecordset</var>) <var>Cursor</var> constructor, as described
to using the (<var>Recordset</var> or <var>SortedRecordset</var>) <var>Cursor</var> constructor, as described
in [[RecordsetCursor#Declaration and instantiation|"Declaration and instantiation"]].
in [[RecordsetCursor class#Declaration and instantiation|"Declaration and instantiation"]].
==Syntax==
==Syntax==
<p class="syntax">%rscursor = [class:]New( %recset [,&nbsp;LoopLockStrength=ls] )
<p class="syntax">%rscursor = [class:]New( %recset [,&nbsp;LoopLockStrength=ls] )
Line 28: Line 28:
<tr><th><var>LoopLockStrength</var></th>
<tr><th><var>LoopLockStrength</var></th>
<td>This optional, name required, parameter is a <var>LockStrength</var> enumeration setting the minimum lock strength for a record in a <var>For Record At</var> loop on a <var>RecordsetCursor</var> object. Options are <var>None</var> (default), <var>Share</var>, or <var>Exclusive</var>, further described in <var>[[CurrentRecord (RecordsetCursor function)|CurrentRecord]]</var>.
<td>This optional, name required, parameter is a <var>LockStrength</var> enumeration setting the minimum lock strength for a record in a <var>For Record At</var> loop on a <var>RecordsetCursor</var> object. Options are <var>None</var> (default), <var>Share</var>, or <var>Exclusive</var>, further described in <var>[[CurrentRecord (RecordsetCursor function)|CurrentRecord]]</var>.
For more information about loop lock strength, see [[RecordsetCursor#LoopLockStrength for RecordsetCursors|"LoopLockStrength for RecordsetCursors"]]. '''Note:''' This parameter is only valid if ''%recset'' is a <var>Recordset</var> object.
For more information about loop lock strength, see [[RecordsetCursor class#LoopLockStrength for RecordsetCursors|"LoopLockStrength for RecordsetCursors"]]. <br>'''Note:''' This parameter is only valid if ''%recset'' is a <var>Recordset</var> object.


</td></tr></table>
</td></tr></table>

Revision as of 21:38, 26 April 2011

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

New is a member of the RecordsetCursor class.

This shared function instantiates a RecordsetCursor object. The method requires a Recordset or SortedRecordset object parameter, and it may have a LoopLockStrength.

Available as of Sirius Mods version 7.6, the New method is an alternative to using the (Recordset or SortedRecordset) Cursor constructor, as described in "Declaration and instantiation".

Syntax

%rscursor = [class:]New( %recset [, LoopLockStrength=ls] )

Syntax terms

%rscursor A declared RecordsetCursor object including its file/group context.
class Either a parenthesized class name, as in %(RecordsetCursor in file bar), or a non-parenthesized variable in the class, as in %rscursor.
%recset A required Recordset or SortedRecordset object.
LoopLockStrength This optional, name required, parameter is a LockStrength enumeration setting the minimum lock strength for a record in a For Record At loop on a RecordsetCursor object. Options are None (default), Share, or Exclusive, further described in CurrentRecord.

For more information about loop lock strength, see "LoopLockStrength for RecordsetCursors".
Note: This parameter is only valid if %recset is a Recordset object.

Usage Notes

  • If %recset is empty, New returns a RecordsetCursor object with the state Empty. This is different from the Cursor methods of instantiation, which return a null if %recset is empty.
  • When a RecordsetCursor is instantiated, it is automatically positioned on the first record in the set (state=HasRecord).
  • You can have as many cursors as you want for a RecordsetCursor.
  • If you are creating an extension class of the RecordsetCursor class, you can use New in the Construct statement in the extension class:

    class myrecSetCurse extends RecordsetCursor - in file test inherit ... constructor new construct %(RecordsetCursor):new(%sortedRecset) ... end constructor ... end class

    The Cursor method constructor cannot be used for this purpose.