LSTRLOB parameter: Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
Line 14: Line 14:
</dl>
</dl>
==Description==
==Description==
When LSTRLOB=1, User Language programs can use normal field reference syntax for Lob fields.  Otherwise (LSTRLOB=0), access to Lob fields must use the <var>Buffer</var> syntax. LSTRLOB is generally available as of Model 204 V7R5.
When <var>LSTRLOB</var> is 1, [[SOUL]] programs can use normal field reference syntax for Lob fields.  Otherwise (LSTRLOB=0), access to Lob fields must use the <var>Buffer</var> syntax. <var>LSTRLOB</var> is generally available as of Model 204 V7.5.


The default value of LSTRLOB is 1.
The default value of <var>LSTRLOB</var> is 1.


The "normal field reference syntax" applies to all uses of a <var>BLOB</var> or <var>CLOB</var> field name <b>except</b> for the <var>Note</var> statement.
The "normal field reference syntax" applies to all uses of a <var>BLOB</var> or <var>CLOB</var> field name <b>except</b> for the <var>[[Record loops#Note statement|Note]]</var> statement.


The types of allowed "normal field references" are shown in the following table, which assumes that field <code>LOB</code> has the <var>BLOB</var> or <var>CLOB</var> attribute:
The types of allowed "normal field references" are shown in the following table, which assumes that field <code>LOB</code> has the <var>BLOB</var> or <var>CLOB</var> attribute:

Revision as of 22:30, 21 July 2014

Treat LOBs as Longstrings

Summary

Default value
1
Parameter type
System
Where set
System manager
Related products
All
Introduced
Sirius Mods Version 7.7

Description

When LSTRLOB is 1, SOUL programs can use normal field reference syntax for Lob fields. Otherwise (LSTRLOB=0), access to Lob fields must use the Buffer syntax. LSTRLOB is generally available as of Model 204 V7.5.

The default value of LSTRLOB is 1.

The "normal field reference syntax" applies to all uses of a BLOB or CLOB field name except for the Note statement.

The types of allowed "normal field references" are shown in the following table, which assumes that field LOB has the BLOB or CLOB attribute:

Type of referenceExamples
Used in expression

%s = LOB %t = LOB:substring(%pos, %len) %xmNode:addElement('info', LOB)

Print statement

print 'Value is:' and LOB

Field updates

%s1 = 'x':left(3000, pad='x')
store record
LOB = %s1
end store

add LOB = %s2

Note: The normal field reference syntax in the Store Record and Add statements does not have a provision for the Reserve clause which is available on the Buffer syntax. This is not an issue for a FILEORG X'100' file, because the Reserve clause is ignored in those files (Lob pages are chained rather than allocated contiguously).

change LOB to %s3

Note: The only type of Change statement allowed for a field with the MINLOBE attribute is this form, using the normal field reference syntax.