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

Need to use CICS XCTL in my Assembler program


IBM Mainframe Forums -> PL/I & Assembler
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
ssamineni
Warnings : 1

New User


Joined: 10 Mar 2007
Posts: 16
Location: India

PostPosted: Fri Jun 01, 2007 8:25 am
Reply with quote

Hi,

I need some help regarding CICS and Assembler.

I need to use CICS XCTL in my Assembler program to pass control to other Assembler program.

Is it possible to send two DSECTs in the COMMAREA?.

Currently we have 2 DSECTS in our program which needs to be passed to the sub program.One DSECT is for MAP ,the other DSECT is for some work area related variables.
For MAP dsect,we have allocated one register, and for other varibales one register.We can't allocate single register for both becoz of other constraints.
I would like to know if its possible to pass two DSECTs ( or copybooks) using COMMAREA to the other program.

Thanks.

Warning: Repost, Merged below
Back to top
View user's profile Send private message
ssamineni
Warnings : 1

New User


Joined: 10 Mar 2007
Posts: 16
Location: India

PostPosted: Sat Jun 02, 2007 6:56 am
Reply with quote

Hi,

I need some help regarding CICS and Assembler.

I need to use CICS XCTL in my Assembler program to pass control to other Assembler program.

Is it possible to send two DSECTs in the COMMAREA?.

Currently we have 2 DSECTS in our program which needs to be passed to the sub program.One DSECT is for MAP ,the other DSECT is for some work area related variables.
For MAP dsect,we have allocated one register, and for other varibales one register.We can't allocate single register for both becoz of other constraints.
I would like to know if its possible to pass two DSECTs ( or copybooks) using COMMAREA to the other program.

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

Moderator Emeritus


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

PostPosted: Sat Jun 02, 2007 7:26 am
Reply with quote

Hello,

I remembered this question from yesterday and was interested in the answer, so i noticed this when it was posted again today.

Please don't post the same question in multiple forums as it is more confusing than helpful.

We don't have a way to post multi-discipline questions (like yours), so we want to place the question in the forum where it is most likely to get good replies.

The rules for CICS and XCTL are basically the same for assembler as they are for COBOL. Are you a CICS COBOL programmer? If i recall, while assembler uses the term "dsects", COBOL uses LINKAGE SECTION.

If you know how to do what you want with COBOL, i believe you could apply the same method to your assembler code.

Please let me know if you would like to keep this in the assembler forum or have it replace the post in the CICS forum.

Sorry that i don't have much of an answer for you.
Back to top
View user's profile Send private message
William Thompson

Global Moderator


Joined: 18 Nov 2006
Posts: 3156
Location: Tucson AZ

PostPosted: Sat Jun 02, 2007 9:04 pm
Reply with quote

Without getting too fancy, About all you can do is move the two dsects to the working storage definition of the commarea and go.
Back to top
View user's profile Send private message
ssamineni
Warnings : 1

New User


Joined: 10 Mar 2007
Posts: 16
Location: India

PostPosted: Mon Jun 04, 2007 8:41 pm
Reply with quote

Sorry for posting the same question in different forums.I will make sure it doesn't happen again.

Thanks for the reply.

We have declared the variables in between DFHEISTG & DHEIEND.
ex: OUTMSG DSECT ( some variables grouped under this dsect)
MAP10 DSECT(This has symblic map of cics screen).

Here my doubt is it possible to send both in XCTL.Does the following sttaement works?

EXEC CICS XCTL PROGRAM(xxxxxx) COMMAREA(OUTMSG,MAP10)

It would be greatful if someone post material on using cics in assembler.

Thanks
Back to top
View user's profile Send private message
William Thompson

Global Moderator


Joined: 18 Nov 2006
Posts: 3156
Location: Tucson AZ

PostPosted: Mon Jun 04, 2007 8:57 pm
Reply with quote

ssamineni wrote:
Sorry for posting the same question in different forums.I will make sure it doesn't happen again.
OK
Quote:
We have declared the variables in between DFHEISTG & DHEIEND.
ex: OUTMSG DSECT ( some variables grouped under this dsect)
MAP10 DSECT(This has symblic map of cics screen).
So the DSECTs are in your working storage?
Quote:
Here my doubt is it possible to send both in XCTL.Does the following sttaement works?
EXEC CICS XCTL PROGRAM(xxxxxx) COMMAREA(OUTMSG,MAP10)
No. Try (I think I've got this right)
Code:
COMAREA  DS  0D
OUTMSG   DSECT
...
MAP10    DSECT
...
COMLEN   DC  AL2(*-COMAREA)

EXEC CICS XCTL PROGRAM(xxxxxx) COMMAREA(COMAREA) LENGTH(COMLEN)


Insure that the program "xxxxxx" defines the passed COMMAREA exactly the same.
Quote:
It would be greatful if someone post material on using cics in assembler.
CICS commands work the same for Assembler as they do for COBOL.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Mon Jun 04, 2007 8:59 pm
Reply with quote

Hello,

The CICS manuals linked to from the forums may help.

Please try this link (gotten from the CICS Manual link) http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/handheld/Connected/BOOKS/dfhpp313/1.2.4?ACTION=MATCHES&REQUEST=assembler&TYPE=FUZZY&SHELF=&DT=19980714155320&CASE=&searchTopic=TOPIC&searchText=TEXT&searchIndex=INDEX&rank=RANK&ScrollTOP=FIRSTHIT#FIRSTHIT
and let us know if there is not material at that link (or other places in that manual) that answers your request.
Back to top
View user's profile Send private message
ssamineni
Warnings : 1

New User


Joined: 10 Mar 2007
Posts: 16
Location: India

PostPosted: Tue Jun 05, 2007 8:13 pm
Reply with quote

Thanks alot for your help. I have tried and its working now. I am working on a migration project in which ICOM has to be converted to CICS and the programming language is assembler.Am new to assembler & cics,so getting so many doubts.

I have had a look at the url you have sent,i couldn't get much information.
I will try get some material on this
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


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

PostPosted: Tue Jun 05, 2007 9:16 pm
Reply with quote

Good luck - we'll try to offer suggestions when there are questions icon_smile.gif
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 -> PL/I & Assembler

 


Similar Topics
Topic Forum Replies
No new posts Using API Gateway from CICS program CICS 0
No new posts Calling an Open C library function in... CICS 1
No new posts How to 'Ping' a CICS region in JCL CICS 2
No new posts Parallelization in CICS to reduce res... CICS 4
No new posts DB2 Event passed to the Application P... DB2 1
Search our Forums:

Back to Top