[613] | 1 | PXRMPTTR ;SLC/PKR - Routines for term print templates ;06/01/2007
|
---|
| 2 | ;;2.0;CLINICAL REMINDERS;**4,6**;Feb 04, 2005;Build 123
|
---|
| 3 | ;
|
---|
| 4 | ;====================================================
|
---|
| 5 | DATE(FIND0,PIECE,FLDNUM,TITLE,RJC,PAD,FILENUM,FLG) ;Standard DATE
|
---|
| 6 | N DATE,TEXT
|
---|
| 7 | S DATE=$P($G(FIND0),U,PIECE)
|
---|
| 8 | I DATE'="" D
|
---|
| 9 | . S DATE=$$FMTE^XLFDT(DATE,"D")
|
---|
| 10 | . S TEXT=$$RJ^XLFSTR(TITLE,RJC,PAD)
|
---|
| 11 | . S TEXT=TEXT_" "_DATE
|
---|
| 12 | . W !,TEXT
|
---|
| 13 | Q
|
---|
| 14 | ;
|
---|
| 15 | ;====================================================
|
---|
| 16 | GENIEN(FINDING) ;Return internal entry number for findings.
|
---|
| 17 | N F0,IEN,PREFIX,ROOT,VPTR
|
---|
| 18 | S ROOT="^PXRMD(811.5,D0,20,FINDING,0)"
|
---|
| 19 | S F0=@ROOT
|
---|
| 20 | S VPTR=$P(F0,U,1)
|
---|
| 21 | S IEN=$P(VPTR,";",1)
|
---|
| 22 | S ROOT=$P(VPTR,";",2)
|
---|
| 23 | I '$D(PXRMFVPL) N PXRMFVPL D BLDRLIST^PXRMVPTR(811.52,.01,.PXRMFVPL)
|
---|
| 24 | S VPTR=PXRMFVPL(ROOT)
|
---|
| 25 | S PREFIX=$P(VPTR,U,4)
|
---|
| 26 | Q " (FI("_+FINDING_")="_PREFIX_"("_IEN_"))"
|
---|
| 27 | ;
|
---|
| 28 | ;====================================================
|
---|
| 29 | ENTRYNAM(VPTR) ;Given the variable pointer return the entry name. The
|
---|
| 30 | ;variable pointer list contains the information necessary to do the
|
---|
| 31 | ;look up.
|
---|
| 32 | N IEN,FILENUM,NAME,ROOT
|
---|
| 33 | S IEN=$P(VPTR,";",1)
|
---|
| 34 | S ROOT=$P(VPTR,";",2)
|
---|
| 35 | S FILENUM=$P(PXRMFVPL(ROOT),U,1)
|
---|
| 36 | S NAME=$$GET1^DIQ(FILENUM,IEN,.01,"","","")
|
---|
| 37 | Q NAME
|
---|
| 38 | ;
|
---|
| 39 | ;====================================================
|
---|
| 40 | PFIND ;Print the reminder term finding multiple.
|
---|
| 41 | N CFP,FIELD,FINDING,FIND0,HFCAT,HFIEN,PAD,PXRMFVPL
|
---|
| 42 | N RJC,SCNT,SIEN,STAT0,TEXT
|
---|
| 43 | ;If called by a FileMan print build the variable pointer list.
|
---|
| 44 | I '$D(PXRMFVPL) N PXRMFVPL D BLDRLIST^PXRMVPTR(811.52,.01,.PXRMFVPL)
|
---|
| 45 | S PAD=" ",RJC=31
|
---|
| 46 | S FINDING=0
|
---|
| 47 | F S FINDING=$O(^PXRMD(811.5,D0,20,FINDING)) Q:+FINDING=0 D
|
---|
| 48 | . S FIND0=^PXRMD(811.5,D0,20,FINDING,0)
|
---|
| 49 | . S FIELD=$P(FIND0,U,1)
|
---|
| 50 | . S TEXT=$$RJ^XLFSTR("Finding Item:",RJC,PAD)
|
---|
| 51 | . S TEXT=TEXT_" "_$$ENTRYNAM(FIELD)
|
---|
| 52 | . S TEXT=TEXT_" "_$$TRMIEN(FINDING)
|
---|
| 53 | . W !!,TEXT
|
---|
| 54 | .;
|
---|
| 55 | . S TEXT=$$RJ^XLFSTR("Finding Type:",RJC,PAD)
|
---|
| 56 | . S TEXT=TEXT_" "_$$TFTYPE(FIELD)
|
---|
| 57 | . W !,TEXT
|
---|
| 58 | . I FIND0["AUTTHF" D
|
---|
| 59 | .. S HFIEN=$P($P(FIND0,U),";")
|
---|
| 60 | .. S HFCAT=$P($G(^AUTTHF(HFIEN,0)),U,3)
|
---|
| 61 | .. S HFCAT=$P($G(^AUTTHF(HFCAT,0)),U)
|
---|
| 62 | .. S TEXT=$$RJ^XLFSTR("Health Factor Category:",RJC,PAD)
|
---|
| 63 | .. S TEXT=TEXT_" "_HFCAT
|
---|
| 64 | .. W !,TEXT
|
---|
| 65 | .;
|
---|
| 66 | . S FIELD=$P(FIND0,U,4)
|
---|
| 67 | . I $L(FIELD)>0 D
|
---|
| 68 | .. S TEXT=$$RJ^XLFSTR("Match Frequency/Age:",RJC,PAD)
|
---|
| 69 | .. S TEXT=TEXT_" "_$$GENFREQ^PXRMPTD2(FIND0)
|
---|
| 70 | .. W !,TEXT
|
---|
| 71 | .;
|
---|
| 72 | . D DATE(FIND0,8,9,"Beginning Date/Time:",RJC,PAD)
|
---|
| 73 | . D DATE(FIND0,11,12,"Ending Date/Time Date:",RJC,PAD)
|
---|
| 74 | . D SFDISP(FIND0,14,17,"Occurrence Count:",RJC,PAD)
|
---|
| 75 | . D SFDISP(FIND0,9,10,"Use Inactive Problems:",RJC,PAD)
|
---|
| 76 | . D SFDISP(FIND0,10,11,"Within Category Rank:",RJC,PAD)
|
---|
| 77 | . D SFDISP(FIND0,12,13,"MH Scale:",RJC,PAD)
|
---|
| 78 | . D SFDISP(FIND0,16,28,"Include Visit Data:",RJC,PAD)
|
---|
| 79 | . D SFDISP(FIND0,13,16,"Rx Type:",RJC,PAD)
|
---|
| 80 | . D SFDISP(FIND0,15,27,"Use Start Date:",RJC,PAD)
|
---|
| 81 | . I $D(^PXRMD(811.5,D0,20,FINDING,5,0))=1 D
|
---|
| 82 | .. S (SCNT,SIEN)=0
|
---|
| 83 | .. F S SIEN=$O(^PXRMD(811.5,D0,20,FINDING,5,SIEN)) Q:SIEN="" D
|
---|
| 84 | ... S STAT0=$G(^PXRMD(811.5,D0,20,FINDING,5,SIEN,0))
|
---|
| 85 | ... D STATUS(STAT0,"Status List:") S SCNT=SCNT+1
|
---|
| 86 | .;
|
---|
| 87 | . S FIND0=$G(^PXRMD(811.5,D0,20,FINDING,3))
|
---|
| 88 | . D SFDISP(FIND0,1,14,"Condition:",RJC,PAD)
|
---|
| 89 | . D SFDISP(FIND0,2,15,"Condition Case Sensitive:",RJC,PAD)
|
---|
| 90 | . D SFDISP(FIND0,3,18,"Use Status/Cond in Search:",RJC,PAD)
|
---|
| 91 | . I $G(^PXRMD(811.5,D0,20,FINDING,15))'="" D
|
---|
| 92 | .. S CFP=$$RJ^XLFSTR("Computed Finding Parameter:",RJC,PAD)
|
---|
| 93 | .. S CFP=CFP_" "_$G(^PXRMD(811.5,D0,20,FINDING,15))
|
---|
| 94 | .. W !,CFP
|
---|
| 95 | Q
|
---|
| 96 | ;
|
---|
| 97 | ;====================================================
|
---|
| 98 | SFDISP(FIND0,PIECE,FLDNUM,TITLE,RJC,PAD) ;Standard finding multiple
|
---|
| 99 | ;field display.
|
---|
| 100 | N FIELD,TEXT
|
---|
| 101 | S FIELD=$P(FIND0,U,PIECE)
|
---|
| 102 | I $L(FIELD)>0 D
|
---|
| 103 | . S TEXT=$$RJ^XLFSTR(TITLE,RJC,PAD)
|
---|
| 104 | . S TEXT=TEXT_" "_$$EXTERNAL^DILFD(811.52,FLDNUM,"",FIELD,"")
|
---|
| 105 | . I FLDNUM=13 S TEXT=TEXT_" - "_$$SPECIAL^PXRMPTDF(FIND0,FIELD)
|
---|
| 106 | . W !,TEXT
|
---|
| 107 | Q
|
---|
| 108 | ;
|
---|
| 109 | ;====================================================
|
---|
| 110 | STATUS(STAT0,TITLE) ; Status display
|
---|
| 111 | I $L(STAT0)>0 D
|
---|
| 112 | . N STATUS
|
---|
| 113 | . I SCNT=0 S STATUS=$$RJ^XLFSTR(TITLE,RJC,PAD)
|
---|
| 114 | . I SCNT>0 S STATUS=$$RJ^XLFSTR("",RJC,PAD)
|
---|
| 115 | . S STATUS=STATUS_" "_STAT0
|
---|
| 116 | . W !,STATUS
|
---|
| 117 | Q
|
---|
| 118 | ;
|
---|
| 119 | ;====================================================
|
---|
| 120 | TFTYPE(VPTR) ;Return Term finding type
|
---|
| 121 | N ROOT,TFTYPE
|
---|
| 122 | S ROOT=$P(VPTR,";",2)
|
---|
| 123 | I '$D(PXRMFVPL) N PXRMFVPL D BLDRLIST^PXRMVPTR(811.52,.01,.PXRMFVPL)
|
---|
| 124 | S TFTYPE=$P(PXRMFVPL(ROOT),U,2)
|
---|
| 125 | Q TFTYPE
|
---|
| 126 | ;
|
---|
| 127 | ;====================================================
|
---|
| 128 | TRMIEN(FINDING) ;Return internal entry number for TERM findings.
|
---|
| 129 | N F0,IEN,PREFIX,ROOT,VPTR
|
---|
| 130 | S ROOT="^PXRMD(811.5,D0,20,FINDING,0)"
|
---|
| 131 | S F0=@ROOT
|
---|
| 132 | S VPTR=$P(F0,U,1)
|
---|
| 133 | S IEN=$P(VPTR,";",1)
|
---|
| 134 | S ROOT=$P(VPTR,";",2)
|
---|
| 135 | I '$D(PXRMFVPL) N PXRMFVPL D BLDRLIST^PXRMVPTR(811.52,.01,.PXRMFVPL)
|
---|
| 136 | S VPTR=PXRMFVPL(ROOT)
|
---|
| 137 | S PREFIX=$P(VPTR,U,4)
|
---|
| 138 | Q " (FI("_+FINDING_")="_PREFIX_"("_IEN_"))"
|
---|
| 139 | ;
|
---|