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

ADGVHF.m

Go to the documentation of this file.
  1. ADGVHF ; IHS/ADC/PDW/ENM - CREATE VHOSP IF MISSING ; [ 03/25/1999 11:48 AM ]
  1. ;;5.0;ADMISSION/DISCHARGE/TRANSFER;;MAR 25, 1999
  1. ;
  1. ;
  1. ; -- select date range
  1. DATE S %DT="AEQ",%DT("A")="Beginning date: ",X="" D ^%DT
  1. G END:Y=-1 S DGBDT=Y
  1. DATE2 S %DT("A")="Ending date: ",X="" D ^%DT G DATE:Y=-1 S DGEDT=Y
  1. I DGEDT<DGBDT W *7,!!?5,"Ending date MUST NOT be before beginning date",! G DATE2
  1. I DGEDT'<DT S X1=DT,X2=-1 D C^%DTC S DGEDT=X
  1. ;
  1. ; -- select print device
  1. S %ZIS="PQ" D ^%ZIS G END:POP,QUE:$D(IO("Q")) U IO G LOOP
  1. QUE K IO("Q") S ZTRTN="LOOP^ADGVHF" S ZTDESC="FIX MISSING VHOSP"
  1. F I="DGBDT","DGEDT" S ZTSAVE(I)=""
  1. D ^%ZTLOAD D ^%ZISC K ZTSK
  1. ;
  1. END K Y,DGBDT,DGEDT D HOME^%ZIS Q
  1. ;
  1. LOOP ;EP; loop thru discharges to check for missing vhosps
  1. S DGPG=0,DGDUZ=$P(^VA(200,DUZ,0),U,2),DGSITE=$P(^DIC(4,DUZ(2),0),U)
  1. S DGLIN="",$P(DGLIN,"=",80)="",DGLIN2="",$P(DGLIN2,"-",80)=""
  1. S DGQ="" D HED
  1. ;
  1. S DGDT=DGBDT-.0001,DGEND=DGEDT+.2400
  1. F S DGDT=$O(^DGPM("ATT3",DGDT)) Q:DGDT=""!(DGDT>DGEND)!(DGQ=U) D
  1. . S DGDSC=0
  1. . F S DGDSC=$O(^DGPM("ATT3",DGDT,DGDSC)) Q:DGDSC=""!(DGQ=U) D
  1. .. S DGD=$G(^DGPM(DGDSC,0)) Q:DGD=""
  1. .. S DGADM=$P(^DGPM(DGDSC,0),U,14) ;corresponding adm
  1. .. S DGA=$G(^DGPM(DGADM,0)) Q:DGA=""
  1. .. S DGV=$P($G(^DGPM(DGADM,"IHS")),U)
  1. .. I DGV]"",$O(^AUPNVINP("AD",DGV,0)) Q ;entry okay
  1. .. D ADD
  1. ;
  1. K DFN,DGD,DGDUZ,DGLIN,DGLIN2,DGPG,DGSITE,DGTY
  1. K DGQ,DGDT,DGBDT,DGEDT,DGEND,DGDSC,DGADM,DGA,DGV D ^%ZISC
  1. Q
  1. ;
  1. ;
  1. ADD ; -- SUBRTN to set variables to call apcdalvr
  1. D ^APCDEIN S DFN=$P(DGA,U,3)
  1. I DGV="" D
  1. . NEW DGPMA,DGPMDA,DGPMCA
  1. . S DGPMA=DGA,(DGPMDA,DGPMCA)=DGADM D APCDALV^ADGCALLS
  1. . S DGV=$P($G(^DGPM(DGADM,"IHS")),U)
  1. S APCDALVR("APCDPAT")=DFN
  1. S APCDALVR("APCDTDT")="`"_$P(DGD,U,4)
  1. S APCDALVR("APCDATMP")="[APCDALVR 9000010.02 (ADD)]"
  1. S:$P(DGA,U,18)=10 APCDALVR("APCDTTT")=$$TFAC
  1. S APCDALVR("APCDLOOK")=$E(+DGD,1,12)
  1. S APCDALVR("APCDTDCS")="`"_$$DSRV
  1. S APCDALVR("APCDTADS")="`"_$P(^DGPM($O(^DGPM("APHY",DGADM,0)),0),U,9)
  1. S APCDALVR("APCDTAT")="`"_$P(DGA,U,4)
  1. S APCDALVR("APCDVSIT")=DGV
  1. D ^APCDALVR
  1. I $D(APCDALVR("APCDAFLG")) D MSG(2),NEWPG,KILL Q
  1. D MSG(1),KILL Q
  1. ;
  1. KILL ; -- kill apcd variables
  1. D APCDEKL^ADGCALLS Q
  1. ;
  1. TFAC() ; -- transfer facility
  1. NEW X S X=$P(DGD,U,5)
  1. Q $S(X["DIC(4":"VA/IHS.`",1:"VENDOR.`")_+X
  1. ;
  1. DSRV() ; -- discharge service
  1. NEW X,Y
  1. S Y=9999999.9999999-$G(^DGPM(+$P(^DGPM(DGADM,0),U,17),0)) Q:'Y 0
  1. S X=$O(^DGPM("ATID6",+DFN,+$O(^DGPM("ATID6",+DFN,Y)),0))
  1. Q $P($G(^DGPM(+X,0)),U,9)
  1. ;
  1. NEWPG ; -- end of page control
  1. I IOST'["C-" D HED Q
  1. K DIR S DIR(0)="E" D ^DIR S DGQ=X
  1. I DGQ'=U D HED
  1. Q
  1. ;
  1. HED ; -- heading
  1. I (DGPG>0)!(IOST["C-") W @IOF
  1. W !,DGLIN S DGPG=DGPG+1
  1. W !?11,"*****Confidential Patient Data Covered by Privacy Act*****"
  1. W !,DGDUZ,?80-$L(DGSITE)/2,DGSITE S DGTY="FIX MISSING V HOSP ENTRIES"
  1. W ! D TIME^ADGUTIL W ?80-$L(DGTY)/2,DGTY,?70,"Page: ",DGPG
  1. S Y=DT X ^DD("DD") W !,Y
  1. W !,DGLIN2,!
  1. Q
  1. ;
  1. MSG(DGN) ; -- prints message
  1. I $Y>(IOSL-4) D NEWPG Q:DGQ=U
  1. W !!,$P(^DPT(DFN,0),U),?25,$$HRC^ADGF(DFN),?35,$P($T(LINE+DGN),";;",2)
  1. Q
  1. ;
  1. LINE ;;
  1. ;;V Hospitalization entry ADDED!
  1. ;;ERROR: Cannot add entry-call computer dept!