Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

implememt EIBCALEN in PLI with CICS

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & Assembler
View previous topic :: :: View next topic  
Author Message
hamsalakshmij

New User


Joined: 23 Sep 2008
Posts: 5
Location: chennai

PostPosted: Thu Nov 20, 2008 1:06 pm    Post subject: implememt EIBCALEN in PLI with CICS
Reply with quote

Hi!

I COULDNT CHECK THE STATUS OF EIBCALEN IN PLI PROGRAM. IN CICS REGION MY PROGRAM HAS BEEN TERMINATED WHEN I CHECK THE EIBCALEN STATUS. CAN U ANYONE TELL ME THE REASON.
Back to top
View user's profile Send private message

Garry Carroll

Active Member


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

PostPosted: Thu Nov 20, 2008 2:52 pm    Post subject:
Reply with quote

You need to give more information, like maybe the code. You don't say how your program is terminating - is it abending when you try to check EIBCALEN ?

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

New User


Joined: 23 Sep 2008
Posts: 5
Location: chennai

PostPosted: Thu Nov 20, 2008 3:08 pm    Post subject: Reply to: implememt EIBCALEN in PLI with CICS
Reply with quote

This is my SOURCE program

Code:
PLIATM:PROC OPTIONS(MAIN);                       
%INCLUDE DFHAID;                                 
%INCLUDE DFHEIBLK;                               
%INCLUDE DFHBMSCA;                               
DCL OPTNP PIC '9';                               
DCL MSG2P CHAR(25) INIT('0');                   
                                                 
DCL HIGH        BUILTIN;                         
DCL LOW         BUILTIN;                         
DCL 01 COMMAREA,                                 
    02 VAR1 CHAR(4);                             
DCL 01 DFHCOMMAREA,                             
    02 VAR2 CHAR(4);   
                         
    CALL MAP1;     
                             
MAP1:PROC;                                       
IF EIBCALEN = 0 THEN DO;                         
           CALL SNDMAP0;                         
           END;                                 
END MAP1;                                       
                                                 
SNDMAP0:PROC;                                   
   EXEC CICS                                     
   SEND MAPSET('M188063') MAP('HEAD0') ERASE;   
   CALL RECMAP0;                                 
END SNDMAP0;                                     
                                                 
RECMAP0:PROC;                                   
   EXEC CICS                                     
   RECEIVE MAPSET('M188063') MAP('HEAD0');       
   CALL SNDMAP1;                                 
END RECMAP0;                                                                   
                                                 
SNDMAP1:PROC;                                   
   EXEC CICS                                     
   SEND MAPSET('M188063') MAP('HEAD1') ERASE;   
 CALL RECMAP1;                                   
END SNDMAP1;                                     
                                                 
RECMAP1:PROC;                                   
   EXEC CICS                                     
   RECEIVE MAPSET('M188063') MAP('HEAD1');       
   CALL SNDMAP2;                                 
END RECMAP1;                                     
                                                 
SNDMAP2:PROC;                                   
   EXEC CICS                                     
   SEND MAPSET('M188063') MAP('HEAD2') ERASE;   
 CALL RECMAP2;                                   
END SNDMAP2;                                     
                                                 
RECMAP2:PROC;                                   
   EXEC CICS                                     
   RECEIVE MAPSET('M188063') MAP('HEAD2');       
   OPTNP=OPTNI;                             
   SELECT (OPTNP);                               
     WHEN (1) CALL SNDMAP3;                     
     WHEN (2) CALL SNDMAP3;                     
     WHEN (3) CALL SNDMAP3;                     
     WHEN (4) CALL SNDMAP3;                     
     OTHERWISE CALL MS2PARA;                     
   END;                                         
END RECMAP2;                                     
                                                 
END PLIATM;     

THIS IS MY COMPILE JCL.

Code:
//D188063J JOB (AGL-AGL-D188063-XXX-999),CLASS=C, 
//    MSGCLASS=X,MSGLEVEL=(1,1),NOTIFY=D188063     
// JCLLIB ORDER=SYS1T.USER.PROCLIB                 
//DOIT   EXEC CICTSPLI,                           
//       SOURCE=D188063.PLICICS.PDS(PGMATM)   
//LKED.SYSIN DD *                                 
    NAME P1188063(R)                               
/*   


I THINK I HAVE A PROBLEM IN JCL.

Source program and JCL "Code"ed
Back to top
View user's profile Send private message
Garry Carroll

Active Member


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

PostPosted: Thu Nov 20, 2008 3:42 pm    Post subject:
Reply with quote

First, please use the 'code' tags when entering code or screen data - it generally makes for easier reading.

Quote:
I THINK I HAVE A PROBLEM IN JCL.

Why do you think this? If you have, we can't see what it is as you haven't given us any job output or indication of cond codes.

You don't have any EXEC CICS RETURN statement. You must return control to CICS in this fashion.

Code:
RECMAP2:PROC;
EXEC CICS
RECEIVE MAPSET('M188063') MAP('HEAD2');
OPTNP=OPTNI;
SELECT (OPTNP);
WHEN (1) CALL SNDMAP3;
WHEN (2) CALL SNDMAP3;
WHEN (3) CALL SNDMAP3;
WHEN (4) CALL SNDMAP3;
OTHERWISE CALL MS2PARA;
END;
END RECMAP2; 

There are no procedures to match the calls in this code.

Have you tried stepping through the program in EDF? As coded, if the EIBCALEN is not zero you will just fall through.

The code is using procedures unnecessarily.

Garry.
Back to top
View user's profile Send private message
enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10274
Location: italy

PostPosted: Thu Nov 20, 2008 3:45 pm    Post subject: Reply to: implememt EIBCALEN in PLI with CICS
Reply with quote

Quote:
THINK I HAVE A PROBLEM IN JCL.


if without accessing the eibcalen the program works
then it is not a jcl issue

and do not double post on the same issue
please tell where You want to continue the discussion
Back to top
View user's profile Send private message
enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10274
Location: italy

PostPosted: Thu Nov 20, 2008 3:56 pm    Post subject: Reply to: implememt EIBCALEN in PLI with CICS
Reply with quote

please fix Your keyboard, the caps key is stuck

and reading an all caps message is a pain
apart that all caps means shouting ( with no need in Your case )
Back to top
View user's profile Send private message
hamsalakshmij

New User


Joined: 23 Sep 2008
Posts: 5
Location: chennai

PostPosted: Thu Nov 20, 2008 4:02 pm    Post subject: Reply to: implememt EIBCALEN in PLI with CICS
Reply with quote

SORRY. I CUT THE HALF OF THE PROGRAM AND POSTED. IF I DO NOT CHECK THE EIBCALEN, IN CICS REGION I COULD GET THE PROCESS. IF I STARTED THE PROCESS WITH CHECKING THE EIBCALEN STATUS, IN CICS REGION I AM GETTING THE MSG THAT PROGRAM TERMINATION.

WHEN I CHEK WITH CEDF MODE, AFTER GAVE THE TRANSACTION ID I GOT THE FOLLOWING STATUS.

STATUS: PROGRAM TERMINATION
Back to top
View user's profile Send private message
enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10274
Location: italy

PostPosted: Thu Nov 20, 2008 4:03 pm    Post subject: Reply to: implememt EIBCALEN in PLI with CICS
Reply with quote

Your last post is still all caps
I will delete Your other topic
Back to top
View user's profile Send private message
hamsalakshmij

New User


Joined: 23 Sep 2008
Posts: 5
Location: chennai

PostPosted: Thu Nov 20, 2008 4:21 pm    Post subject: Reply to: implememt EIBCALEN in PLI with CICS
Reply with quote

I am sorry.
can u tell me the solution to my problem.
Back to top
View user's profile Send private message
Garry Carroll

Active Member


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

PostPosted: Thu Nov 20, 2008 5:17 pm    Post subject:
Reply with quote

You do not have a pointer to your commarea in your PROC statement. I'd say that without the pointer, CICS isn't expecting a COMMAREA, so EIBCALEN value is unpredictable.

Try coding
Code:
PLIATM:PROC (COMM_PTR) OPTIONS(MAIN REENTRANT);

and define COMMAREA based on COMM_PTR. THe Translator probably insertes the REENTRANT anyway, but it's good practice to code it.

Garry.
Back to top
View user's profile Send private message
Srihari Gonugunta

Active User


Joined: 14 Sep 2007
Posts: 295
Location: Singapore

PostPosted: Thu Nov 20, 2008 5:26 pm    Post subject:
Reply with quote

Hi Hamsa,
Please try the following changes.

Code:
PLIATM:PROC(COMPTR) OPTIONS(MAIN);


Code:
DCL COMPTR PTR;
DCL 01 DFHCOMMAREA BASED(COMPTR),
02 VAR2 CHAR(4);
Back to top
View user's profile Send private message
hamsalakshmij

New User


Joined: 23 Sep 2008
Posts: 5
Location: chennai

PostPosted: Thu Nov 20, 2008 5:34 pm    Post subject: Reply to: implememt EIBCALEN in PLI with CICS
Reply with quote

Thanks for your information. i will try this. but we need to consider the COMMAREA when we use the PSEUDO_CONVERSATION in the program. in my program just i declared but i didnt use.
my problem is that the program process starts with EIBCALEN. i am checking that if the EIBCALEN value is 0, then i have to get first map.

but i didnt get my first map. But in CEDF MODE i note that initially EIBCALEN=0.
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 -> PL/I & Assembler All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts How to Clear all TSQs during CICS sta... Hooman24 CICS 10 Mon Jun 26, 2017 9:46 pm
No new posts CICS Transaction attach count of supp... lind sh CICS 1 Wed Jun 21, 2017 1:33 pm
No new posts CICS Transaction Timeout Hooman24 CICS 2 Sun Apr 16, 2017 2:16 pm
No new posts Date and time format in CICS Chandru3183 CICS 2 Sat Mar 18, 2017 12:46 pm
No new posts Asynchronous CICS Processing Question moezbud CICS 1 Mon Mar 06, 2017 6:13 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us