PXRMSKIN ; SLC/PKR - Handle skin test findings. ;29-Feb-2012 09:25;DU
;;2.0;CLINICAL REMINDERS;**1001**;Feb 04, 2005;Build 21
;IHS/MSC/MGH Patch 1001 wrap lookup with $G
;
;====================================================
EVALFI(DFN,DEFARR,ENODE,FIEVAL) ;Evaluate skin test findings.
D EVALFI^PXRMINDX(DFN,.DEFARR,ENODE,.FIEVAL)
Q
;
;====================================================
EVALPL(FINDPA,ENODE,TERMARR,PLIST) ;Evaluate skin test term findings
;for patient lists.
D EVALPL^PXRMINDL(.FINDPA,ENODE,.TERMARR,PLIST)
Q
;
;====================================================
EVALTERM(DFN,FINDPA,ENODE,TERMARR,TFIEVAL) ;Evaluate skin test terms.
D EVALTERM^PXRMINDX(DFN,.FINDPA,ENODE,.TERMARR,.TFIEVAL)
Q
;
;====================================================
GETDATA(DAS,FIEVT) ;Return data for a specified V Skin Test entry.
;DBIA #4250
D VSKIN^PXPXRM(DAS,.FIEVT)
Q
;
;====================================================
MHVOUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the MHV output.
N EM,FIEN,IND,JND,NAME,NOUT,PNAME,READING,RESULTS,TEMP,TEXTOUT,VDATE
S FIEN=$P(IFIEVAL("FINDING"),";",1)
;IHS/MSC/MGH Patch 1001 wrap with $G
S PNAME=$P($G(^AUTTSK(FIEN,0)),U,1)
S NAME="Skin Test: "_PNAME
S IND=0
F S IND=+$O(IFIEVAL(IND)) Q:IND=0 D
. S RESULTS=$G(IFIEVAL(IND,"RESULTS"))
. I $L(RESULTS)>0 S RESULTS=" "_$$EXTERNAL^DILFD(9000010.12,.04,"",RESULTS,.EM)
. S READING=$G(IFIEVAL(IND,"READING"))
. I READING'="" S READING=" reading "_$$EXTERNAL^DILFD(9000010.12,.05,"",READING,.EM)
. S VDATE=IFIEVAL(IND,"DATE")
. S TEMP=NAME_RESULTS_READING_" ("_$$EDATE^PXRMDATE(VDATE)_")"
. D FORMATS^PXRMTEXT(INDENT+2,PXRMRM,TEMP,.NOUT,.TEXTOUT)
. F JND=1:1:NOUT S NLINES=NLINES+1,TEXT(NLINES)=TEXTOUT(JND)
S NLINES=NLINES+1,TEXT(NLINES)=""
Q
;
;====================================================
OUTPUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the clinical
;maintenance output.
N EM,FIEN,IND,JND,NOUT,PNAME,READING,RESULTS,TEMP,TEXTOUT,VDATE
S FIEN=$P(IFIEVAL("FINDING"),";",1)
;IHS/MSC/MGH patch 1001 wrap with $G
S PNAME=$P($G(^AUTTSK(FIEN,0)),U,1)
S NLINES=NLINES+1
S TEXT(NLINES)=$$INSCHR^PXRMEXLC(INDENT," ")_"Skin Test: "_PNAME
S IND=0
F S IND=+$O(IFIEVAL(IND)) Q:IND=0 D
. S VDATE=IFIEVAL(IND,"DATE")
. S TEMP=$$EDATE^PXRMDATE(VDATE)
. S RESULTS=$G(IFIEVAL(IND,"RESULTS"))
. S READING=$G(IFIEVAL(IND,"READING"))
. I RESULTS'="" D
.. S TEMP=TEMP_" results - "
.. S TEMP=TEMP_$$EXTERNAL^DILFD(9000010.12,.04,"",RESULTS,.EM)
. I READING'="" D
.. S TEMP=TEMP_" reading - "
.. S TEMP=TEMP_$$EXTERNAL^DILFD(9000010.12,.05,"",READING,.EM)
. D FORMATS^PXRMTEXT(INDENT+2,PXRMRM,TEMP,.NOUT,.TEXTOUT)
. F JND=1:1:NOUT S NLINES=NLINES+1,TEXT(NLINES)=TEXTOUT(JND)
. I IFIEVAL(IND,"COMMENTS")'="" D
.. S TEMP="Comments: "_IFIEVAL(IND,"COMMENTS")
.. D FORMATS^PXRMTEXT(INDENT+3,PXRMRM,TEMP,.NOUT,.TEXTOUT)
.. F JND=1:1:NOUT S NLINES=NLINES+1,TEXT(NLINES)=TEXTOUT(JND)
S NLINES=NLINES+1,TEXT(NLINES)=""
Q
;
PXRMSKIN ; SLC/PKR - Handle skin test findings. ;29-Feb-2012 09:25;DU
+1 ;;2.0;CLINICAL REMINDERS;**1001**;Feb 04, 2005;Build 21
+2 ;IHS/MSC/MGH Patch 1001 wrap lookup with $G
+3 ;
+4 ;====================================================
EVALFI(DFN,DEFARR,ENODE,FIEVAL) ;Evaluate skin test findings.
+1 DO EVALFI^PXRMINDX(DFN,.DEFARR,ENODE,.FIEVAL)
+2 QUIT
+3 ;
+4 ;====================================================
EVALPL(FINDPA,ENODE,TERMARR,PLIST) ;Evaluate skin test term findings
+1 ;for patient lists.
+2 DO EVALPL^PXRMINDL(.FINDPA,ENODE,.TERMARR,PLIST)
+3 QUIT
+4 ;
+5 ;====================================================
EVALTERM(DFN,FINDPA,ENODE,TERMARR,TFIEVAL) ;Evaluate skin test terms.
+1 DO EVALTERM^PXRMINDX(DFN,.FINDPA,ENODE,.TERMARR,.TFIEVAL)
+2 QUIT
+3 ;
+4 ;====================================================
GETDATA(DAS,FIEVT) ;Return data for a specified V Skin Test entry.
+1 ;DBIA #4250
+2 DO VSKIN^PXPXRM(DAS,.FIEVT)
+3 QUIT
+4 ;
+5 ;====================================================
MHVOUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the MHV output.
+1 NEW EM,FIEN,IND,JND,NAME,NOUT,PNAME,READING,RESULTS,TEMP,TEXTOUT,VDATE
+2 SET FIEN=$PIECE(IFIEVAL("FINDING"),";",1)
+3 ;IHS/MSC/MGH Patch 1001 wrap with $G
+4 SET PNAME=$PIECE($GET(^AUTTSK(FIEN,0)),U,1)
+5 SET NAME="Skin Test: "_PNAME
+6 SET IND=0
+7 FOR
SET IND=+$ORDER(IFIEVAL(IND))
IF IND=0
QUIT
Begin DoDot:1
+8 SET RESULTS=$GET(IFIEVAL(IND,"RESULTS"))
+9 IF $LENGTH(RESULTS)>0
SET RESULTS=" "_$$EXTERNAL^DILFD(9000010.12,.04,"",RESULTS,.EM)
+10 SET READING=$GET(IFIEVAL(IND,"READING"))
+11 IF READING'=""
SET READING=" reading "_$$EXTERNAL^DILFD(9000010.12,.05,"",READING,.EM)
+12 SET VDATE=IFIEVAL(IND,"DATE")
+13 SET TEMP=NAME_RESULTS_READING_" ("_$$EDATE^PXRMDATE(VDATE)_")"
+14 DO FORMATS^PXRMTEXT(INDENT+2,PXRMRM,TEMP,.NOUT,.TEXTOUT)
+15 FOR JND=1:1:NOUT
SET NLINES=NLINES+1
SET TEXT(NLINES)=TEXTOUT(JND)
End DoDot:1
+16 SET NLINES=NLINES+1
SET TEXT(NLINES)=""
+17 QUIT
+18 ;
+19 ;====================================================
OUTPUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the clinical
+1 ;maintenance output.
+2 NEW EM,FIEN,IND,JND,NOUT,PNAME,READING,RESULTS,TEMP,TEXTOUT,VDATE
+3 SET FIEN=$PIECE(IFIEVAL("FINDING"),";",1)
+4 ;IHS/MSC/MGH patch 1001 wrap with $G
+5 SET PNAME=$PIECE($GET(^AUTTSK(FIEN,0)),U,1)
+6 SET NLINES=NLINES+1
+7 SET TEXT(NLINES)=$$INSCHR^PXRMEXLC(INDENT," ")_"Skin Test: "_PNAME
+8 SET IND=0
+9 FOR
SET IND=+$ORDER(IFIEVAL(IND))
IF IND=0
QUIT
Begin DoDot:1
+10 SET VDATE=IFIEVAL(IND,"DATE")
+11 SET TEMP=$$EDATE^PXRMDATE(VDATE)
+12 SET RESULTS=$GET(IFIEVAL(IND,"RESULTS"))
+13 SET READING=$GET(IFIEVAL(IND,"READING"))
+14 IF RESULTS'=""
Begin DoDot:2
+15 SET TEMP=TEMP_" results - "
+16 SET TEMP=TEMP_$$EXTERNAL^DILFD(9000010.12,.04,"",RESULTS,.EM)
End DoDot:2
+17 IF READING'=""
Begin DoDot:2
+18 SET TEMP=TEMP_" reading - "
+19 SET TEMP=TEMP_$$EXTERNAL^DILFD(9000010.12,.05,"",READING,.EM)
End DoDot:2
+20 DO FORMATS^PXRMTEXT(INDENT+2,PXRMRM,TEMP,.NOUT,.TEXTOUT)
+21 FOR JND=1:1:NOUT
SET NLINES=NLINES+1
SET TEXT(NLINES)=TEXTOUT(JND)
+22 IF IFIEVAL(IND,"COMMENTS")'=""
Begin DoDot:2
+23 SET TEMP="Comments: "_IFIEVAL(IND,"COMMENTS")
+24 DO FORMATS^PXRMTEXT(INDENT+3,PXRMRM,TEMP,.NOUT,.TEXTOUT)
+25 FOR JND=1:1:NOUT
SET NLINES=NLINES+1
SET TEXT(NLINES)=TEXTOUT(JND)
End DoDot:2
End DoDot:1
+26 SET NLINES=NLINES+1
SET TEXT(NLINES)=""
+27 QUIT
+28 ;