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

BDGICEVT.m

Go to the documentation of this file.
  1. BDGICEVT ; IHS/ANMC/LJF - CREATE IC ENTRY AT DISCHARGE ; [ 01/06/2005 11:36 AM ]
  1. ;;5.3;PIMS;**1001,1004**;MAY 28, 2004
  1. ;IHS/ITSC/LJF 08/09/2004 PATCH 1001 user discharge date field, not surgery date for observations
  1. ;IHS/OIT/LJF 09/09/2005 PATCH 1004 fixed code so observations send discharge date to IC file
  1. ;
  1. ADD ;EP; called by ADT Event driver to create incomplete chart entries
  1. ;
  1. ; Input Variables:
  1. ; DGPMT = type of event (1-admit, 3-discharge, etc.)
  1. ; DGPMDA = event ien
  1. ; DGPMCA = admission ien
  1. ; DGPMP = zero node of 405 entry Prior to event
  1. ; DGPMA = zero node of 405 entry After event
  1. ; DFN = patient ien
  1. ; DGQUIET = if $G(DGQUIET), no user interaction
  1. ;
  1. Q:DGPMT'=3 ;only done at discharge time
  1. Q:DGPMA="" ;discharge deleted, no action
  1. Q:$$GET1^DIQ(9009020.1,$$DIV^BDGPAR(DUZ(2)),.08)'="YES" ;parameter
  1. ;
  1. NEW VST,DD,DO,DIC,X,DLAYGO,Y
  1. S VST=$$GET1^DIQ(405,DGPMCA,.27,"I") Q:'VST ;visit for admission
  1. Q:$D(^BDGIC("AV",VST)) ;already in file
  1. ;
  1. ;I $$TYPE(DGPMCA,DFN)="O" D OBSERV Q ;IHS/OIT/LJF 09/09/2005 PATCH 1004 treat observations the same
  1. ;
  1. L +^BDGIC(0):3 Q:'$T
  1. K DD,DO S DIC="^BDGIC(",DIC(0)="L",DLAYGO=9009016.1,X=DFN
  1. ;used //// to bypass visit screen if visit has zero dep entries
  1. S DIC("DR")=".02///"_$E(+DGPMA,1,12)_";.03////"_VST_";.04///`"_$P($$LASTTXN^BDGF1(DGPMCA,DFN),U,2)
  1. D FILE^DICN K DLAYGO,DIC L -^BDGIC(0)
  1. Q
  1. ;
  1. TYPE(ADM,PAT) ;returns type of admission (Inpatient or Observation)
  1. I $$LASTSRVN^BDGF1(ADM,PAT)["OBSERVATION" Q "O"
  1. Q "I"
  1. ;
  1. OBSERV ; stuff observation data in IC file
  1. NEW SRDATE,DIC,DIE,DR,DA,X,SERV
  1. ; get admission date, assume is surgery date
  1. S SRDATE=$$GET1^DIQ(405,+$G(DGPMCA),.01,"I") I 'SRDATE Q
  1. I $D(^BDGIC("ASRG",SRDATE,DFN)) Q ;already in file
  1. ;
  1. I '$G(DGQUIET) D
  1. . D MSG^BDGF(" "),MSG^BDGF("Creating entry in Incomplete Chart file....")
  1. ;
  1. ; get discharge service
  1. S SERV=$P($$LASTTXN^BDGF1(DGPMCA,DFN),U,2) I 'SERV Q
  1. ;
  1. ; make FM call to stuff data
  1. S X=DFN,DIC="^BDGIC(",DLAYGO=9009016.1,DIC(0)="L"
  1. ; 4 slash visit to bypass file screen
  1. ;S DIC("DR")=".03////"_VST_";.04///`"_SERV_";.05///"_(SRDATE\1)
  1. S DIC("DR")=".03////"_VST_";.04///`"_SERV_";.02///"_SRDATE ;IHS/ITSC/LJF 8/9/2004 PATCH #1001
  1. L +^BDGIC(0):3 I '$T D Q
  1. . Q:$D(DGQUIET)
  1. . W !,*7,"CANNOT ADD TO INCOMPLETE CHART FILE;"
  1. . W "BEING UPDATED BY SOMEONE ELSE"
  1. K DD,DO D FILE^DICN L -^BDGIC(0)
  1. Q