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

DVBACRRP.m

Go to the documentation of this file.
  1. DVBACRRP ;ALB/GTS-557/THM-REPRINT 21-DAY CERT FOR MAS ;21 JUL 89
  1. ;;2.7;AMIE;;Apr 10, 1995
  1. D INIT
  1. I 'CONT G KIL
  1. S DVBSEL=$$SELECT^DVBAUTL5("Original Processing Date","21 Day Certificate")
  1. I DVBSEL="D" S SDATE=$$DATE() G:SDATE<0 KIL
  1. I DVBSEL="N" S XDA=$$PAT^DVBAUTL5("MAS") G:XDA<1 KIL
  1. I DVBSEL=0 G KIL
  1. D DEVICE
  1. I 'CONT G KIL
  1. D DATA
  1. ;
  1. KIL D KILL
  1. Q
  1. ;
  1. DATA ;
  1. I DVBSEL="D" DO
  1. .U IO
  1. .S NAME=""
  1. .F J=0:0 S NAME=$O(^DVB(396,"B",NAME)) Q:NAME="" F XDA=0:0 S XDA=$O(^DVB(396,"B",NAME,XDA)) Q:XDA="" I $P(^DVB(396,XDA,0),U,14)=SDATE S DFN=$P(^(0),U,1) D CREATE
  1. .Q
  1. I DVBSEL="N" DO
  1. .S DFN=$P(^DVB(396,XDA,0),U,1)
  1. .D CREATE
  1. .Q
  1. I NODTA=0 DO
  1. .S VAR(1,0)="0,0,0,2:2,0^No data found to reprint"
  1. .D WR^DVBAUTL4("VAR")
  1. .K VAR
  1. .Q
  1. Q
  1. ;
  1. KILL K %DT(0),SDATE,DVBAON2,DVBSEL,VAR,CONT
  1. I $D(ZTQUEUED) D KILL^%ZTLOAD
  1. D KILL^DVBAUTIL
  1. Q
  1. ;
  1. CREATE ;CERTIFICATE CREATE
  1. Q:'$D(^DVB(396,XDA,4))
  1. I $D(^DVB(396,XDA,2)) Q:$P(^(2),U,10)="L"
  1. I '$D(^DPT(DFN,0)) W:(IOST?1"C-".E)!($D(DVBAON2)) @IOF
  1. I '$D(^DPT(DFN,0)) W !!,"Patient record missing for DFN ",DFN,!!
  1. I '$D(^DPT(DFN,0)) S DVBAON2="" Q
  1. S PNAM=$P(^DPT(DFN,0),U,1),SSN=$P(^(0),U,9),CNUM=$S($D(^DPT(DFN,.31)):$P(^(.31),U,3),1:"Unknown")
  1. S WARD=$P(^DVB(396,XDA,4),U,6),BED=$P(^(4),U,7),DCHGDT=$P(^(4),U,5),ADMDT=$P(^(0),U,4)
  1. U IO W:(IOST?1"C-".E)!($D(DVBAON2)) @IOF
  1. W !,FDT(0),?32,"REPORT OF CONTACT",!,?31,"21-DAY CERTIFICATE",?(80-11),"PAGE: 1",!,?(80-$L(HD1)\2),HD1,!!!!!!!,"Patient name: ",?16,PNAM,!,?9,"SSN: ",?16,SSN,?33,"Claim #: ",?43,CNUM,!!,?9,"Ward: ",?16,WARD,?30,"Bed: ",?36,BED,!!!
  1. W " The patient above has been hospitalized for 21 consecutive days ",!,"from " S Y=ADMDT X ^DD("DD") W Y," to " S Y=DCHGDT X ^DD("DD") W Y,", and the major diagnosis for",!,"this period is:",!!!!!!!!!!!!!!!!!!!!
  1. W "Physician signature: " F LINE=$X:1:80 W "_"
  1. W !!!," Approved by: " F LINE=$X:1:65 W "_"
  1. W !!?5,"R0C 119",!
  1. S NODTA=1
  1. S DVBAON2=""
  1. Q
  1. ;
  1. INIT ;
  1. K ^TMP($J)
  1. S CONT=1,NODTA=0,HD="21-DAY CERTIFICATE REPRINTING"
  1. D HOME^%ZIS
  1. D NOPARM^DVBAUTL2
  1. I $D(DVBAQUIT) S CONT=0 Q
  1. S HD1=$$SITE^DVBCUTL4()
  1. I '$D(DT) S X="T" D ^%DT S DT=Y
  1. S Y=DT X ^DD("DD") S FDT(0)=Y
  1. S VAR(1,0)="0,0,(IOM-$L(HD)\2),1:3,1:0^"_HD
  1. D WR^DVBAUTL4("VAR")
  1. K VAR
  1. Q
  1. ;
  1. DATE() ;THis function returns a date of the original request from the user.
  1. S %DT(0)=-DT
  1. S %DT("A")="Enter ORIGINAL PROCESSING DATE: ",%DT="AEQ"
  1. D ^%DT
  1. K %DT
  1. Q Y
  1. ;
  1. DEVICE ;
  1. S VAR(1,0)="0,0,0,2:0,0^"
  1. D WR^DVBAUTL4("VAR")
  1. K VAR
  1. S %ZIS="AEQ"
  1. D ^%ZIS K %ZIS
  1. I POP S CONT=0 Q
  1. I $D(IO("Q")) DO
  1. .S CONT=0
  1. .S ZTIO=ION,ZTDESC="21-day Cert reprint",ZTRTN="DATA^DVBACRRP"
  1. .F I="XDA","DVBSEL","FDT(0)","HD","HD1","SDATE","NODTA" S ZTSAVE(I)=""
  1. .D ^%ZTLOAD
  1. .D ^%ZISC
  1. .I $D(ZTSK) DO
  1. ..S VAR(1,0)="0,0,0,2:2,0^Request queued."
  1. ..D WR^DVBAUTL4("VAR")
  1. ..K VAR
  1. ..Q
  1. .Q
  1. Q