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

DGJSUM.m

Go to the documentation of this file.
  1. DGJSUM ;ALB/MAF - Interface routine with Discharge Summary Package - Jan 26 1993
  1. ;;5.3;Registration;**112,1015**;Aug 13, 1993;Build 21
  1. CHECK(DFN,DGJTDT,DGJPARM,DGJIRTDA,DGJT,DGJFLG,DGJTYP) ;Check to see if there is an IRT entry for a deficiency type.
  1. ;Input variables: DFN
  1. ; DGJTDT = Event Date
  1. ; DGJPARM = Division Parameters
  1. ; DGJIRTDA= Incomplete Records IFN
  1. ; DGJT = Array variables
  1. ; DGJT("DIV") = Division
  1. ; DGJT("AD#") = Admission IFN
  1. ; DGJT("WARD")= Ward
  1. ; DGJT("TS") = Treating Specialty
  1. ; DGJT("ADDT") = Admission Date
  1. ; DGJFLG = returns '1' if new entry created
  1. ; (optional) DGJTYP = Pointer to file #393.3 IRT Def. Type
  1. N DGJOUT
  1. S DGJPARM=$G(^DG(40.8,+$G(DGJT("DIV")),"DT"))
  1. Q:'+DGJPARM ;If IRT not turned on
  1. S DGJTYP=$G(DGJTYP,+$O(^VAS(393.3,"B","DISCHARGE SUMMARY",0)))
  1. I DGJIRTDA]"",$D(^VAS(393,DGJIRTDA,0)) I '$D(^VAS(393,DGJIRTDA,"DT"))!($D(^VAS(393,DGJIRTDA,"DT"))&($P($G(^("DT")),"^",1)']"")) S DGJFLG=1 Q
  1. I DGJIRTDA]"",$D(^VAS(393,DGJIRTDA,0)) Q
  1. S DGJIRTDA=0 F S DGJIRTDA=$O(^VAS(393,"B",DFN,DGJIRTDA)) Q:+DGJIRTDA'>0 D I +$G(DGJOUT) Q
  1. .I $P($G(^VAS(393,DGJIRTDA,0)),"^",2)=DGJTYP,$P($G(^VAS(393,DGJIRTDA,0)),"^",4)=$G(DGJT("AD#")) S DGJOUT=1 Q
  1. I 'DGJIRTDA D ADD Q
  1. Q
  1. ADD ;Create an IRT entry
  1. N DIC,DLAYGO,DR,DIE,DGJT9,DGJT10,DGJTSP,DGJTSV,DGJX,DGJY,DGJTEV,DGJTWARD
  1. S DGJTSV=$S($G(DGJT("WARD"))]"":$P(^DIC(42,+$G(DGJT("WARD")),0),"^",3),1:"")
  1. S:DGJTSV']"" DGJTSV=0 S DGJTSV=$S($D(^DG(393.1,"AC",DGJTSV)):$O(^(DGJTSV,0)),1:"") I DGJTSV']"" S DGJTSV=$O(^DG(393.1,"AC",0,0))
  1. S DGJTSP=$O(^DGPM("ATS",DFN,+$G(DGJT("AD#")),0)),DGJTSP=$O(^(+DGJTSP,0)),DGJTSP=$O(^(+DGJTSP,0)),DGJTSP=$S($D(^DGPM(+DGJTSP,0)):^(0),1:"") ;last TS mvt
  1. S DGJX=8,DGJY=2 D DOC S DGJT9=X,X=""
  1. S DGJT10="" I $P(DGJPARM,"^",3) S DGJX=19,DGJY=4 D DOC S DGJT10=X
  1. S DGJTEV=$S(DGJTDT]"":DGJTDT,1:$P(DGJT("ADDT"),"^",1)),DGJTWARD=$G(^DIC(42,$P($G(DGJT("WARD")),"^",1),44))
  1. S DIC="^VAS(393,",DLAYGO=393,DIC(0)="L",X=DFN D FILE^DICN
  1. S DGJIRTDA=+Y I +Y'>0 Q
  1. L +^VAS(393,+DGJIRTDA):1 I '$T Q
  1. S DR=".02////"_DGJTYP_";.03////"_DGJTEV_";.04////"_$G(DGJT("AD#"))_";.05////"_DGJTWARD_";.06////"_$G(DGJT("DIV"))_";.07////"_$P($G(DGJT("TS")),"^",1)_";.08////"_DGJTSV_";.09////"_DGJT9_";.1////"_DGJT10_";.12////"_DGJT9_";.13////1"
  1. S DIE="^VAS(393,",DA=DGJIRTDA D ^DIE
  1. L -^VAS(393,+DGJIRTDA)
  1. S DGJFLG=1 Q
  1. EDIT(DGJIRTDA,DGJVDD,DGJVDB,DGJVDT,DGJVTB,DGJPARM) ;Edit an IRT file entry.
  1. L +^VAS(393,+DGJIRTDA):1 I '$T Q
  1. S DR="10.01////"_DGJVDD_";10.02////"_DGJVDB_";10.03////"_DGJVDT_";10.04///"_DGJVTB_";10.05///@;10.06///@;10.07///@;10.08///@"
  1. S DIE="^VAS(393,",DA=DGJIRTDA D ^DIE,STAT1
  1. L -^VAS(393,+DGJIRTDA)
  1. Q
  1. DCSDEL(DGJIRTDA,DGJPARM) ;If DCS is Deleted, IRT Rec should just contain a stub
  1. L +^VAS(393,+DGJIRTDA):1 I '$T Q
  1. S DR="10.01///@;10.02///@;10.03///@;10.04///@;10.05///@;10.06///@;10.07///@;10.08///@"
  1. S DIE="^VAS(393,",DA=DGJIRTDA D ^DIE,STAT1
  1. L -^VAS(393,+DGJIRTDA)
  1. Q
  1. SIGUP(DGJIRTDA,DGJDS,DGJSB,DGJDR,DGJRB,DGJPARM) ;Update Signed and Reviewed fields.
  1. L +^VAS(393,+DGJIRTDA):1 I '$T Q
  1. S DR="10.05////"_DGJDS_";10.06////"_DGJSB_";10.07////"_DGJDR_";10.08////"_DGJRB
  1. S DA=DGJIRTDA,DIE=393 D ^DIE,STAT1
  1. L -^VAS(393,+DGJIRTDA)
  1. Q
  1. STAT1 ;check on the status of the report after a change has been made.
  1. N DGJNODE,DGJSTAT,DGJSTAT1
  1. S DGJNODE=$G(^VAS(393,DGJIRTDA,"DT"))
  1. I $P(DGJNODE,"^",1)']"" S DGJSTAT="INCOMPLETE" G STAT
  1. I $P(DGJNODE,"^",3)']"" S DGJSTAT="DICTATED" G STAT
  1. I $P(DGJNODE,"^",5)']"" S DGJSTAT="TRANSCRIBED" G STAT
  1. I $P(DGJPARM,"^",3)=0 S DGJSTAT="SIGNED NO REVIEW" G STAT
  1. I $P(DGJNODE,"^",7)']"" S DGJSTAT="SIGNED" G STAT
  1. I $P(DGJPARM,"^",3)=1 S DGJSTAT="REVIEWED"
  1. STAT S DGJSTAT1=$O(^DG(393.2,"B",DGJSTAT,0)) S DIE="^VAS(393,",DA=DGJIRTDA,DR=".11////^S X=DGJSTAT1" D ^DIE K DR,DIE K DGJSTAT1
  1. Q
  1. DOC ;provider resp.
  1. S X=$P(DGJPARM,"^",DGJY)
  1. S X=$S(X="A":$P(DGJTSP,"^",19),X="N":"",1:$P(DGJTSP,"^",8))
  1. Q