ORUTL4 ;SLC/CB,TC - OE/RR Utilities ; 5/2/17 10:03am
 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**350,424,434,377**;Dec 17, 1997;Build 582
 ;
 ;
 ;
DLL(ORRSLTS,ORDLLNME,ORDLLVRS) ; Will check DLL version against the server to see if it's valid
 ; Input parameters
 ;  1. ORRSLTS    RPC Return array
 ;  2. ORDLLNME   Name of Dll to look up
 ;  3. ORDLLVRS   Version of the DLL on the user's machine
 ;
 N ORHLPTXT
 S ORHLPTXT=$$GET^XPAR("SYS","OR CPRS HELP DESK TEXT")
 S ORDLLNME=$$UP^XLFSTR(ORDLLNME)
 I ORDLLNME="GMV_VITALSVIEWENTER.DLL" D VITAL(.ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT)
 I ORDLLNME=$$UP^XLFSTR($$GET^XPAR("SYS","YS MHA_A DLL NAME")) D MENTAL(.ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT)
 I ORDLLNME=$$UP^XLFSTR($$GET^XPAR("SYS^PKG","OR MOB DLL NAME")) D CPRSMOB(.ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT)
 I '$D(ORRSLTS) S ORRSLTS(0)="-1"
 Q
 ;
VITAL(ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT) ;
 ; Input parameters
 ;  1. ORRSLTS    The return message
 ;  2. ORDLLVRS   Version of the DLL on the user's machine
 ;  3. ORDLLNME   Name of DLL
 ;  4. ORHLPTXT   CPRS help desk text
 ;
 N ORVAL
 S ORVAL=$$GET^XPAR("SYS","GMV DLL VERSION",ORDLLVRS,"E")
 I ORVAL="YES" S ORRSLTS=1
 E  D
 . N ORGMVLST,ORGMVCNT,ORGMVVER,I S (I,ORGMVVER)="",ORGMVCNT=0
 . D GETLST^XPAR(.ORGMVLST,"SYS","GMV DLL VERSION")
 . F  S I=$O(ORGMVLST(I)) Q:'I  D
 . . I $$GET^XPAR("SYS","GMV DLL VERSION",$P(ORGMVLST(I),U),"E")="YES"  D
 . . . S ORGMVVER=ORGMVVER_"#13"_$P(ORGMVLST(I),U)
 . . . S ORGMVCNT=ORGMVCNT+1
 . I ORGMVCNT>0 S ORGMVVER="#13#13The current compatible version(s) are:"_ORGMVVER
 . I ORHLPTXT'="" S ORHLPTXT="#13#13Please contact "_ORHLPTXT_" to obtain the updated version of "_ORDLLNME
 . S ORRSLTS="-1^Version "_ORDLLVRS_" of "_ORDLLNME_" is not compatible with the server software. "_ORGMVVER_ORHLPTXT
 Q
 ;
MENTAL(ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT) ;
 ; Input parameters
 ;  1. ORRSLTS    The return message
 ;  2. ORDLLVRS   Version of the DLL on the user's machine
 ;  3. ORDLLNME   Name of Dll to look up
 ;  4. ORHLPTXT   CPRS help desk text
 ;
 N ORYSLST,ORYSVAL,ORREQVER,ORHTXT1,ORHTXT2
 S (ORHTXT1,ORHTXT2,ORRSLTS)=""
 D FIND^DIC(19,,1,"X","YS BROKER1",1,,,,"ORYSLST")
 I 'ORYSLST("DILIST",0) D  Q
 . I ORHLPTXT'="" S ORHTXT1="#13#13Please contact "_ORHLPTXT_" to get this installed."
 . S ORRSLTS="-1^The YS BROKER1 option is not installed on this server. "_$G(ORHTXT1)
 S ORYSVAL=$G(ORYSLST("DILIST","ID",1,1))
 S ORREQVER=$P($P(ORYSVAL,"version ",2),"~",2)
 I ORDLLVRS=ORREQVER S ORRSLTS=1
 E  D
 . N ORYSVER S ORYSVER="#13#13The current compatiable version is #13"_ORREQVER
 . I ORHLPTXT'="" S ORHTXT2="#13#13Please contact "_ORHLPTXT_" to obtain the updated version of "_ORDLLNME
 . S ORRSLTS="-1^Version "_ORDLLVRS_" of "_ORDLLNME_" is not compatible with the server software. "_ORYSVER_$G(ORHTXT2)
 Q
 ;
CPRSMOB(ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT) ;get the expected version of the CPRS MOB DLL
 ; Input parameters
 ;  1. ORRSLTS    The return message
 ;  2. ORDLLVRS   Version of the DLL on the user's machine
 ;  3. ORDLLNME   Name of Dll to look up
 ;  4. ORHLPTXT   CPRS help desk text
 ;
 N ORREQVER S ORRSLTS=""
 S ORREQVER=$$GET^XPAR("SYS^PKG","OR MOB DLL VERSION")
 I ORDLLVRS=ORREQVER S ORRSLTS="1^"_ORREQVER
 E  D
 . N ORVERLST S ORVERLST="#13#13The current compatiable version is #13"_ORREQVER
 . I ORHLPTXT'="" S ORHLPTXT="#13#13Please contact "_ORHLPTXT_" to obtain the updated version of "_ORDLLNME
 . S ORRSLTS="-1^Version "_ORDLLVRS_" of "_ORDLLNME_" is not compatible with the server software. "_ORVERLST_ORHLPTXT
 Q
 ;
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HORUTL4   3614     printed  Sep 23, 2025@20:10:59                                                                                                                                                                                                      Page 2
ORUTL4    ;SLC/CB,TC - OE/RR Utilities ; 5/2/17 10:03am
 +1       ;;3.0;ORDER ENTRY/RESULTS REPORTING;**350,424,434,377**;Dec 17, 1997;Build 582
 +2       ;
 +3       ;
 +4       ;
DLL(ORRSLTS,ORDLLNME,ORDLLVRS) ; Will check DLL version against the server to see if it's valid
 +1       ; Input parameters
 +2       ;  1. ORRSLTS    RPC Return array
 +3       ;  2. ORDLLNME   Name of Dll to look up
 +4       ;  3. ORDLLVRS   Version of the DLL on the user's machine
 +5       ;
 +6        NEW ORHLPTXT
 +7        SET ORHLPTXT=$$GET^XPAR("SYS","OR CPRS HELP DESK TEXT")
 +8        SET ORDLLNME=$$UP^XLFSTR(ORDLLNME)
 +9        IF ORDLLNME="GMV_VITALSVIEWENTER.DLL"
               DO VITAL(.ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT)
 +10       IF ORDLLNME=$$UP^XLFSTR($$GET^XPAR("SYS","YS MHA_A DLL NAME"))
               DO MENTAL(.ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT)
 +11       IF ORDLLNME=$$UP^XLFSTR($$GET^XPAR("SYS^PKG","OR MOB DLL NAME"))
               DO CPRSMOB(.ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT)
 +12       IF '$DATA(ORRSLTS)
               SET ORRSLTS(0)="-1"
 +13       QUIT 
 +14      ;
VITAL(ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT) ;
 +1       ; Input parameters
 +2       ;  1. ORRSLTS    The return message
 +3       ;  2. ORDLLVRS   Version of the DLL on the user's machine
 +4       ;  3. ORDLLNME   Name of DLL
 +5       ;  4. ORHLPTXT   CPRS help desk text
 +6       ;
 +7        NEW ORVAL
 +8        SET ORVAL=$$GET^XPAR("SYS","GMV DLL VERSION",ORDLLVRS,"E")
 +9        IF ORVAL="YES"
               SET ORRSLTS=1
 +10      IF '$TEST
               Begin DoDot:1
 +11               NEW ORGMVLST,ORGMVCNT,ORGMVVER,I
                   SET (I,ORGMVVER)=""
                   SET ORGMVCNT=0
 +12               DO GETLST^XPAR(.ORGMVLST,"SYS","GMV DLL VERSION")
 +13               FOR 
                       SET I=$ORDER(ORGMVLST(I))
                       if 'I
                           QUIT 
                       Begin DoDot:2
 +14                       IF $$GET^XPAR("SYS","GMV DLL VERSION",$PIECE(ORGMVLST(I),U),"E")="YES"
                               Begin DoDot:3
 +15                               SET ORGMVVER=ORGMVVER_"#13"_$PIECE(ORGMVLST(I),U)
 +16                               SET ORGMVCNT=ORGMVCNT+1
                               End DoDot:3
                       End DoDot:2
 +17               IF ORGMVCNT>0
                       SET ORGMVVER="#13#13The current compatible version(s) are:"_ORGMVVER
 +18               IF ORHLPTXT'=""
                       SET ORHLPTXT="#13#13Please contact "_ORHLPTXT_" to obtain the updated version of "_ORDLLNME
 +19               SET ORRSLTS="-1^Version "_ORDLLVRS_" of "_ORDLLNME_" is not compatible with the server software. "_ORGMVVER_ORHLPTXT
               End DoDot:1
 +20       QUIT 
 +21      ;
MENTAL(ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT) ;
 +1       ; Input parameters
 +2       ;  1. ORRSLTS    The return message
 +3       ;  2. ORDLLVRS   Version of the DLL on the user's machine
 +4       ;  3. ORDLLNME   Name of Dll to look up
 +5       ;  4. ORHLPTXT   CPRS help desk text
 +6       ;
 +7        NEW ORYSLST,ORYSVAL,ORREQVER,ORHTXT1,ORHTXT2
 +8        SET (ORHTXT1,ORHTXT2,ORRSLTS)=""
 +9        DO FIND^DIC(19,,1,"X","YS BROKER1",1,,,,"ORYSLST")
 +10       IF 'ORYSLST("DILIST",0)
               Begin DoDot:1
 +11               IF ORHLPTXT'=""
                       SET ORHTXT1="#13#13Please contact "_ORHLPTXT_" to get this installed."
 +12               SET ORRSLTS="-1^The YS BROKER1 option is not installed on this server. "_$GET(ORHTXT1)
               End DoDot:1
               QUIT 
 +13       SET ORYSVAL=$GET(ORYSLST("DILIST","ID",1,1))
 +14       SET ORREQVER=$PIECE($PIECE(ORYSVAL,"version ",2),"~",2)
 +15       IF ORDLLVRS=ORREQVER
               SET ORRSLTS=1
 +16      IF '$TEST
               Begin DoDot:1
 +17               NEW ORYSVER
                   SET ORYSVER="#13#13The current compatiable version is #13"_ORREQVER
 +18               IF ORHLPTXT'=""
                       SET ORHTXT2="#13#13Please contact "_ORHLPTXT_" to obtain the updated version of "_ORDLLNME
 +19               SET ORRSLTS="-1^Version "_ORDLLVRS_" of "_ORDLLNME_" is not compatible with the server software. "_ORYSVER_$GET(ORHTXT2)
               End DoDot:1
 +20       QUIT 
 +21      ;
CPRSMOB(ORRSLTS,ORDLLVRS,ORDLLNME,ORHLPTXT) ;get the expected version of the CPRS MOB DLL
 +1       ; Input parameters
 +2       ;  1. ORRSLTS    The return message
 +3       ;  2. ORDLLVRS   Version of the DLL on the user's machine
 +4       ;  3. ORDLLNME   Name of Dll to look up
 +5       ;  4. ORHLPTXT   CPRS help desk text
 +6       ;
 +7        NEW ORREQVER
           SET ORRSLTS=""
 +8        SET ORREQVER=$$GET^XPAR("SYS^PKG","OR MOB DLL VERSION")
 +9        IF ORDLLVRS=ORREQVER
               SET ORRSLTS="1^"_ORREQVER
 +10      IF '$TEST
               Begin DoDot:1
 +11               NEW ORVERLST
                   SET ORVERLST="#13#13The current compatiable version is #13"_ORREQVER
 +12               IF ORHLPTXT'=""
                       SET ORHLPTXT="#13#13Please contact "_ORHLPTXT_" to obtain the updated version of "_ORDLLNME
 +13               SET ORRSLTS="-1^Version "_ORDLLVRS_" of "_ORDLLNME_" is not compatible with the server software. "_ORVERLST_ORHLPTXT
               End DoDot:1
 +14       QUIT 
 +15      ;