[Info-vax] The best VMS features, was: Re: openvms renaming file

Simon Clubley clubley at remove_me.eisner.decus.org-Earth.UFP
Tue May 29 19:41:35 EDT 2018


On 2018-05-29, Johnny Billquist <bqt at softjar.se> wrote:
> On 2018-05-29 01:16, Arne Vajhøj wrote:
>> On 5/28/2018 4:08 PM, Johnny Billquist wrote:
>>> Applications could be clever enough to actually refer to fields based 
>>> on names, instead of just using fixed, known, chunks of the record. 
>>> RMS do have names for the fields, which you can set and read.
>> 
>> Both keys and values or only keys?
>> 
>> I suspect key info is in XABKEY, but where do you find value info?
>
> What do you mean by value info? The values are in the individual records 
> obviously. And the key info will tell you which bytes in the record that 
> contains the value. Or are you talking about the type of the value? 
> Which also also stored with they key info.
>
> Not entirely sure what you are thinking of....
>

_If_ I understand Arne correctly, he is asking the following:

Consider a C struct which is mapped to a RMS record:

struct record_type
	{
	unsigned char primary_key[10];	/* This is the ISAM primary key */
	unsigned char value1[5];	/* Data value 1 */
	unsigned char value2[7];	/* Data value 2 */
	unsigned char value3[10];	/* Data value 3 and an alternate key */
	};

You can find "primary_key" and "value3" in the key information.

Where is value1 and value2 described in the RMS data structures ?
value1 and value2 are data fields only and do not have keys on them.

IOW, what happens if value1 is extended from 5 bytes to 8 bytes ?

This moves the start position of value2 to the right by 3 bytes.

What field(s) in the RMS data structures can the application look
at to find the new offset to the start of value2 ?

Simon.

-- 
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world



More information about the Info-vax mailing list