1 | ACKQAS3 ;AUG/JLTP BIR/PTD-Enter Cost Information for Procedures ; [ 02/14/96 3:30 PM ]
|
---|
2 | ;;3.0;QUASAR;**8**;Feb 11, 2000
|
---|
3 | ;Per VHA Directive 10-93-142, this routine SHOULD NOT be modified.
|
---|
4 | ACCESS ;Only A&SP staff designated as supervisors can access this option.
|
---|
5 | N ACKDUZ
|
---|
6 | S ACKDUZ=$$PROVCHK^ACKQASU4(DUZ) S:ACKDUZ="" ACKDUZ=" "
|
---|
7 | W @IOF I $O(^ACK(509850.3,ACKDUZ,""))="" W !,"You are not listed in the A&SP STAFF file (#509850.3).",!,"Access denied." G EXIT
|
---|
8 | S X=$$STACT^ACKQUTL(ACKDUZ) I ((X=-2)!(X=-6)) W !,"Only clinicians may access this option!" G EXIT
|
---|
9 | I X W !,"The A&SP STAFF file (#509850.3) indicates that you have been inactivated.",!,"Access denied." G EXIT
|
---|
10 | I $P(^ACK(509850.3,ACKDUZ,0),"^",6)'=1 W !,"You must be listed as a SUPERVISOR in the A&SP STAFF file (#509850.3)",!,"in order to use this option. Access denied." G EXIT
|
---|
11 | OPTN ;Introduce option.
|
---|
12 | W @IOF,!,"This option allows you to enter cost data for each procedure code",!,"in the A&SP PROCEDURE CODE file (#509850.4). The information is",!,"used to generate the Cost Comparison Report.",!
|
---|
13 | I '$O(^ICPT(0)) W !,"The CPT file (#81) is required." G EXIT
|
---|
14 | CHOOSE ;Display user choices: edit selected entries or all entries.
|
---|
15 | K DIR,X,Y S DIR(0)="NAO^1:2",DIR("A",1)="Select the action you wish to take.",DIR("A",2)="",DIR("A",3)="1. Edit a selected CPT-4 code.",DIR("A",4)="2. Edit all procedure codes.",DIR("A",5)=""
|
---|
16 | S DIR("A")="Enter a number, 1 or 2: ",DIR("?")="Answer 1 to choose a code; answer 2 to loop through all procedures"
|
---|
17 | S DIR("??")="^D CHOOSE^ACKQHLP1" D ^DIR K DIR G:$D(DIRUT) EXIT
|
---|
18 | S ACKANS=+Y I ACKANS=1 K ACKANS,DIR,X,Y G SINGLE
|
---|
19 | LOOP ;Edit the cost of all CPT-4 procedure codes.
|
---|
20 | S ACK=0 F S ACK=$O(^ACK(509850.4,ACK)) Q:'ACK!($D(DIRUT)) S ACK0=^(ACK,0) D COST
|
---|
21 | EXIT ;Kill variables and exit routine.
|
---|
22 | K %,%W,%Y,ACKANS,ACK,ACK0,ACK1,ACK(1),ACKM,C,DA,DIC,DIE,DIR,DR,DIRUT,DTOUT,DUOUT,X,Y
|
---|
23 | Q
|
---|
24 | ;
|
---|
25 | SINGLE ;Edit the cost of a selected CPT-4 code.
|
---|
26 | S DIC="^ACK(509850.4,",DIC(0)="QEAMZ",DIC("A")="Enter Procedure Code: " W ! D ^DIC K DIC G:Y<0 EXIT
|
---|
27 | S ACK=+Y,ACK0=Y(0)
|
---|
28 | D COST,EXIT
|
---|
29 | G SINGLE
|
---|
30 | ;
|
---|
31 | COST ;Enter cost data for a single CPT-4 procedure code.
|
---|
32 | ;ACK (IEN) and ACK0 (zero node) are defined upon entry.
|
---|
33 | S DIR(0)="NAO^0:9999:2",DIR("A")="Enter Cost: $ ",DIR("?")="Enter the approximate PRIVATE SECTOR cost for this procedure"
|
---|
34 | S DIR("??")="^W !?5,""Do not enter the $ sign. Enter numeric values between 0 and 9999."""
|
---|
35 | S:$P(ACK0,U,6) DIR("B")=$P(ACK0,U,6)
|
---|
36 | I '$D(^ICPT(ACK,0)) W !!,"File 81, CPT, needs to be updated. Code "_ACK_" is missing." Q
|
---|
37 | W !!,$P(^ICPT(ACK,0),U)," ",$$PROCTXT^ACKQUTL8(ACK,"")
|
---|
38 | W:'$P(ACK0,U,4) " *** INACTIVE ***",$C(7)
|
---|
39 | D ^DIR K DIR("B") K:Y=""&('$D(DTOUT)) DIRUT
|
---|
40 | I '$D(DIRUT),Y]"" S DIE="^ACK(509850.4,",DA=ACK,DR=".06////"_+Y D ^DIE K DIE
|
---|
41 | MOD ;Edit cost of modifier codes.
|
---|
42 | S ACKM="" F S ACKM=$O(^ACK(509850.4,ACK,1,"B",ACKM)) Q:ACKM=""!($D(DIRUT)) S ACK(1)=0 F S ACK(1)=$O(^(ACKM,ACK(1))) Q:'ACK(1)!($D(DIRUT)) S ACK1=^ACK(509850.4,ACK,1,ACK(1),0) D
|
---|
43 | .W !?5,ACKM,". ",$P(ACK1,U,2)
|
---|
44 | .S:$P(ACK1,U,3) DIR("B")=$P(ACK1,U,3) D ^DIR K DIR("B") K:'$D(DTOUT)&('$D(DUOUT)) DIRUT Q:$D(DIRUT)
|
---|
45 | .S DIE="^ACK(509850.4,ACK,1,",DA(1)=ACK,DA=ACK(1),DR=".03////"_+Y
|
---|
46 | .D ^DIE K DA,DIE,DR
|
---|