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

ADGPI.m

Go to the documentation of this file.
  1. ADGPI ; IHS/ADC/PDW/ENM - PATIENT INQUIRY ; [ 09/17/2002 4:19 PM ]
  1. ;;5.0;ADMISSION/DISCHARGE/TRANSFER;;MAR 25, 1999
  1. ;
  1. SP ; -- select patient
  1. N DFN,DIC,Y,X S DIC="^DPT(",DIC(0)="AEQMZ"
  1. D ^DIC K DIC Q:Y'>0 S DFN=+Y D EN G SP
  1. ;
  1. EN ;EP; entry point - input DFN
  1. Q:'$D(DFN) D DM,CS,DS,SV,FA,KVA^VADPT,IN,PG Q
  1. ;
  1. DM ; -- demographic data
  1. N DGDPTN0,DGDPTN11,DGDPTN13,DGPATN0,DGPATN11
  1. S DGDPTN0=^DPT(DFN,0),DGDPTN11=$G(^(.11)),DGDPTN13=$G(^(.13))
  1. S DGPATN0=$G(^AUPNPAT(DFN,0)),DGPATN11=$G(^(11))
  1. W !!?13,"***Confidential Patient Data Covered by Privacy Act***"
  1. W !!,$P(DGDPTN0,U),?32,"HRCN: ",$$HRCN^ADGF,?54,"DOB: ",$$DOB
  1. W !,$P(DGDPTN11,U),?31,"PHONE: ",$P(DGDPTN13,U),?53,"PROV: ",$$PCP
  1. W !,$P(DGDPTN11,U,4)," ",$$ST," ",$P(DGDPTN11,U,6)
  1. W ?32,"ELIG: ",$$ELIG,?54,"SSN: ",$P(DGDPTN0,U,9) Q
  1. ;
  1. CS ; -- current status
  1. ;D INP^DGRPD Q
  1. D INP^ADGRPD Q ;9/17/02 WAR Modified to allow for v5.3 DaySurgery
  1. ;
  1. DS ; -- last day surgery
  1. S X="SRZPEP" X ^%ZOSF("TEST") I $T S DGCK=$$LASTDS^SRZPEP
  1. Q:$G(DGCK)
  1. Q:'$D(^ADGDS(DFN)) N X,Y,DGDSN0,DGDSN2 S (X,Y)=0
  1. F S X=$O(^ADGDS(DFN,"DS","AA",X)) Q:'X S Y=X
  1. Q:'Y S X=$O(^ADGDS(DFN,"DS","AA",Y,0)) Q:'X
  1. Q:'$D(^ADGDS(DFN,"DS",X,0)) S DS=X,DGDSN0=^(0),DGDSN2=$G(^(2))
  1. W !!,"DAY SURGERY date: ",$$DSDT
  1. W:DGDSN2 ?38,"Released: ",$$DSRL," LOS: ",$$DSLS
  1. I $P(DGDSN2,U,3)="Y" W ?38,"**CANCELLED**"
  1. I $P(DGDSN2,U,4)="Y" W ?38,"**NO-SHOW**"
  1. W !?9,"Service: ",$$DSSV,?38,"Provider: ",$$DSPR Q
  1. ;
  1. SV ; -- scheduled visit
  1. Q:'$D(^ADGAUTH(DFN,1,0)) N X,Y,DGSVN0 S (X,Y)=0
  1. F S X=$O(^ADGAUTH(DFN,1,X)) Q:'X D
  1. . S DGSVN0=^ADGAUTH(DFN,1,X,0)
  1. . Q:$P(DGSVN0,U,5)=""!("IQD"'[$P(DGSVN0,U,5))
  1. . D @("SV"_$P(DGSVN0,U,5))
  1. Q
  1. ;
  1. SVI ; -- scheduled admit
  1. N X S X=+DGSVN0
  1. W !!?10,"Scheduled Admit for ",$E(X,4,5),"/",$E(X,6,7),"/",$E(X,2,3)
  1. S X=$P(DGSVN0,U,7) W:X ?43,"Ward: ",$E($P($G(^DIC(42,+X,0)),U),1,3)
  1. S X=$P(DGSVN0,U,3) W:X ?55,"Service: ",$P($G(^DIC(45.7,+X,0)),U,3) Q
  1. ;
  1. SVQ ; -- scheduled quarters
  1. N X S X=+DGSVN0 W !!?10,"Scheduled for Quarters on "
  1. W $E(X,4,5),"/",$E(X,6,7),"/",$E(X,2,3) S X=$P(DGSVN0,U,2)
  1. W ?50,"Provider: " W:X $E($P($G(^DIC(45.7,+X,0)),U,3),1,20) Q
  1. ;
  1. SVD ; -- scheduled day surgery
  1. N X S X=+DGSVN0 W !!?10,"Scheduled for Day Surgery on "
  1. W $E(X,4,5),"/",$E(X,6,7),"/",$E(X,2,3)
  1. S X=$P(DGSVN0,U,3) W:X " Service: ",$P(^DIC(45.7,X,0),U,3) Q
  1. ;
  1. FA ; -- scheduled future appointments
  1. ;9/17/02 WAR Chgd to accomodate v5.3 DaySurgery
  1. ;D FA^DGRPD Q
  1. D FA^ADGRPD Q
  1. ;
  1. IN ; -- insurance (from health summary)
  1. ;N APCHSPAT,APCHSCKP,APCHSNPG,APCHSCVD,APCHSBRK,APCHSQ
  1. S APCHSPAT=DFN,APCHSCKP="",APCHSNPG=0,APCHSBRK=""
  1. S APCHSCVD="S:Y]"""" Y=+Y,Y=$E(Y,4,5)_""/""_$E(Y,6,7)_""/""_$E(Y,2,3)"
  1. W !! D ^APCHS5 Q
  1. ;
  1. PG ; -- page
  1. N X,Y K DIR S DIR(0)="E" D ^DIR K DIR,X Q
  1. ;
  1. DOB() ; -- date of birth
  1. N Y S Y=$P(DGDPTN0,U,3) X ^DD("DD") Q Y
  1. ;
  1. ELIG() ; -- eligibility status
  1. N Y,C S Y=$P(DGPATN11,U,12) S C=$P(^DD(9000001,1112,0),U,2)
  1. D Y^DIQ Q $E(Y,1,13)
  1. ;
  1. ST() ; -- state
  1. Q $P($G(^DIC(5,+$P(DGDPTN11,U,5),0)),U,2)
  1. ;
  1. DSDT() ; -- day surgery date/time
  1. N Y S Y=+DGDSN0 X ^DD("DD") Q Y
  1. ;
  1. DSSV() ; -- day surgery treating specialty
  1. Q $E($P($G(^DIC(45.7,+$P(DGDSN0,U,5),0)),U),1,20)
  1. ;
  1. DSPR() ; -- day surgery provider
  1. Q $E($P($G(^VA(200,+$P(DGDSN0,U,6),0)),U),1,20)
  1. ;
  1. DSRL() ; -- day surgery release date/time
  1. N Y S Y=+DGDSN2 X ^DD("DD") Q Y
  1. ;
  1. DSLS() ; -- day surgery length of stay
  1. Q:'DS "" D Q X_" hrs"
  1. . K ^UTILITY("DIQ1",$J) S DR(9009012.01)=8,DA(9009012.01)=DS
  1. . S DIC=9009012,DA=DFN,DR=1 D EN^DIQ1
  1. . S X=$G(^UTILITY("DIQ1",$J,9009012.01,DS,8))
  1. . K ^UTILITY("DIQ1",$J),DIC,DA,DR
  1. ;
  1. PCP() ; -- primary care provider
  1. I $P(^DD(9000001,.14,0),U,2)["200" Q $E($P($G(^VA(200,+$P(^AUPNPAT(DFN,0),U,14),0)),U),1,20)
  1. Q $E($P($G(^DIC(16,+$P(^AUPNPAT(DFN,0),U,14),0)),U),1,20)