1 | RMPR29W1 ;HOIFO/SPS - WORK ORDER ADD ON GRID OWL PROGRAM ;11/8/05 07:12
|
---|
2 | ;;3.0;PROSTHETICS;**75**;Feb 09, 1996;Build 25
|
---|
3 | ;
|
---|
4 | ;
|
---|
5 | A1(RMPR6641) ;entry point for testing
|
---|
6 | D A2
|
---|
7 | Q
|
---|
8 | EN(RESULT,RMPR6641) ; -- Broker callback to get list to display
|
---|
9 | A2 N STRING,CLREND,COLUMN,ON,OFF
|
---|
10 | S DATE=2010101
|
---|
11 | K ^TMP($J)
|
---|
12 | N RMPRA,CDATE,X
|
---|
13 | K ADATE,PDAY,RMPRCD
|
---|
14 | S (CNT,VALMCNT)=0,RRX=""
|
---|
15 | ;S (PPDAY,PPD,PPD1,PPD2,PPD3,PPD4,PPD5)=0
|
---|
16 | ;S (PPDDAY,PPDD1,PPDD2,PPDD3,PPDD4,PPDD5)=0
|
---|
17 | I '$D(^RMPR(664.1,RMPR6641,0)) Q
|
---|
18 | I $P(^RMPR(664.1,RMPR6641,0),U,13)="" Q
|
---|
19 | S WO66410=^RMPR(664.1,RMPR6641,0)
|
---|
20 | ;W !!,RMPR6641," ",WO66410
|
---|
21 | S RMPRA=$P(WO66410,U,8) Q:RMPRA'>0 D
|
---|
22 | .S STN=$P(^RMPR(668,RMPRA,0),U,7)
|
---|
23 | .S STNX=$$STATN^RMPRUTIL(STN)
|
---|
24 | .S STS=$P(^RMPR(668,RMPRA,0),U,10)
|
---|
25 | .;Q:STS'["P"
|
---|
26 | .S DFN=$P(^RMPR(668,RMPRA,0),U,2)
|
---|
27 | .D DEM^VADPT
|
---|
28 | .S SSNEN=$E($P(VADM(2),"^",2),10,11)
|
---|
29 | .K SSNEN,VADM
|
---|
30 | .D REC
|
---|
31 | G EXIT
|
---|
32 | Q
|
---|
33 | K CDAY,DNT,DATE,DFN,LINKED,PPD,PPDAY,RMPRAON,RMPRHCSN,RMPRII,RMPRMI
|
---|
34 | K RMPRPCE,RMPRPCI,RMPRPHCE,RMPRPHCI,RMPRTC,RMPRTTE,RMPRTTI,RMPRUI
|
---|
35 | K RMPRUIE,RRX,STN,STNX,STS,VALMCNT,WO66410,WRKDAY
|
---|
36 | REC ;records to grid
|
---|
37 | ;stop date, init action date
|
---|
38 | ;check ien, patch 77
|
---|
39 | ;
|
---|
40 | ;Q:$D(^TMP($J,RMPRA))
|
---|
41 | ;
|
---|
42 | N DIC,DIQ,DR,STOPDT
|
---|
43 | ;S DA=RMPRA
|
---|
44 | ;S DIC=668,DIQ="RE",DR=10,DIQ(0)="EN" D EN^DIQ1
|
---|
45 | S STOPDT=$P($G(^RMPR(668,RMPRA,0)),U,9),STOPDT=$$DAT2^RMPRUTL1(STOPDT)
|
---|
46 | S CDATE=$P(^RMPR(668,RMPRA,0),U,1),CDATE=$$DAT2^RMPRUTL1(CDATE)
|
---|
47 | S DFN=$P(^RMPR(668,RMPRA,0),U,2) Q:DFN=""
|
---|
48 | N VA,VADM
|
---|
49 | D DEM^VADPT
|
---|
50 | S WHO=VADM(1)
|
---|
51 | S SSN=VADM(2)
|
---|
52 | D KVAR^VADPT
|
---|
53 | ;type
|
---|
54 | S TYPE=$$TYPE^RMPREOU(RMPRA,8)
|
---|
55 | Q:TYPE'["LAB"
|
---|
56 | ;W !,"AFTER",RMPRA," ",WO66410
|
---|
57 | ;display description if manual
|
---|
58 | S DES=$$DES^RMPREOU(RMPRA,22)
|
---|
59 | S DES=$TR(DES,"^","*")
|
---|
60 | S DES=$TR(DES,"""","'")
|
---|
61 | ;init action date
|
---|
62 | S ADATE="",PDAY="",WRKDAY=""
|
---|
63 | S ADATE=$P(^RMPR(668,RMPRA,0),U,9)
|
---|
64 | ;PPD=1 for previous pending
|
---|
65 | I ADATE'="" S CDAY=$$PDAY^RMPREOU(RMPRA)
|
---|
66 | ;
|
---|
67 | S STATUS=$$STATUS^RMPREOU(RMPRA)
|
---|
68 | I STATUS["PENDING" D
|
---|
69 | .I ADATE'=""&(ADATE<DATE) S PPD=1
|
---|
70 | .S PPDAY=$$PWRKDAY^RMPREOU(RMPRA)
|
---|
71 | S LINKED=$P($G(^RMPR(668,RMPRA,10,0)),U,4)
|
---|
72 | I LINKED="" S LINKED=0
|
---|
73 | ;
|
---|
74 | ;Get Work Order Data and add to array
|
---|
75 | S RMPRAON="" F S RMPRAON=$O(^RMPR(664.1,RMPR6641,2,RMPRAON)) Q:RMPRAON="" D
|
---|
76 | . Q:'$D(^RMPR(664.1,RMPR6641,2,RMPRAON,0))
|
---|
77 | . ;Change to send only item 1
|
---|
78 | . ;Q:RMPRAON>1
|
---|
79 | . S CNT=CNT+1
|
---|
80 | . S RMPRII=^RMPR(664.1,RMPR6641,2,RMPRAON,0)
|
---|
81 | . ;S RMPR6642=$P(RMPRII,U,6)
|
---|
82 | . ;Internal and external item
|
---|
83 | . ;S RMPRSOI=$P(RMPRII,U),RMPRSOIE=$$EXTERNAL^DILFD(664.16,.01,"",RMPRSOI)
|
---|
84 | . ;Chose to display 661.1 short description instead. left for PFU.
|
---|
85 | . ;Internal/external unit of issue
|
---|
86 | . S RMPRUI=$P(RMPRII,U,3),RMPRUIE=$$EXTERNAL^DILFD(664.16,3,"",RMPRUI)
|
---|
87 | . ;Internal/external Type of Transaction
|
---|
88 | . S RMPRTTI=$P(RMPRII,U,7),RMPRTTE=$$EXTERNAL^DILFD(664.16,8,"",RMPRTTI)
|
---|
89 | . ;Internal/external patient category
|
---|
90 | . S RMPRPCI=$P(RMPRII,U,8),RMPRPCE=$$EXTERNAL^DILFD(664.16,9,"",RMPRPCI)
|
---|
91 | . ;Internal/External HCPCS
|
---|
92 | . S RMPRPHCI=$P($G(^RMPR(664.1,RMPR6641,2,RMPRAON,2)),U,1),RMPRPHCE=$$EXTERNAL^DILFD(661.1,1,"",RMPRPHCI)
|
---|
93 | . ;HCPCS SHORT NAME
|
---|
94 | . I +RMPRPHCI>0 S RMPRHCSN=$P($G(^RMPR(661.1,RMPRPHCI,0)),U,2)
|
---|
95 | . E S RMPRHCSN="UNKNOWN HCPCS NAME"
|
---|
96 | . ;Internal/External CPT Modifier
|
---|
97 | . S RMPRMI=$P($G(^RMPR(664.1,RMPR6641,2,RMPRAON,2)),U,2)
|
---|
98 | . S RMPRTC=$P(RMPRII,U,11)
|
---|
99 | . S ^TMP($J,RMPRA,CNT)=0_U_RMPRAON_U_RMPRHCSN_U_$P(RMPRII,U,2)_U_RMPRUIE_U_$P(RMPRII,U,4)_U_$P(RMPRII,U,5)
|
---|
100 | . S ^TMP($J,RMPRA,CNT)=^TMP($J,RMPRA,CNT)_U_$P(RMPRII,U,6)_U_RMPRTTE_U_RMPRPCE
|
---|
101 | . S ^TMP($J,RMPRA,CNT)=^TMP($J,RMPRA,CNT)_U_RMPRPHCE_U_RMPRMI_U_RMPRTC
|
---|
102 | K CDATE,WHO,SSN,TYPE,DES,PDAY,STATUS,ADATE
|
---|
103 | ;PUT RESULTS IN GLOBAL!!
|
---|
104 | Q
|
---|
105 | EXIT ;common exit point
|
---|
106 | S RESULT=$NA(^TMP($J))
|
---|
107 | Q
|
---|