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

APCLOSP1.m

Go to the documentation of this file.
  1. APCLOSP1 ; IHS/CMI/LAB - CONTINUATION OF APCLOSP1 ; 01 Nov 2010 11:33 AM
  1. ;;2.0;IHS PCC SUITE;**5,11**;MAY 14, 2009;Build 58
  1. ;IHS/CMI/LAB - patch 4 fixed newborn display
  1. ;cmi/anch/maw 9/10/2007 code set versioning in INPT2, ADMDX2
  1. ;
  1. INPT ;
  1. I $Y>(IOSL-10) D HEAD^APCLOSP Q:$D(APCLQUIT)
  1. W !!,"DIRECT INPATIENT"
  1. I '$D(^XTMP("APCLOS",APCLJOB,APCLBTH,"DISCH")),'$D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"DISCH")) W !?10,"[ NO DIRECT INPATIENT DATA TO REPORT ]",! Q
  1. S X=$S($D(^XTMP("APCLOS",APCLJOB,APCLBTH,"DISCH")):^("DISCH"),1:0),Y=$S($D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"DISCH")):^("DISCH"),1:0) D CALC^APCLOSUT
  1. W !!,"There were ",X," discharges (",Z,") during this period, accounting for"
  1. S X=$S($D(^XTMP("APCLOS",APCLJOB,APCLBTH,"PATDAYS")):^("PATDAYS"),1:0),Y=$S($D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"PATDAYS")):^("PATDAYS"),1:0) D CALC^APCLOSUT
  1. W !,X," patient days (",Z,"). The average length of stay was "
  1. S X=$S($D(^XTMP("APCLOS",APCLJOB,APCLBTH,"ALOS")):^("ALOS"),1:0),Y=$S($D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"ALOS")):^("ALOS"),1:0) D CALC^APCLOSUT
  1. W X," days compared",!,"to an ALOS of ",Y," during this period last year."
  1. I $Y>(IOSL-10) D HEAD^APCLOSP Q:$D(APCLQUIT)
  1. ;IHS/TUCSON/LAB - fixed APCLNBC and APCLNBDY
  1. I APCLNBC("APCLOS")>0 W !!,"In addition, there ",$S(APCLNBC("APCLOS")>1:"were",1:"was")," ",APCLNBC("APCLOS")," newborn discharge",$S(APCLNBC("APCLOS")>1:"s",1:"")," accounting",!,"for ",APCLNBDY("APCLOS")," days."
  1. W !!,"The Five leading primary diagnoses for hospitalizations were:",!
  1. S (APCLC,APCLN)=0 F S APCLN=$O(^XTMP("APCLOS",APCLJOB,APCLBTH,"INPTPOVC",APCLN)) Q:APCLN=""!(APCLC=5) D INPT1
  1. I $Y>(IOSL-5) D HEAD^APCLOSP Q:$D(APCLQUIT)
  1. W !!,"The Top Ten admitting diagnoses for hospitalizations were:",!
  1. S (APCLC,APCLN)=0 F S APCLN=$O(^XTMP("APCLOS",APCLJOB,APCLBTH,"INPTADMDXC",APCLN)) Q:APCLN=""!(APCLC=10) D ADMDX1
  1. Q
  1. INPT1 ;
  1. S APCLD=0 F S APCLD=$O(^XTMP("APCLOS",APCLJOB,APCLBTH,"INPTPOVC",APCLN,APCLD)) Q:APCLD=""!(APCLC=5) D INPT2
  1. Q
  1. INPT2 ;
  1. Q:'$D(^ICD9(APCLD))
  1. S APCLC=APCLC+1
  1. S X=^XTMP("APCLOS",APCLJOB,APCLBTH,"INPTPOVC",APCLN,APCLD)
  1. S APCLPD=0 F S APCLPD=$O(^XTMP("APCLOSP",APCLJOB,APCLBTH,"INPTPOV",APCLPD)) Q:APCLD=APCLPD!(APCLPD="")
  1. S Y=$S(APCLPD]"":^XTMP("APCLOSP",APCLJOB,APCLBTH,"INPTPOV",APCLPD),1:0) D CALC^APCLOSUT
  1. ;W !?5,APCLC,"). ",?10,$P(^ICD9(APCLD,0),U,3),?45,X,?52,"(",Z,")" ;cmi/anch/maw 9/10/2007 orig line
  1. W !?5,APCLC,"). ",?10,$E($P($$ICDDX^ICDEX(APCLD),U,4),1,32),?45,X,?52,"(",Z,")" ;cmi/anch/maw 9/10/2007 csv
  1. Q
  1. ADMDX1 ;
  1. S APCLD=0 F S APCLD=$O(^XTMP("APCLOS",APCLJOB,APCLBTH,"INPTADMDXC",APCLN,APCLD)) Q:APCLD=""!(APCLC=10)!($D(APCLQUIT)) D ADMDX2
  1. Q
  1. ADMDX2 ;
  1. Q:'$D(^ICD9(APCLD))
  1. S APCLC=APCLC+1
  1. S X=^XTMP("APCLOS",APCLJOB,APCLBTH,"INPTADMDXC",APCLN,APCLD)
  1. S APCLPD=0 F S APCLPD=$O(^XTMP("APCLOSP",APCLJOB,APCLBTH,"INPTADMDX",APCLPD)) Q:APCLD=APCLPD!(APCLPD="")
  1. S Y=$S(APCLPD]"":^XTMP("APCLOSP",APCLJOB,APCLBTH,"INPTADMDX",APCLPD),1:0) D CALC^APCLOSUT
  1. ;W !?5,APCLC,"). ",?10,$P(^ICD9(APCLD,0),U,3),?45,X,?52,"(",Z,")" ;cmi/anch/maw 9/10/2007 orig line
  1. W !?5,APCLC,"). ",?10,$E($P($$ICDDX^ICDEX(APCLD),U,4),1,32),?45,X,?52,"(",Z,")" ;cmi/anch/maw 9/10/2007 csv
  1. Q
  1. RX ;
  1. I $Y>(IOSL-6) D HEAD^APCLOSP Q:$D(APCLQUIT)
  1. W !!,"PHARMACY"
  1. I '$D(^XTMP("APCLOS",APCLJOB,APCLBTH,"RXNEW")),'$D(^XTMP("APCLOS",APCLJOB,APCLBTH,"RXREFILLS")) W !?10,"[ NO PHARMACY DATA TO REPORT ]",! Q
  1. S X=$S($D(^XTMP("APCLOS",APCLJOB,APCLBTH,"RXNEW")):^("RXNEW"),1:0),Y=$S($D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"RXNEW")):^("RXNEW"),1:0) D CALC^APCLOSUT
  1. W !!,"There were ",X," new prescriptions (",Z,") and "
  1. S X=$S($D(^XTMP("APCLOS",APCLJOB,APCLBTH,"RXREFILLS")):^("RXREFILLS"),1:0),Y=$S($D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"RXREFILLS")):^("RXREFILLS"),1:0) D CALC^APCLOSUT
  1. W X," refills (",Z,")",!,"during this period."
  1. Q
  1. CHS ;
  1. I $Y>(IOSL-10) D HEAD^APCLOSP Q:$D(APCLQUIT)
  1. W !!,"CONTRACT HEALTH SERVICES"
  1. I '$D(^XTMP("APCLOS",APCLJOB,APCLBTH,"CHSTOTAL")) W !?10,"[ NO CHS DATA TO REPORT ]",! Q
  1. S X=$S($D(^XTMP("APCLOS",APCLJOB,APCLBTH,"CHSTOTAL")):^("CHSTOTAL"),1:0),Y=$S($D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"CHSTOTAL")):^("CHSTOTAL"),1:0) D CALC^APCLOSUT
  1. W !!,"Total CHS expenditures (obligations adjusted by payments) for this period were",!,X," (",Z,"). The number and dollar amount of authorizations by type were:",!
  1. S APCLN=0 F S APCLN=$O(^XTMP("APCLOS",APCLJOB,APCLBTH,"CHS",APCLN)) Q:APCLN="" D CHS1
  1. Q
  1. CHS1 ;
  1. S APCLTYPE="" F S APCLTYPE=$O(^XTMP("APCLOS",APCLJOB,APCLBTH,"CHS",APCLN,APCLTYPE)) Q:APCLTYPE="" D CHS2
  1. Q
  1. CHS2 ;
  1. S X=$S($D(^XTMP("APCLOS",APCLJOB,APCLBTH,"CHS",APCLN,APCLTYPE)):^(APCLTYPE),1:0),Y=$S($D(^XTMP("APCLOSP",APCLJOB,APCLBTH,"CHS",APCLN,APCLTYPE)):^(APCLTYPE),1:0) D CALC^APCLOSUT
  1. W !?5,APCLTYPE,?40,^XTMP("APCLOS",APCLJOB,APCLBTH,"CHSCOUNT",APCLN,APCLTYPE),?50,^XTMP("APCLOS",APCLJOB,APCLBTH,"CHS",APCLN,APCLTYPE)
  1. Q