CA IDMS PUT SCRATCH with RECORD ID fails with error:
DC027001 D003 PROGRAM CHECK IN ADSOMAIN AT OFFSET 1A4A8
PUT SCRATCH AREA ID 'name' FROM nnnnnnn
RECORD ID record-id REPLACE.
The dumps shows there is a S0C9 in ADSOCMIS +2AD8.
Release : 18.5, 19.0
Component : CA ADS
The ADS code is doing a PUT SCRATCH for a record id in a field which is defined as COMP-3 PIC S9(12).
The record id is stored by CA IDMS as a fullword so the largest value for a scratch record id is x'7FFFFFFF' which is 2,147,483,647.
The field contains a value of 9,000,001,002 which is too big to fit in a fullword so the ADS code gets a S0C9 trying to convert that value to binary.
This field cannot be used as a scratch record it unless it is restricted to a maximum value of 2,147,483,647.
Note that the working storage field used to hold the scratch record id can be any numeric datafield, but its value must not exceed 2,147,483,647.