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

BEDD2PST.m

Go to the documentation of this file.
  1. BEDD2PST ;GDIT/HS/BEE-BEDD VERSION 2.0 POST INSTALL ROUTINE ; 08 Nov 2011 12:00 PM
  1. ;;2.0;BEDD DASHBOARD;;Jun 04, 2014;Build 13
  1. ;
  1. Q
  1. ;
  1. PST ;Post Install for BEDD Version 2.0
  1. ;
  1. NEW BEDD,STAT,EXEC,GLB
  1. ;
  1. ;Get list of current dashboard patients
  1. D BEDDLST^BEDDUTIL(.BEDD)
  1. ;
  1. ;Define the index global
  1. S EXEC="S GLB=$NA(^BEDD.EDDiagnosisI(""ObjIdx""))" X EXEC
  1. ;
  1. ;Loop through the current patients and get their dx values
  1. S STAT="" F S STAT=$O(BEDD("SUM",STAT)) Q:STAT="" D
  1. . NEW OBJID
  1. . S OBJID="" F S OBJID=$O(BEDD("SUM",STAT,OBJID)) Q:OBJID="" D
  1. .. NEW SPOBJID,DXID,VSTCL,EXEC,VIEN,DECDT,NDECDT
  1. .. ;
  1. .. ;Open the visit class
  1. .. S EXEC="S VSTCL=##CLASS(BEDD.EDVISIT).%OpenId(OBJID)" X EXEC
  1. .. ;
  1. .. ;Get the visit IEN
  1. .. S VIEN=""
  1. .. S EXEC="S VIEN=VSTCL.VIEN" X EXEC
  1. .. Q:VIEN=""
  1. .. ;
  1. .. ;Get the decision to admit date
  1. .. S DECDT=""
  1. .. S EXEC="S DECDT=VSTCL.DecAdmDt" X EXEC
  1. .. ;
  1. .. ;Get the decision to admit from PCC
  1. .. S NDECDT=$$GET1^DIQ(9000010,VIEN_",",1116,"I")
  1. .. ;
  1. .. ;If new is blank, fill with old
  1. .. I NDECDT="",DECDT]"" D
  1. ... NEW DECUPD,ERROR
  1. ... S DECUPD(9000010,VIEN_",",1116)=DECDT
  1. ... D FILE^DIE("","DECUPD","ERROR")
  1. .. ;
  1. .. ;Add space to the front
  1. .. S SPOBJID=" "_OBJID
  1. .. ;
  1. .. ;Loop through the entries
  1. .. S DXID="" F S DXID=$O(@GLB@(SPOBJID,DXID)) Q:DXID="" D
  1. ... NEW DXCL,EXEC,CDIEN,CODE,DFN,PRM,NARR,AMERPOV,AMERVERR,STS
  1. ... ;
  1. ... ;Open the diagnosis class
  1. ... S EXEC="S DXCL=##CLASS(BEDD.EDDiagnosis).%OpenId(DXID)" X EXEC
  1. ... ;
  1. ... ;Get any V POV entries - If any already on file, quit
  1. ... S AMERVERR=$$POV^AMERUTIL("",VIEN,.AMERPOV)
  1. ... I +AMERVERR Q
  1. ... ;
  1. ... ;Get the Code IEN
  1. ... S CDIEN=""
  1. ... S EXEC="S CDIEN=DXCL.CodeIEN" X EXEC
  1. ... Q:CDIEN=""
  1. ... ;
  1. ... ;Get the code
  1. ... S CODE=""
  1. ... S EXEC="S CODE=DXCL.Code" X EXEC
  1. ... Q:CODE=""
  1. ... ;
  1. ... ;Get primary/secondary
  1. ... S PRM=""
  1. ... S EXEC="S PRM=DXCL.PrimaryDiag" X EXEC
  1. ... Q:PRM=""
  1. ... ;
  1. ... ;Get the narrative
  1. ... S NARR=""
  1. ... S EXEC="S NARR=DXCL.DiagNarrative" X EXEC
  1. ... ;
  1. ... ;Get the DFN
  1. ... S DFN=""
  1. ... S EXEC="S DFN=DXCL.DFN" X EXEC
  1. ... Q:DFN=""
  1. ... ;
  1. ... ;Set up the V POV entry
  1. ... S STS=$$SAVE^BEDDPOV("",CDIEN,NARR,PRM,CODE,"NO",VIEN,DUZ,DFN)
  1. ;
  1. Q