Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: RORX021A

RORX021A.m

Go to the documentation of this file.
  1. RORX021A ;BPOIFO/CLR - HCV DAA CANDIDATES(QUERY & STORE) ;7/15/11 3:37pm
  1. ;;1.5;CLINICAL CASE REGISTRIES;**17,19,21,27,26,31,33,34,39**;Feb 17, 2006;Build 4
  1. ;
  1. ; This routine uses the following IAs:
  1. ;
  1. ; #10103 FMADD^XLFDT (supported)
  1. ; #10035 Direct read of the DOD field of the file #2 (supported)
  1. ; #10000 C^%DTC (supported)
  1. ; #10103 $$TRIM^XLFSTR (supported)
  1. ; #10103 $$UP^XLFSTR (supported)
  1. ;
  1. ;******************************************************************************
  1. ;******************************************************************************
  1. ; --- ROUTINE MODIFICATION LOG ---
  1. ;
  1. ;PKG/PATCH DATE DEVELOPER MODIFICATION
  1. ;----------- ---------- ----------- ----------------------------------------
  1. ;ROR*1.5*19 JUN 2012 K GUPTA Support for ICD-10 Coding System
  1. ;ROR*1.5*21 SEP 2013 T KOPP Added ICN as last report column if
  1. ; additional identifier option selected
  1. ;ROR*1.5*27 FEB 2015 T KOPP Remove requirement to skip patient in
  1. ; report if they received Boceprevir or
  1. ; Telaprevir, removed requirement that
  1. ; only genotype 1 is included on the
  1. ; report.
  1. ;ROR*1.5*26 MAR 2015 T KOPP Added FIB-4 as report column if FIB-4
  1. ; range option selected (STORE), calculate
  1. ; FIB-4 score if parameter selected.
  1. ; Remove treatment status column.
  1. ;ROR*1.5*31 MAY 2017 M FERRARESE Adding PACT ,PCP,and AGE/DOB as additional
  1. ; identifiers.
  1. ;ROR*1.5*33 APR 2018 F TRAXLER Adding FUT_APPT as additional identifier.
  1. ;ROR*1.5*34 SEP 2018 F TRAXLER Adding FUT_CLIN column.
  1. ;ROR*1.5*39 JUN 2021 F TRAXLER Replace real SSN with zeroes.
  1. ;******************************************************************************
  1. ;******************************************************************************
  1. Q
  1. ;
  1. ;***** LAB SEARCH CALLBACK
  1. ;
  1. ; .ROR8DST Reference to the ROR8DST parameter.
  1. ;
  1. ; INVDT IEN of the Lab test (inverted date)
  1. ;
  1. ; .RESULT Reference to a local variable, which contains
  1. ; the result (see the $$LTSEARCH^RORUTL10).
  1. ;
  1. ; Return Values:
  1. ; <0 Error code (the search will be aborted)
  1. ; 0 Ok
  1. ; 1 Skip this result
  1. ; 2 Skip this and all remaining results
  1. ;
  1. LTSCB(ROR8DST,INVDT,RESULT) ;
  1. N DATE,IEN,NAME,RC,TMP,VAL,CAT,SUB
  1. S IEN=+RESULT(2) Q:IEN'>0 1 ; IEN of the Lab test
  1. S NAME=$P(RESULT(2),U,2) Q:NAME="" 1 ; Name of the test
  1. S DATE=+$P(RESULT(1),U,1) Q:DATE'>0 1 ; Date of the test
  1. S CAT=$P(RESULT(2),U,4) Q:CAT="" 1 ; Category(lab group) of the test
  1. S VAL=$P(RESULT(1),U,3) Q:VAL="" 1 ; Result of the test
  1. ;--- Skip if test is not in lab groups HepC GT, Quant, or Qual
  1. I CAT'="HepC GT",(CAT'="HepC Quant"),(CAT'="HepC Qual") Q 1
  1. ;=== Mark values as quantitative, qualitative or responded to treatment
  1. ;--- HCVQT=quant,HCVQL=qual,HCVOK=cured
  1. I CAT="HepC Quant"!(CAT="HepC Qual") D Q:TMP 1
  1. . S TMP=0
  1. . S VAL=$$UP^XLFSTR(VAL) ;convert to upper case
  1. . S VAL=$TR(VAL," ") ;strip out all spaces
  1. . I VAL["POS" S SUB="HCVQL" Q
  1. . I $E(VAL,1,1)="P" S SUB="HCVQL" Q
  1. . I VAL["NEG" S SUB="HCVOK" Q
  1. . I VAL["NO" S SUB="HCVOK" Q
  1. . I $E(VAL,1,1)="N" S SUB="HCVOK" Q
  1. . I VAL["COMMENT"!(VAL["CANC")!(VAL["DNR")!(VAL["TNP") S TMP=1 Q
  1. . I +VAL=VAL,VAL<51 S TMP=1 Q ;skip abnormally low values
  1. . I $$NUMERIC^RORUTL05($TR(VAL," >,GT")) S SUB="HCVQT" Q
  1. . I $$NUMERIC^RORUTL05($TR(VAL," <,LT")) S SUB="HCVOK" Q
  1. . S TMP=1
  1. S SUB=$S(CAT="HepC GT":"GT",1:SUB)
  1. ;--- Store the result
  1. S @ROR8DST@(SUB,DATE)=$P(RESULT(1),U,3)
  1. Q 0
  1. ;
  1. ;***** QUERIES THE REGISTRY
  1. ; REPORT Parent IEN of report
  1. ; FLAGS Flags for the $$SKIP^RORXU005
  1. ; .NSPT Number of selected patients is returned here
  1. ; .RORLC sub-file and LOINC codes to search for FIB4
  1. ;
  1. ; Return Values:
  1. ; <0 Fatal error
  1. ; 0 Ok
  1. ; >0 Number of non-fatal errors
  1. ;
  1. QUERY(REPORT,FLAGS,NSPT,RORLC) ;
  1. N RORLDST ; Descriptor for Lab search API
  1. N RORPTN ; Number of patients in the registry
  1. N RORXDST ; Descriptor for pharmacy search API
  1. N RORCDLIST ; Flag to indicate whether a clinic or division list exists
  1. N RORCDSTDT ; Start date for clinic/division utilization search
  1. N RORCDENDT ; End date for clinic/division utilization search
  1. N RORXCDT ; User selected cut off date for registry meds
  1. N RORTS ; User selected treatment status categories
  1. N RORXEDT ; RX end date
  1. N RORXSDT ; RX start date
  1. N RORTH ; Patient treatment status (EXP=experienced, NAIVE=naive)
  1. ;
  1. N CNT,ECNT,IEN,IENS,LTEDT,LTSDT,PATIEN,RC,RXEDT,SKIP,TMP,UTEDT,UTIL,UTSDT,VA,VADM,XREFNODE
  1. N RCC,FLAG,HCV,GT,ROR1,ROR2,ROR3
  1. S XREFNODE=$NA(^RORDATA(798,"AC",+RORREG))
  1. S (CNT,ECNT,NSPT,RC)=0,(UTEDT,UTSDT)=0
  1. ;=== Set up parameters
  1. ;--- Utilization date range
  1. D:$$PARAM^RORTSK01("PATIENTS","CAREONLY")
  1. . S UTSDT=$$PARAM^RORTSK01("DATE_RANGE_3","START")\1
  1. . S UTEDT=$$PARAM^RORTSK01("DATE_RANGE_3","END")\1
  1. ;--- Number of patients in the registry
  1. S RORPTN=$$REGSIZE^RORUTL02(+RORREG) S:RORPTN<0 RORPTN=0
  1. ;--- Set up Treatment status parameters
  1. F TMP="NAIVE","EXP","EXP_DAYS" D
  1. . S RORTS(TMP)=$$PARAM^RORTSK01("TREATMENT_HISTORY",TMP)
  1. ;--- Lab parameters
  1. S RORLDST("RORCB")="$$LTSCB^RORX021A"
  1. ;--- Labs date range
  1. S LTSDT=""
  1. S LTEDT=DT
  1. ;--- Shift the Labs end date
  1. S LTEDT=$$FMADD^XLFDT(LTEDT,1)
  1. ;== Pharm parameters
  1. S RORXDST("GENERIC")=1 ;only meds with generic name
  1. S RORXDST("RORCB")="$$RXOCB^RORX021A" ;call back routine
  1. ;--- RX cut off date (inverse)/shift cut off back one day
  1. N X1,X2,X S X2=-(+RORTS("EXP_DAYS")+1),X1=DT D C^%DTC S RORXCDT=99999999-X
  1. ;--- RX start and end dates
  1. S RORXSDT=2000101 ;start date 1/1/1900
  1. S RORXEDT=DT
  1. ;--- RX list of HepC registry drugs
  1. S RORXL=$$ALLOC^RORTMP()
  1. S RC=$$DRUGLIST^RORUTL16(RORXL,+RORREG)
  1. ;--- Shift the Labs end date
  1. S RORXEDT=$$FMADD^XLFDT(RORXEDT\1,1)
  1. ;--- Set up Clinic/Division list parameters date_range_3
  1. S RORCDLIST=$$CDPARMS^RORXU001(.RORTSK,.RORCDSTDT,.RORCDENDT,1)
  1. ;--- Set up ICD parameters
  1. S FLAG=$G(RORTSK("PARAMS","ICDFILT","A","FILTER"))
  1. ;=== Browse through the registry records
  1. S IEN=0
  1. F S IEN=$O(@XREFNODE@(IEN)) Q:IEN'>0 D Q:RC<0
  1. . S TMP=$S(RORPTN>0:CNT/RORPTN,1:"")
  1. . S RC=$$LOOP^RORTSK01(TMP) Q:RC<0
  1. . S IENS=IEN_",",CNT=CNT+1
  1. . ;--- Get patient DFN
  1. . S PATIEN=$$PTIEN^RORUTL01(IEN) Q:PATIEN'>0
  1. . I +$P($G(^DPT(PATIEN,.35)),U)>0 Q ;patient has died
  1. . ;--- Check if the patient should be skipped based on standard filters
  1. . Q:$$SKIP^RORXU005(IEN,FLAGS,UTSDT,UTEDT)
  1. . ;--- Check if patient should be skipped because of ICD codes
  1. . S RCC=0
  1. . I FLAG'="ALL" D
  1. . . S RCC=$$ICD^RORXU010(PATIEN)
  1. . I (FLAG="INCLUDE")&(RCC=0) Q
  1. . I (FLAG="EXCLUDE")&(RCC=1) Q
  1. . ;
  1. . ;--- Check if patient should be skipped because of Clinic or Division
  1. . I RORCDLIST,'$$CDUTIL^RORXU001(.RORTSK,PATIEN,RORCDSTDT,RORCDENDT) Q
  1. . ;=== Check labs and meds
  1. . S SKIP=1,UTIL=0
  1. . D I RC<0 S ECNT=ECNT+1,RC=0 Q
  1. . . S RORLDST=$NA(^TMP("RORX021",$J,"PAT",PATIEN,"LR"))
  1. . . S RC=$$LTSEARCH^RORUTL10(PATIEN,+RORREG,.RORLDST,,LTSDT,LTEDT)
  1. . . Q:RC'>0
  1. . . ;=== Skip if patient no longer has HCV
  1. . . S ROR1=+$O(@RORLDST@("HCVOK","")),ROR2=+$O(@RORLDST@("HCVQL","")),ROR3=(+$O(@RORLDST@("HCVQT","")))
  1. . . I ROR1>0 D Q:SKIP=1
  1. . . . ;--- Skip if date of most recent HCV test is normal
  1. . . . I (ROR1<ROR2),(ROR1<ROR3) S SKIP=1 Q
  1. . . . I (ROR1<ROR2),(ROR3=0) S SKIP=1 Q
  1. . . . I (ROR1<ROR3),(ROR2=0) S SKIP=1 Q
  1. . . . ;--- Skip if no qual or quant test
  1. . . . I ROR2+ROR3=0 S SKIP=1 Q
  1. . . . S SKIP=0
  1. . . ;--- Check if patient should be skipped because of user selected Treatment status
  1. . . S RORXDST=$NA(^TMP("RORX021",$J,"PAT",PATIEN,"RX"))
  1. . . S RC=$$RXSEARCH^RORUTL14(PATIEN,RORXL,.RORXDST,"EIOV",RORXSDT,RORXEDT)
  1. . . Q:RC<0 ;error occurred
  1. . . I $G(RORXDST("SKIP")) S SKIP=1 K RORXDST("SKIP") Q ;skip if taking DAA meds
  1. . . I RC>0,'+RORTS("EXP") S SKIP=1 Q ; skip naive patients
  1. . . I RC=0,'+RORTS("NAIVE") S SKIP=1 Q ;skip experienced patients
  1. . . I RC>0,$O(@RORXDST@(RORXCDT),-1) S SKIP=1 Q ;skip if patient has meds after cutoff
  1. . . ;--- Include patient
  1. . . S RORTH=$S(RC>0:"EXP",RC=0:"NAIVE",1:"")
  1. . . S SKIP=0
  1. . ;--- Check if patient should be skipped because no utilization in the corresponding date range
  1. . I 'SKIP D:$$PARAM^RORTSK01("PATIENTS","CAREONLY")
  1. . . K TMP S TMP("ALL")=1
  1. . . S UTIL=+$$UTIL^RORXU003(UTSDT,UTEDT,PATIEN,.TMP)
  1. . . S:'UTIL SKIP=1
  1. . ;
  1. . ; Skip patient if FIB4 range has been selected and score does not match parameters
  1. . I 'SKIP,$G(RORDATA("IDLST")) D
  1. . . N OK
  1. . . S OK=$$CALCFIB^RORX019A(PATIEN,"",.RORDATA,IEN,.RORLC)
  1. . . I OK<0 S SKIP=1 Q
  1. . . I '$$INRANGE^RORX019(.RORDATA) S SKIP=1 Q ;exclude patient from report if ANY score is out of range
  1. . . I '$$SKIP^RORX019(.RORDATA) S SKIP=1 ;exclude patient from report with null scores
  1. . ;--- Skip the patient if not all selection criteria have been met
  1. . I SKIP K ^TMP("RORX021",$J,"PAT",PATIEN) Q
  1. . ;
  1. . ;--- Get and store the patient's data last4^name^treatment status^ICN^FIB-4 score^PACT^PCP^AGE/DOB
  1. . D VADEM^RORUTL05(PATIEN,1) S VA("BID")="0000"
  1. . S TMP=$S($$PARAM^RORTSK01("PATIENTS","ICN"):$$ICN^RORUTL02(PATIEN),1:"")
  1. . S ^TMP("RORX021",$J,"PAT",PATIEN)=VA("BID")_U_VADM(1)_U_RORTH_U_TMP_U_$G(RORDATA("SCORE",4))
  1. . S AGETYPE=$$PARAM^RORTSK01("AGE_RANGE","TYPE") D
  1. . . S AGE=$S(AGETYPE="AGE":$P(VADM(4),U),AGETYPE="DOB":$$DATE^RORXU002($P(VADM(3),U)\1),1:"")
  1. . S TMP=$S($$PARAM^RORTSK01("PATIENTS","PACT"):$$PACT^RORUTL02(PATIEN),1:"")
  1. . S ^TMP("RORX021",$J,"PAT",PATIEN)=^TMP("RORX021",$J,"PAT",PATIEN)_U_TMP
  1. . S TMP=$S($$PARAM^RORTSK01("PATIENTS","PCP"):$$PCP^RORUTL02(PATIEN),1:"")
  1. . S ^TMP("RORX021",$J,"PAT",PATIEN)=^TMP("RORX021",$J,"PAT",PATIEN)_U_TMP_U_AGE
  1. . S TMP=$S($$PARAM^RORTSK01("OPTIONS","FUT_APPT"):$$FUTAPPT^RORUTL02(PATIEN,$$PARAM^RORTSK01("OPTIONS","FUT_APPT")),1:"")
  1. . S ^TMP("RORX021",$J,"PAT",PATIEN)=^TMP("RORX021",$J,"PAT",PATIEN)_U_$P(TMP,U)_U_$P(TMP,U,2)
  1. . S NSPT=NSPT+1 ;increment count of selected patients
  1. ;
  1. D FREE^RORTMP(RORXL) ;clean up drug list
  1. Q $S(RC<0:RC,1:ECNT)
  1. ;
  1. ;***** CALLBACK FUNCTION FOR THE PHARMACY SEARCH API
  1. ;
  1. ;
  1. ; .ROR8DST Reference to the ROR8DST parameter.
  1. ;
  1. ;
  1. ; ORDER Order number (from condensed list)
  1. ;
  1. ; FLAGS Flags describing the order to be
  1. ; processed.
  1. ;
  1. ; DRUG Dispensed drug
  1. ; ^01: Drug IEN in file #50
  1. ; ^02: Drug name
  1. ;
  1. ; DATE Order date (issue date for outpatient
  1. ; drugs or start date for inpatient)
  1. ;
  1. ;Return Values:
  1. ; <0 Error code (the search will be aborted)
  1. ; 0 Ok
  1. ; 1 Skip this result
  1. ; 2 Skip this and all remaining results
  1. ;
  1. RXOCB(ROR8DST,ORDER,ORDFLG,DRUG,DATE) ;
  1. N DRUGIEN,DRUGNAME,IEN,IRP,OFD,RPSUB,RXBUF,RXCNT,RXNUM,TMP
  1. ;--- Skip med if med does not have a generic name
  1. I ROR8DST("GENERIC") D
  1. . S DRUGIEN=+ROR8DST("RORXGEN"),DRUGNAME=$P(ROR8DST("RORXGEN"),U,2)
  1. E Q 1
  1. Q:(DRUGIEN'>0)!(DRUGNAME="") 1
  1. ;--- Process the order
  1. S TMP=$G(^TMP("PS",$J,"RXN",0))
  1. S RXNUM=$P(TMP,U) S:RXNUM="" RXNUM=" "
  1. S RXCNT=0
  1. ;--- Original prescription
  1. I ORDFLG["I" D ;--- Inpatient
  1. . S OFD=$P($G(^TMP("PS",$J,0)),U,5) ; Start Date
  1. . S RXCNT=RXCNT+1
  1. . S @ROR8DST@((99999999-OFD),DRUGNAME,DRUGIEN,RXNUM,RXCNT)=""
  1. E D ;--- Outpatient
  1. . S OFD=+$P($G(^TMP("PS",$J,"RXN",0)),U,6) ; Original Fill Date
  1. . Q:(OFD<ROR8DST("RORSDT"))!(OFD'<ROR8DST("ROREDT"))
  1. . S RXCNT=RXCNT+1
  1. . S @ROR8DST@((99999999-OFD),DRUGNAME,DRUGIEN,RXNUM,RXCNT)=""
  1. ;--- Refills and partials
  1. F RPSUB="REF","PAR" D
  1. . S $P(RXBUF,U)=$E(RPSUB,1)
  1. . S IRP=0
  1. . F S IRP=$O(^TMP("PS",$J,RPSUB,IRP)) Q:IRP'>0 D
  1. . . S TMP=$G(^TMP("PS",$J,RPSUB,IRP,0))
  1. . . I TMP>0 S RXCNT=RXCNT+1,TMP=99999999-TMP D
  1. . . . S @ROR8DST@(+TMP,DRUGNAME,DRUGIEN,RXNUM,RXCNT)=""
  1. Q 0
  1. ;***** STORES THE REPORT DATA
  1. ;
  1. ; REPORT IEN of the REPORT element
  1. ; NSPT Number of selected patients
  1. ;
  1. ; Return Values:
  1. ; <0 Error code
  1. ; 0 Ok
  1. ; >0 Number of non-fatal errors
  1. ;
  1. STORE(REPORT,NSPT) ;
  1. N RORFDT ;med fill date
  1. N RORLBG ;lab test type (GT, HCVQT,HCVQL)
  1. N RORLVAL ;lab value
  1. N RORRX ;med name
  1. N RORSTNAM ;
  1. N RORLDST
  1. N RORXDST
  1. N RORICN
  1. N RORFIB4
  1. N RORPACT
  1. N RORPCP
  1. N RORBODY,PTAG ;parent iens
  1. N CNT,DATE,DFN,ECNT,IEN,LAST4,LTLST,NAME,NODE,PTCNT,PTLST,PTNAME,RC,RXLST,TMP,VAL,THIST,AGE,AGETYPE
  1. N GT,HCVQT,HCV,HCVQL,RORAPPT,RORCLIN
  1. S (ECNT,RC)=0,(LTLST,PTLST,RXLST)=-1
  1. ;--- Create 'patients' table
  1. S RORBODY=$$ADDVAL^RORTSK11(RORTSK,"PATIENTS",,REPORT)
  1. D ADDATTR^RORTSK11(RORTSK,RORBODY,"TABLE","PATIENTS")
  1. S (CNT,DFN,PTCNT)=0
  1. F S DFN=$O(^TMP("RORX021",$J,"PAT",DFN)) Q:DFN'>0 D Q:RC<0
  1. . S TMP=$S(NSPT>0:CNT/NSPT,1:"")
  1. . S RC=$$LOOP^RORTSK01(TMP) Q:RC<0
  1. . S CNT=CNT+1,NODE=$NA(^TMP("RORX021",$J,"PAT",DFN))
  1. . ;--- Patient's data
  1. . S TMP=$G(@NODE)
  1. . S LAST4=$P(TMP,U),PTNAME=$P(TMP,U,2),THIST=$P(TMP,U,3),RORICN=$P(TMP,U,4),RORFIB4=$P(TMP,U,5)
  1. . S RORPACT=$P(TMP,U,6),RORPCP=$P(TMP,U,7),AGE=$P(TMP,U,8),RORAPPT=$P(TMP,U,9),RORCLIN=$P(TMP,U,10)
  1. . ;--- get lab results
  1. . S RORLDST=$NA(^TMP("RORX021",$J,"PAT",DFN,"LR"))
  1. . S RORXDST=$NA(^TMP("RORX021",$J,"PAT",DFN,"RX"))
  1. . ;--- Gets most recent result for HepC Qual, HepC Quant and GT
  1. . ; HCVQT=date of most recent quanitative test^result
  1. . ; HCVQL=date of most recent qualitative test^result
  1. . ; GT=date of most recent GT test^result
  1. . K HCVQT,HCVQL,GT
  1. . F RORLBG="HCVQT","HCVQL","GT" D
  1. . . S NODE=RORLBG,@NODE="^"
  1. . . S RORFDT=$O(@RORLDST@(RORLBG,""))
  1. . . Q:RORFDT=""
  1. . . S RORLVAL=$G(@RORLDST@(RORLBG,RORFDT))
  1. . . S RORFDT=9999999-RORFDT
  1. . . S RORFDT=RORFDT\1 ;strip time
  1. . . S @NODE=(RORFDT)_U_RORLVAL
  1. . ;--- get most recent registry med if experienced
  1. . ;--- if more than one med give preference to INTERFERON
  1. . S RORFDT=$O(@RORXDST@("")),RORRX=""
  1. . I THIST="EXP" D
  1. . . S RORSTNAM="",RORRX=""
  1. . . F S RORSTNAM=$O(@RORXDST@(RORFDT,RORSTNAM)) Q:RORSTNAM="" D
  1. . . . S RORRX=$S(RORRX="":RORSTNAM,RORRX["INTERFERON":RORRX,1:RORSTNAM)
  1. . . S RORFDT=99999999-RORFDT
  1. . . S RORFDT=RORFDT\1
  1. . S PTAG=$$ADDVAL^RORTSK11(RORTSK,"PATIENT",,RORBODY,,DFN)
  1. . ;--- give preference to quant result over qual result
  1. . S HCV=$S(+$G(HCVQL)>+$G(HCVQT):HCVQL,$G(HCVQT):HCVQT,1:"")
  1. . ;--- store
  1. . D ADDVAL^RORTSK11(RORTSK,"NAME",PTNAME,PTAG,1)
  1. . D ADDVAL^RORTSK11(RORTSK,"LAST4",LAST4,PTAG,2)
  1. . S AGETYPE=$$PARAM^RORTSK01("AGE_RANGE","TYPE") I AGETYPE'="ALL" D
  1. . . D ADDVAL^RORTSK11(RORTSK,AGETYPE,AGE,PTAG,1)
  1. . ; I $G(RORDATA("LIST"))'["4" D ADDVAL^RORTSK11(RORTSK,"STATUS",THIST,PTAG,1)
  1. . D ADDVAL^RORTSK11(RORTSK,"HCV_DATE",$P(HCV,U),PTAG,1)
  1. . D ADDVAL^RORTSK11(RORTSK,"HCV",$P(HCV,U,2),PTAG,3)
  1. . D ADDVAL^RORTSK11(RORTSK,"GT",$P(GT,U,2),PTAG,1)
  1. . D ADDVAL^RORTSK11(RORTSK,"FILL_DATE",RORFDT,PTAG,1)
  1. . D ADDVAL^RORTSK11(RORTSK,"FILL_MED",RORRX,PTAG,1)
  1. . I $G(RORDATA("IDLST"))'="" D
  1. . . S:RORDATA("IDLST")["4" TMP=$$ADDVAL^RORTSK11(RORTSK,"FIB4",RORFIB4,PTAG,3)
  1. . I $$PARAM^RORTSK01("PATIENTS","ICN") D ADDVAL^RORTSK11(RORTSK,"ICN",RORICN,PTAG,1)
  1. . I $$PARAM^RORTSK01("PATIENTS","PACT") D ADDVAL^RORTSK11(RORTSK,"PACT",RORPACT,PTAG,1)
  1. . I $$PARAM^RORTSK01("PATIENTS","PCP") D ADDVAL^RORTSK11(RORTSK,"PCP",RORPCP,PTAG,1)
  1. . I $$PARAM^RORTSK01("OPTIONS","FUT_APPT") D
  1. . . D ADDVAL^RORTSK11(RORTSK,"FUT_APPT",RORAPPT,PTAG,1)
  1. . . D ADDVAL^RORTSK11(RORTSK,"FUT_CLIN",RORCLIN,PTAG,1)
  1. . S PTCNT=PTCNT+1
  1. ;--- Inactivate the patient list tag if the list is empty
  1. D:PTCNT'>0 UPDVAL^RORTSK11(RORTSK,PTLST,,,1)
  1. ;---
  1. Q ECNT