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

BQIDCHSA.m

Go to the documentation of this file.
  1. BQIDCHSA ;PRXM/HC/BWF-Visits with Service Category of 'Hospitalization' ; 09 Dec 2005 3:15 PM
  1. ;;2.4;ICARE MANAGEMENT SYSTEM;**2**;Apr 01, 2015;Build 10
  1. ;
  1. Q
  1. ;
  1. VIS(DATA,PARMS,MPARMS) ;EP
  1. ;
  1. ;Description
  1. ; Retrieves inpatient hospitalizations for the specified parameters
  1. ;Input
  1. ; PARMS = Array of parameters and their values
  1. ; MPARMS = Multiple array of a parameter
  1. ;Output
  1. ; ^TMP(UID,"BQIDCHSA",DFN,VISIT IEN)=""
  1. ;
  1. NEW UID,ADMDT,DSCDT
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP(UID,"BQIDCHSA"))
  1. K @DATA
  1. ;
  1. FND ; Find if the patients have admission flag of "H" - Hospitalization
  1. ;
  1. NEW FDT,TDT,STRT,VSTIEN,DFN,NM,TMFRAME,X,Y,DIEN
  1. S NM=""
  1. F S NM=$O(PARMS(NM)) Q:NM="" S @NM=PARMS(NM)
  1. ;
  1. S TMFRAME=$G(PARMS("TMFRAME"))
  1. I $G(DT)="" D DT^DICRW
  1. I TMFRAME["T-" D
  1. . S FDT=$$DATE^BQIUL1(TMFRAME)
  1. S TDT=DT
  1. ;
  1. ; Order through B x-ref in Visit file. This xref is by visit date, and visit ien.
  1. S STRT=FDT-.01
  1. F S STRT=$O(^AUPNVSIT("B",STRT)) Q:'STRT!(STRT>TDT) D
  1. . S VSTIEN=""
  1. . F S VSTIEN=$O(^AUPNVSIT("B",STRT,VSTIEN)) Q:VSTIEN="" D
  1. .. I $P($G(^AUPNVSIT(VSTIEN,0)),"^",7)'="H" Q
  1. .. ; If visit has been deleted, quit
  1. .. ;I $$GET1^DIQ(9000010,VSTIEN,.11,"I")=1 Q
  1. .. I $P($G(^AUPNVSIT(VSTIEN,0)),"^",11)=1 Q
  1. .. I $P($G(^AUPNVSIT(VSTIEN,0)),"^",9)=1 Q
  1. .. ;S ADMDT=$$GET1^DIQ(9000010,VSTIEN,.01,"I")
  1. .. S ADMDT=$P($G(^AUPNVSIT(VSTIEN,0)),"^",1)
  1. .. S DIEN=0,DSCDT=""
  1. .. F S DIEN=$O(^AUPNVINP("AD",VSTIEN,DIEN)) Q:DIEN="" D
  1. ... S DSCDT=$P($G(^AUPNVINP(DIEN,0)),"^",1)
  1. .. I (ADMDT\1)=(DSCDT\1) Q
  1. .. ;S DFN=$$GET1^DIQ(9000010,VSTIEN,.05,"I") Q:DFN=""
  1. .. S DFN=$P($G(^AUPNVSIT(VSTIEN,0)),"^",5) I DFN="" Q
  1. .. ; Exclude deceased patients
  1. .. I $P($G(^DPT(DFN,.35)),U,1)'="" Q
  1. .. ; If patient has no active HRNs, quit
  1. .. I '$$HRN^BQIUL1(DFN) Q
  1. .. ; If patient has no visit in last 3 years, quit
  1. .. I '$$VTHR^BQIUL1(DFN) Q
  1. .. ;S @DATA@(DFN,VSTIEN)=VSTIEN_U_$$GET1^DIQ(9000010,VSTIEN,.01,"I")
  1. .. S @DATA@(DFN,VSTIEN)=VSTIEN_U_$P($G(^AUPNVSIT(VSTIEN,0)),"^",1)
  1. Q