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/PXRMEUT1.m

    r628 r636  
    1 PXRMEUT1 ; SLC/PKR - General extract utilities ;05/08/2007
    2  ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123
     1PXRMEUT1 ; SLC/PKR - General extract utilities ;08/09/2006
     2 ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21
    33 ;=================================================
    4 CLDATES ;Cleanup entries in ^TMP("PXRMDDOC",$J) before making date checks.
    5  ;For drug findings consolidate PS(55, PS(55NVA, and PSRX( back to
    6  ;PSDRUG(.
    7  N FI,FIND0,ITEM,GLOBAL,LIST
    8  S FIND0=""
    9  F  S FIND0=$O(^TMP("PXRMDDOC",$J,FIND0)) Q:FIND0=""  D
    10  . S FI=$P(FIND0,U,1)
    11  . S GLOBAL=$P(FI,";",2)
    12  . I GLOBAL'["PS" Q
    13  . S GLOBAL="PSDRUG("
    14  . S ITEM=$P(FI,";",1)
    15  . S FI=ITEM_";"_GLOBAL_U_$P(FIND0,U,2,11)
    16  . S LIST(FIND0)=FI
    17  ;
    18  S FIND0=""
    19  F  S FIND0=$O(LIST(FIND0)) Q:FIND0=""  D
    20  . S FI=LIST(FIND0)
    21  . S ^TMP("PXRMDDOC",$J,FI)=^TMP("PXRMDDOC",$J,FIND0)
    22  . K ^TMP("PXRMDDOC",$J,FIND0)
    23  Q
     4DCONV(DATE,LBBDT,LBEDT) ;Convert dates to actual values.
     5 I DATE=0 Q DATE
     6 N PXRMDATE
     7 S PXRMDATE=$S(DATE["BDT":LBBDT,1:LBEDT)
     8 S DATE=$$STRREP^PXRMUTIL(DATE,"BDT","T")
     9 Q $$CTFMD^PXRMDATE(DATE)
    2410 ;
    2511 ;=================================================
     
    3622 ;
    3723 ;=================================================
    38 DCONV(DATE,LBBDT,LBEDT) ;Convert dates to actual values.
    39  I DATE=0 Q DATE
    40  N PXRMDATE
    41  S PXRMDATE=$S(DATE["BDT":LBBDT,1:LBEDT)
    42  S DATE=$$STRREP^PXRMUTIL(DATE,"BDT","T")
    43  Q $$CTFMD^PXRMDATE(DATE)
    44  ;
    45  ;=================================================
    4624DOCDATES(RULESET,LBBDT,LBEDT,NL,OUTPUT) ;
    47  N EM,FRACT,FRDATA,FRDATES,FRIEN,FRLST,FRLIEN,FROLST,FROUT,FRPAT
    48  N FRPERM,FRSTRT,FRTIEN,FRTYP,FSEQ,OPER,PXRMFVPL
     25 N FINDPA,FRACT,FRDATA,FRDATES,FRIEN,FRLST,FRLIEN,FROLST,FROUT,FRPAT
     26 N FRPERM,FRSTRT,FRTIEN,FRTYP,FSEQ,PXRMDATE,PXRMFVPL
    4927 N RRIEN,RSDATA,RSDATES,RBDT,REDT,SEQ,SUB
    50  I $G(PXRMDDOC)=2 D CLDATES
    5128 ;Build the variable pointer list.
    5229 D BLDRLIST^PXRMVPTR(811.902,.01,.PXRMFVPL)
     
    5532 . S SUB=$O(^PXRM(810.4,RULESET,30,"B",SEQ,"")) Q:'SUB
    5633 . S RSDATA=$G(^PXRM(810.4,RULESET,30,SUB,0)) Q:RSDATA=""
    57  . S OPER=$P(RSDATA,U,3)
    58  . S OPER=$$EXTERNAL^DILFD(810.41,.03,"",OPER,.EM)
    5934 . S RSDATES=$G(^PXRM(810.4,RULESET,30,SUB,1))
    6035 .;Finding rule ien.
     
    6944 .;Determine RBDT and REDT
    7045 . D RDATES(RSDATES,FRDATES,LBBDT,LBEDT,.RBDT,.REDT)
     46 . S PXRMDATE=LBEDT
     47 . S $P(FINDPA(0),U,8)=RBDT,$P(FINDPA(0),U,11)=REDT
    7148 . S NL=NL+1,OUTPUT(NL)=""
    7249 . S NL=NL+1,OUTPUT(NL)="SEQUENCE "_SEQ_" "_$P(FRDATA,U,1)
    73  . S NL=NL+1,OUTPUT(NL)=" Operation: "_OPER
    7450 .;Term finding rules
    75  . I FRTYP=1 D TERM(FRTIEN,LBBDT,LBEDT,RBDT,REDT,.PXRMFVPL,.NL,.OUTPUT)
     51 . I FRTYP=1 D TERM(FRTIEN,.FINDPA,.PXRMFVPL,.NL,.OUTPUT)
    7652 .;Reminder Definition List Rule
    77  . I FRTYP=2 D REM(RRIEN,LBBDT,LBEDT,RBDT,REDT,.PXRMFVPL,.NL,.OUTPUT)
     53 . I FRTYP=2 D REM(RRIEN,.FINDPA,.PXRMFVPL,.NL,.OUTPUT)
    7854 Q
    7955 ;
    8056 ;=================================================
    81 FMULPRT(FARR,PXRMFVPL,NL,OUTPUT) ;Print the finding multiple
     57FMULPRT(DEFARR,FINDPA,PXRMFVPL,NL,OUTPUT) ;Print the finding multiple
    8258 ;information.
    83  ;Q
    84  N BDT,EDT,DERROR,FNAME,FTYPE,IND,NOCC,TBDT,TEDT,TEMP,VPTR
     59 N BDT,EDT,FNAME,FTYPE,IND,NOCC,PFINDPA,TFINDPA,VPTR
    8560 S IND=0
    86  F  S IND=+$O(FARR(20,IND)) Q:IND=0  D
    87  . S VPTR=$P(FARR(20,IND,0),U,1)
     61 F  S IND=+$O(DEFARR(20,IND)) Q:IND=0  D
     62 . S VPTR=$P(DEFARR(20,IND,0),U,1)
    8863 . S FNAME=$$ENTRYNAM^PXRMPTD2(VPTR)
    8964 . S FTYPE=$$FTYPE^PXRMPTD2(VPTR,1)
    9065 . S NL=NL+1,OUTPUT(NL)="  FINDING "_IND_"-"_FTYPE_"."_FNAME
     66 . K PFINDPA,TFINDPA
     67 . M TFINDPA=DEFARR(20,IND)
    9168 .;Set the finding parameters.
    92  . D SSPAR^PXRMUTIL(FARR(20,IND,0),.NOCC,.BDT,.EDT)
     69 . D SPFINDPA^PXRMTERM(.FINDPA,.TFINDPA,.PFINDPA)
     70 . D SSPAR^PXRMUTIL(PFINDPA(0),.NOCC,.BDT,.EDT)
    9371 . S NL=NL+1,OUTPUT(NL)="   Beginning Date/Time: "_$$FMTE^XLFDT(BDT,"5Z")
    9472 . S NL=NL+1,OUTPUT(NL)="   Ending Date/Time:    "_$$FMTE^XLFDT(EDT,"5Z")
    95  . I $G(PXRMDDOC)'=2 Q
    96  . S DERROR=0
    97  . S TEMP=$G(^TMP("PXRMDDOC",$J,$P(FARR(20,IND,0),U,1,11)))
    98  .;If TEMP is null then no evaluation was required and the check
    99  .;cannot be made
    100  . I TEMP="" Q
    101  . I $P(TEMP,U,1)'=BDT D
    102  .. S DERROR=1
    103  .. S NL=NL+1,OUTPUT(NL)="  There is a consistency problem with the beginning date!"
    104  .. S NL=NL+1,OUTPUT(NL)="  Date used to build the list was: "_$$FMTE^XLFDT($P(TEMP,U,1),"5Z")
    105  . I $P(TEMP,U,2)'=EDT D
    106  .. S DERROR=1
    107  .. S NL=NL+1,OUTPUT(NL)="  There is a consistency problem with the ending date!"
    108  .. S NL=NL+1,OUTPUT(NL)="  Date used to build the list was: "_$$FMTE^XLFDT($P(TEMP,U,2),"5Z")
    109  . I DERROR D
    110  .. S NL=NL+1,OUTPUT(NL)="  Please notify the developers."
    111  .. ;S NL=NL+1,OUTPUT(NL)="  Please enter a Remedy ticket."
    112  .. S NL=NL+1,OUTPUT(NL)=" "
    11373 Q
    11474 ;
     
    12282 I RBDT="" S RBDT=0
    12383 I REDT="" S REDT=LBEDT
    124  I REDT=0 S REDT=DT
     84 I REDT=0 S REDT=$$DT^XLFDT
    12585 ;Convert RBDT and REDT to FileMan dates.
    12686 S RBDT=$$DCONV(RBDT,LBBDT,LBEDT)
     
    13797 ;
    13898 ;=================================================
    139 REM(IEN,LBBDT,LBEDT,RBDT,REDT,PXRMFVPL,NL,OUTPUT) ;
     99REM(IEN,FINDPA,PXRMFVPL,NL,OUTPUT) ;
    140100 N DEFARR
    141101 D DEF^PXRMLDR(IEN,.DEFARR)
    142  D DATES^PXRMRUL1(LBBDT,LBEDT,RBDT,REDT,.DEFARR)
    143102 S NL=NL+1,OUTPUT(NL)=" REMINDER DEFINITION "_$P(DEFARR(0),U,1)
    144  D FMULPRT(.DEFARR,.PXRMFVPL,.NL,.OUTPUT)
     103 D FMULPRT(.DEFARR,.FINDPA,.PXRMFVPL,.NL,.OUTPUT)
    145104 Q
    146105 ;
    147106 ;=================================================
    148 TERM(IEN,LBBDT,LBEDT,RBDT,REDT,PXRMFVPL,NL,OUTPUT) ;
     107TERM(IEN,FINDPA,PXRMFVPL,NL,OUTPUT) ;
    149108 N TERMARR
    150109 D TERM^PXRMLDR(IEN,.TERMARR)
    151  D DATES^PXRMRUL1(LBBDT,LBEDT,RBDT,REDT,.TERMARR)
    152110 S NL=NL+1,OUTPUT(NL)=" TERM "_$P(TERMARR(0),U,1)
    153  D FMULPRT(.TERMARR,.PXRMFVPL,.NL,.OUTPUT)
     111 D FMULPRT(.TERMARR,.FINDPA,.PXRMFVPL,.NL,.OUTPUT)
    154112 Q
    155113 ;
Note: See TracChangeset for help on using the changeset viewer.