Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: MPIFWSC

MPIFWSC.m

Go to the documentation of this file.
  1. MPIFWSC ;ALB/CMC - MPIF HEALTHEVET WEB SERVICES CLIENT TOOLS ; 5/26/16 1:23pm
  1. ;;1.0;MASTER PATIENT INDEX VISTA;**63,70,77**;30 Apr 99;Build 1
  1. ;MPI*1.0*63 STORY 317469
  1. ENV ; - environment check entry (first time with this patch only)
  1. ; this tag area can be removed with future patches
  1. ; future patches can call the $$CKSETUP^MPIFWSC entry for environment
  1. ; check
  1. S X=$$CKSETUP("VISTAWEBSERVICE.WSDL")
  1. Q
  1. ;
  1. POSTINIT ; -- setup (first time with this patch only)
  1. ; this tag area can be removed with future patches
  1. ; future patches can call the DO SETUP^MPIFHWSC entry for post-init
  1. ; to setup a new HWSC 18.02 entry
  1. D SETUP("VISTAWEBSERVICE.WSDL","MPI_PSIM_NEW EXECUTE")
  1. Q
  1. ;
  1. CKSETUP(MPIWSDL) ; - used to check the environment
  1. ; returns the path to be used that was verified or 0 if it fails
  1. ;
  1. ; $$DEFDIR^%ZISH,$$LIST^%ZISH - #2320
  1. ; BMES^XPDUTL - #10141
  1. ;
  1. N MPISTAT,MPIPATH,MPIFILE
  1. S MPIPATH=$$DEFDIR^%ZISH()
  1. S MPIFILE(MPIWSDL)=""
  1. S MPISTAT=$$LIST^%ZISH(MPIPATH,"MPIFILE","MPISTAT")
  1. I 'MPISTAT!($D(MPISTAT)'=11),'$D(XPDENV) D Q 0
  1. . D BMES^XPDUTL("**** Error cannot find file "_MPIPATH_MPIWSDL)
  1. I 'MPISTAT!($D(MPISTAT)'=11) D Q 0
  1. . W !!,"**** WSDL file "_MPIWSDL_" not found in "_MPIPATH_"."
  1. . W !," You will need that prior to install."
  1. . S XPDQUIT=2
  1. Q MPIPATH
  1. ;
  1. SETUP(MPIWSDL,MPISERV) ; -- call to setup hwsc
  1. ;MPIWSDL - call with the wsdl file to setup, must be in the
  1. ; kernel default directory
  1. ;
  1. ; IA# 5421 FOR $$GENPORT^XOBWLIB
  1. ; IA# 6408 FOR ALL 18.12 REFERENCES
  1. ; FOR "B" X-REF ON 18.02
  1. ;
  1. N MPISTAT,MPIPATH,MPIARR
  1. S MPIPATH=$$CKSETUP(MPIWSDL) I MPIPATH=0 Q
  1. S MPIFILE(MPIWSDL)=""
  1. S MPIARR("WSDL FILE")=MPIPATH_MPIWSDL
  1. S MPIARR("CACHE PACKAGE NAME")="MPIPSIM"
  1. S MPIARR("WEB SERVICE NAME")=MPISERV
  1. S MPIARR("AVAILABILITY RESOURCE")="?wsdl"
  1. S MPISTAT=$$GENPORT^XOBWLIB(.MPIARR)
  1. ;
  1. I 'MPISTAT D BMES^XPDUTL("**** Error creating Web Service (#18.02)"_MPISERV),MES^XPDUTL(MPISTAT) Q
  1. D BMES^XPDUTL(">>> "_MPISERV_" entry added to WEB SERVICE file #18.02")
  1. ;
  1. K DD,DO
  1. N DIC,DA,X,Y,DTOUT,DUOUT
  1. S DIC="^XOB(18.12,",DIC(0)="ELMQZX"
  1. S DIC("DR")="3.03///"_XPDQUES("POST1 Port Number")_";.04///"_XPDQUES("POST2 Web Server Name")_";.06///1;.07///30;1.01///1;3.01///1;3.02///encrypt_only"
  1. S X="MPI_PSIM_NEW EXECUTE"
  1. D FILE^DICN
  1. K DA
  1. S DA=+Y,DA(1)=DA
  1. K DD,DO,DIC,X,DTOUT,DUOUT,Y
  1. S DIC="^XOB(18.12,"_DA(1)_",100,",DIC(0)="LZ"
  1. S DIC("P")=$P(^DD(18.12,100,0),"^",2)
  1. ;S X="MPI_PSIM_NEW EXECUTE",DIC("DR")=".06///1"
  1. S X=$O(^XOB(18.02,"B","MPI_PSIM_NEW EXECUTE",0)),DIC("DR")=".06///1"
  1. D FILE^DICN
  1. TST ;
  1. I $O(^MPIF(984.8,"B","TWO",""))'="" D BMES^XPDUTL(">> Already have TWO entry in MPI ICN BUILD MANAGEMENT (#984.8) file <<") Q
  1. D BMES^XPDUTL(">>> Adding TWO entry to the MPI ICN BUILD MANAGEMENT (#984.8) file <<<")
  1. K DD,DO N DIC,DA,X,Y,DTOUT,DUOUT
  1. S DIC="^MPIF(984.8,",DIC(0)="ELMQZX"
  1. S DIC("DR")="3///0"
  1. S X="TWO"
  1. D FILE^DICN
  1. Q
  1. ;
  1. ;**77 VAMPI-9996 (jfw) = Added SSL Configuration Parameter (SSL/RETURN(6))
  1. CHANGE(RETURN,USER,PASS,SWITCH,SERV,PORT,SSL) ; **70 STORY 864667 adding new parameters
  1. ;IA #6408
  1. ;PASS - PASSWORD TO BE USED FOR THE WEB SERVER MPI_PSIM_NEW EXECUTE
  1. ;SWITCH - TO SET FOR HTTP (0) OR HTTPS (1)
  1. ;SERV - SERVER IP
  1. ;PORT - SSL PORT
  1. ;SSL - SSL CONFIGURATION (File #18.12 / Field #3.02)
  1. I $O(^XOB(18.12,"B","MPI_PSIM_NEW EXECUTE",""))="" S RETURN(0)="-1^NO WEB SERVER ENTRY FOR MPI_PSIM_NEW EXECUTE" Q
  1. N I,IEN F I=1:1:6 S RETURN(I)=0
  1. S IEN=$O(^XOB(18.12,"B","MPI_PSIM_NEW EXECUTE",""))
  1. I $G(USER)'="" D
  1. .S RETURN(2)="1^SUCCESS USER"
  1. .N MPIFERR,FDA S FDA(18.12,IEN_",",200)=USER
  1. .D FILE^DIE("E","FDA","MPIFERR") I $D(MPIFERR("DIERR")) S RETURN(2)="-1^ERROR SETTING USER" Q
  1. I $G(PASS)'="" D
  1. .S RETURN(1)="1^SUCCESS PASSWORD"
  1. .N MPIFERR,FDA S FDA(18.12,IEN_",",300)=$$ENCRYP^XUSRB1(PASS)
  1. .D FILE^DIE("E","FDA","MPIFERR") I $D(MPIFERR("DIERR")) S RETURN(1)="-1^ERROR SETTING PASSWORD" Q
  1. I $G(SWITCH)'="" D
  1. .S RETURN(3)="1^SUCCESS SWITCH"
  1. .N MPIFIEN,HTTPS S MPIFIEN=$O(^MPIF(984.8,"B","TWO","")) I MPIFIEN="" S RETURN(3)="-1^NO ENTRY 'TWO' IN FILE 984.8" Q
  1. .S HTTPS=$P($G(^MPIF(984.8,MPIFIEN,0)),"^",4)
  1. .I HTTPS'=SWITCH S $P(^MPIF(984.8,MPIFIEN,0),"^",4)=SWITCH S RETURN(3)="1^SUCCESSFULLY SET HTTPS TO "_SWITCH
  1. I $G(SERV)'="" D
  1. .S RETURN(4)="1^SUCCESS SERVER"
  1. .N MPIFERR,FDA S FDA(18.12,IEN_",",.04)=SERV
  1. .D FILE^DIE("E","FDA","MPIFERR") I $D(MPIFERR("DIERR")) S RETURN(4)="-1^ERROR SETTING NEW SERVER" Q
  1. I $G(PORT)'="" D
  1. .S RETURN(5)="1^SUCCESS SSL PORT"
  1. .N MPIFERR,FDA S FDA(18.12,IEN_",",3.03)=PORT
  1. .D FILE^DIE("E","FDA","MPIFERR") I $D(MPIFERR("DIERR")) S RETURN(5)="-1^ERROR SETTING NEW SSL PORT" Q
  1. I $G(SSL)'="" D
  1. .S RETURN(6)="1^SUCCESS SSL CONFIGURATION"
  1. .N MPIFERR,FDA S FDA(18.12,IEN_",",3.02)=SSL
  1. .D FILE^DIE("E","FDA","MPIFERR") I $D(MPIFERR("DIERR")) S RETURN(6)="-1^ERROR SETTING SSL CONFIGURATION" Q
  1. Q