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

ACDPCCL5.m

Go to the documentation of this file.
  1. ACDPCCL5 ;IHS/ADC/EDE/KML - PCC LINK;
  1. ;;4.1;CHEMICAL DEPENDENCY MIS;;MAY 11, 1998
  1. ;
  1. ;W !,"Generating PCC link"
  1. D ECHK
  1. I $G(ACDQUIT) D VSERROR Q
  1. D @ACDEV("TYPE")
  1. D EOJ
  1. Q
  1. ;
  1. ECHK ;ERROR CHECK
  1. S ACDQUIT=""
  1. I '$D(ACDEV) S ACDQUIT=4 Q ; no array defined
  1. F X="CLINIC","LOCATION","PAT","POV","PRI PROV","SITE TYPE","SVC CAT","TYPE","V DATE","VISIT" D Q:$G(ACDQUIT)
  1. . S X=""""_X_""""
  1. . S:X["POV" X=X_",1"
  1. . I '$D(@("ACDEV("_X_")")) S ACDQUIT=5 Q ; required var missing
  1. . I $G(@("ACDEV("_X_")"))="" S ACDQUIT=6 Q ; required var null
  1. . Q
  1. Q:$G(ACDQUIT)
  1. I "AED"'[ACDEV("TYPE") S ACDQUIT=7 Q ; no appropriate type
  1. Q
  1. ;
  1. VSERROR ;
  1. S ACDFILE="CDMIS VISIT"
  1. S ACDIEN=$G(ACDEV("VISIT"))
  1. S ACDERR="VE"_ACDQUIT,ACDERR=$P($T(@ACDERR),";;",2)
  1. W !!,$G(IORVON)_"Notify your supervisor that the PCC LINK failed with the following error:",!,ACDFILE,"-",ACDERR_$G(IORVOFF),!!
  1. D PAUSE^ACDDEU
  1. Q
  1. ;
  1. VE2 ;;inability to create visit
  1. VE3 ;;invalid visit parameters (date, location etc.)
  1. VE4 ;;ACDEV array not passed
  1. VE5 ;;Required variable not passed
  1. VE6 ;;Required variable is null
  1. VE7 ;;No appropriate type (i.e., A,E,D)
  1. VE21 ;;No activity location passed. No Location determined.
  1. VE22 ;;No IHS Location for HOME in CDMIS SITE PARAMETER File.
  1. VE23 ;;No IHS Location for OTHER in CDMIS SITE PARAMETER File.
  1. VE24 ;;No Location of Encounter when Activity location is Hospital/Clinic.
  1. VE27 ;;No Location of Encounter for OFFICE in CDMIS SITE PARAMETER file.
  1. VE28 ;;Error attempting to modify visit
  1. ;
  1. A ; ADD LOGIC
  1. I ACDEV("TC")="CS" D GENLCS Q
  1. S ACDDAY=1 ; ctls 2100 ien in CDMIS visit
  1. D ADDVISIT
  1. Q
  1. ;
  1. E ; EDIT LOGIC
  1. W !!,$G(IORVON)_"Logic error at E^ACDPCCL5 - Notify programmer!"_$G(IORVOFF),!!
  1. D PAUSE^ACDDEU
  1. Q
  1. ;
  1. GENLCS ; ADD CS VISITS
  1. S ACDCSDTE=0
  1. F S ACDCSDTE=$O(ACDEV("PROC",ACDCSDTE)) Q:ACDCSDTE="" D
  1. . S ACDEV("V DATE")=ACDCSDTE
  1. . S ACDLOC=0
  1. . F S ACDLOC=$O(ACDEV("PROC",ACDCSDTE,ACDLOC)) Q:ACDLOC="" D
  1. .. S ACDEV("CS LOC")=ACDEV("PROC",ACDCSDTE,ACDLOC,"CS LOC")
  1. .. S X=$G(ACDEV("PROC",ACDCSDTE,ACDLOC,"PCC LOC"))
  1. .. S:X ACDEV("LOCATION")=X
  1. .. S ACDDAY=+$E(ACDCSDTE,6,7)
  1. .. D ADDVISIT
  1. .. Q
  1. . Q
  1. Q
  1. ;
  1. ADDVISIT ; ADD ONE PCC VISIT
  1. D VISIT ; set up and create visit
  1. I $G(ACDQUIT) Q
  1. D ^APCDALV ; create visit
  1. I $D(APCDALVR("ACDAFLG")) S ACDQUIT=APCDALVR("ACDAFLG") D VSERROR Q
  1. S APCDVSIT=APCDALVR("APCDVSIT")
  1. ; set PCC visit ien into CDMIS visit
  1. S X=ACDDAY,DA(1)=ACDEV("VISIT"),DIC="^ACDVIS("_DA(1)_",21,",DIC(0)="L",DIC("DR")=".02////"_APCDVSIT_";.03////"_ACDEV("LOCATION"),DIC("P")=$P(^DD(9002172.1,2100,0),U,2)
  1. D FILE^ACDFMC
  1. I Y<0 D ERROR^ACDPCCL("Adding of PCC VISIT LINKAGE to CDMIS VISIT failed",3) Q
  1. S ACD21IEN=+Y
  1. D VFILES^ACDPCCL6 ; go add v file entries for this visit
  1. Q
  1. ;
  1. VISIT ;
  1. D KILL
  1. S APCDALVR("AUPNTALK")=""
  1. S APCDALVR("APCDAUTO")=""
  1. S:ACDEV("TYPE")="A" APCDALVR("APCDADD")=""
  1. S APCDALVR("APCDANE")=""
  1. S APCDALVR("APCDPAT")=ACDEV("PAT")
  1. S (APCDALVR("APCDDATE"),APCDDATK)=ACDEV("V DATE")
  1. S APCDALVR("APCDLOC")=ACDEV("LOCATION")
  1. S APCDALVR("APCDTYPE")=ACDEV("SITE TYPE")
  1. S APCDALVR("APCDCAT")=ACDEV("SVC CAT")
  1. S APCDALVR("APCDCLN")=ACDEV("CLINIC")
  1. S APCDALVR("APCDAPPT")="U"
  1. Q
  1. ;
  1. KILL ;
  1. K APCDAFLG,APCDALVR,APCDANE,APCDAPPT,APCDATMP,APCDAUTO
  1. K APCDCAT,APCDCLN
  1. K APCDLOC
  1. K APCDOLOC
  1. K APCDPAT
  1. K APCDTAT,APCDTLOU,APCDTNQ,APCDTPOV,ACDTPRO,ACDTPRV,APCDTPS,APCDTTOP,APCDTYPE
  1. K AUPNTALK
  1. Q
  1. ;
  1. EOJ ;
  1. D KILL
  1. K ACD21IEN,ACDCSDTE,ACDDAY,ACDERR,ACDFILE,ACDIEN,ACDLOC,ACDQUIT
  1. Q