Exchange/RJE Manual
User-Exit Procedure
Example Programs
D–24 104698 Tandem Computers Incorporated
 Page 4 [1] $RJE.JOSHI.UESRC 1991-06-13 13:25:30
 LOCAL VARIABLE DECLARATIONS
 87. 000000 1 1
 88. 000000 1 1 STRUCT cp^template(*) ;
 89. 000000 1 1 BEGIN
 90. 000000 1 2 STRUCT cp^hdr ;
 91. 000000 1 2 BEGIN
 92. 000000 1 3 STRING header[0:7] ;
 93. 000000 1 3 END ;
 94. 000000 1 2 STRUCT cp^data;
 95. 000000 1 2 BEGIN
 96. 000000 1 3 STRING data[0:100] ;
 97. 000000 1 3 END ;
 98. 000000 1 2
 99. 000000 1 2 STRUCT cp^req = cp^hdr; ! REQUEST HEADER
 100. 000000 1 2 BEGIN
 101. 000000 1 3 STRING func;
 102. 000000 1 3 STRING modf;
 103. 000000 1 3 INT reqid;
 104. 000000 1 3 INT txtout;
 105. 000000 1 3 INT txtin;
 106. 000000 1 3 END ;
 107. 000000 1 2
 108. 000000 1 2 STRUCT cp^rsp = cp^hdr; ! RESPONSE HEADER
 109. 000000 1 2 BEGIN
 110. 000000 1 3 STRING func;
 111. 000000 1 3 STRING status;
 112. 000000 1 3 INT reqid;
 113. 000000 1 3 INT status^detail;
 114. 000000 1 3 INT txtin;
 115. 000000 1 3 END ;
 116. 000000 1 2
 117. 000000 1 2 END ; ! END OF STRUCT CP^TEMPLATE
 118. 000000 1 1
 119. 000000 1 1 INT reqid := 0, ! LAST REQUEST ID IN CP6100 BUFFER, ALWAYS INCREMENT
 120. 000000 1 1 .buf[0:54],
 121. 000000 1 1 .tbuf[0:39],
 122. 000000 1 1 .cp(cp^template) := @buf, ! PLACE CP6100 TEMPLATE ON BUFFER
 123. 000000 1 1 .linename[0:11],
 124. 000000 1 1 .xlinename[0:18],
 125. 000000 1 1 linenamelen,
 126. 000000 1 1 out^file^num, loop, count, error, file ,devicetype,
 127. 000000 1 1 response^status,
 128. 000000 1 1 msg^count,
 129. 000000 1 1 call^completed := FALSE ,
 130. 000000 1 1 finished := FALSE ;
 131. 000000 1 1
 132. 000000 1 1 STRING .sbuf := @buf '<<' 1,
 133. 000000 1 1 .stbuf := @tbuf '<<' 1,
 134. 000000 1 1 .phone^temp[0:max^digits], ! TEMPORARY BUFFER FOR SCANNING
 135. 000000 1 1 .sxlinename := @xlinename '<<' 1,
 136. 000000 1 1 .s,
 137. 000000 1 1 .t;
 138. 000000 1 1










