1 | RMPRPF3 ;HOIFO/TH,DDA - PFSS Charge Cancel (credit) ;8/18/05
|
---|
2 | ;;3.0;PROSTHETICS;**98**;Feb 09, 1996
|
---|
3 | ;
|
---|
4 | ; This routine sends "Credit" Charge Message to IBB if .01 field got deleted in file 660
|
---|
5 | ; or if the PSAS HCPCS code is deleted (equals null after user edit).
|
---|
6 | ;
|
---|
7 | ; DBIA # 4663 for SWSTAT^IBBAPI
|
---|
8 | ; DBIA # 4665 for CHARGE^IBBAPI
|
---|
9 | Q
|
---|
10 | ;
|
---|
11 | CHRGTASK ; FILE #660, ENTRY DATE AND PSAS HCPCS FIELDS MUMPS XREF
|
---|
12 | ;KILL LOGIC.
|
---|
13 | ; TASKMAN LOAD A ONE TIME TASKMAN TASK.
|
---|
14 | ; QUIT IF PFSS SWITCH IS OFF OR IF THERE IS NO CHARGE TO REVERSE
|
---|
15 | Q:'+$$SWSTAT^IBBAPI()
|
---|
16 | S RMPRPFSS=$G(^RMPR(660,DA,"PFSS"))
|
---|
17 | Q:$P(RMPRPFSS,"^",2)=""
|
---|
18 | S RMPRZERO=^RMPR(660,DA,0)
|
---|
19 | N ZTRTN,ZTDESC,ZTDTH,ZTIO,ZTUCI,ZTCPU,ZTPRI,ZTSAVE,ZTKIL,ZTSYNC
|
---|
20 | S ZTIO="",ZTRTN="CHRGCRED^RMPRPF3",ZTDESC="Prosthetics file #660 PFSS Charge Credit",ZTDTH=$H
|
---|
21 | S ZTSAVE("RMPRIEN")=DA
|
---|
22 | S ZTSAVE("RMPRZERO")=RMPRZERO
|
---|
23 | S ZTSAVE("RMPRONE")=$G(^RMPR(660,DA,1))
|
---|
24 | S ZTSAVE("RMPRTEN")=$G(^RMPR(660,DA,10))
|
---|
25 | S ZTSAVE("RMPRPFSS")=RMPRPFSS
|
---|
26 | D ^%ZTLOAD
|
---|
27 | Q
|
---|
28 | ;
|
---|
29 | CHRGCRED ; Process account deletion/cancellation
|
---|
30 | ;
|
---|
31 | ; Check if already processing this record.
|
---|
32 | Q:$G(^TMP("RMPRPF3",RMPRIEN))=RMPRIEN
|
---|
33 | S ^TMP("RMPRPF3",RMPRIEN)=RMPRIEN
|
---|
34 | ; Check if this is just a Date edit or a PSAS HCPCS edit, set x-ref AND QUIT.
|
---|
35 | S RMPRCDFL=0
|
---|
36 | S:'$D(^RMPR(660,RMPRIEN,0)) RMPRCDFL=1
|
---|
37 | S:$P($G(RMPRONE),"^",4)="" RMPRCDFL=1
|
---|
38 | I RMPRCDFL=0 D SETAPD G EXIT
|
---|
39 | ; RECORD HAS EITHER BEEN DELETED OR PSAS HCPCS HAS BEEN DELETED. SEND A CREDIT (CD).
|
---|
40 | S RMPRUCID=$P(RMPRPFSS,U,2)
|
---|
41 | S RMPRTYPE="CD"
|
---|
42 | S RMPRDFN=$P(RMPRZERO,"^",2)
|
---|
43 | S RMPRARFN=$P(RMPRPFSS,"^")
|
---|
44 | ;
|
---|
45 | ; FT1
|
---|
46 | S RMPRFT1(4)=$P(RMPRZERO,"^",12) ; Delivery Date
|
---|
47 | S RMPRFT1(10)=$P(RMPRZERO,"^",7) ; Transaction Quantity
|
---|
48 | S RMPRFT1(13)=423 ; Department Code
|
---|
49 | S RMPRFT1(21)=$P($G(RMPRTEN),"^",6) ; Ordering Provider/Ordered by Code
|
---|
50 | S RMPRTC=$P(RMPRZERO,"^",16)
|
---|
51 | S RMPRFT1(22)=RMPRTC/RMPRFT1(10) ; Unit Cost = Total Cost/QTY
|
---|
52 | ; PR1
|
---|
53 | S RMPRHCPC=$P(RMPRONE,"^",4)
|
---|
54 | S RMPRHCDT=$P(RMPRONE,"^")
|
---|
55 | D PSASHCPC^RMPOPF
|
---|
56 | S RMPRPR1(3)=RMPRVHC ; Procedure Code
|
---|
57 | S RMPRPR1(4)=RMPRTHC ; PSAS HCPCS text
|
---|
58 | ; Procedure Functional Type - I:Stock Issue;P:Purchasing
|
---|
59 | S RMPRPR1(6)=$S($P(RMPRZERO,"^",13)=11:"I",1:"P")
|
---|
60 | ;
|
---|
61 | SENDDATA ; Send charge data
|
---|
62 | S RMPRCHRG=$$CHARGE^IBBAPI(RMPRDFN,RMPRARFN,RMPRTYPE,RMPRUCID,.RMPRFT1,.RMPRPR1,"","","","","")
|
---|
63 | Q
|
---|
64 | ;
|
---|
65 | SETAPD ; Set the APD cross-reference because the activity was only an edit, not a delete.
|
---|
66 | S DIE="^RMPR(660,"
|
---|
67 | S DA=RMPRIEN
|
---|
68 | S DR="107///^S X=1"
|
---|
69 | D ^DIE
|
---|
70 | K DIE,DA,DR
|
---|
71 | Q
|
---|
72 | EXIT ; Common exit point
|
---|
73 | K ^TMP("RMPRPF3",RMPRIEN)
|
---|
74 | K RMPRQTY,RMPRTC,RMPRCHRG,RMPRUCID,RMPRDFN,RMRICPP,RMPRCPT
|
---|
75 | K RMPRARFN,RMPRTYPE,RMPRFT1,RMPRPR1,RMPRCPT,RMPRRICP
|
---|
76 | K RMPRDG1,RMPRDIAG,RMPRZCL,RMPRNODE,RMPRPROS,RMPRHCPC,RMPRHCDT,RMPRVHC,RMPRTHC
|
---|
77 | K ZTRTN,ZTDESC,ZTDTH,ZTIO,ZTUCI,ZTCPU,ZTPRI,ZTSAVE,ZTKIL,ZTSYNC
|
---|
78 | Q
|
---|