View previous topic :: View next topic
|
Author |
Message |
nithusi
New User
Joined: 12 Apr 2006 Posts: 30
|
|
|
|
Can anybody tell me what does the IMS status code 'XC' means. I am trying to throw a screen using ISRT call (COBOL- IMS/DC is the environment). The status code i am getting is XC.
This is the code used for the ISRT call
MOVE 'ET120ZU1' TO WS-MOD-NAME
CALL 'CBLTDLI' USING WS-DLI-ISRT
WL-IO-PCB
WS-SOM-OUTPUT-MSSG-AREA
WS-MOD-NAME
END-CALL
Also please give me some link where in I can find all the status and error codes for IMS calls.
Thanks,
Nithya |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
Stay off the IMS reserved fields in the message:
Quote: |
XC
Explanation:
The program inserted a message that has some bits in the Z1 field set. The Z1 field is reserved for IMS.
Programmer Response:
Correct the program to prevent it from setting those bits.
|
For all status codes and their meaning follow the link in my signature and search for "status code". |
|
Back to top |
|
|
nithusi
New User
Joined: 12 Apr 2006 Posts: 30
|
|
|
|
Hi George,
thanks once again ... but is this tampering of IMS reserved area happening from within the code. As we are not doing anything but initializing the MID MOD areas with the INITIALIZE verb. Do we need to take care of anything specific before the ISRT call. Please have a look at my MID MOD areas as well and advise if anything wrong in this.
*** MID VARIABLES FOR SECONDARY OPTION SELECTION SCREEN ***
*
01 WS-SOM-INPUT-MSSG-AREA.
03 WS-SOM-IN-MSG-LENGTH PIC S9(04) COMP.
03 WS-SOM-IN-RESERVED PIC X(02).
03 WS-SOM-IN-ACTIOZ PIC X(01).
03 WS-SOM-IN-SELECZ PIC X(02).
03 WS-SOM-IN-KEYIDZ PIC X(50).
*** MOD VARIABLES FOR SECONDARY OPTION SELECTION SCREEN ***
*
01 WS-SOM-OUTPUT-MSSG-AREA.
03 WS-SOM-OUT-MSG-LENGTH PIC S9(04) COMP.
03 WS-SOM-OUT-RESERVED PIC X(02).
03 WS-SOM-OUT-PAGENZ PIC X(02).
03 WS-SOM-OUT-TERMNZ PIC X(04).
03 WS-SOM-OUT-ACTIOZ PIC X(01).
03 WS-SOM-OUT-MODEDZ PIC X(08).
03 WS-SOM-OUT-SELECZ PIC X(02).
03 WS-SOM-OUT-KEYIDZ PIC X(50).
03 WS-SOM-OUT-SYSMSZ PIC X(50).
*
Thanks,
Nithya Iyer. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
Sample of an ISRTed message in PL/1:
Code: |
BTS0031I MODNAME: QNSMODH
**** MSG CALL- FUNC=ISRT, PCB=ABTS1 , STATUS= , MESSAGE NUMBER=000001
----.----1----.----2----.----3----.----4----.----5----.----6----.--
IOAREA= NS 1
0504444300DE40000F0000000000000000000000000000000000000000000000000
0200000F04520050710000000000000000000000000000000000000000000000000
**** MSG CALL- FUNC=ISRT, PCB=ABTS1 , STATUS= , MESSAGE NUMBER=000001
PAGE 0095 B A T C H T E R M I N A L S I M U L A T O R ' B T
----.----1----.----2----.----3----.----4----.----5----.----6----.--
IOAREA= EILKE EN GEORGE VAN BLOKLAND PRANGELAAR 55
0500CCDDC4CD4CCDDCC4ECD4CDDDDCDC4444444DDCDCCDCCD4FF444444444444444
4800593250550756975051502362315400000007915753119055000000000000000
1 100-312707 1A
44444444444444444444444444444444F44FFF6FFFFFF4FC4444444444444444444
0000000000000000000000000000000010010003127070110000000000000000000
3 100-312711 1A 4 100-312712 1A
44F44FFF6FFFFFF4FC4444444444444444444F44FFF6FFFFFF4FC44444444444444
0030010003127110110000000000000000000400100031271201100000000000000
6 100-312714 1A 7 100-312717 1A
4444444F44FFF6FFFFFF4FC4444444444444444444F44FFF6FFFFFF4FC444444444
0000000600100031271401100000000000000000007001000312717011000000000
000000 000000
4444444444444434444FFFFFF44444444444444444444444434444FFFFFF4444444
00000000000000F0000000000000000000000000000000000F00000000000000000
000000 000000
444444444444444444434444FFFFFF44444444444444444444444434444FFFFFF44
0000000000000000000F0000000000000000000000000000000000F000000000000
000000 000
|
What does your message contain if you display it or run under BTS? |
|
Back to top |
|
|
nithusi
New User
Joined: 12 Apr 2006 Posts: 30
|
|
|
|
here is the screen dump of the BTS
0BTS0006I TRANSACTION STARTED: ET120Z .
0MBR=ET120Z PSB=ET120Z EDIT= SPA=0 PLC=1 LANG=CBL TYPE=MSG
-**** MSG CALL- FUNC=GU , PCB=IOPCB , STATUS= , MESSAGE NUMBER=000001
- ----.----1----.----2----.----3----.----4----.----5----.----6----.-
0 IOAREA= . ET120Z
0400CEFFFE44444444444444444444444444444444444444444444444444444444
0B0053120900000000000000000000000000000000000000000000000000000000
-**** MSG CALL- FUNC=ISRT, PCB=IOPCB , STATUS=XC, MESSAGE NUMBER=000001
- ----.----1----.----2----.----3----.----4----.----5----.----6----.-
0 IOAREA=
4444
0000
-**** MSG CALL- FUNC=GU , PCB=IOPCB , STATUS=QC, MESSAGE NUMBER=000001
-BTS0020I STATISTICS REPORT FOR TRANSACTION:ET120Z . |
|
Back to top |
|
|
nithusi
New User
Joined: 12 Apr 2006 Posts: 30
|
|
|
|
Hi george,
Do i need to change anything in the Input and output area variable declaration?
Thanks,
nithya. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
First I'd like to ask to to use the Code option. It then will show clearer. Your outputmessage shows blanks which is not allowed imho. This is what the manual said:
Quote: |
Segment Format
|Each |output segment has a 4-byte prefix that defines the length of the segment |and, if required, specifies whether the segment is the first segment of an |LPAGE series. Option 3 output messages must contain an additional two bytes |identifying the relative segment number within the LPAGE series. Table 72 illustrates the format of an output segment.
| || Table 72. Format of an Output Segment | | | LL | Z1 | Z2 | SN | FIELDS |
| |
Where:
LL
This is a 2-byte binary field representing the total length of the message segment, including LL, Z1, and Z2 and if present, SN. The value of LL equals the number of bytes in text (all segment fields) plus 4 (6 if option 3). The application program must fill in this count. If a size limit was defined for output segments of a transaction being processed, LL must not exceed the defined limit.
|Restriction: The segment length must be less than the message queue buffer data size (buffer size?prefix size) specified at IMS system definition. The segment length can be less than the length defined to the MFS Language utility. If a segment is inserted that is larger than the segment defined to the MFS utility, the segment is truncated. No error messages are issued. Fields truncated or omitted are padded as requested in the format definition to the MFS Language utility.
When PL/I is used, the LL field must be defined as a binary fullword. The value provided by the PL/I application program must represent the actual segment length minus two bytes. For example, if an output message segment is 16 bytes, LL=14 and is the sum of: the length of LL (4 bytes - 2 bytes) + Z1 (1 byte) + Z2 (1 byte) + TEXT (10 bytes).
Z1
This is a 1-byte field containing binary zeros and is reserved for IMS.
Z2
This is a 1-byte field that can be used by the application program for control of various output device functions. |
You may find it following my link and search for 'Z1'.
I'm pleased you finally got BTS up-and-running; what was the matter? |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
You also failed to put the total lenght of the message in the LL.
Edit: In fact how should your messages look like, what options did you use in your IO-PCB? `Single-segment message, multiple-segment message, fixed layout of only typed fields (option 3) and 'X3F' usage? |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
Back to top |
|
|
nithusi
New User
Joined: 12 Apr 2006 Posts: 30
|
|
|
|
Hi george,
The environment here was not setup properly. It was not ready for COBOL-IMS. it was set up for PLI-IMS. So finally we changed the link modules and we could run BTS. Thanks for your suggestions and help.
The call is also working now properly.
Thanks,
Nithya. |
|
Back to top |
|
|
|