IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

S0C7 while expanding my IMS segment length


IBM Mainframe Forums -> IMS DB/DC
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
abdulrafi

Active User


Joined: 14 Sep 2009
Posts: 184
Location: Coimbatore

PostPosted: Mon Mar 01, 2010 2:16 pm
Reply with quote

Hi,

Recently i had a requirement to change my IMS segment length and my dbd has fixed (230) and variable length(455) like this one,

A07SFIRE SEGM NAME=A07SFIRE,PARENT=((A07STDSQ,SNGL)),BYTES=
(455,230) ,PTR=T

It had already 220,445. So when i expanded my copybook and used the new one in my program i am getting junk values for the field which i have not changed it.
For eg:
A pic x(01).
C OCCURS 0 TO 75 TIMES depending on D
B PIC S9(03) COMP-3.
here B is the new variable introduced. But i am getting abend for A variable.

Please help me to see if i am going wrong somewhere. icon_sad.gif
Back to top
View user's profile Send private message
Sandy Zimmer

Active Member


Joined: 13 Jun 2007
Posts: 826
Location: Wilmington, DE

PostPosted: Mon Mar 01, 2010 6:42 pm
Reply with quote

Just asking - are you using a database that was THERE BEFORE you changed the DBD?
Back to top
View user's profile Send private message
abdulrafi

Active User


Joined: 14 Sep 2009
Posts: 184
Location: Coimbatore

PostPosted: Tue Mar 02, 2010 4:26 pm
Reply with quote

Yes. I am changing a particular segment length in an existing database.
Back to top
View user's profile Send private message
Sandy Zimmer

Active Member


Joined: 13 Jun 2007
Posts: 826
Location: Wilmington, DE

PostPosted: Tue Mar 02, 2010 4:45 pm
Reply with quote

Did you "unload" and "reload" the PHYSICAL database? Did you initialize the fields that are in that different location?

Quote:
So when i expanded my copybook and used the new one in my program i am getting junk values for the field which i have not changed it.


If the fields that you are accessing are in a different phycial location, you will get junk.
Back to top
View user's profile Send private message
Sandy Zimmer

Active Member


Joined: 13 Jun 2007
Posts: 826
Location: Wilmington, DE

PostPosted: Wed Mar 03, 2010 3:29 am
Reply with quote

Think of it this way - relative position 1 is the beginning of the first field in your database. I am ASSUMING that you are increasing the length of this segment because you need more occurances for history purposes.

So, your current segment is:
Quote:
A07SFIRE SEGM NAME=A07SFIRE,PARENT=((A07STDSQ,SNGL)),BYTES=
(455,230) ,PTR=T


Your prior segment was:
Quote:
A07SFIRE SEGM NAME=A07SFIRE,PARENT=((A07STDSQ,SNGL)),BYTES=
(445,220) ,PTR=T


If your minimum length was 220 BEFORE and your NEW segment length is 230 - that is the first of your problems.

You need to show us the before DBD and the after DBD - your prior copybook and your new copybook. Remember: DISPACEMENT. Depending on your answer, depends on how you will proceed.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> IMS DB/DC

 


Similar Topics
Topic Forum Replies
No new posts Store the data for fixed length COBOL Programming 1
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts PARSE Syntax for not fix length word ... JCL & VSAM 7
No new posts VB to VB copy - Full length reached SYNCSORT 8
No new posts parsing variable length/position data... DFSORT/ICETOOL 5
Search our Forums:

Back to Top