[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