| [613] | 1 | ACKQCP ;AUG/JLTP BIR/PTD HCIOFO/BH-QUASAR/C&P Interface ; 06/06/99 11:51
 | 
|---|
 | 2 |  ;;3.0;QUASAR;**1,2**;Feb 11, 2000
 | 
|---|
 | 3 |  ;Per VHA Directive 10-93-142, this routine SHOULD NOT be modified.
 | 
|---|
 | 4 |  ;;DBIA 1473 EN1^DVBCTRN & EN2^DVBCTRN
 | 
|---|
 | 5 |  ;
 | 
|---|
 | 6 | ADEQ ;  Adequate a C&P Exam
 | 
|---|
 | 7 |  N ACKDUZ
 | 
|---|
 | 8 |  S ACKDUZ=$$PROVCHK^ACKQASU4(DUZ) S:ACKDUZ="" ACKDUZ=" "
 | 
|---|
 | 9 |  I $O(^ACK(509850.3,ACKDUZ,""))="" W !,"You are not listed in the A&SP STAFF file (#509850.3).",!,"Access denied." G ADEX
 | 
|---|
 | 10 |  S X=$$STACT^ACKQUTL(ACKDUZ) I (X=-2)!(X=-6) W !,"Only clinicians may adequate C&P exams!" G ADEX
 | 
|---|
 | 11 |  I X W !,"The A&SP STAFF file (#509850.3) indicates that you have been inactivated.",!,"Access denied." G ADEX
 | 
|---|
 | 12 |  ;
 | 
|---|
 | 13 | OPTN ;  Introduce option.
 | 
|---|
 | 14 |  W @IOF
 | 
|---|
 | 15 |  W !,"This option allows you to adequate C&P exams which currently have open"
 | 
|---|
 | 16 |  W !,"requests in the AMIE software. An exam must be completed and signed off prior"
 | 
|---|
 | 17 |  W !,"to adequation. You can use the Edit an Existing Visit option to review or edit"
 | 
|---|
 | 18 |  W !,"an exam before adequating.",!
 | 
|---|
 | 19 |  ;
 | 
|---|
 | 20 |  D ^ACKQCPL G:$D(DIRUT) PRINT
 | 
|---|
 | 21 |  D PULL^ACKQCP1,SHOW
 | 
|---|
 | 22 |  ;
 | 
|---|
 | 23 |  F I=1:1 S ACKTX=$P($T(ADEQWN+I),";;",2) Q:ACKTX=""  W !,ACKTX
 | 
|---|
 | 24 |  ;
 | 
|---|
 | 25 |  S ACKMODE=2 D SIG^ACKQCP I '$D(ACKSIG) D UNLOCK G ADEX
 | 
|---|
 | 26 |  ;
 | 
|---|
 | 27 |  N ACKQVD,ACKQQPV,ACKQQPV1 S ACKQQPV1=""
 | 
|---|
 | 28 |  I $$EN1^DVBCTRN(DFN,"AUDIO",ACKSFT)>0 D
 | 
|---|
 | 29 |  . S DIE="^ACK(509850.6,",DA=ACKD0
 | 
|---|
 | 30 |  . S DR="4.19////"_ACKSIG_";4.2////"_DT_";4.25////"_ACKTITL
 | 
|---|
 | 31 |  . D ^DIE K ACKC D PULL^ACKQCP1
 | 
|---|
 | 32 |  ;
 | 
|---|
 | 33 |  S ACKQVD=$$GET1^DIQ(509850.6,ACKD0_",",.01,"I")
 | 
|---|
 | 34 |  S ACKQQPV=$$GET1^DIQ(509850.6,ACKD0,6,"I")
 | 
|---|
 | 35 |  I ACKQQPV'="" S ACKQQPV1=$$CONVERT1^ACKQUTL4(ACKQQPV)
 | 
|---|
 | 36 |  I ACKQQPV1'="" S ACKST=$$EN2^DVBCTRN("ACKC","ACKQ",ACKSFT,ACKQQPV1,ACKQVD)
 | 
|---|
 | 37 |  ;
 | 
|---|
 | 38 |  I ACKQQPV1="" S ACKST=$$EN2^DVBCTRN("ACKC","ACKQ",ACKSFT,"",ACKQVD)
 | 
|---|
 | 39 |  ;
 | 
|---|
 | 40 |  I ACKST>0 D
 | 
|---|
 | 41 |  . N ACKQARR
 | 
|---|
 | 42 |  . S ACKQARR(509850.6,ACKD0_",",.09)="3" D FILE^DIE("","ACKQARR","")
 | 
|---|
 | 43 |  . I $D(^ACK(509850.6,"AWAIT",2,ACKD0)) K ^ACK(509850.6,"AWAIT",2,ACKD0)
 | 
|---|
 | 44 |  . K ACKQARR
 | 
|---|
 | 45 |  ;
 | 
|---|
 | 46 |  I ACKST<0 W !!,$C(7),$P(ACKST,U,2),!,"Results NOT transferred!!" S DIE="^ACK(509850.6,",DA=ACKD0,DR="4.19///@;4.2///@;4.25///@" D ^DIE K DIE D UNLOCK G ADEX
 | 
|---|
 | 47 |  ;
 | 
|---|
 | 48 |  W !!,"Final results transferred to AMIE C&P package." D UNLOCK
 | 
|---|
 | 49 |  ;
 | 
|---|
 | 50 | PRINT I $D(ACKD0) S DIR(0)="Y",DIR("A")="Print a file copy NOW",DIR("B")="YES",DIR("?")="Answer YES to print this C&P report or answer NO to exit." W ! D ^DIR K DIR G:Y'=1 ADEX I Y=1 D DEV G ADEX
 | 
|---|
 | 51 |  I '$D(ACKD0) D
 | 
|---|
 | 52 |  .W !!,"You can print any C&P report at this time.  Reports can be printed",!,"for exams requested through the AMIE software.  Reports can also be"
 | 
|---|
 | 53 |  .W !,"printed for exams NOT requested by AMIE (e.g., the C&P fields were",!,"""forced"" by entering ""^C AND P"" during data input)."
 | 
|---|
 | 54 |  I '$D(ACKD0) S DIR(0)="Y",DIR("A")="Print a selected C&P report NOW",DIR("B")="NO",DIR("?")="Answer YES to print any C&P report or answer NO to exit." W ! D ^DIR K DIR I Y=1 D CP^ACKQCP1 I $D(ACKD0) D PULL^ACKQCP1,DEV
 | 
|---|
 | 55 |  ;
 | 
|---|
 | 56 | ADEX ;
 | 
|---|
 | 57 |  K ACK0,ACK2,ACKC,ACKCNT,ACKD0,ACKFLD,ACKI,ACKQHLP,ACKPG,ACKQRAW,ACKST,ACKSFT,ACKSIG,ACKSUPER,ACKTITL,ACKTX,DA,DFN,DIC,DIE,DIRUT,DR,DTOUT,DUOUT,I,VA,VADM,VAERR,X,X1,Y
 | 
|---|
 | 58 |  Q
 | 
|---|
 | 59 |  ;
 | 
|---|
 | 60 | SIG ;  Get Electronic Signature
 | 
|---|
 | 61 |  ;  Enter with ACKMODE=1 to sign off or 2 to adequate an exam.
 | 
|---|
 | 62 |  ;
 | 
|---|
 | 63 |  N ACKTT
 | 
|---|
 | 64 |  S ACKMODE(1)="sign off",ACKMODE(2)="adequate"
 | 
|---|
 | 65 |  S (ACKSIG,ACKTITL)="",ACK20=$S($D(^VA(200,DUZ,20)):^(20),1:""),ACK20(2)=$P(ACK20,U,2),ACK20(3)=$P(ACK20,U,3),ACK20(4)=$P(ACK20,U,4)
 | 
|---|
 | 66 |  I ACK20(4)="" W !,$C(7),"YOU DON'T HAVE AN ELECTRONIC SIGNATURE CODE!" G NOSIG
 | 
|---|
 | 67 |  W !!,"Are you ready to "_ACKMODE(ACKMODE)_" this exam" S %=2 D YN^DICN I '% S ACKQHLP=6 D ^ACKQHLP G SIG
 | 
|---|
 | 68 |  G:%'=1 NOSIG S ACKI=0 D GETCODE Q
 | 
|---|
 | 69 |  ;
 | 
|---|
 | 70 | GETCODE X ^%ZOSF("EOFF") R !,"SIGNATURE CODE: ",X:DTIME  S:'$T X=U X ^%ZOSF("EON") I U[X G NOSIG
 | 
|---|
 | 71 |  D HASH^XUSHSHP I X'=ACK20(4) W $C(7) S ACKI=ACKI+1 G:ACKI<3 GETCODE W !,"TOO MANY TRIES!" G NOSIG
 | 
|---|
 | 72 |  ;
 | 
|---|
 | 73 |  ;  If they get past here it's good
 | 
|---|
 | 74 |  ;
 | 
|---|
 | 75 |  W !,"Ok..." S ACKSIG=ACK20(2),ACKTITL=ACK20(3) G SIGEX
 | 
|---|
 | 76 | NOSIG K ACKSIG,ACKTITL
 | 
|---|
 | 77 | SIGEX K %,%Y,ACK20,ACKI,ACKMODE,Y Q
 | 
|---|
 | 78 |  ;
 | 
|---|
 | 79 | ADEQWN ;;
 | 
|---|
 | 80 |  ;; 
 | 
|---|
 | 81 |  ;;     *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
 | 
|---|
 | 82 |  ;;     *                      WARNING!                     *
 | 
|---|
 | 83 |  ;;     * Entering your electronic signature to adequate    *
 | 
|---|
 | 84 |  ;;     * this exam will cause all exam results to be       *
 | 
|---|
 | 85 |  ;;     * transferred to the AMIE C&P package and the exam  *
 | 
|---|
 | 86 |  ;;     * will be tagged CLOSED.  The results will then     *
 | 
|---|
 | 87 |  ;;     * be available to the regional office.              *
 | 
|---|
 | 88 |  ;;     * Do not proceed unless the exam is complete and    *
 | 
|---|
 | 89 |  ;;     * you are satisfied with the accuracy of the        *
 | 
|---|
 | 90 |  ;;     * information!                                      *
 | 
|---|
 | 91 |  ;;     *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
 | 
|---|
 | 92 |  ;; 
 | 
|---|
 | 93 |  ;;
 | 
|---|
 | 94 | SHOW ;
 | 
|---|
 | 95 |  D HOME^%ZIS,SHO1
 | 
|---|
 | 96 |  W !! S DIR(0)="SBM^P:Print;C:Continue",DIR("?")="Enter P to print the C&P exam or C to continue with adequation." D ^DIR K DIR Q:Y'="P"
 | 
|---|
 | 97 | DEV W !!,"The right margin for this report is 80.",!,"You can queue it to run at a later time.",!
 | 
|---|
 | 98 |  K %ZIS,IOP S %ZIS="QM",%ZIS("B")="" D ^%ZIS I POP W !,"NO DEVICE SELECTED OR REPORT PRINTED." Q
 | 
|---|
 | 99 |  I $D(IO("Q")) K IO("Q") S ZTRTN="SHO1^ACKQCP",ZTDESC="QUASAR - PRINT C&P EXAM",ZTSAVE("ACK*")="",ZTSAVE("DFN")="",ZTSAVE("VADM(2)")="" D ^%ZTLOAD,^%ZISC Q
 | 
|---|
 | 100 |  ;
 | 
|---|
 | 101 | SHO1 U IO S ACKPG=0
 | 
|---|
 | 102 |  D HDR I '$O(ACKC(0)) W !,"No C&P exam data found." Q
 | 
|---|
 | 103 |  S ACKC=0 F  S ACKC=$O(ACKC(ACKC)) Q:'ACKC!($D(DUOUT))!($D(DTOUT))  D
 | 
|---|
 | 104 |  .I $Y>(IOSL-5) D:$E(IOST)="C" PAUSE^ACKQUTL Q:$D(DTOUT)!($D(DUOUT))  D HDR
 | 
|---|
 | 105 |  .W !,ACKC(ACKC)
 | 
|---|
 | 106 |  D ^%ZISC S:$D(ZTQUEUED) ZTREQ="@"
 | 
|---|
 | 107 |  Q
 | 
|---|
 | 108 |  ;
 | 
|---|
 | 109 | HDR ;  Print report heading.
 | 
|---|
 | 110 |  S ACKPG=ACKPG+1
 | 
|---|
 | 111 |  W @IOF,"Printed: "_$$NUMDT^ACKQUTL(DT),?(IOM-8),"Page: ",ACKPG
 | 
|---|
 | 112 |  F X="Audiology & Speech Pathology","C&P Exam for "_$P(^DPT(DFN,0),U)_" ("_$P(VADM(2),"^",2)_")" W ! D CNTR^ACKQUTL(X)
 | 
|---|
 | 113 |  S X="",$P(X,"-",IOM)="-" W !,X
 | 
|---|
 | 114 |  Q
 | 
|---|
 | 115 |  ;
 | 
|---|
 | 116 | UNLOCK ;  Unlocks locked visit record
 | 
|---|
 | 117 |  L -^ACK(509850.6,ACKD0)
 | 
|---|
 | 118 |  Q
 | 
|---|
 | 119 |  ;
 | 
|---|