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

APCDALD.m

Go to the documentation of this file.
  1. APCDALD ; IHS/CMI/LAB - NO DESCRIPTION PROVIDED ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. ;
  1. ;
  1. EP ;
  1. D PCCCHECK
  1. I $G(APCDQUIT) D EOJ Q ;something is wrong or don't want to pass data
  1. K APCDV("VISIT"),APCDV("VFILES")
  1. X ^APCDLINK(APCDLINK,2)
  1. D EOJ
  1. Q
  1. PCCCHECK ;check to see if link to pcc active, set BCHLPCC IF SO
  1. I '$D(^AUTTSITE(1,0)) S APCDQUIT=1 Q ;no site file
  1. I $P(^AUTTSITE(1,0),U,8)'="Y" S APCDQUIT=2 Q ;pcc not running
  1. I '$D(^APCCCTRL(DUZ(2),0))#2 S APCDQUIT=3 Q ;no pcc master control file entry
  1. I $G(APCDPKG)="" S APCDQUIT=4 Q ;required variable not passed
  1. I 'APCDPKG S APCDQUIT=5 Q ;no package entry
  1. S APCDPKG("NAME")=$P(^DIC(9.4,APCDPKG,0),U)
  1. I '$D(^APCCCTRL(DUZ(2),11,APCDPKG,0))#2 S APCDQUIT=6 Q ;no pcc master control entry for package
  1. I '$P(^APCCCTRL(DUZ(2),11,APCDPKG,0),U,2) S APCDQUIT=7 Q ;don't want to pass data
  1. S APCDLINK=$O(^APCDLINK("C",APCDPKG,""))
  1. I APCDLINK="" S APCDQUIT=8 Q ;no module link control
  1. I $P(^APCDLINK(APCDLINK,0),U,3)="" S APCDQUIT=9 Q ;don't know array passed
  1. I '$D(^APCDLINK(APCDLINK,2)) S APCDQUIT=10 Q ;no code to execute
  1. Q
  1. ;
  1. EOJ ;
  1. K APCDPKG,APCDLINK,APCDQUIT,APCDERR,XMB,APCDDUZ,APCDVL,APCDVI,APCDV("VISIT"),APCDV("VFILES")
  1. Q
  1. LBULL ;EP - SEND BULLETIN - LINK FAILURE
  1. ;pass APCDERR as narrative
  1. ;APCDALVR("APCDPAT")=patient
  1. ;APCDDATK=date of encounter
  1. ;APCDIEN=package ien of entry
  1. K XMB
  1. S XMB(1)=APCDIEN,XMB(2)=$P(^DPT(APCDALVR("APCDPAT"),0),U)_" (IEN "_APCDALVR("APCDPAT")_")",Y=APCDDATK D DD^%DT
  1. S XMB(3)=Y,XMB(4)=APCDERR,XMB(5)=$G(APCDPKG("NAME")),XMB(6)=APCDFILE,XMB="APCD PCC PACKAGE LINK FAIL",APCDDUZ=DUZ,DUZ=.5
  1. D ^XMB S DUZ=APCDDUZ K XMB,APCDERR
  1. Q
  1. COMPLETE ;EP complete visit protocol call
  1. S APCDV("VISIT","9000010")=APCDVSIT
  1. I '$D(APCDV("VFILES")) S APCDVFLE=9000010 F APCDVL=0:0 S APCDVFLE=$O(^DIC(APCDVFLE)) Q:APCDVFLE>9000010.99!(APCDVFLE'=+APCDVFLE) D COMP2
  1. ;call protocol
  1. S X=+$O(^ORD(101,"B","APCD COMPLETE VISIT ADD",0))_";ORD(101,"
  1. D EN^XQOR
  1. K APCDV,X,Y,APCDVFLE,APCDVDG,APCDVIGR,APCDVDFN
  1. Q
  1. COMP2 ;
  1. S APCDVDG=^DIC(APCDVFLE,0,"GL"),APCDVIGR=APCDVDG_"""AD"",APCDVSIT,APCDVDFN)"
  1. S APCDVDFN="" F APCDVI=1:1 S APCDVDFN=$O(@APCDVIGR) Q:APCDVDFN="" S APCDV(APCDVFLE,APCDVDFN)=""
  1. Q
  1. ;
  1. ;