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

ADGRALC.m

Go to the documentation of this file.
  1. ADGRALC ; IHS/ADC/PDW/ENM - READMISSION LISTINGS (CALC) ; [ 03/25/1999 11:48 AM ]
  1. ;;5.0;ADMISSION/DISCHARGE/TRANSFER;;MAR 25, 1999
  1. ;
  1. K ^TMP("DGZRAL",$J)
  1. A ; -- driver
  1. D LP1 G ^ADGRALP
  1. ;
  1. LP1 ; -- loop admissions
  1. N WARD,DX,DGRE,DGDSA,DGDS,NAME,DGDT,TS,DFN,IFN,UTL,WD,N,ED
  1. S DGDT=DGBDT-.0001,ED=DGEDT+.2400
  1. F S DGDT=$O(^DGPM("AMV1",DGDT)) Q:'DGDT!(DGDT>ED) D
  1. . S DFN=0 F S DFN=$O(^DGPM("AMV1",DGDT,DFN)) Q:'DFN D
  1. .. S IFN=0 F S IFN=$O(^DGPM("AMV1",DGDT,DFN,IFN)) Q:'IFN D 1
  1. Q
  1. ;
  1. 1 ; -- check for readmission
  1. NEW DGPMDA,NAME,WARD,TS,DX,UTL
  1. S DGPMDA=IFN D ^ADGREADM Q:'$D(DGRE)
  1. S NAME=$P($G(^DPT(DFN,0)),U)
  1. S N=$G(^DGPM(IFN,0)),WD=$P(N,U,6),DX=$P(N,U,10)
  1. I DGTYP=2,DGSRT'="A" Q:WD'=+DGSRT
  1. S WARD=$P($G(^DIC(42,+WD,0)),U),TS=$$TS
  1. I DGTYP=3,DGSRT'="A" Q:TS'=+DGSRT
  1. S TS=$S('TS:"NO SERVICE",1:$P($G(^DIC(45.7,+TS,0)),U))
  1. ; -- date, alpha
  1. I DGTYP=1 D Q
  1. . S UTL=WARD_U_TS_U_DX_U_DGRE_U_DGDSA_U_DGDS_U_$$M1PD_U_$$M1P
  1. . S ^TMP("DGZRAL",$J,$P(DGDT,"."),DGDT,DFN)=UTL
  1. ; -- ward, date, alpha
  1. I DGTYP=2 D Q
  1. . S UTL=TS_U_DX_U_DGRE_U_DGDSA_U_DGDS_U_$$M1PD_U_$$M1P
  1. . S ^TMP("DGZRAL",$J,WARD,DGDT,NAME,DFN)=UTL
  1. ; -- service, date, alpha
  1. S UTL=WARD_U_DX_U_DGRE_U_DGDSA_U_DGDS_U_$$M1PD_U_$$M1P
  1. S ^TMP("DGZRAL",$J,TS,DGDT,NAME,DFN)=UTL
  1. Q
  1. ;
  1. Q ; -- cleanup
  1. K WARD,DX,DGRE,DGDSA,DGDS,NAME,DGDT,TS,DFN,IFN,UTL,WD,N,ED Q
  1. ;
  1. M1P() ; -- movement, admission, previous
  1. Q $O(^DGPM("ATID1",DFN,+$O(^DGPM("ATID1",DFN,9999999.9999999-DGDT)),0))
  1. ;
  1. M1PD() ; -- movement, admission, previous, date
  1. Q +$G(^DGPM(+$$M1P,0))
  1. ;
  1. TS() ; -- treating specialty
  1. Q $P($G(^DGPM(+$O(^DGPM("APHY",IFN,0)),0)),U,9)