PSXSERV ;BIR/BAB,WPB-Server Management Utility ;[ 04/08/97   2:06 PM ]
 ;;2.0;CMOP;;11 Apr 97
START ;Receive initial incoming message for CMOP route by message type
 S TTXMZ=XMZ
 X XMREC G:$G(XMER)<0 EX
 I $E(XMRG,1,6)["$$XMIT" S ZTRTN="HDR^PSXRECV",ZTDESC="CMOP Data Transmission",ZTIO="PSX" G QUE
 I $E(XMRG,1,6)["$$ACKN" S ZTRTN="ACK^PSXRSYU",ZTDESC="CMOP Data Transmission Acknowledgement",ZTIO="PSX" G QUE
 I $E(XMRG,1,6)["$$VACK" S ZTRTN="ACK^PSXRSYU",ZTDESC="CMOP Data Transmission Acknowledgement",ZTIO="PSX" G QUE
 I $E(XMRG,1,6)["$$RMIT" S ZTRTN="HDR^PSXRECV",ZTDESC="CMOP Data Transmission",ZTIO="PSX" G QUE
 I $E(XMRG,1,5)["$$VND" S ZTRTN="EN^PSXVND",ZTDESC="CMOP Remote Release Filer",ZTIO="PSX" G QUE
 I $E(XMRG,1,5)["$$RTN" S ZTRTN="RTN^PSXVEND",ZTDESC="CMOP Release Acknowledgement Filer",ZTIO="PSX" G QUE
 I $E(XMRG,1,5)["$$ACT" S ZTRTN="EN^PSXACT",ZTDESC="CMOP Activiation at Host",ZTIO="PSX" G QUE
 I $E(XMRG,1,5)["$$SYS" S ZTRTN="ACT^PSXRSYU",ZTDESC="CMOP Activation at Remote",ZTIO="PSX" G QUE
 I $E(XMRG,1,6)["$$DACT" S ZTRTN="DEACT^PSXACT",ZTDESC="CMOP Inactivation",ZTIO="PSX" G QUE
 I $E(XMRG,1,6)["$$AUTO" S ZTRTN="AUTO^PSXMISC",ZTDESC="CMOP Auto Transmission Notice at Host",ZTIO="PSX" G QUE
 I $E(XMRG,1,6)["$$INV" S ZTRTN="INV^PSXVEND",ZTDESC="CMOP Invalid Release Data Filer",ZTIO="PSX" G QUE
 G:$E(XMRG,1,5)["$$END" EX
QUE S ZTDTH=$H,ZTSAVE("XMREC")="",ZTSAVE("XMZ")="",ZTSAVE("XQMSG")="",ZTSAVE("XQSOP")="",ZTSAVE("XMER")="",ZTSAVE("TTXMZ")="",ZTSAVE("XMFROM")="",ZTSAVE("XMRG")="" D ^%ZTLOAD
 ;Insert code to generate MM msg if invalid message type received
EX ;S XMZ=TTXMZ,XMSER="S.PSXX CMOP SERVER" D REMSBMSG^XMA1C
 K ZTDTH,ZTRTN,ZTIO,ZTSAVE("XMER"),ZTDESC,ZTSAVE("XMRG"),ZTSAVE("XQMSG"),ZTSAVE("XMFROM"),ZTSAVE("XQSOP"),ZTSAVE("XMZ"),ZTSAVE("XMREC"),ZTSAVE("XMSER"),TTXMZ
 S ZTREQ="@"
 Q
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPSXSERV   1848     printed  Sep 23, 2025@19:21:09                                                                                                                                                                                                     Page 2
PSXSERV   ;BIR/BAB,WPB-Server Management Utility ;[ 04/08/97   2:06 PM ]
 +1       ;;2.0;CMOP;;11 Apr 97
START     ;Receive initial incoming message for CMOP route by message type
 +1        SET TTXMZ=XMZ
 +2        XECUTE XMREC
           if $GET(XMER)<0
               GOTO EX
 +3        IF $EXTRACT(XMRG,1,6)["$$XMIT"
               SET ZTRTN="HDR^PSXRECV"
               SET ZTDESC="CMOP Data Transmission"
               SET ZTIO="PSX"
               GOTO QUE
 +4        IF $EXTRACT(XMRG,1,6)["$$ACKN"
               SET ZTRTN="ACK^PSXRSYU"
               SET ZTDESC="CMOP Data Transmission Acknowledgement"
               SET ZTIO="PSX"
               GOTO QUE
 +5        IF $EXTRACT(XMRG,1,6)["$$VACK"
               SET ZTRTN="ACK^PSXRSYU"
               SET ZTDESC="CMOP Data Transmission Acknowledgement"
               SET ZTIO="PSX"
               GOTO QUE
 +6        IF $EXTRACT(XMRG,1,6)["$$RMIT"
               SET ZTRTN="HDR^PSXRECV"
               SET ZTDESC="CMOP Data Transmission"
               SET ZTIO="PSX"
               GOTO QUE
 +7        IF $EXTRACT(XMRG,1,5)["$$VND"
               SET ZTRTN="EN^PSXVND"
               SET ZTDESC="CMOP Remote Release Filer"
               SET ZTIO="PSX"
               GOTO QUE
 +8        IF $EXTRACT(XMRG,1,5)["$$RTN"
               SET ZTRTN="RTN^PSXVEND"
               SET ZTDESC="CMOP Release Acknowledgement Filer"
               SET ZTIO="PSX"
               GOTO QUE
 +9        IF $EXTRACT(XMRG,1,5)["$$ACT"
               SET ZTRTN="EN^PSXACT"
               SET ZTDESC="CMOP Activiation at Host"
               SET ZTIO="PSX"
               GOTO QUE
 +10       IF $EXTRACT(XMRG,1,5)["$$SYS"
               SET ZTRTN="ACT^PSXRSYU"
               SET ZTDESC="CMOP Activation at Remote"
               SET ZTIO="PSX"
               GOTO QUE
 +11       IF $EXTRACT(XMRG,1,6)["$$DACT"
               SET ZTRTN="DEACT^PSXACT"
               SET ZTDESC="CMOP Inactivation"
               SET ZTIO="PSX"
               GOTO QUE
 +12       IF $EXTRACT(XMRG,1,6)["$$AUTO"
               SET ZTRTN="AUTO^PSXMISC"
               SET ZTDESC="CMOP Auto Transmission Notice at Host"
               SET ZTIO="PSX"
               GOTO QUE
 +13       IF $EXTRACT(XMRG,1,6)["$$INV"
               SET ZTRTN="INV^PSXVEND"
               SET ZTDESC="CMOP Invalid Release Data Filer"
               SET ZTIO="PSX"
               GOTO QUE
 +14       if $EXTRACT(XMRG,1,5)["$$END"
               GOTO EX
QUE        SET ZTDTH=$HOROLOG
           SET ZTSAVE("XMREC")=""
           SET ZTSAVE("XMZ")=""
           SET ZTSAVE("XQMSG")=""
           SET ZTSAVE("XQSOP")=""
           SET ZTSAVE("XMER")=""
           SET ZTSAVE("TTXMZ")=""
           SET ZTSAVE("XMFROM")=""
           SET ZTSAVE("XMRG")=""
           DO ^%ZTLOAD
 +1       ;Insert code to generate MM msg if invalid message type received
EX        ;S XMZ=TTXMZ,XMSER="S.PSXX CMOP SERVER" D REMSBMSG^XMA1C
 +1        KILL ZTDTH,ZTRTN,ZTIO,ZTSAVE("XMER"),ZTDESC,ZTSAVE("XMRG"),ZTSAVE("XQMSG"),ZTSAVE("XMFROM"),ZTSAVE("XQSOP"),ZTSAVE("XMZ"),ZTSAVE("XMREC"),ZTSAVE("XMSER"),TTXMZ
 +2        SET ZTREQ="@"
 +3        QUIT