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

SD628PST.m

Go to the documentation of this file.
  1. SD628PST ;ALB/BNT - Scheduling Enhancements Post Install Routine ;11/04/2014
  1. ;;5.3;Scheduling;**628**;Aug 13, 1993;Build 371
  1. ;
  1. Q
  1. ;
  1. POST ; Entry point for post install
  1. D MES^XPDUTL(" Starting post-install of SD*5.3*628")
  1. ;
  1. STPCDS ; Set up default PRIMARY CARE STOP CODES
  1. N LIST,X
  1. D REMSTP
  1. ;
  1. ; Set up Primary Care Stop Codes
  1. D GETLST^XPAR(.LIST,"PKG.SCHEDULING","SDEC PRIMARY CARE STOP CODES","B")
  1. I $G(LIST)=0 D SETPCDEF
  1. ; Display current Primary Care Stop Codes
  1. I +$G(LIST) D
  1. . W ! D MES^XPDUTL(" Active Primary Care Stop Codes...")
  1. . S X="" F S X=$O(LIST(X)) Q:X="" I $P(LIST(X,"V"),U) D
  1. . . D MES^XPDUTL(" - "_$P(LIST(X,"N"),U,2))
  1. ;
  1. ; Set up Specialty Care Stop Codes
  1. N LIST,X D GETLST^XPAR(.LIST,"PKG.SCHEDULING","SDEC SPECIALTY CARE STOP CODES","B")
  1. I $G(LIST)=0 D SETSCDEF
  1. ; Display current Specialty Care Stop Codes
  1. I +$G(LIST) D
  1. . W ! D MES^XPDUTL(" Active Specialty Care Stop Codes...")
  1. . S X="" F S X=$O(LIST(X)) Q:X="" I $P(LIST(X,"V"),U) D
  1. . . D MES^XPDUTL(" - "_$P(LIST(X,"N"),U,2))
  1. ;
  1. ; Set up Mental Health Stop Codes
  1. N LIST,X D GETLST^XPAR(.LIST,"PKG.SCHEDULING","SDEC MENTAL HEALTH STOP CODES","B")
  1. I $G(LIST)=0 D SETMHDEF
  1. ; Display current Mental Health Stop Codes
  1. I +$G(LIST) D
  1. . W ! D MES^XPDUTL(" Active Mental Health Stop Codes...")
  1. . S X="" F S X=$O(LIST(X)) Q:X="" I $P(LIST(X,"V"),U) D
  1. . . D MES^XPDUTL(" - "_$P(LIST(X,"N"),U,2))
  1. ;
  1. F REGRPC="SD VSE FILTER RPC","SD VSE REPORT RPC" D REGRPC(REGRPC,"SDECRPC")
  1. ;
  1. ; Schedule background build of data in ^TMP
  1. D SCHTSK("SDEC REPORT DATA")
  1. ;
  1. ; Build VSE Encounter and Appointment Data from Scheduling files into ^XTMP
  1. ; Remove old ^XTMP files first
  1. K ^XTMP("SDVSE"),^XTMP("SDCEX"),^TMP("SDCEX"),^TMP("SDVSE"),^TMP("SDRPC")
  1. W !,"Queuing job to Re-Index the OUTPATIENT ENCOUNTER file (#409.68)"
  1. W !,"Queuing job to build VSE GUI Resource Management Report data"
  1. N ZTDESC,ZTDTH,ZTIO,ZTRTN,ZTSK
  1. S ZTIO=""
  1. S ZTRTN="TSKINDX^SD628PST"
  1. S ZTDTH=$$NOW^XLFDT
  1. S ZTDESC="SD*5.3*628 Post Init Data Compiler"
  1. D ^%ZTLOAD
  1. Q
  1. ;
  1. TSKINDX ; Re-Index the Outpatient Encounter file then start background job to compile report data
  1. ; If the 'D' new style index does not exist then re-index file 409.68
  1. N SDECMAIL S SDECMAIL=1 ; Flag to send data collection statistics mail message to installer.
  1. I '$D(^SCE("D")) N DIK S DIK="^SCE(",DIK(1)=".01^D" D ENALL^DIK
  1. ; Run the Resource Management Report Compiler
  1. D EN^SDCED
  1. Q
  1. ;
  1. SCHTSK(OPTNAME) ; Schedule Option
  1. N SCHNM,DIC,X,Y,SDIEN S SDIEN=""
  1. Q:$G(OPTNAME)=""
  1. S DIC(0)="I",X=OPTNAME,DIC="^DIC(19,"
  1. D ^DIC Q:'(Y>0) S SCHNM=+Y
  1. ;D CLEAN^DILF
  1. S FDA(19.2,"?+1,",.01)=SCHNM,X=SCHNM
  1. I 'SCHNM D Q
  1. .W !,OPTNAME," option can't be scheduled - option does not exist"
  1. S FDA(19.2,"?+1,",1)=SCHNM
  1. S FDA(19.2,"?+1,",2)=$P($$NOW^XLFDT,".")_".03"
  1. S FDA(19.2,"?+1,",6)="1D"
  1. D UPDATE^DIE("","FDA","SDIEN")
  1. W !,"Scheduled option ",OPTNAME
  1. D CLEAN^DILF
  1. ; Set the ^XTMP("SDECMAIL",0) Global with the user ID of installer
  1. S ^XTMP("SDECMAIL",0)=$$FMADD^XLFDT($$NOW^XLFDT,7,0,0,)_"^"_+$G(DUZ)
  1. Q
  1. ;
  1. SETPCDEF ; Create the default SCHEDULING PRIMARY CARE STOP CODE list
  1. N LINE,NUM,DATA,DESC,ERR,AMIS,IEN
  1. D MES^XPDUTL(" Activating Default Primary Care Stop Codes...")
  1. F LINE=1:1 S DATA=$P($T(DFPCPRMS+LINE),";;",2,99) Q:DATA="" D
  1. . S AMIS=$P(DATA,U),DESC=$P(DATA,U,2),IEN=$O(^DIC(40.7,"C",AMIS,0))
  1. . S ERR=0
  1. . D EN^XPAR("PKG.SCHEDULING","SDEC PRIMARY CARE STOP CODES","`"_+IEN,1,.ERR)
  1. . I 'ERR D MES^XPDUTL(" - Activated "_DESC) Q
  1. . E D MES^XPDUTL(" - Error Activating "_DESC)
  1. Q
  1. ;
  1. SETSCDEF ; Create the default SCHEDULING SPECIALTY CARE STOP CODE list
  1. N LINE,NUM,DATA,DESC,ERR,AMIS,IEN
  1. W ! D MES^XPDUTL(" Activating Default Specialty Care Stop Codes...")
  1. F LINE=1:1 S DATA=$P($T(DFSCPRMS+LINE),";;",2,99) Q:DATA="" D
  1. . S AMIS=$P(DATA,U),DESC=$P(DATA,U,2),IEN=$O(^DIC(40.7,"C",AMIS,0))
  1. . S ERR=0
  1. . D EN^XPAR("PKG.SCHEDULING","SDEC SPECIALTY CARE STOP CODES","`"_+IEN,1,.ERR)
  1. . I 'ERR D MES^XPDUTL(" - Activated "_DESC) Q
  1. . E D MES^XPDUTL(" - Error Activating "_DESC)
  1. Q
  1. ;
  1. SETMHDEF ; Create the default SCHEDULING MENTAL HEALTH STOP CODE list
  1. N LINE,NUM,DATA,DESC,ERR,AMIS,IEN
  1. W ! D MES^XPDUTL(" Activating Default Mental Health Stop Codes...")
  1. F LINE=1:1 S DATA=$P($T(DFMHPRMS+LINE),";;",2,99) Q:DATA="" D
  1. . S AMIS=$P(DATA,U),DESC=$P(DATA,U,2),IEN=$O(^DIC(40.7,"C",AMIS,0))
  1. . S ERR=0
  1. . D EN^XPAR("PKG.SCHEDULING","SDEC MENTAL HEALTH STOP CODES","`"_+IEN,1,.ERR)
  1. . I 'ERR D MES^XPDUTL(" - Activated "_DESC) Q
  1. . E D MES^XPDUTL(" - Error Activating "_DESC)
  1. Q
  1. ;
  1. REMSTP ; Remove the SCHEDULING STOP CODE list
  1. N LINE,NUM,DATA,DESC,ERR,CNT
  1. W ! D GETLST^XPAR(.LIST,"PKG.SCHEDULING","SDEC PRIMARY CARE STOP CODES","B")
  1. I +$G(LIST) D
  1. . S CNT=0 F S CNT=$O(LIST(CNT)) Q:CNT="" D
  1. . . S NUM=$P(LIST(CNT,"N"),U),DESC=$P(LIST(CNT,"N"),U,2),ERR=0
  1. . . D EN^XPAR("PKG.SCHEDULING","SDEC PRIMARY CARE STOP CODES","`"_+NUM,"@",.ERR)
  1. D GETLST^XPAR(.LIST,"PKG.SCHEDULING","SDEC SPECIALTY CARE STOP CODES","B")
  1. I +$G(LIST) D
  1. . S CNT=0 F S CNT=$O(LIST(CNT)) Q:CNT="" D
  1. . . S NUM=$P(LIST(CNT,"N"),U),DESC=$P(LIST(CNT,"N"),U,2),ERR=0
  1. . . D EN^XPAR("PKG.SCHEDULING","SDEC SPECIALTY CARE STOP CODES","`"_+NUM,"@",.ERR)
  1. D GETLST^XPAR(.LIST,"PKG.SCHEDULING","SDEC MENTAL HEALTH STOP CODES","B")
  1. I +$G(LIST) D
  1. . S CNT=0 F S CNT=$O(LIST(CNT)) Q:CNT="" D
  1. . . S NUM=$P(LIST(CNT,"N"),U),DESC=$P(LIST(CNT,"N"),U,2),ERR=0
  1. . . D EN^XPAR("PKG.SCHEDULING","SDEC MENTAL HEALTH STOP CODES","`"_+NUM,"@",.ERR)
  1. Q
  1. ;
  1. REGRPC(REGRPC,REGOPT) ; Register RPC
  1. N X,Y,DIC,FDA,RPCIEN,OPTIEN,SDIEN
  1. Q:$G(REGRPC)=""!($G(REGOPT)="")
  1. S DIC(0)="I",X=REGRPC,DIC="^XWB(8994,"
  1. D ^DIC Q:'(Y>0) S RPCIEN=+Y
  1. D CLEAN^DILF
  1. S DIC(0)="I",X=REGOPT,DIC="^DIC(19,"
  1. D ^DIC Q:'(Y>0) S OPTIEN=+Y
  1. D CLEAN^DILF
  1. S FDA(19.05,"?+1,"_OPTIEN_",",.01)=RPCIEN
  1. D UPDATE^DIE("","FDA","SDIEN")
  1. W !,"Added RPC ",REGRPC," to option ",REGOPT
  1. Q
  1. ;
  1. DFPCPRMS ;
  1. ;;322^Comprehensive Women's Primary Care Clinic
  1. ;;323^Primary Care/Medicine
  1. ;;350^GeriPACT
  1. Q
  1. ;
  1. DFSCPRMS ;
  1. ;;123^NUTRITION/DIETETICS-INDIVIDUAL
  1. ;;149^Radiation Therapy Treatment
  1. ;;180^Dental
  1. ;;197^POLYTRAUMA/TRAUMATIC BRAIN INJURY (TBI)-INDI
  1. ;;201^PHYSICAL MED & REHAB SVC
  1. ;;203^AUDIOLOGY
  1. ;;204^SPEECH LANGUAGE PATHOLOGY
  1. ;;205^PHYSICAL THERAPY
  1. ;;206^OCCUPATIONAL THERAPY
  1. ;;210^SPINAL CORD INJURY
  1. ;;214^KINESIOTHERAPY
  1. ;;301^GENERAL INTERNAL MEDICINE
  1. ;;302^ALLERGY IMMUNOLOGY
  1. ;;303^CARDIOLOGY
  1. ;;304^DERMATOLOGY
  1. ;;305^ENDO/METAB (EXCEPT DIABETES)
  1. ;;306^DIABETES
  1. ;;307^GASTROENTEROLOGY
  1. ;;308^HEMATOLOGY
  1. ;;310^INFECTIOUS DISEASE
  1. ;;312^PULMONARY/CHEST
  1. ;;313^RENAL/NEPHROL (EXCEPT DIALYSIS)
  1. ;;314^RHEUMATOLOGY/ARTHRITIS
  1. ;;315^NEUROLOGY
  1. ;;316^ONCOLOGY/TUMOR
  1. ;;317^ANTI-COAGULATION CLINIC
  1. ;;318^Geriatric Problem-Focused Clinic
  1. ;;337^HEPATOLOGY CLINIC
  1. ;;401^GENERAL SURGERY
  1. ;;403^ENT
  1. ;;404^GYNECOLOGY
  1. ;;406^NEUROSURGERY
  1. ;;407^OPHTHALMOLOGY
  1. ;;408^OPTOMETRY
  1. ;;409^ORTHOPEDICS
  1. ;;410^PLASTIC SURGERY
  1. ;;411^PODIATRY
  1. ;;413^THORACIC SURGERY
  1. ;;414^UROLOGY
  1. ;;415^VASCULAR SURGERY
  1. ;;420^PAIN CLINIC
  1. Q
  1. ;
  1. DFMHPRMS ;
  1. ;;502^MH CLINIC IND
  1. ;;509^PSYCHIATRY INDIV
  1. ;;510^PSYCHOLOGY IND
  1. ;;513^SUB USE DISORDER INDIV
  1. ;;540^PCT-PTSD IND
  1. Q