New (Record constructor): Difference between revisions
mNo edit summary |
mNo edit summary |
||
Line 8: | Line 8: | ||
<tr><th>%groupRecord</th> | <tr><th>%groupRecord</th> | ||
<td>A declared <var>Record</var> object variable in group context. | <td>A declared <var>Record</var> object variable in group context. | ||
</td></tr> | |||
<tr><th><var>%(Record)</var></th> | |||
<td>The optional class name in parentheses denotes a <var>[[Notation conventions for methods#Constructors|Constructor]]</var>. See [[#Usage notes|"Usage notes"]], below, for more information about invoking a <var>Recordset</var> <var>Constructor</var>. | |||
</td></tr> | </td></tr> | ||
<tr><th>number</th> | <tr><th>number</th> | ||
Line 25: | Line 28: | ||
==Usage notes== | ==Usage notes== | ||
<ul> | <ul> | ||
<li><var>New</var> | <li>As described in [[Object variables#Using New or other Constructors|"Using New or other Constructors"]], <var>New</var> can be invoked with no object, with an explicit class name, or with an object variable in the class, even if that object is <var>Null</var>: | ||
explicit class name, or with an object variable, even if that object is | <p class="code">%rec = new(share) | ||
<p class="code"> %rec = new(share) | |||
%rec = %(Record in file sirLocal):new(exclusive) | |||
%rec = %rec:new(none) | |||
</p> | </p> | ||
'''Note:''' | |||
As shown above, when explicitly indicating the | |||
class, both the class name and the file context must be | |||
specified just as they are on the <var>Record</var> variable's declaration. | |||
<li>The <var>[[LockStrength (Record function)|LockStrength]]</var> returns the locking | <li>The <var>[[LockStrength (Record function)|LockStrength]]</var> returns the locking | ||
level of a <var>Record</var> object. | level of a <var>Record</var> object. |
Revision as of 01:18, 27 July 2011
Create a new Record object (Record class)
This shared function has one required parameter if in file context, two required parameters if in group context, and two optional parameters in either context. The parameters are applied by the New constructor to the newly instantiated object.
Syntax
%fileRecord = [%(Record In filOrGrp name):]New( number, [lockStrength], - [LoopLockStrength= lockStrength]) Throws RecordLockingConflict
%groupRecord = [%(Record In filOrGrp name):]New( number, string, - [lockStrength], - [LoopLockStrength= lockStrength]) Throws RecordLockingConflict
Syntax terms
%groupRecord | A declared Record object variable in group context. |
---|---|
%(Record) | The optional class name in parentheses denotes a Constructor. See "Usage notes", below, for more information about invoking a Recordset Constructor. |
number | The number of the record to which the instantiated Record object will refer. |
string | For group context, the name of the file that contains the record that the instantiated Record object will reference. |
lockstrength | The value of a Lockstrength enumeration: None, Share, or Exclusive. These correspond to standard Model 204 record-locking levels, as described below. The default lock strength of the new record object is Share, matching the locking behavior of a User Language For Record Number statement.
|
LoopLockStrength | The lock strength to be used for For Record loops on the Record object. This is an optional, name required, parameter, and it defaults to None. See "LoopLockStrength for Records". This parameter is available under Sirius Mods 7.0 and later. |
Usage notes
- As described in "Using New or other Constructors", New can be invoked with no object, with an explicit class name, or with an object variable in the class, even if that object is Null:
%rec = new(share) %rec = %(Record in file sirLocal):new(exclusive) %rec = %rec:new(none)
Note: As shown above, when explicitly indicating the class, both the class name and the file context must be specified just as they are on the Record variable's declaration.
- The LockStrength returns the locking level of a Record object.
- For more information about constructors, see "Creating object instances"
- For more information about using New, see "Using New to instantiate a Record object".