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

BDGLOC.m

Go to the documentation of this file.
  1. BDGLOC ; IHS/ANMC/LJF - LOCATOR CARD ; [ 08/20/2004 11:46 AM ]
  1. ;;5.3;PIMS;**1001,1003**;MAY 28, 2004
  1. ;IHS/ITSC/LJF 4/14/2005 PATCH 1003 default question to YES, if parameter turned on
  1. ;
  1. NOPAT(BDGPRT) ;EP; entry point from menu
  1. NEW DFN,IEN
  1. S DFN=+$$READ^BDGF("PO^2:EMQZ","Select Patient") Q:DFN<1
  1. S IEN=$$ADMIT(DFN) Q:IEN<1
  1. D PAT(DFN,IEN,$S($G(BDGPRT)]"":BDGPRT,1:"A"))
  1. Q
  1. ;
  1. PAT(DFN,BDGN,BDGPRT,BDGDEV) ;EP; entry point when patient is known
  1. ; can also be used as silent API
  1. ; DFN=patient ien, required
  1. ; BDGN = ien in file 405, movement entry, required
  1. ; BDGPRT = 1 for print, 0 for not print, "A" for ask, required
  1. ; BDGDEV = print device, required if silent call
  1. ; if sent, automatic queuing to that device
  1. ;
  1. Q:'$G(DFN) Q:'$G(BDGN)
  1. I $G(BDGPRT)="" S BDGPRT="A"
  1. I DGPMT=3,DGPMA]"" Q ;no need when discharged
  1. ;
  1. ;IHS/ITSC/LJF 04/14/2005 PATCH 1003 if parameter turned on, assume they want to print
  1. ;I BDGPRT="A" S BDGPRT=$$READ^BDGF("Y","Print Locator Card","NO")
  1. I BDGPRT="A" S BDGPRT=$$READ^BDGF("Y","Print Locator Card","YES")
  1. ;
  1. Q:'BDGPRT ;don't print
  1. ;
  1. ; if device sent, queue automatically
  1. I $G(BDGDEV)]"" D Q
  1. . S ZTIO=BDGDEV,ZTRTN="EN^BDGLOC1",ZTDESC="Locator Card",ZTDTH=$H
  1. . F I="DFN","BDGN" S ZTSAVE(I)=""
  1. . D ^%ZTLOAD
  1. ;
  1. ; else, ask user
  1. ;IHS/ITSC/WAR 5/12/2004 P #1001 default LocCard Prt from ADT parameters
  1. ;D ZIS^BDGF("PQ","EN^BDGLOC1","Locator Card","DFN;BDGN",$G(BDGDEV))
  1. D ZIS^BDGF("PQ","EN^BDGLOC1","Locator Card","DFN;BDGN",$$GET1^DIQ(9009020.1,1,.04))
  1. Q
  1. ;
  1. ;
  1. ADMIT(DFN) ; ask user to select an admission for patient
  1. I '$D(^DGPM("APCA",DFN)) W !!?5,"No admissions on file." Q 0
  1. ;
  1. ; loop by inverse date to display admissions with most recent first
  1. NEW IEN,IVDT,COUNT,ADM,Y
  1. W !!,"Admission(s)" S COUNT=0
  1. S IVDT=0 F S IVDT=$O(^DGPM("ATID1",DFN,IVDT)) Q:'IVDT D
  1. . S IEN=0 F S IEN=$O(^DGPM("ATID1",DFN,IVDT,IEN)) Q:'IEN D
  1. .. S COUNT=COUNT+1,ADM(COUNT)=IEN ;save ien by count
  1. .. W !?5,COUNT,". ",$$GET1^DIQ(405,IEN,.01) ;display date by count
  1. ;
  1. I COUNT=1 Q ADM(1) ;only one, no need to choose
  1. S Y=$$READ^BDGF("NO^1:"_COUNT,"Select One",1,"","")
  1. ;IHS/ITSC/WAR 5/12/2004 P #1001, need the array from list
  1. ;Q Y
  1. Q ADM(Y)
  1. ;