Portal | Manuals | References | Downloads | Info | Programs | JCLs | Mainframe wiki | Quick Ref
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Profile Log in to check your private messages Log in
 
Difference between return,start,call,link !!

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CICS
View previous topic :: :: View next topic  
Author Message
shyansh_hercules
Warnings : 2

New User


Joined: 12 Oct 2008
Posts: 4
Location: Pune

PostPosted: Fri Oct 17, 2008 2:45 pm    Post subject: Difference between return,start,call,link !!
Reply with quote

Hi...
I want to know what is the difference between exec cics return and start...also between return and call (level wise)....

We can also use cobol call statements for passing data between two programs...then what is the difference between passing data using cobol call and commarea....plz explain me in terms of memory storage....

and the last query...as per my knowledge commarea is a block of memory..is that block of memory is common to all regions defined or every region owns its own commarea when it is loaded ..

TIA.
Regards.
Back to top
View user's profile Send private message

Kevin Wailes

New User


Joined: 29 Aug 2008
Posts: 10
Location: UK

PostPosted: Fri Oct 17, 2008 3:22 pm    Post subject: Reply to: Difference between return,start,call,link !!
Reply with quote

I think you need to read the CICS Application Programming Guide
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8165
Location: East Dubuque, Illinois, USA

PostPosted: Fri Oct 17, 2008 4:51 pm    Post subject:
Reply with quote

This shows a complete lack of understanding of commarea ...
Quote:
and the last query...as per my knowledge commarea is a block of memory..is that block of memory is common to all regions defined or every region owns its own commarea when it is loaded ..
You really, really, really need to read the CICS Application Programming Reference and Guide both. Commarea is not even common to a region -- it is a specific chunk of memory passed to a CICS program by another CICS program and used to contain data needed between program invocations. There is certainly no block of memory in a CICS region set aside for commarea -- a commarea is allocated from memory when needed.
Back to top
View user's profile Send private message
shyansh_hercules
Warnings : 2

New User


Joined: 12 Oct 2008
Posts: 4
Location: Pune

PostPosted: Fri Oct 17, 2008 7:24 pm    Post subject:
Reply with quote

Quote:
Commarea is not even common to a region -- it is a specific chunk of memory passed to a CICS program by another CICS program and used to contain data needed between program invocations. There is certainly no block of memory in a CICS region set aside for commarea -- a commarea is allocated from memory when needed.


Robert i will surely go through those books and clear my concept......
But for the time being please clear my doubt which is still uncleared....
If it is a chunk of memory used to contain between program invocations....then what is benifit of using commarea..as the same thing happens when we pass data using call statement (if by content).....
i mean what is the actual difference between data passing technique using commarea and a simple call statement?[/quote]
Back to top
View user's profile Send private message
Earl Haigh

Active User


Joined: 25 Jul 2006
Posts: 475

PostPosted: Fri Oct 17, 2008 7:38 pm    Post subject:
Reply with quote

Quote:
Robert i will surely go through those books and clear my concept......
But for the time being please clear my doubt which is still uncleared....


suggest you also attend a CICS application programming class.
in the meantime, keep reading.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8165
Location: East Dubuque, Illinois, USA

PostPosted: Fri Oct 17, 2008 7:40 pm    Post subject:
Reply with quote

When you're doing CICS, you typically (in a pseudo-conversational system) send a map and then return to CICS with a transaction ID and COMMAREA. When the terminal user hits the enter key, that transaction kicks off and can receive the map to find out what was keyed into it. You cannot use pseudo-conversational without returning to CICS -- which you cannot do through a COBOL call. The commarea is typically used to tell the transaction to receive the map rather than send the map, among other things.

COMMAREA is allocated and managed by CICS. If you put together a batch of COBOL calls, your original transaction must stay in memory until the entire thing ends -- potentially wasting resources and causing deadlocks or other nasty things.

Mechanically, there's no real difference between passing COMMAREA and passing through a COBOL CALL statement, especially if you just look at the memory. However, the system approach and requirements are vastly different -- and most sites I know of absolutely forbid using anything but pseudo-conversational due to the impact.
Back to top
View user's profile Send private message
Garry Carroll

Active Member


Joined: 08 May 2006
Posts: 998
Location: Dublin, Ireland / Edinburgh, Scotland

PostPosted: Fri Oct 17, 2008 7:55 pm    Post subject:
Reply with quote

The variables in your program are unique to each task. There are situations where you cannot use these variables in passing data.

For example, a pseudoconversation is typically a series of invocations of a program, each invocation being a separate CICS task. In the pseudoconversation you might EXEC CICS RETURN TRANSID(ABCD), which invokes the next portion of the pseudoconversation. Since the old task has terminated, the old variables are lost and a fresh set of variables are acquired for the new task.

To pass the values between the separate tasks in a pseudoconversation, a COMMAREA is used and is specified in the return as EXEC CICS RETURN TRANSID(ABCD) COMMAREA(MY_COMMAREA).

Garry.
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Fri Oct 17, 2008 8:40 pm    Post subject:
Reply with quote

Hello,

Keep in mind that COMMAREA is not a common area - it is a Communications Area.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CICS All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts IEW2456E error when link-editing a C ... Senthilraj JCL & VSAM 0 Fri Oct 13, 2017 3:12 pm
No new posts Difference in SORT & ICETOOL Mohan Kothakota DFSORT/ICETOOL 5 Fri Sep 22, 2017 4:56 pm
No new posts Creating ISPF Screens with Scrname vi... Albireo20 TSO/ISPF 9 Tue Sep 05, 2017 4:24 pm
No new posts Return a Non Numeric value from REXX Learncoholic CLIST & REXX 3 Fri Sep 01, 2017 8:33 pm
No new posts EXIT or RETURN cvnlynn CLIST & REXX 18 Wed Jul 19, 2017 2:50 am

Facebook
Back to Top
 
Job Vacancies | Forum Rules | Bookmarks | Subscriptions | FAQ | Polls | Contact Us