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

Craig A. Berry craigberry at nospam.mac.com
Tue May 29 21:32:02 EDT 2018


On 5/29/18 6:54 PM, Johnny Billquist wrote:
> On 2018-05-30 01:47, Arne Vajhøj wrote:
>> On 5/29/2018 7:41 PM, Simon Clubley wrote:
>>> 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 ?
>>
>> Yes.
> 
> Got it now. Yes, that information will not be in there. You need to have 
> all your fields defined as keys in order to have the information there.

Or use CDD.



More information about the Info-vax mailing list