| 1 | PXRMDRCL ; SLC/PKR - Handle VA DRUG CLASS findings. ;08/04/2006
 | 
|---|
| 2 |  ;;2.0;CLINICAL REMINDERS;**4**;Feb 04, 2005;Build 21
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  ;====================================================
 | 
|---|
| 5 | EVALFI(DFN,DEFARR,ENODE,FIEVAL) ;Evaluate drug class (file #50.605) findings.
 | 
|---|
| 6 |  D EVALFI^PXRMDRGR(DFN,.DEFARR,ENODE,"VAC",.FIEVAL)
 | 
|---|
| 7 |  Q
 | 
|---|
| 8 |  ;
 | 
|---|
| 9 |  ;====================================================
 | 
|---|
| 10 | EVALTERM(DFN,FINDPA,ENODE,TERMARR,TFIEVAL) ;Evaluate drug class
 | 
|---|
| 11 |  ;(file #50.605) terms.
 | 
|---|
| 12 |  D EVALTERM^PXRMDRGR(DFN,.FINDPA,ENODE,"VAC",.TERMARR,.TFIEVAL)
 | 
|---|
| 13 |  Q
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 |  ;====================================================
 | 
|---|
| 16 | EVALPL(FINDPA,ENODE,TERMARR,PLIST) ;Evaluate VA Drug Class terms
 | 
|---|
| 17 |  ;for building patient lists.
 | 
|---|
| 18 |  D EVALPL^PXRMDRGR(.FINDPA,ENODE,"VAC",.TERMARR,.PLIST)
 | 
|---|
| 19 |  Q
 | 
|---|
| 20 |  ;
 | 
|---|
| 21 |  ;====================================================
 | 
|---|
| 22 | MHVOUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the MHV output.
 | 
|---|
| 23 |  N CLASSIEN,DRUGCLAS,FTYPE,IND,PFIEVAL,PNAME
 | 
|---|
| 24 |  S CLASSIEN=$P(IFIEVAL("FINDING"),";",1)
 | 
|---|
| 25 |  ;DBIA #2531
 | 
|---|
| 26 |  S DRUGCLAS=$$CLASS2^PSNAPIS(CLASSIEN)
 | 
|---|
| 27 |  S PNAME=$P(DRUGCLAS,U,1)_"-"_$P(DRUGCLAS,U,2)
 | 
|---|
| 28 |  S NLINES=NLINES+1,TEXT(NLINES)="Drug Class: "_PNAME
 | 
|---|
| 29 |  S IND=0
 | 
|---|
| 30 |  F  S IND=+$O(IFIEVAL(IND)) Q:IND=0  D
 | 
|---|
| 31 |  . S TEMP=IFIEVAL(IND,"FINDING")
 | 
|---|
| 32 |  . S FTYPE=$P(TEMP,";",2)
 | 
|---|
| 33 |  . K PFIEVAL M PFIEVAL=IFIEVAL(IND)
 | 
|---|
| 34 |  . I FTYPE="PS(55," D MHVOUT^PXRMDIN(INDENT+1,.PFIEVAL,.NLINES,.TEXT) Q
 | 
|---|
| 35 |  . I FTYPE="PS(55NVA," D MHVOUT^PXRMDNVA(INDENT+1,.PFIEVAL,.NLINES,.TEXT) Q
 | 
|---|
| 36 |  . I FTYPE="PSRX(" D MHVOUT^PXRMDOUT(INDENT+1,.PFIEVAL,.NLINES,.TEXT) Q
 | 
|---|
| 37 |  S NLINES=NLINES+1,TEXT(NLINES)=""
 | 
|---|
| 38 |  Q
 | 
|---|
| 39 |  ;
 | 
|---|
| 40 |  ;====================================================
 | 
|---|
| 41 | OUTPUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the clinical
 | 
|---|
| 42 |  ;maintenance output.
 | 
|---|
| 43 |  N CLASSIEN,DRUGCLAS,FTYPE,IND,PFIEVAL,TEMP
 | 
|---|
| 44 |  S CLASSIEN=$P(IFIEVAL("FINDING"),";",1)
 | 
|---|
| 45 |  ;DBIA #2531
 | 
|---|
| 46 |  S DRUGCLAS=$$CLASS2^PSNAPIS(CLASSIEN)
 | 
|---|
| 47 |  S TEMP=$P(DRUGCLAS,U,1)_"-"_$P(DRUGCLAS,U,2)
 | 
|---|
| 48 |  S NLINES=NLINES+1
 | 
|---|
| 49 |  S TEXT(NLINES)=$$INSCHR^PXRMEXLC(INDENT," ")_"Drug Class: "_TEMP
 | 
|---|
| 50 |  S IND=0
 | 
|---|
| 51 |  F  S IND=+$O(IFIEVAL(IND)) Q:IND=0  D
 | 
|---|
| 52 |  . S TEMP=IFIEVAL(IND,"FINDING")
 | 
|---|
| 53 |  . S FTYPE=$P(TEMP,";",2)
 | 
|---|
| 54 |  . K PFIEVAL M PFIEVAL=IFIEVAL(IND)
 | 
|---|
| 55 |  . I FTYPE="PS(55," D OUTPUT^PXRMDIN(INDENT+1,.PFIEVAL,.NLINES,.TEXT) Q
 | 
|---|
| 56 |  . I FTYPE="PS(55NVA," D OUTPUT^PXRMDNVA(INDENT+1,.PFIEVAL,.NLINES,.TEXT) Q
 | 
|---|
| 57 |  . I FTYPE="PSRX(" D OUTPUT^PXRMDOUT(INDENT+1,.PFIEVAL,.NLINES,.TEXT) Q
 | 
|---|
| 58 |  Q
 | 
|---|
| 59 |  ;
 | 
|---|