IMS QLOGMSGP DSECT 
Author Message
 IMS QLOGMSGP DSECT

Has anyone used the QLOGMSGP DSECT?  If you have, can you please give
me an example of how it is used in a assmebler program.  I'm sorry
about the length, but I am including the DSECT in this message.  If
there is anyone here that can help me, I would really appreciate it.

         MACRO ,
         QLOGMSGP &DSECT=QLOGMSGP,&DSECTD=QLOGMSGD,&PREFIX=MSG,
               &COMPAT=NO
.*
.*************************************************************
.*                                                           *
.*        Licensed Materials - Property of IBM               *
.*                                                           *
.*        "Restricted Materials of IBM"                      *
.*                                                           *
.*        5655-158 (C) Copyright IBM Corp. 1974,1996         *
.*                                                           *
.*************************************************************
.*
         LCLC  &A             PREFIX, NORMALLY 'MSG'.
         GBLB  &QLOGMP   1ST TIME SW FOR CHANGEID
.**************************************************************
.*                                                            *
.*       ILOGTR MACRO MAINTENANCE STATUS                      *
.*                                                            *
.**************************************************************
         AIF   (&QLOGMP).SKCHGID   SKIP CHANGEIDS AFTER 1ST TIM
         CHANGEID NAME=QLOGMSGP,LINKAGE=MACRO
         CHANGEID APAR=PT00015,ID=A,PREREQ=0  RECOVERY MOVE
         CHANGEID APAR=PTP0023,ID=B,PREREQ=0  ALIGNMENT ERROR
         CHANGEID APAR=PQ01275,ID=D,PREREQ=0
         CHANGEID APAR=PQ03482,ID=E,PREREQ=0  PUT ENQ FAILURE
         CHANGEID APAR=PQ03689,ID=F,PREREQ=PQ01275 MRQ SQ'S
         CHANGEID APAR=PQ12661,ID=G,PREREQ=0 CQSF2 WRITE WAIT
         CHANGEID APAR=PQ21571,ID=H,PREREQ=0
         CHANGEID IDEND=YES
&QLOGMP  SETB  1     SET CHANGEID FIRST TIME SWITCH
.SKCHGID ANOP  ,     GO HERE TO SKIP CHANGEIDS
&A       SETC  '&PREFIX'
         AIF   ('&DSECT' EQ '').A
&DSECT   DSECT ,
.A       ANOP  ,
***************************************************************
*                                                             *
*        IMS MESSAGE RECORD AS LOGGED AND AS IT APPEARS ON    *
*        IMS MESSAGE QUEUES.                                  *
*                                                             *
*     RULES FOR ADDING NEW FIELDS TO PREFIX SEGMENTS:         *
*                                                             *
*     1. NEW FIELDS NEED TO BE ADDED TO THE END               *
*                                                             *
*     2. CANNOT CHANGE USE OF A FIELD OR FLAG ACROSS          *
*     RELEASES.  IF NEED TO DO, CREATE A NEW FIELD/FLAG       *
*     AND MAINTAIN BOTH UNTIL THE IMS RELEASE USING THE       *
*     OLD FIELD/FLAG GOES BACK LEVEL.                         *
*                                                             *
*     3. CANNOT BE SENSITIVE TO PREFIX LENGTH.  USE THE LL    *
*     IN FRONT OF THE PREFIX SEGMENT TO DETERMINE THE         *
*     LENGTH OF THE SEGMENT IF NECESSARY.                     *
*                                                             *
*     4. WHEN PROPAGATING THE PREFIX SEGMENT (IE: TO NEW      *
*     MESSAGES, ETC), THE LENGTH CAN BE INCREASED BUT         *
*     NOT DECREASED.  ALWAYS PROPAGATE ALL FIELDS, EVEN       *
*     THOSE NOT DEFINED TO THE RELEASE.                       *
*                                                             *
*     THESE RULES ARE NECESSARY TO SUPPORT THE MIGRATION      *
*     OF IMS RELEASES IN MULTIPLE SYSTEMS COUPLING (MSC),     *
*     MESSAGE REQUEUER (MRQ), AND SHARED QUEUES (SQ)          *
*     ENVIRONMENTS. THERE MAY BE OTHER NEEDS.                 *
*                                                             *
***************************************************************
         SPACE 1
&A.PRFX  DS    0D             START OF PREFIX
&A.LRLL  DS    H              LENGTH OF LOG RECORD OR
*                             USED PORTION OF DISK RECORD.
&A.LRZZ  DS    H              ZZ FIELD RESERVED FOR QSAM
&A.LCODE DS    X              LOG CODE (01 OR 03)
         SPACE 1
&A.FLAGS DS    X              MESSAGE FLAGS
&A.FFRST EQU   X'80'          FIRST RECORD OF MSG, FULL PREFIX
&A.FLAST EQU   X'40'          LAST DRRN (RECORD) OF MESSAGE
&A.FCANC EQU   X'20'          MESSAGE CANCELED
&A.FNRQU EQU   X'10'          NON-RECOVERABLE QUERY MESSAGE
&A.FQNR  EQU   X'0F'          L/O NIBBLE HAS LOGICAL QUEUE NO.
         SPACE 1
&A.DFLG2 DS    X              FLAGS FROM QDFLG2 OF QDEST
         SPACE 1
&A.FPADL DS    X              PREFIX ADDITIONAL INFO FLAG
&A.FPRSP EQU   X'80'          RESPONSE MODE
&A.SACMD EQU   X'40'          SCHEDULED APPL ISSUED 'CMD'
&A.AOIUE EQU   X'20'          MSG GENERATED BY AOI USER EXIT
&A.SYSEG EQU   X'10'          SYSTEM SEGMENT EXISTS
&A.SSPND EQU   X'08'          MESSAGE IS ON SMB SUSPEND QUEUE
&A.FPINR EQU   X'04'          INPUT MESSAGE IS NON-RECOVERABLE
         SPACE 1
&A.MDRRN DS    F              MESSAGE DRRN.  NORMALLY, AND WHEN
*                             INITIALLY LOGGED, THIS POINTS TO
*                             THE CURRENT MESSAGE.  IF THIS IS
*                             THE FIRST RECORD OF THE CURRENT
*                             MESSAGE, AND THERE IS ANOTHER
*                             CHAINED FROM THIS MESSAGE, THIS
*                             IS THE DRRN OF THAT MESSAGE.
&A.RDRRN DS    F              RECORD DRRN.  NORMALLY, AND WHEN
*                             INITIALLY LOGGED, THIS IS THE
*                             DRRN OF THE CURRENT RECORD. WHEN
*                             THE MESSAGE IS CONTINUED INTO
*                             ANOTHER RECORD, THIS FIELD IS
*                             UPDATED TO POINT TO IT.
&A.PRFLL DS    H              LENGTH OF TOTAL MESSAGE PREFIX
&A.CSW   DS    X              COMMUNICATIONS SWITCHES
&A.CSW0  EQU   X'80'          LOG WRITE AHEAD REQUESTED
&A.CSW1  EQU   X'40'          RESPONSE REQUIRED BY TERMINAL
&A.CSW2  EQU   X'20'          MESSAGE HAS BEEN ON SUSPEND QUEUE
&A.CSW3  EQU   X'10'          LOCAL OR GLOBAL QUEUE MODE
*                              1 - GLOBAL QUEUE MODE - MESSAGE
*                                  PUT ON SHARED QUEUE
*                              0 - LOCAL QUEUE MODE - MESSAGE
*                                  PUT ON IMS LOCAL QUEUE
&A.CSW4  EQU   X'08'          SHARED QUEUES RECOVERY MOVE
&A.CSW5  EQU   X'04'          CONVERTED PARTIAL DATA OBJECT
&A.CSW6  EQU   X'02'          RESERVED FOR COMM SWITCHES
&A.CSW7  EQU   X'01'          RESERVED FOR COMM SWITCHES
&A.DFLG3 DS    X              ADDITIONAL MESSAGE FLAGS
&A.NRND  EQU   X'80'          NON-RECOVERABLE QUEUE MESSAGE
*                             NO DATA
&A.F3ZLN EQU   X'40'          ZERO LENGTH MESSAGE-PREFIX ONLY
&A.F3CHD EQU   X'20'          COMMUNICATION HEADER DATA
&A.F3NOE EQU   X'10'          ENQUEUE WAS BYPASSED DUE TO
*                             SYNC LU6.2 CONV PROCESSING
&A.F3MSC EQU   X'08'          MULTIPLE SYSTEM COUPLING RECEIVIN
*                             SYSTEM TIME AT ENQUEUE OF MESSAGE
*                             TO THE IMS QUEUE FOR LOCAL SMB.
&A.F3OVF EQU   X'04'          SPACE NOTIFICATION EXIT DFSQSPC0
*                             HAS SET BUFFER COUNT OVERFLOW.
*                             THIS IS FOR DEBUGGING ONLY.
&A.F3MRS EQU   X'02'          MESSAGE RETRIEVED FROM SHARED
*                             QUEUES.
&A.F3MLY EQU   X'01'          LOCAL=YES OPTION
*                              1 - CQSREAD LOCAL=YES MESSAGE
*                                  NOT RETURNED BY CQS
&A.UOW   DS    0CL34          UNIT OF WORK (UOW) - TRACKING
&A.ORGID DS    CL8            ORIGINATING IMSID
&A.ORGTK DS    CL8            TOKEN (STOCK CLOCK VALUE)
&A.PROID DS    CL8            PROCESSING IMSID
&A.PROTK DS    CL8            TOKEN (STOCK CLOCK VALUE)
&A.UOWCL EQU   *-&A.UOW       LENGTH OF UOW FOR CQS REQUEST
&A.UOWSF DS    0CL2           UOW ID SUFFIX
&A.UFLG1 DS    X              UOW FLAG BYTE 1
&A.U1PUT EQU   X'80'          MESSAGE ASSOCIATED WITH CQSPUT.
&A.U1RD  EQU   X'40'          MESSAGE ASSOCIATED WITH CQSREAD.
&A.UFLG2 DS    X              UOW FLAG BYTE 2
&A.U2DEL EQU   X'80'          MESSAGE ASSOCIATED WITH CQSDEL.
&A.U2MV  EQU   X'40'          MESSAGE ASSOCIATED WITH CQSMOVE.
&A.RSQTY DS    CL1            QTYPE FOR RESTART
         DS    CL3            RESERVED SPACE
**..  NEXT 6 BYTES ARE LOG RECORD ADDRESS OF PRIOR 01/03 RECORD
&A.DOFS  DS    H              OFFSET WITHIN DISK LOG BLOCK
&A.DRBN  DS    F              RBN ON DISK LOG
         SPACE 1
&A.EBPFX EQU   *              END OF BASIC PREFIX
&A.LBPFX EQU   *-&A.PRFX      LENGTH OF BASIC PREFIX
         EJECT
***************************************************************
*        BEGINNING OF SYSTEM SEGMENT                          *
***************************************************************
         SPACE 2
***************************************************************
*        MESSAGE PREFIX SYSTEM SEGMENT ITEM.                  *
*                                                             *
*        ALWAYS EXISTS AS THE FIRST SEGMENT ITEM IF           *
*        MSGSYSEG FLAG IN MSGFPADL IS SET.                    *
*        A FULL PREFIX EXTENSION EXISTS FOR THE FIRST         *
*        SEGMENT OF A MSG.  A SHORT PREFIX EXTENSION MAY      *
*        EXIST ONLY FOR A 2ND OR NTH SEGMENT AND THEN         *
*        ONLY IF ANOTHER SEGMENT ITEM IS REQUIRED.            *
***************************************************************
         SPACE 1
&A.SSEGM DS    0H             START OF SYSTEM SEGMENT
         DS    H              SIZE OF SYSTEM SEGMENT ITEM
         DS    X              SYSTEM SEGMENT ITEM ID
         SPACE 1
&A.CFLG1 DS    X              CONTENTS OF SYSTEM SEGMENT
         SPACE 1
&A.PFXLS EQU   *-&A.SSEGM
...

read more »



Fri, 09 Dec 2005 23:17:36 GMT  
 IMS QLOGMSGP DSECT
Quote:

> Has anyone used the QLOGMSGP DSECT?  If you have, can you please give
> me an example of how it is used in a assmebler program.  I'm sorry
> about the length, but I am including the DSECT in this message.  If
> there is anyone here that can help me, I would really appreciate it.

<snip>

What is it you are trying to do? I'm not sure that I've used this
precise DSECT, but I have done some IMS stuff.

--
Steve Thompson
www.vsstrategies.com
330/335-7228 office
Notice: By sending UCE/BCE (a/k/a, spam) to this address,
you are accepting and agreeing to our charging a $1000 fee,
per spam item, for handling and processing, and you agree to
pay any and all costs incurred (including court costs and/or
attorney's fees) for collecting this fee.



Sat, 10 Dec 2005 11:42:02 GMT  
 IMS QLOGMSGP DSECT

Quote:


> > Has anyone used the QLOGMSGP DSECT?  If you have, can you please give
> > me an example of how it is used in a assmebler program.  I'm sorry
> > about the length, but I am including the DSECT in this message.  If
> > there is anyone here that can help me, I would really appreciate it.
> <snip>

> What is it you are trying to do? I'm not sure that I've used this
> precise DSECT, but I have done some IMS stuff.

> --
> Steve Thompson
> www.vsstrategies.com
> 330/335-7228 office
> Notice: By sending UCE/BCE (a/k/a, spam) to this address,
> you are accepting and agreeing to our charging a $1000 fee,
> per spam item, for handling and processing, and you agree to
> pay any and all costs incurred (including court costs and/or
> attorney's fees) for collecting this fee.

Steve,

I just want to use the DSECT to map the TEXT SEGMENT.  Specifically  I
would like to map the Scratch-Pad Area(SPA).  I am doing some PL/1 to
Cobol conversion, and I want to make sure that (using the same test
data) the new COBOL programs SPA is the same as the old PL/1 programs
SPA.  If you know of a way to do this, I would really appreciate the
help.



Sat, 10 Dec 2005 20:59:45 GMT  
 
 [ 3 post ] 

 Relevant Pages 

1. Skills Needed: UNIX-C, COBOL/BAL, IMS DBA, IMS, DB2 DBA, Oracle DBA, Smalltalk

2. Converting DSECTs to COBOL data definitons

3. Linkage stack DSECTs

4. DSECT->C?

5. CSECT and DSECT semantics?

6. DSECT for MVS PDS vol def block?

7. getting DSECT entry address

8. position for software developer with experience in TIRKS and IBM MVS, assembler, PL/1, IMS/DB, IMS/DC

9. position for software developer with experience in TIRKS and IBM MVS, assembler, PL/1, IMS/DB, IMS/DC

10. position for software developer with experience in TIRKS and IBM MVS, assembler, PL/1, IMS/DB, IMS/DC

11. Mapping the IMS/ESA SPA?

12. /JOB/ Assembler (BAL) and IMS DC guru - contract position in Garden City, NY

 

 
Powered by phpBB® Forum Software