Ignore:
Timestamp:
Dec 4, 2009, 8:26:01 PM (14 years ago)
Author:
George Lilly
Message:

WorldVistAEHR overlayed on FOIAVistA

Location:
FOIAVistA/tag/r
Files:
1 edited
1 copied

Legend:

Unmodified
Added
Removed
  • FOIAVistA/tag/r/CLINICAL_REMINDERS-PXRM/PXRMXSL2.m

    r628 r636  
    1 PXRMXSL2 ; SLC/AGP - Process Visits/Appts Reminder Due report; 08/16/2007
    2  ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123
     1PXRMXSL2 ; SLC/AGP - Process Visits/Appts Reminder Due report; 06/07/2006
     2 ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21
    33 ;
    44APPTS ;
     
    66 N APPTDT,BDT,EDT,NODE,DFN,FACILITY,HLIEN,NAM
    77 S NAM="All Locations"
    8  S BDT=PXRMBDT
    9  ;I PXRMBDT["." S BDT=PXRMBDT
    10  ;E  S BDT=PXRMBDT-.0001
     8 I PXRMBDT["." S BDT=PXRMBDT
     9 E  S BDT=PXRMBDT-.0001
    1110 I PXRMEDT["." S EDT=PXRMEDT
    1211 E  S EDT=PXRMEDT+.2359
     
    4140 ;
    4241SDAM301(BD,ED,PXRMSEL,PXRMFD,PXRMREP) ;
    43  N ARRAY,BUSY,FACILITY,NAM,OPIEN,STATUS,TEXT
     42 N ARRAY,BUSY,FACILITY,NAM,OPIEN,STATUS
    4443 K ^TMP($J,"PXRM FUTURE APPT")
    4544 K ^TMP($J,"PXRM FACILITY FUTURE APPT")
     
    6463 S COUNT=$$SDAPI^SDAMA301(.ARRAY)
    6564 S END=$H
    66  S TEXT="Elapsed time for call to the Scheduling Package: "_$$DETIME^PXRMXSL1(START,END)
    67  S ^XTMP(PXRMXTMP,"TIMING","SCHEDULING")=TEXT
    68  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) W !,TEXT
     65 I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DETIME^PXRMXSL1(START,END,"Total amount of time to call the Scheduling Package")
    6966 I COUNT<0 D  Q
    7067 .N CNT
     
    7269 .F  S CNT=$O(^TMP($J,"SDAMA301",CNT)) Q:CNT'>0  D
    7370 ..S DBERR(CNT)=$G(^TMP($J,"SDAMA301",CNT))
    74  .D ERRMSG^PXRMXDT1("E")
     71 .D DBDOWN^PXRMXDT1("E")
    7572 ;
    7673LOOP ;
    7774 I PXRMFD'="P"!(PXRMSEL'="L") Q
    78  N APPTDT,CIEN,DFN,FUTDT,NODE,TEXT,VIEN
     75 N APPTDT,CIEN,DFN,FUTDT,NODE,VIEN
    7976 ;LOOP THROUGH PATIENT
    8077 S START=$H
     
    10299 S END=$H
    103100 I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DONE^PXRMXBSY("Done")
    104  S TEXT="Elapsed time for sorting SDAMA301 output: "_$$DETIME^PXRMXSL1(START,END)
    105  S ^XTMP(PXRMXTMP,"TIMING","SCHEDULE SORT")=TEXT
    106  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) W !,TEXT
     101 I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DETIME^PXRMXSL1(START,END,"Sorting SDAMA301 Output")
    107102 Q
    108103 ;
    109104 ;Scan visit file to build list of patients
    110105VISITS ;
    111  N BUSY,DAS,DATE,DFN,DS,END,ETIME,HLOC,NF
    112  N SC,START,TEMP,TEXT,TGLIST,TIME
    113  S START=$H
    114  K ^TMP($J,"PXRM PATIENT LIST")
    115  I '(PXRMQUE!$D(IO("S"))) D INIT^PXRMXBSY(.BUSY)
    116  W !,"Building patient list "
    117  K ^TMP($J,"HLOCL"),^TMP($J,"PLIST")
    118  M ^TMP($J,"HLOCL")=^XTMP(PXRMXTMP,"HLOC")
    119  D FPLIST^PXRMLOCL(9000010,"HLOCL",-1,PXRMBDT,PXRMEDT,"PLIST")
    120  K ^TMP($J,"HLOCL")
    121  S DFN=""
    122  F  S DFN=$O(^TMP($J,"PLIST",DFN)) Q:DFN=""  D
    123  . S NF=0
    124  . F  S NF=$O(^TMP($J,"PLIST",DFN,NF)) Q:NF=""  D
    125  .. S TEMP=^TMP($J,"PLIST",DFN,NF)
    126  .. S SC=$P(TEMP,U,4)
    127  .. I '$D(PXRMSCAT(SC)) Q
    128  .. ;Remove test Patients
    129  .. I 'PXRMTPAT,$$TESTPAT^VADPT(DFN)=1 Q
    130  .. ;Remove deceased patients
    131  .. I 'PXRMDPAT,$P($G(^DPT(DFN,.35)),U,1)>0 Q
    132  .. S DAS=$P(TEMP,U,1),DATE=$P(TEMP,U,2),HLOC=$P(TEMP,U,3)
    133  .. S ^TMP($J,"PXRM PATIENT LIST",DFN,HLOC,DATE,DAS)=""
    134  K ^TMP($J,"PLIST")
    135  S END=$H
    136  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DONE^PXRMXBSY("Done")
    137  S TEXT="Elapsed time for building patient list: "_$$DETIME^PXRMXSL1(START,END)
    138  S ^XTMP(PXRMXTMP,"TIMING","PATIENT LIST")=TEXT
    139  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) W !,TEXT
    140  I PXRMREP="D" D SDAM301(PXRMBDT,PXRMEDT,PXRMSEL,PXRMFD,PXRMREP)
    141  I DBDOWN=1 Q
    142  S START=$H
    143  S BUSY=0
    144  I '(PXRMQUE!$D(IO("S"))) D INIT^PXRMXBSY(.BUSY)
    145  N HLIEN,NAM,FACILITY,LSEL,NODE
    146  S DFN=0 F  S DFN=$O(^TMP($J,"PXRM PATIENT LIST",DFN)) Q:DFN'>0  D
    147  .S HLIEN=0
    148  .F  S HLIEN=$O(^TMP($J,"PXRM PATIENT LIST",DFN,HLIEN)) Q:HLIEN'>0  D
    149  ..I ('(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")))&(DBDOWN=0) D SPIN^PXRMXBSY("Removing Invalid Encounter(s)",.BUSY)
    150  ..S NODE=$G(^XTMP(PXRMXTMP,"HLOC",HLIEN))
    151  ..S FACILITY=$P(NODE,U),NAM=$P(NODE,U,2)
    152  ..D TMP^PXRMXSL1(DFN,NAM,FACILITY,HLIEN)
    153  ..S TEMP=$P(PXRMLCSC,U,1)
    154  ..S LSEL=$S(TEMP="CS":$P(NODE,U,3),TEMP="GS":$P(NODE,U,3),1:HLIEN)
    155  ..D MARK^PXRMXSL1(LSEL)
    156  ..S ^TMP($J,"PXRM PATIENT EVAL",DFN)=""
    157  S END=$H
    158  S TEXT="Elapsed time for removing invalid encounter(s): "_$$DETIME^PXRMXSL1(START,END)
    159  S ^XTMP(PXRMXTMP,"TIMING","REMOVING INVALID ENCOUNTER(S)")=TEXT
    160  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) W !,TEXT
    161  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DONE^PXRMXBSY("Done")
    162  Q
    163  ;
    164 VISITSO ; Old entry point
    165106 N BTIME,DAS,DATE,DEND,DFN,DONE,DS,ETIME,HLOC,INVBD,INVDATE,INVDT,INVED
    166  N NFOUND,SC,TEMP,TEXT,TGLIST,TIME
     107 N NFOUND,SC,TEMP,TGLIST,TIME
    167108 N DOD,START,END
    168109 S START=$H
     
    175116 S INVBD=9999999-$P(PXRMBDT,".",1),BTIME=+("."_$P(PXRMBDT,".",2))
    176117 S INVED=9999999-$P(DEND,".",1),ETIME=+("."_$P(DEND,".",2))
    177  S DS=INVED-.000001
     118 S DS=INVED-1
    178119 S HLOC=""
    179120 F  S HLOC=$O(^XTMP(PXRMXTMP,"HLOC",HLOC)) Q:HLOC=""  D
     
    203144 S END=$H
    204145 I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DONE^PXRMXBSY("Done")
    205  S TEXT="Elapsed time for building patient list: "_$$DETIME^PXRMXSL1(START,END)
    206  S ^XTMP(PXRMXTMP,"TIMING","PATIENT LIST")=TEXT
    207  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) W !,TEXT
    208  I PXRMREP="D" D SDAM301(PXRMBDT,PXRMEDT,PXRMSEL,PXRMFD,PXRMREP)
    209  ;D SDAM301(PXRMBDT-.0001,PXRMEDT,PXRMSEL,PXRMFD,PXRMREP)
     146 I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DETIME^PXRMXSL1(START,END,"Building Patient List")
     147 D SDAM301(PXRMBDT-.0001,PXRMEDT,PXRMSEL,PXRMFD,PXRMREP)
    210148 ;
    211149 I DBDOWN=1 Q
    212150 S START=$H
    213151 S BUSY=0
     152 I DBDOWN=1 Q
    214153 N NODE
    215154 I '(PXRMQUE!$D(IO("S"))) D INIT^PXRMXBSY(.BUSY)
     
    227166 ..S ^TMP($J,"PXRM PATIENT EVAL",DFN)=""
    228167 S END=$H
    229  S TEXT="Elapsed time for removing invalid encounter(s): "_$$DETIME^PXRMXSL1(START,END)
    230  S ^XTMP(PXRMXTMP,"TIMING","REMOVING INVALID ENCOUNTER(S)")=TEXT
    231  I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) W !,TEXT
    232168 I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DONE^PXRMXBSY("Done")
     169 I '(PXRMQUE!$D(IO("S"))!(PXRMTABS="Y")) D DETIME^PXRMXSL1(START,END,"Removing Invalid Encounter(s)")
    233170 Q
Note: See TracChangeset for help on using the changeset viewer.