| 1 | RMPRPIY3 ;HINCIO/ODJ - PIP Data Entry - HCPCS prompt;3/8/01 ; 12/15/05 10:23am | 
|---|
| 2 | ;;3.0;PROSTHETICS;**61,93**;Feb 09, 1996;Build 6 | 
|---|
| 3 | Q | 
|---|
| 4 | ; | 
|---|
| 5 | ;***** HCPCS - Prompt for a HCPCS code from either | 
|---|
| 6 | ;              an existing stock location or | 
|---|
| 7 | ;              the main HCPCS file (661.1) | 
|---|
| 8 | ;              called by RMPRPIY9 | 
|---|
| 9 | ; | 
|---|
| 10 | ; Inputs: | 
|---|
| 11 | ;    RMPR5 - array of Location data fields... | 
|---|
| 12 | ;    RMPR5("STATION IEN") - Station number of selected Location | 
|---|
| 13 | ;                           (ptr ^DIC(4,) | 
|---|
| 14 | ;    RMPR5("IEN")         - ien of selected Location (ptr ^RMPR(661.5,) | 
|---|
| 15 | ; | 
|---|
| 16 | ; Outputs: | 
|---|
| 17 | ;    RMPR1   - HCPCS data field array (661.1) | 
|---|
| 18 | ;    RMPREXC - exit condition | 
|---|
| 19 | ;              "" - value entered, continue | 
|---|
| 20 | ;               T - Time out | 
|---|
| 21 | ;               P - Prvious field | 
|---|
| 22 | ;               ^ - up arrow out | 
|---|
| 23 | ; | 
|---|
| 24 | ; AAC 12/13/05 | 
|---|
| 25 | ; Modification to the DIC Lookup to perform any Lookup on a HCPC | 
|---|
| 26 | ; code that contains ONLY alph/numeric code for the HCPC code. | 
|---|
| 27 | ; | 
|---|
| 28 | ; | 
|---|
| 29 | HCPCS(RMPR5,RMPR1,RMPREXC) ; | 
|---|
| 30 | N RMPRERR,DIR,X,Y,DUOUT,DTOUT,DIROUT,DIRUT,DIC,DA,RMPRSTN | 
|---|
| 31 | N DIC | 
|---|
| 32 | S RMPRERR=0 | 
|---|
| 33 | S (RMPREXC,RMPRY)="" | 
|---|
| 34 | S RMPR1("HCPCS")=$G(RMPR1("HCPCS")) | 
|---|
| 35 | HCPCS1 S RMPRSTN=RMPR5("STATION IEN") | 
|---|
| 36 | ; Change to DIC call is commented  above 12/13/05 | 
|---|
| 37 | N DIC | 
|---|
| 38 | S DIC="^RMPR(661.1," | 
|---|
| 39 | S DIC(0)="AEQM" | 
|---|
| 40 | ; | 
|---|
| 41 | ; New code for Patch 93 in Set DIC line below. | 
|---|
| 42 | ; | 
|---|
| 43 | S DIC("S")="I $P(^(0),U,5)=1&($P(^(0),U,1)?.AN)" | 
|---|
| 44 | D ^DIC | 
|---|
| 45 | ; | 
|---|
| 46 | I $D(DTOUT) S RMPREXC="T" G HCPCSX | 
|---|
| 47 | I $D(DIROUT) S RMPREXC="P" G HCPCSX | 
|---|
| 48 | I X=""!(X["^")!$D(DUOUT) S RMPREXC="^" G HCPCSX | 
|---|
| 49 | ; | 
|---|
| 50 | ; Change to DIC call included taking this second DIC Lookup out and | 
|---|
| 51 | ; including it in the above first DIC loopup. | 
|---|
| 52 | ; | 
|---|
| 53 | ;S DIC(0)="EMNZ",RMPRY=Y | 
|---|
| 54 | ;S DIC("S")="I $P(^(0),U,5)=1!($P(^(0),U,1)'[""=""" | 
|---|
| 55 | ;S DIC=661.1 | 
|---|
| 56 | ;D ^DIC | 
|---|
| 57 | ; | 
|---|
| 58 | I $D(DTOUT) S RMPREXC="T" G HCPCSX | 
|---|
| 59 | I ($G(X)["^")!($D(DUOUT)) S RMPREXC="^" G HCPCSX | 
|---|
| 60 | I +Y'>0 D  G HCPCS1 | 
|---|
| 61 | . W ! | 
|---|
| 62 | . W "** No HCPCS Selected or Unable to Select Inactive HCPCS..." | 
|---|
| 63 | . Q | 
|---|
| 64 | S RMPR1("HCPCS")=$P(^RMPR(661.1,+Y,0),"^",1) | 
|---|
| 65 | HCPCSX Q RMPRERR | 
|---|
| 66 | ; | 
|---|
| 67 | ;***** QM1 - HCPCS prompt Help - List HCPCS at a Location | 
|---|
| 68 | ;            requires RMRPSTN - Station number | 
|---|
| 69 | ;                     RMPR5("IEN") - Location ien | 
|---|
| 70 | ; | 
|---|
| 71 | QM1 N DIR,X,Y,DA,DTOUT,DIROUT,DIRUT,DUOUT,RMPRMAX,RMPRLIN,RMPRH,RMPR1 | 
|---|
| 72 | N RMPRERR,DIC | 
|---|
| 73 | S RMPRMAX=5,RMPRLIN=0 | 
|---|
| 74 | S DIR(0)="EA" | 
|---|
| 75 | S DIR("A")="Enter <RETURN> for more or ^ to STOP listing" | 
|---|
| 76 | I '$D(^RMPR(661.4,"ASLHI",RMPRSTN,RMPR5("IEN"))) G QM1C | 
|---|
| 77 | W !,"List of HCPCS at location: ",RMPR5("NAME") | 
|---|
| 78 | S RMPRH="" | 
|---|
| 79 | QM1A S RMPRH=$O(^RMPR(661.4,"ASLHI",RMPRSTN,RMPR5("IEN"),RMPRH)) | 
|---|
| 80 | I RMPRH="" G QM1C | 
|---|
| 81 | S RMPR1("HCPCS")=RMPRH | 
|---|
| 82 | S RMPRERR=$$HPACT^RMPRPIX1(.RMPR1) | 
|---|
| 83 | W !,RMPRH,?12,RMPR1("SHORT DESC") | 
|---|
| 84 | S RMPRLIN=RMPRLIN+1 | 
|---|
| 85 | I RMPRLIN'<RMPRMAX G QM1B | 
|---|
| 86 | G QM1A | 
|---|
| 87 | QM1B D ^DIR | 
|---|
| 88 | I $D(DTOUT) S RMPREXC="T" G QM1X | 
|---|
| 89 | I $D(DIROUT) S RMPREXC="P" G QM1X | 
|---|
| 90 | I X="" S RMPRLIN=0 G QM1A | 
|---|
| 91 | I X["^"!($D(DUOUT)) S RMPREXC="^" G QM1C | 
|---|
| 92 | G QM1A | 
|---|
| 93 | ; | 
|---|
| 94 | ; after listing HCPCS at location make general DIC call on | 
|---|
| 95 | ; HCPCS file 661.1 | 
|---|
| 96 | QM1C S X="?",DIC=661.1,DIC(0)="EQM" | 
|---|
| 97 | S DIC("W")="W "" "",$P(^RMPR(661.1,+Y,0),U,2) I $P(^RMPR(661.1,+Y,0),U,5)=0 W ""  **Inactive HCPCS**""" | 
|---|
| 98 | D ^DIC | 
|---|
| 99 | QM1X Q | 
|---|