ACKQASU1 ;HCIOFO/BH-Quasar New Visit Utilities routine ; 04/01/99
;;3.0;QUASAR;;Feb 11, 2000
;Per VHA Directive 10-93-142, this routine SHOULD NOT be modified.
;
CLIN(ACKDIV,ACKOPT) ; prompt for clinic
; inputs: - ACKDIV - selected Division
; ACKOPT - set to U to force uppercase entry
; returns: 0 - if no valid clinics to select from
; null - if no clinic selected
; or X^Y^ where
; X - ien of selected clinic
; & Y - clinic name
;
N ACKIEN,ACKDEF,ACKCLINN,ACKC,ACKCLIN,ACKDFLT
;
; get the clinics for the selected Division
D GETCLIN(ACKDIV,.CLINVARR,$G(ACKOPT))
;
; if no valid clinics then exit
I CLINVARR=0 S ACKCLIN=0 G CLINX
;
; only one clinic exists, select it then exit
I CLINVARR=1 D G CLINX
. S ACKCLIN=$P(CLINVARR(1,1),U,1,2)_U
;
; find users last clinic selection
S ACKDEF=$$FIND1^DIC(509850.831,","_ACKDIV_",1,",""," ")
S ACKDEF=$S(ACKDEF:$$EXTERNAL^DILFD(509850.831,".01","",ACKDEF),1:"")
;
; ensure users last selection is valid
S ACKDEF=$$UP("U",ACKDEF) ; convert to uppercase
I ACKDEF'="",'$D(CLINVARR(2,ACKDEF)) S ACKDEF=""
S ACKDFLT=$S(ACKDEF="":"",1:"2^"_ACKDEF) ; passed to input fnctn as default
;
; multiple clinics exist, only one required.
I CLINVARR>1 D G CLINX
. D SELECT^ACKQSEL(1,"CLINVARR(2)","CLINVARR(4)","CLINIC^35","D CLINHLP^ACKQASU1",ACKDFLT)
. ; get CLINIC IEN
. I $O(CLINVARR(4,""))="" S ACKCLIN="" Q ; quit or timed out
. S ACKCLINN=$O(CLINVARR(4,"")),ACKC=CLINVARR(2,ACKCLINN)
. S ACKIEN=$P(CLINVARR(1,ACKC),U,1)
. D RECALL^DILFD(509850.831,ACKIEN_","_ACKDIV_",1,",DUZ)
. S ACKCLIN=$P(CLINVARR(1,ACKC),U,1,2)_U
;
CLINX ; end
Q ACKCLIN
;
CLINHLP ; displays help text for the clinic prompt
N X,DIWL,DIWR,DIWF
S DIWL=1,DIWR=80,DIWF=""
;
S X=" " D ^DIWP
S X=" Enter the name of a Clinic from the A&SP Site Parameters File." D ^DIWP
S X=" Enter '??' to see a list of the available Clinics, '^' to exit." D ^DIWP
D ^DIWW
Q
;
;
GETCLIN(ACKDIV,CLINVARR,ACKOPT) ; get all the valid clinics and put them in CLINVARR
;
; INPUT: ACKDIV - the selected Division
; CLINVARR - array used to return clinics (passed by reference)
; ACKOPT - set to U for Uppercase entry only
; RETURNS: CLINVARR= number found (n)
; CLINVARR(1,n)=x^name
; CLINVARR(2,name)=n
; and CLINVARR(3,x)=n
; where x=IEN of clinic from parameters file
; and name=the clinic name
;
N ACKTGT,ACKMSG,ACKSCRN,ACK,CLIN,CLINNAME
K CLINVARR
D LIST^DIC(509850.831,","_ACKDIV_",1,",".01","I","*","","","","","","ACKTGT","ACKMSG")
; now transfer to output array
S CLINVARR=$P(ACKTGT("DILIST",0),U,1)
FOR ACK=1:1:CLINVARR D
. S CLIN=ACKTGT("DILIST",1,ACK)
. S CLINNAME=$$GET1^DIQ(44,CLIN,.01)
. S CLINVARR(1,ACK)=CLIN_U_CLINNAME
. S CLINVARR(2,$$UP($G(ACKOPT),CLINNAME))=ACK
. S CLINVARR(3,CLIN)=ACK
Q
;
UP(ACKOPT,X) ; Convert X to uppercase (if requested)
I ACKOPT["U" Q $TR(X,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
Q X
;
DUPCHK(ACKPAT,ACKVD) ; Check for Duplicate Visit by this patient on this Date
; this function will determine if the patient has another visit on
; the selected date. If so the user may choose to select an
; existing visit, or confirm that they are entering a new visit.
; inputs: ACKPAT - patient DFN
; ACKVD - visit date
; returns: -1 if user quit or timed out
; 0 create a new visit
; (ie either no duplicates or user did not select
; a duplicate)
; >0 ien of selected visit
;
N ACKVIEN,ACKTGT,ACKCP,ACKCLN,ACKVSC,ACKTIME,ACKCT,ACKVSEL,ACKSEL
N X,Y,%,DIR,ACKSEQ,ACKTIME,ACKVSEL
S ACKVSEL=0 ; return variable
;
; initialise temp file for data storage
K ^TMP("ACKQASU1",$J,"DUPCHK")
;
; get all visits for patient on given date, create array in time order
S ACKVIEN=0,ACKCT=0
F S ACKVIEN=$O(^ACK(509850.6,"APD",ACKPAT,ACKVD,ACKVIEN)) Q:'ACKVIEN D
. K ACKTGT S ACKCT=ACKCT+1
. D GETS^DIQ(509850.6,ACKVIEN_",","2.5;2.6;4;55","I","ACKTGT")
. S ACKCP=ACKTGT(509850.6,ACKVIEN_",",2.5,"I") ; is this C&P?
. S ACKCLN=ACKTGT(509850.6,ACKVIEN_",",2.6,"I") ; clinic
. S ACKVSC=ACKTGT(509850.6,ACKVIEN_",",4,"I") ; visit stop code
. S ACKTM=+ACKTGT(509850.6,ACKVIEN_",",55,"I") ; appointment time
. S ^TMP("ACKQASU1",$J,"DUPCHK",1,ACKTM,ACKVIEN)=""
. S ^TMP("ACKQASU1",$J,"DUPCHK",2,ACKVIEN)=ACKVD_U_ACKCP_U_ACKCLN_U_ACKVSC_U_ACKTM_U
;
; if no duplicate visits found then exit
I 'ACKCT S ACKVSEL=0 G DUPCHKX
;
; Display duplicates for this patient today
W !,$S(ACKCT=1:"One visit has ",1:ACKCT_" visits have ")_"already been entered for this date and patient.",!
;
; run down the visits in time order, allocate sequence number and display
S ACKTM="",ACKSEQ=0
F S ACKTM=$O(^TMP("ACKQASU1",$J,"DUPCHK",1,ACKTM)) Q:ACKTM="" D
. S ACKVIEN=""
. F S ACKVIEN=$O(^TMP("ACKQASU1",$J,"DUPCHK",1,ACKTM,ACKVIEN)) Q:ACKVIEN="" D
. . S ACKSEQ=ACKSEQ+1
. . S $P(^TMP("ACKQASU1",$J,"DUPCHK",3,ACKSEQ),U,1)=ACKVIEN
. . S TMP=^TMP("ACKQASU1",$J,"DUPCHK",2,ACKVIEN)
. . S ACKTIME=$$FMT^ACKQUTL6(ACKTM,1)
. . S ACKVD=$P(TMP,U,1)
. . S ACKCANDP=$S($P(TMP,U,2):"C&P EXAM",1:"")
. . S ACKCLN=$P(TMP,U,3),ACKCLNNM=$S(+ACKCLN=0:"",1:$$GET1^DIQ(44,ACKCLN_",",.01,"E")) ; clinic name
. . S ACKVSC=$P(TMP,U,4),ACKSTOP=$$ACKSTOP(ACKVSC) ; visit stop code
. . ; display visits
. . W !,$J(ACKSEQ,3),". ",$$DATE(ACKVD)
. . W ?20,ACKTIME,?32,$E(ACKCLNNM,1,30),?64,ACKSTOP,?70,ACKCANDP
;
ASK1 ; ask if one of the displayed visits is the one to be edited
W !!,"Is "_$S(ACKCT=1:"the appointment",1:"one of the appointments")
W " shown here the one you wish to edit"
S %=2 D YN^DICN
I %=-1,%Y?1"^"1.E W !,"Jumping not allowed." G ASK1
;
; if user does not want an existing visit then exit
I %=2 D S ACKVSEL=0 G DUPCHKX
. W !!,"Ok, adding another visit for this patient/date.",!!
; if user quit or timed out then exit
I %="-1" S ACKVSEL=-1 G DUPCHKX
; if any value other than YES, display help and re-prompt
I %'=1 S ACKQHLP=2 D ^ACKQHLP G ASK1
;
; if the user answered YES and there is only one visit then exit
I ACKCT=1 S ACKVSEL=$P(^TMP("ACKQASU1",$J,"DUPCHK",3,1),U,1) G DUPCHKX
;
SELECT ; prompt for which visit
S DIR(0)="N^1:"_ACKSEQ
S DIR("A")="Select by number"
S DIR("?")="Select the appointment you wish to edit from the above list"
D ^DIR K DIR
I $D(DIRUT) S ACKVSEL=-1 G DUPCHKX ; quit or timed out
S ACKSEL=+Y
; get selected Visit ien
S ACKVSEL=$P(^TMP("ACKQASU1",$J,"DUPCHK",3,ACKSEL),U,1)
;
DUPCHKX ; exit point
K ^TMP("ACKQASU1",$J,"DUPCHK")
Q ACKVSEL
;
ACKSTOP(ACKVSC) ; translate visit stop code for display
I ACKVSC="A" Q "AUD"
I ACKVSC="S" Q "SPE"
I ACKVSC="AT" Q "TEL"
I ACKVSC="ST" Q "TEL"
Q ""
;
DATE(Y) ; convert date portion of Y to external format
S Y=Y\1 D DD^%DT
Q Y
;
;
PCEVST1(ACKVD,ACKPAT,ACKCLIN) ; Checks to see if patients has a PCE visit for
; selected clinic on visit date
;
N ACKDATE,ACK,ACKPASS,ACKPIEN
S ACKPASS=0
S X1=ACKVD,X2="-1" D C^%DTC S X=X_".99"
F S X=$O(^AUPNVSIT("AET",ACKPAT,X)) Q:X=""!($P(X,".",1)>ACKVD)!(ACKPASS) D
. I $D(^AUPNVSIT("AET",ACKPAT,X,ACKCLIN)) S ACKPASS=1
Q ACKPASS
;
;
EXCEPT ; Displays Error message explaining that the visit has previously been
; sent to PCE and that the PCE interface is now off. The changes
; made here in Quasar will therefore not be sent to PCE thus causing
; a data disparity between the two systems.
W !!,"WARNING"
W !!,"This visit has Previously been sent to PCE."
W !,"The edited visit will not be sent to PCE because (within the Site Parameters)"
W !,"either the INTERFACE WITH PCE field is set to off, the SEND TO PCE field for"
W !,"this Division is set to off or this visits Visit Date is before the PCE"
W !,"INTERFACE START DATE."
W !!,"Data will now be different between the Quasar and the PCE visit."
W !,"Please take the appropriate corrective action.",!
W ! K DIR S DIR(0)="E",DIR("A")="Press RETURN to continue" W ! D ^DIR
Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HACKQASU1 8284 printed Nov 22, 2024@17:41:47 Page 2
ACKQASU1 ;HCIOFO/BH-Quasar New Visit Utilities routine ; 04/01/99
+1 ;;3.0;QUASAR;;Feb 11, 2000
+2 ;Per VHA Directive 10-93-142, this routine SHOULD NOT be modified.
+3 ;
CLIN(ACKDIV,ACKOPT) ; prompt for clinic
+1 ; inputs: - ACKDIV - selected Division
+2 ; ACKOPT - set to U to force uppercase entry
+3 ; returns: 0 - if no valid clinics to select from
+4 ; null - if no clinic selected
+5 ; or X^Y^ where
+6 ; X - ien of selected clinic
+7 ; & Y - clinic name
+8 ;
+9 NEW ACKIEN,ACKDEF,ACKCLINN,ACKC,ACKCLIN,ACKDFLT
+10 ;
+11 ; get the clinics for the selected Division
+12 DO GETCLIN(ACKDIV,.CLINVARR,$GET(ACKOPT))
+13 ;
+14 ; if no valid clinics then exit
+15 IF CLINVARR=0
SET ACKCLIN=0
GOTO CLINX
+16 ;
+17 ; only one clinic exists, select it then exit
+18 IF CLINVARR=1
Begin DoDot:1
+19 SET ACKCLIN=$PIECE(CLINVARR(1,1),U,1,2)_U
End DoDot:1
GOTO CLINX
+20 ;
+21 ; find users last clinic selection
+22 SET ACKDEF=$$FIND1^DIC(509850.831,","_ACKDIV_",1,",""," ")
+23 SET ACKDEF=$SELECT(ACKDEF:$$EXTERNAL^DILFD(509850.831,".01","",ACKDEF),1:"")
+24 ;
+25 ; ensure users last selection is valid
+26 ; convert to uppercase
SET ACKDEF=$$UP("U",ACKDEF)
+27 IF ACKDEF'=""
IF '$DATA(CLINVARR(2,ACKDEF))
SET ACKDEF=""
+28 ; passed to input fnctn as default
SET ACKDFLT=$SELECT(ACKDEF="":"",1:"2^"_ACKDEF)
+29 ;
+30 ; multiple clinics exist, only one required.
+31 IF CLINVARR>1
Begin DoDot:1
+32 DO SELECT^ACKQSEL(1,"CLINVARR(2)","CLINVARR(4)","CLINIC^35","D CLINHLP^ACKQASU1",ACKDFLT)
+33 ; get CLINIC IEN
+34 ; quit or timed out
IF $ORDER(CLINVARR(4,""))=""
SET ACKCLIN=""
QUIT
+35 SET ACKCLINN=$ORDER(CLINVARR(4,""))
SET ACKC=CLINVARR(2,ACKCLINN)
+36 SET ACKIEN=$PIECE(CLINVARR(1,ACKC),U,1)
+37 DO RECALL^DILFD(509850.831,ACKIEN_","_ACKDIV_",1,",DUZ)
+38 SET ACKCLIN=$PIECE(CLINVARR(1,ACKC),U,1,2)_U
End DoDot:1
GOTO CLINX
+39 ;
CLINX ; end
+1 QUIT ACKCLIN
+2 ;
CLINHLP ; displays help text for the clinic prompt
+1 NEW X,DIWL,DIWR,DIWF
+2 SET DIWL=1
SET DIWR=80
SET DIWF=""
+3 ;
+4 SET X=" "
DO ^DIWP
+5 SET X=" Enter the name of a Clinic from the A&SP Site Parameters File."
DO ^DIWP
+6 SET X=" Enter '??' to see a list of the available Clinics, '^' to exit."
DO ^DIWP
+7 DO ^DIWW
+8 QUIT
+9 ;
+10 ;
GETCLIN(ACKDIV,CLINVARR,ACKOPT) ; get all the valid clinics and put them in CLINVARR
+1 ;
+2 ; INPUT: ACKDIV - the selected Division
+3 ; CLINVARR - array used to return clinics (passed by reference)
+4 ; ACKOPT - set to U for Uppercase entry only
+5 ; RETURNS: CLINVARR= number found (n)
+6 ; CLINVARR(1,n)=x^name
+7 ; CLINVARR(2,name)=n
+8 ; and CLINVARR(3,x)=n
+9 ; where x=IEN of clinic from parameters file
+10 ; and name=the clinic name
+11 ;
+12 NEW ACKTGT,ACKMSG,ACKSCRN,ACK,CLIN,CLINNAME
+13 KILL CLINVARR
+14 DO LIST^DIC(509850.831,","_ACKDIV_",1,",".01","I","*","","","","","","ACKTGT","ACKMSG")
+15 ; now transfer to output array
+16 SET CLINVARR=$PIECE(ACKTGT("DILIST",0),U,1)
+17 FOR ACK=1:1:CLINVARR
Begin DoDot:1
+18 SET CLIN=ACKTGT("DILIST",1,ACK)
+19 SET CLINNAME=$$GET1^DIQ(44,CLIN,.01)
+20 SET CLINVARR(1,ACK)=CLIN_U_CLINNAME
+21 SET CLINVARR(2,$$UP($GET(ACKOPT),CLINNAME))=ACK
+22 SET CLINVARR(3,CLIN)=ACK
End DoDot:1
+23 QUIT
+24 ;
UP(ACKOPT,X) ; Convert X to uppercase (if requested)
+1 IF ACKOPT["U"
QUIT $TRANSLATE(X,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
+2 QUIT X
+3 ;
DUPCHK(ACKPAT,ACKVD) ; Check for Duplicate Visit by this patient on this Date
+1 ; this function will determine if the patient has another visit on
+2 ; the selected date. If so the user may choose to select an
+3 ; existing visit, or confirm that they are entering a new visit.
+4 ; inputs: ACKPAT - patient DFN
+5 ; ACKVD - visit date
+6 ; returns: -1 if user quit or timed out
+7 ; 0 create a new visit
+8 ; (ie either no duplicates or user did not select
+9 ; a duplicate)
+10 ; >0 ien of selected visit
+11 ;
+12 NEW ACKVIEN,ACKTGT,ACKCP,ACKCLN,ACKVSC,ACKTIME,ACKCT,ACKVSEL,ACKSEL
+13 NEW X,Y,%,DIR,ACKSEQ,ACKTIME,ACKVSEL
+14 ; return variable
SET ACKVSEL=0
+15 ;
+16 ; initialise temp file for data storage
+17 KILL ^TMP("ACKQASU1",$JOB,"DUPCHK")
+18 ;
+19 ; get all visits for patient on given date, create array in time order
+20 SET ACKVIEN=0
SET ACKCT=0
+21 FOR
SET ACKVIEN=$ORDER(^ACK(509850.6,"APD",ACKPAT,ACKVD,ACKVIEN))
if 'ACKVIEN
QUIT
Begin DoDot:1
+22 KILL ACKTGT
SET ACKCT=ACKCT+1
+23 DO GETS^DIQ(509850.6,ACKVIEN_",","2.5;2.6;4;55","I","ACKTGT")
+24 ; is this C&P?
SET ACKCP=ACKTGT(509850.6,ACKVIEN_",",2.5,"I")
+25 ; clinic
SET ACKCLN=ACKTGT(509850.6,ACKVIEN_",",2.6,"I")
+26 ; visit stop code
SET ACKVSC=ACKTGT(509850.6,ACKVIEN_",",4,"I")
+27 ; appointment time
SET ACKTM=+ACKTGT(509850.6,ACKVIEN_",",55,"I")
+28 SET ^TMP("ACKQASU1",$JOB,"DUPCHK",1,ACKTM,ACKVIEN)=""
+29 SET ^TMP("ACKQASU1",$JOB,"DUPCHK",2,ACKVIEN)=ACKVD_U_ACKCP_U_ACKCLN_U_ACKVSC_U_ACKTM_U
End DoDot:1
+30 ;
+31 ; if no duplicate visits found then exit
+32 IF 'ACKCT
SET ACKVSEL=0
GOTO DUPCHKX
+33 ;
+34 ; Display duplicates for this patient today
+35 WRITE !,$SELECT(ACKCT=1:"One visit has ",1:ACKCT_" visits have ")_"already been entered for this date and patient.",!
+36 ;
+37 ; run down the visits in time order, allocate sequence number and display
+38 SET ACKTM=""
SET ACKSEQ=0
+39 FOR
SET ACKTM=$ORDER(^TMP("ACKQASU1",$JOB,"DUPCHK",1,ACKTM))
if ACKTM=""
QUIT
Begin DoDot:1
+40 SET ACKVIEN=""
+41 FOR
SET ACKVIEN=$ORDER(^TMP("ACKQASU1",$JOB,"DUPCHK",1,ACKTM,ACKVIEN))
if ACKVIEN=""
QUIT
Begin DoDot:2
+42 SET ACKSEQ=ACKSEQ+1
+43 SET $PIECE(^TMP("ACKQASU1",$JOB,"DUPCHK",3,ACKSEQ),U,1)=ACKVIEN
+44 SET TMP=^TMP("ACKQASU1",$JOB,"DUPCHK",2,ACKVIEN)
+45 SET ACKTIME=$$FMT^ACKQUTL6(ACKTM,1)
+46 SET ACKVD=$PIECE(TMP,U,1)
+47 SET ACKCANDP=$SELECT($PIECE(TMP,U,2):"C&P EXAM",1:"")
+48 ; clinic name
SET ACKCLN=$PIECE(TMP,U,3)
SET ACKCLNNM=$SELECT(+ACKCLN=0:"",1:$$GET1^DIQ(44,ACKCLN_",",.01,"E"))
+49 ; visit stop code
SET ACKVSC=$PIECE(TMP,U,4)
SET ACKSTOP=$$ACKSTOP(ACKVSC)
+50 ; display visits
+51 WRITE !,$JUSTIFY(ACKSEQ,3),". ",$$DATE(ACKVD)
+52 WRITE ?20,ACKTIME,?32,$EXTRACT(ACKCLNNM,1,30),?64,ACKSTOP,?70,ACKCANDP
End DoDot:2
End DoDot:1
+53 ;
ASK1 ; ask if one of the displayed visits is the one to be edited
+1 WRITE !!,"Is "_$SELECT(ACKCT=1:"the appointment",1:"one of the appointments")
+2 WRITE " shown here the one you wish to edit"
+3 SET %=2
DO YN^DICN
+4 IF %=-1
IF %Y?1"^"1.E
WRITE !,"Jumping not allowed."
GOTO ASK1
+5 ;
+6 ; if user does not want an existing visit then exit
+7 IF %=2
Begin DoDot:1
+8 WRITE !!,"Ok, adding another visit for this patient/date.",!!
End DoDot:1
SET ACKVSEL=0
GOTO DUPCHKX
+9 ; if user quit or timed out then exit
+10 IF %="-1"
SET ACKVSEL=-1
GOTO DUPCHKX
+11 ; if any value other than YES, display help and re-prompt
+12 IF %'=1
SET ACKQHLP=2
DO ^ACKQHLP
GOTO ASK1
+13 ;
+14 ; if the user answered YES and there is only one visit then exit
+15 IF ACKCT=1
SET ACKVSEL=$PIECE(^TMP("ACKQASU1",$JOB,"DUPCHK",3,1),U,1)
GOTO DUPCHKX
+16 ;
SELECT ; prompt for which visit
+1 SET DIR(0)="N^1:"_ACKSEQ
+2 SET DIR("A")="Select by number"
+3 SET DIR("?")="Select the appointment you wish to edit from the above list"
+4 DO ^DIR
KILL DIR
+5 ; quit or timed out
IF $DATA(DIRUT)
SET ACKVSEL=-1
GOTO DUPCHKX
+6 SET ACKSEL=+Y
+7 ; get selected Visit ien
+8 SET ACKVSEL=$PIECE(^TMP("ACKQASU1",$JOB,"DUPCHK",3,ACKSEL),U,1)
+9 ;
DUPCHKX ; exit point
+1 KILL ^TMP("ACKQASU1",$JOB,"DUPCHK")
+2 QUIT ACKVSEL
+3 ;
ACKSTOP(ACKVSC) ; translate visit stop code for display
+1 IF ACKVSC="A"
QUIT "AUD"
+2 IF ACKVSC="S"
QUIT "SPE"
+3 IF ACKVSC="AT"
QUIT "TEL"
+4 IF ACKVSC="ST"
QUIT "TEL"
+5 QUIT ""
+6 ;
DATE(Y) ; convert date portion of Y to external format
+1 SET Y=Y\1
DO DD^%DT
+2 QUIT Y
+3 ;
+4 ;
PCEVST1(ACKVD,ACKPAT,ACKCLIN) ; Checks to see if patients has a PCE visit for
+1 ; selected clinic on visit date
+2 ;
+3 NEW ACKDATE,ACK,ACKPASS,ACKPIEN
+4 SET ACKPASS=0
+5 SET X1=ACKVD
SET X2="-1"
DO C^%DTC
SET X=X_".99"
+6 FOR
SET X=$ORDER(^AUPNVSIT("AET",ACKPAT,X))
if X=""!($PIECE(X,".",1)>ACKVD)!(ACKPASS)
QUIT
Begin DoDot:1
+7 IF $DATA(^AUPNVSIT("AET",ACKPAT,X,ACKCLIN))
SET ACKPASS=1
End DoDot:1
+8 QUIT ACKPASS
+9 ;
+10 ;
EXCEPT ; Displays Error message explaining that the visit has previously been
+1 ; sent to PCE and that the PCE interface is now off. The changes
+2 ; made here in Quasar will therefore not be sent to PCE thus causing
+3 ; a data disparity between the two systems.
+4 WRITE !!,"WARNING"
+5 WRITE !!,"This visit has Previously been sent to PCE."
+6 WRITE !,"The edited visit will not be sent to PCE because (within the Site Parameters)"
+7 WRITE !,"either the INTERFACE WITH PCE field is set to off, the SEND TO PCE field for"
+8 WRITE !,"this Division is set to off or this visits Visit Date is before the PCE"
+9 WRITE !,"INTERFACE START DATE."
+10 WRITE !!,"Data will now be different between the Quasar and the PCE visit."
+11 WRITE !,"Please take the appropriate corrective action.",!
+12 WRITE !
KILL DIR
SET DIR(0)="E"
SET DIR("A")="Press RETURN to continue"
WRITE !
DO ^DIR
+13 QUIT