Page 1 of 1

Changing value in a Huge dataset

PostPosted: Fri Jul 10, 2015 6:25 pm
by samb01
Hello,

i have a big dataset i can't edit (i have the message "browse substitute").

This is the dsorg :

Dsorg  Recfm  Lrecl  Blksz
--------------------------
 PS    VB     27994  27998



i would like to change a value without editing it because i can't.

So i used this JCL :

//SCANREP   EXEC PGM=IKJEFT01                                           
//SYSTSPRT  DD SYSOUT=*                                                 
//SYSTSIN   DD *                                                       
EDIT 'FCGTD.GCFTT1' DATA NONUM                             
CHANGE * 999999  'BHTRE ERE','Renteuee  Vgère Diffé' ALL           
CHANGE * 999999  'VGNT','Compte ge bftete Euros' ALL   
END SAVE                                                               



But it doesn't work, i have this message :

READY
EDIT 'FCGTD.GCFTT1' DATA NONUM
IKJ52336I 27994 INVALID LINE VALUE FOR DATA DATA SET
READY



Is it possible to do it by dfsort ?

Thank's for your help.

Re: Changing value in a Huge dataset

PostPosted: Fri Jul 10, 2015 7:07 pm
by Magesh23586
You can use FINDREP to replace a string by another in DFSORT.

Regards,
Magesh

Re: Changing value in a Huge dataset

PostPosted: Sat Jul 11, 2015 12:51 pm
by steve-myers
I think, though I'm not certain, the IKJ52336I 27994 INVALID LINE VALUE FOR DATA DATA SET message is telling you TSO EDIT cannot process the data set because its LRECL is too large.

Re: Changing value in a Huge dataset

PostPosted: Sat Jul 11, 2015 2:17 pm
by BillyBoyo
steve-myers is correct, although looking the message up gives little further information.

Why have you got DATA in your EDIT command, and what does it do for you (other than disallow the LRECL of your data set)?

Re: Changing value in a Huge dataset

PostPosted: Sat Jul 11, 2015 8:22 pm
by steve-myers
BillyBoyo wrote:steve-myers is correct, although looking the message up gives little further information.

Why have you got DATA in your EDIT command, and what does it do for you (other than disallow the LRECL of your data set)?
The DATA in the command line specifies the data type of the data set. In terms of the TSO command line, it's a keyword, but it's required by EDIT. The DATA keyword implies the data set contains generic data, not some language specific data like PLI, FORT, or ASM. It also implies a data set name suffix when the data set name is not fully qualified.

E X DATA implies you are using data set userid.X.DATA

There's a lot of junk hanging around from early TSO that has either disappeared or never really got implemented. One of these ideas was language syntax checkers that could be used within EDIT. There was some activity in this area in the 1970s, but it has all disappeared, usually because it was too clumsy or too limited. After SPF appeared there was no real interest in enhancing the command line portion of TSO. About the only language oriented syntax checker that has survived are the JCL check products from at least 2 vendors if my memory is correct, and these operate with ISPF, not the command line.

As billy-boyo says, the DATA keyword limits the record size to 255. There is a table in TSO/E Command Reference (which I just discovered) that discusses this better than I can here, but you'll notice that all these data set types limit you to 255 bytes or less. This appears to be a generic restriction in EDIT.