Address values not updated on dynamically loading ASM table



Support for OS/VS COBOL, VS COBOL II, COBOL for OS/390 & VM and Enterprise COBOL for z/OS

Address values not updated on dynamically loading ASM table

Postby pranav283 » Fri Nov 25, 2016 1:21 pm

Hi,

I have a requirement where I have to load an Assembler table (CSLVRNS) from a COBOL CICS program (X3O99203) and I have to load it dynamically. It is because the table contains our project release information and we want the info to be picked up into the copybook layout CSWVRNS (present in Linkage Section) of X3099203 when it loads the CSLVRNS table, without having to recompile the main program X3099203 at the time of release.
Here it is what I am supposed to do:

LOAD THE VERSION LEVEL AND RELEASE DATE
                                       
   EXEC CICS                          
      LOAD PROGRAM(WS-CSLVRNS-PGM)    
      ENTRY(ADDRESS OF CSWVRNS)        
      NOHANDLE                        
   END-EXEC.                          


FYI, value of WS-CSLVRNS-PGM is CSLVRNS only.
However, when I run this code, I only see the old values in CSWVRNS, even when I changed the contents in CSLVRNS and pick both programs from the latest and updated load library.
I am compiling the ASM module in batch mode. Not sure whether I should do in online mode or not as I don't have any idea about Assemblers.

I suspect that the it program X3099203 is only picking old values from whenever it was last ran and it is not reflecting the current value from CSLVRNS.
pranav283
 
Posts: 47
Joined: Sat Aug 30, 2014 3:52 pm
Has thanked: 2 times
Been thanked: 0 time

Re: Address values not updated on dynamically loading ASM ta

Postby enrico-sorichetti » Fri Nov 25, 2016 3:08 pm

You will need to NEWCOPY the ASM table
cheers
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort
enrico-sorichetti
Global moderator
 
Posts: 2994
Joined: Fri Apr 18, 2008 11:25 pm
Has thanked: 0 time
Been thanked: 164 times

Re: Address values not updated on dynamically loading ASM ta

Postby pranav283 » Fri Nov 25, 2016 3:40 pm

I do the newcopy everytime I make a change to the ASM table.
However, as of now I was compiling the ASM table in batch mode. But, when I compiled it in online mode and issued a NEWCOPY, it gave positive results.

But the problem crept in the batch programs. All the batch programs that have been making calls to this ASM table, they are now reflecting the wrong values.

CALL 'CSLVRNS' USING CSWVRNS


To be noted that they were giving good results when ASM was compiled in batch mode.
Reason is -> we have the same load libraries from where the batch and online programs would be picked up. Not sure how to make the distinction in libraries.
pranav283
 
Posts: 47
Joined: Sat Aug 30, 2014 3:52 pm
Has thanked: 2 times
Been thanked: 0 time

Re: Address values not updated on dynamically loading ASM ta

Postby Robert Sample » Fri Nov 25, 2016 9:21 pm

On the CICS side, is the assembler program defined to CICS with RELOAD=YES? If so, the ONLY way to get the program out of memory to use the changed values is to issue a FREEMAIN.
Robert Sample
Global moderator
 
Posts: 3719
Joined: Sat Dec 19, 2009 8:32 pm
Location: Dubuque, Iowa, USA
Has thanked: 1 time
Been thanked: 279 times

Re: Address values not updated on dynamically loading ASM ta

Postby Terry Heinze » Fri Nov 25, 2016 9:57 pm

If you are compiling your COBOL program with NODYNAM in effect, try DYNAM.
.... Terry
Terry Heinze
 
Posts: 239
Joined: Wed Dec 04, 2013 11:08 pm
Location: Richfield, MN, USA
Has thanked: 12 times
Been thanked: 11 times


Return to IBM Cobol

 


  • Related topics
    Replies
    Views
    Last post