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

AMERVER.m

Go to the documentation of this file.
  1. AMERVER ; IHS/GDIT/BEE - Save record to V EMERGENCY VISIT RECORD ;
  1. ;;3.0;ER VISIT SYSTEM;**8**;MAR 03, 2009;Build 23
  1. ;
  1. VER(AMERDFN,AMERPCC) ;Create/Update V EMERGENCY VISIT RECORD entry
  1. ;
  1. I $G(AMERDFN)="" Q
  1. ;
  1. ;If no VIEN, try to retrieve it
  1. I $G(AMERPCC)="" D Q:AMERPCC=""
  1. . S AMERPCC=$$GET1^DIQ(9009081,AMERDFN_",",1.1,"I")
  1. ;
  1. NEW ERIEN,ERVIEN,%,VERUPD,ERROR,AUPNVSIT
  1. ;
  1. D NOW^%DTC
  1. ;
  1. ;Look for existing entry
  1. S ERIEN=$O(^AUPNVER("AD",AMERPCC,""))
  1. ;
  1. ;If no entry create new one
  1. I ERIEN="" D Q:ERIEN=""
  1. . ;
  1. . NEW DIC,DLAYGO,X,Y
  1. . ;
  1. . S DIC(0)="L",DIC="^AUPNVER("
  1. . S DLAYGO="9000010.29"
  1. . S X="IHS-114 ER"
  1. . K DO,DD D FILE^DICN
  1. . I +Y<0 Q
  1. . S ERIEN=+Y
  1. . ;
  1. . ;Now enter initial fields
  1. . S VERUPD(9000010.29,ERIEN_",",.02)=AMERDFN ;PATIENT NAME
  1. . S VERUPD(9000010.29,ERIEN_",",.03)=AMERPCC ;VISIT
  1. . S VERUPD(9000010.29,ERIEN_",",1216)=% ;DATE ENTERED
  1. . S VERUPD(9000010.29,ERIEN_",",1217)=DUZ ;ENTERED BY
  1. ;
  1. ;Update Modified By/Date
  1. S VERUPD(9000010.29,ERIEN_",",1218)=% ;DATE MODIFIED
  1. S VERUPD(9000010.29,ERIEN_",",1219)=DUZ ;LAST MODIFIED BY
  1. ;
  1. ;Pull from ER VISIT file if available
  1. S ERVIEN=$O(^AMERVSIT("AD",AMERPCC,""))
  1. I ERVIEN]"" D
  1. . NEW URG,MOT,MOA,ENTBY,DIS,DISP,DISDT
  1. . ;
  1. . ;Urgency
  1. . S URG=$$GET1^DIQ(9009080,ERVIEN_",",.24,"I") ;INITIAL ACUITY
  1. . S URG=$S(URG=1:"R",URG=2:"E",URG=3:"U",URG=4:"L",URG=5:"N",1:"@")
  1. . S VERUPD(9000010.29,ERIEN_",",.04)=URG
  1. . ;
  1. . ;Method of Transport
  1. . S (ENTBY,MOA)="",MOT=$$GET1^DIQ(9009080,ERVIEN_",",".25","I") I MOT'="" D
  1. .. ;
  1. .. ;MEANS OF ARRIVAL
  1. .. S MOT=$$GET1^DIQ(9009083,MOT_",",".01","E")
  1. .. I MOT["WALK" S MOA="W"
  1. .. I MOT["AMBULANCE" S MOA="A"
  1. .. S:MOA="" MOA="O"
  1. .. ;
  1. .. ;ENTERED ER BY
  1. .. I MOT["AMBULANCE" S ENTBY="A"
  1. .. I MOT["WHEEL" S ENTBY="W"
  1. .. I MOT["STRET" S ENTBY="S"
  1. .. ;
  1. .. S VERUPD(9000010.29,ERIEN_",",.05)=$S(MOA]"":MOA,1:"@") ;MEANS OF ARRIVAL
  1. .. S VERUPD(9000010.29,ERIEN_",",.07)=$S(ENTBY]"":ENTBY,1:"@") ;ENTERED ER BY
  1. . ;
  1. . ;DISPOSITION OF CARE
  1. . S DIS="",DISP=$$GET1^DIQ(9009080,ERVIEN_",","6.1","I") I DISP'="" D
  1. .. S DISP=$$GET1^DIQ(9009083,DISP_",",".01","E")
  1. .. I DISP["HOME" S DIS="D"
  1. .. I DISP["TRANS" S DIS="T"
  1. .. I DISP["ADMIT" S DIS="A"
  1. .. I DISP["LEFT" S DIS="1"
  1. .. I DISP["REGIS" S DIS="O"
  1. .. I DISP["EXPIRED" S DIS="E"
  1. .. I DISP["DEA" S DIS="E"
  1. .. I DISP]"",DIS="" S DIS="O"
  1. .. S VERUPD(9000010.29,ERIEN_",",.11)=$S(DIS]"":DIS,1:"@")
  1. . ;
  1. . ;DEPARTURE DATE&TIME
  1. . S DISDT=$$GET1^DIQ(9009080,ERVIEN_",","6.2","I")
  1. . S VERUPD(9000010.29,ERIEN_",",".13")=$S(DISDT]"":DISDT,1:"@")
  1. ;
  1. ;Pull from ER ADMISSION if no ER VISIT entry
  1. I ERVIEN="" D
  1. . NEW URG,MOT,MOA,ENTBY
  1. . ;
  1. . ;Urgency
  1. . S URG=$$GET1^DIQ(9009081,AMERDFN_",",20,"I") ;INITIAL ACUITY
  1. . S URG=$S(URG=1:"R",URG=2:"E",URG=3:"U",URG=4:"L",URG=5:"N",1:"@")
  1. . S VERUPD(9000010.29,ERIEN_",",.04)=URG
  1. . ;
  1. . ;Method of Transport
  1. . S (ENTBY,MOA)="",MOT=$$GET1^DIQ(9009081,AMERDFN_",","6","I") I MOT'="" D
  1. .. ;
  1. .. ;Means of Arrival
  1. .. S MOT=$$GET1^DIQ(9009083,MOT_",",".01","E")
  1. .. I MOT["WALK" S MOA="W"
  1. .. I MOT["AMBULANCE" S MOA="A"
  1. .. S:MOA="" MOA="O"
  1. .. ;
  1. .. ;Entered ER By
  1. .. I MOT["AMBULANCE" S ENTBY="A"
  1. .. I MOT["WHEEL" S ENTBY="W"
  1. .. I MOT["STRET" S ENTBY="S"
  1. .. ;
  1. .. S VERUPD(9000010.29,ERIEN_",",.05)=$S(MOA]"":MOA,1:"@") ;MEANS OF ARRIVAL
  1. .. S VERUPD(9000010.29,ERIEN_",",.07)=$S(ENTBY]"":ENTBY,1:"@") ;ENTERED ER BY
  1. ;
  1. ;File the entry
  1. D FILE^DIE("","VERUPD","ERROR")
  1. ;
  1. ;Mark the visit as being modified
  1. NEW D S AUPNVSIT=AMERPCC D MOD^AUPNVSIT K D
  1. ;
  1. Q