shamsundar_mk
New User
Joined: 18 May 2007 Posts: 30 Location: CHENNAI
|
|
|
|
Hi,
i have an query.. please help me..
there are certain block as
xxx-726-00 - 12345678... (100 characters)
xxx-726-01 - 23456789..
.
.
.
xxx-726-06 -> 1200
.
.
xxx-726-0A -> 3643567457..
for each xxx-726-00 there are 10 sub-blocks.. with 10 character
as follows.
xxx-726-00-01->123456790
.
xxx-726-06-01->1200
.
.
.
xxx-726-10-01->231465346 (block value(hexa decimal) has converted into decimal in sub-blocks )
i have an jcl using fileaid..
i want to update the record xxx-726-06 -1200. if xxx-726-06 =1200 then xxx-726-0A -> 3643567457.. should be updated by xxx-726-10-01 -> 8001000000. then the remaining subblocks such as xxx-726-10-02,xxx-726-10-03,xxx-726-10-04 are changed to 000000000.
please help me...
thanks.. |
|
murmohk1
Senior Member
Joined: 29 Jun 2006 Posts: 1436 Location: Bangalore,India
|
|
|
|
Shanmuga Sundaram,
Could you please IP data properly (Use CODE tag to get the alignment). And also explain your problem clearly (req may be clear to you, but not to us).
Also let us know, you wanted to use FA only or someother utility is OK. |
|
shamsundar_mk
New User
Joined: 18 May 2007 Posts: 30 Location: CHENNAI
|
|
|
|
Here is the input record .
Each block can hold up to max of 50 bytes(100 characters), where 00,01,02,03,04,05,06,07,08,09,0A===> block number.
CFG_726_WB_00 123456789012345678901234567890
CFG_726_WB_01 12324567500000000000
CFG_726_WB_02 25748749590079997997
CFG_726_WB_03 65758697054345756886
CFG_726_WB_04 12672589638907490670
CFG_726_WB_05 78897896389690069906
CFG_726_WB_06 1200
CFG_726_WB_07 12768469283679237590
CFG_726_WB_08 12769123472875089325
CFG_726_WB_09 1234567890
CFG_726_WB_0A 1234567890
Requirment:
If CFG_726_WB_06 data equals 1200, then CFG_726_WB_0A should be changed to 8001000000
Fileaid For the Requirment:
//PRGSTEPA EXEC PGM=FILEAID
//SYSPRINT DD SYSOUT=*
//SYSLIST DD SYSOUT=*
//SYSTOTAL DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//DD01 DD DSN=XXXXXXX.TEST.XXX.INPUT.DATA,
// DISP=SHR
//DD01O DD DSN=XXXXXXX.XXX.OUT1,
// DISP=(,CATLG,DELETE),
// DCB=(RECFM=FB,LRECL=264,BLKSIZE=27984),
// SPACE=(CYL,(10,10),RLSE)
//SYSIN DD *
$$DD01 COPYALL IF=(10,EQ,C'8'),AND=(11,EQ,C'L'),
AND=(118,EQ,C'CFG_726_WB_06'),AND=(148,EQ,C'1200'),
IF=(118,EQ,C'CFG_726_WB_0A'),REPL=(148,C'8001000000')
/*
Where CFG_726_WB_06 begins at the position 118 and its data '1200' begins at position 148,
CFG_726_WB_0A begins at the position 118 and its begins at position 148
When I submitted the job in the job was excuited with MAX=000 but data has not changed between
CFG_726_WB_06 and CFG_726_WB_0A
Please let me know whether the sysyin that I wrote was correct for File aid ... thanks... |
|