PXRMDOUT ; SLC/PKR - Handle outpatient med findings. ;02/10/2010
 ;;2.0;CLINICAL REMINDERS;**4,12,17**;Feb 04, 2005;Build 102
 ;DBIA #5187 for PSSCLINR
 ;
 ;===============================================
GETDATA(DAS,FIEVT) ;Return data for an outpatient drug finding.
 ;DBIA #3793
 D PSRX^PSOPXRM1(DAS,.FIEVT)
 ;DBIA #5188
 S (FIEVT("STATUS"),FIEVT("VALUE"))=$$STAT^PSO52CLR(FIEVT("STATUS"))
 S FIEVT("START DATE")=FIEVT("RELEASED DATE/TIME")
 S FIEVT("STOP DATE")=$$FMADD^XLFDT(FIEVT("START DATE"),FIEVT("DAYS SUPPLY"))
 S FIEVT("DURATION")=$$DURATION^PXRMDATE(FIEVT("START DATE"),FIEVT("STOP DATE"))
 Q
 ;
 ;===============================================
EVALTERM(DFN,FINDPA,ENODE,TERMARR,TFIEVAL) ;Evaluate terms.
 D EVALTERM^PXRMINDX(DFN,.FINDPA,ENODE,.TERMARR,.TFIEVAL)
 Q
 ;
 ;===============================================
MHVOUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the MHV output.
 N DRUG,JND,NOUT,TEMP,TEXTOUT
 S DRUG=IFIEVAL("DISPENSE DRUG")
 ;DBIA #5187
 S DRUG=$S(+DRUG=0:DRUG,1:$$DRUG^PSSCLINR(DRUG))
 S TEMP="Outpatient Drug: "_DRUG_" = "
 S TEMP=TEMP_"("_$$EDATE^PXRMDATE(IFIEVAL("START DATE"))
 S TEMP=TEMP_" - "_$$EDATE^PXRMDATE(IFIEVAL("STOP DATE"))_")"
 D FORMATS^PXRMTEXT(INDENT+1,PXRMRM,TEMP,.NOUT,.TEXTOUT)
 F JND=1:1:NOUT S NLINES=NLINES+1,TEXT(NLINES)=TEXTOUT(JND)
 Q
 ;
 ;===============================================
OUTPUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the clinical
 ;maintenance output.
 N DRUG,JND,NOUT,TEMP,TEXTOUT
 S DRUG=IFIEVAL("DISPENSE DRUG")
 S DRUG=$S(+DRUG=0:DRUG,1:$$DRUG^PSSCLINR(DRUG))
 S NLINES=NLINES+1
 S TEXT(NLINES)=$$INSCHR^PXRMEXLC(INDENT," ")_"Outpatient Medication: "_DRUG
 S TEMP=$$EDATE^PXRMDATE(IFIEVAL("DATE"))_" Status: "_IFIEVAL("STATUS")_"\\"
 S TEMP=TEMP_"Start date: "_$$EDATE^PXRMDATE(IFIEVAL("START DATE"))
 S TEMP=TEMP_" Stop date: "_$$EDATE^PXRMDATE(IFIEVAL("STOP DATE"))
 I $D(IFIEVAL("DURATION")) S TEMP=TEMP_"  Duration: "_IFIEVAL("DURATION")_" D"_"\\"
 S TEMP=TEMP_"Last release date: "_$$EDATE^PXRMDATE(IFIEVAL("RELEASED DATE/TIME"))
 S TEMP=TEMP_" Days supply: "_IFIEVAL("DAYS SUPPLY")
 D FORMATS^PXRMTEXT(INDENT+1,PXRMRM,TEMP,.NOUT,.TEXTOUT)
 F JND=1:1:NOUT S NLINES=NLINES+1,TEXT(NLINES)=TEXTOUT(JND)
 S NLINES=NLINES+1,TEXT(NLINES)=""
 Q
 ;
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPXRMDOUT   2278     printed  Sep 23, 2025@19:20:14                                                                                                                                                                                                    Page 2
PXRMDOUT  ; SLC/PKR - Handle outpatient med findings. ;02/10/2010
 +1       ;;2.0;CLINICAL REMINDERS;**4,12,17**;Feb 04, 2005;Build 102
 +2       ;DBIA #5187 for PSSCLINR
 +3       ;
 +4       ;===============================================
GETDATA(DAS,FIEVT) ;Return data for an outpatient drug finding.
 +1       ;DBIA #3793
 +2        DO PSRX^PSOPXRM1(DAS,.FIEVT)
 +3       ;DBIA #5188
 +4        SET (FIEVT("STATUS"),FIEVT("VALUE"))=$$STAT^PSO52CLR(FIEVT("STATUS"))
 +5        SET FIEVT("START DATE")=FIEVT("RELEASED DATE/TIME")
 +6        SET FIEVT("STOP DATE")=$$FMADD^XLFDT(FIEVT("START DATE"),FIEVT("DAYS SUPPLY"))
 +7        SET FIEVT("DURATION")=$$DURATION^PXRMDATE(FIEVT("START DATE"),FIEVT("STOP DATE"))
 +8        QUIT 
 +9       ;
 +10      ;===============================================
EVALTERM(DFN,FINDPA,ENODE,TERMARR,TFIEVAL) ;Evaluate terms.
 +1        DO EVALTERM^PXRMINDX(DFN,.FINDPA,ENODE,.TERMARR,.TFIEVAL)
 +2        QUIT 
 +3       ;
 +4       ;===============================================
MHVOUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the MHV output.
 +1        NEW DRUG,JND,NOUT,TEMP,TEXTOUT
 +2        SET DRUG=IFIEVAL("DISPENSE DRUG")
 +3       ;DBIA #5187
 +4        SET DRUG=$SELECT(+DRUG=0:DRUG,1:$$DRUG^PSSCLINR(DRUG))
 +5        SET TEMP="Outpatient Drug: "_DRUG_" = "
 +6        SET TEMP=TEMP_"("_$$EDATE^PXRMDATE(IFIEVAL("START DATE"))
 +7        SET TEMP=TEMP_" - "_$$EDATE^PXRMDATE(IFIEVAL("STOP DATE"))_")"
 +8        DO FORMATS^PXRMTEXT(INDENT+1,PXRMRM,TEMP,.NOUT,.TEXTOUT)
 +9        FOR JND=1:1:NOUT
               SET NLINES=NLINES+1
               SET TEXT(NLINES)=TEXTOUT(JND)
 +10       QUIT 
 +11      ;
 +12      ;===============================================
OUTPUT(INDENT,IFIEVAL,NLINES,TEXT) ;Produce the clinical
 +1       ;maintenance output.
 +2        NEW DRUG,JND,NOUT,TEMP,TEXTOUT
 +3        SET DRUG=IFIEVAL("DISPENSE DRUG")
 +4        SET DRUG=$SELECT(+DRUG=0:DRUG,1:$$DRUG^PSSCLINR(DRUG))
 +5        SET NLINES=NLINES+1
 +6        SET TEXT(NLINES)=$$INSCHR^PXRMEXLC(INDENT," ")_"Outpatient Medication: "_DRUG
 +7        SET TEMP=$$EDATE^PXRMDATE(IFIEVAL("DATE"))_" Status: "_IFIEVAL("STATUS")_"\\"
 +8        SET TEMP=TEMP_"Start date: "_$$EDATE^PXRMDATE(IFIEVAL("START DATE"))
 +9        SET TEMP=TEMP_" Stop date: "_$$EDATE^PXRMDATE(IFIEVAL("STOP DATE"))
 +10       IF $DATA(IFIEVAL("DURATION"))
               SET TEMP=TEMP_"  Duration: "_IFIEVAL("DURATION")_" D"_"\\"
 +11       SET TEMP=TEMP_"Last release date: "_$$EDATE^PXRMDATE(IFIEVAL("RELEASED DATE/TIME"))
 +12       SET TEMP=TEMP_" Days supply: "_IFIEVAL("DAYS SUPPLY")
 +13       DO FORMATS^PXRMTEXT(INDENT+1,PXRMRM,TEMP,.NOUT,.TEXTOUT)
 +14       FOR JND=1:1:NOUT
               SET NLINES=NLINES+1
               SET TEXT(NLINES)=TEXTOUT(JND)
 +15       SET NLINES=NLINES+1
           SET TEXT(NLINES)=""
 +16       QUIT 
 +17      ;