1 | FBLTCAR ;WOIFO/SS-LTC AUTHORIZATIONS REPORTS ;11/20/02
|
---|
2 | ;;3.5;FEE BASIS;**49**;JAN 30, 1995
|
---|
3 | ;
|
---|
4 | Q
|
---|
5 | ;LTC Ending and Active Authorization Reports
|
---|
6 | ;
|
---|
7 | ;
|
---|
8 | EXPO ;entry point for LTC Outpatient Ending Authorization Report
|
---|
9 | N FBLTCRT,FBLTCPR
|
---|
10 | S FBLTCPR="OUTPATIENT"
|
---|
11 | S FBLTCRT=1 ;Ending Expiration report
|
---|
12 | D EN^FBLTCAR2
|
---|
13 | Q
|
---|
14 | ;
|
---|
15 | EXPC ;entry point for LTC CHN Ending Authorization Report
|
---|
16 | N FBLTCRT,FBLTCPR
|
---|
17 | S FBLTCPR="CONTRACT NURSING HOME"
|
---|
18 | S FBLTCRT=1 ;Ending Expiration report
|
---|
19 | D EN^FBLTCAR2
|
---|
20 | Q
|
---|
21 | ;
|
---|
22 | ACTO ;entry point for LTC Outpatient Active Authorization Report
|
---|
23 | N FBLTCRT,FBLTCPR
|
---|
24 | S FBLTCPR="OUTPATIENT"
|
---|
25 | S FBLTCRT=2 ;Active authorizations report
|
---|
26 | D EN^FBLTCAR2
|
---|
27 | Q
|
---|
28 | ACTC ;entry point for LTC CHN Active Authorization Report
|
---|
29 | N FBLTCRT,FBLTCPR
|
---|
30 | S FBLTCPR="CONTRACT NURSING HOME"
|
---|
31 | S FBLTCRT=2 ;Active authorizations report
|
---|
32 | D EN^FBLTCAR2
|
---|
33 | Q
|
---|
34 | ;
|
---|
35 | ;/*
|
---|
36 | ;check if exclude/include the aithorization in report
|
---|
37 | ;INPUT:
|
---|
38 | ;FBAUTHFR - authorization date FROM
|
---|
39 | ;FBAUTHTO - authorization date TO
|
---|
40 | ;FBRPTFR - report for date FROM
|
---|
41 | ;FBRPTTO - report for date TO
|
---|
42 | ;FBRPTYPE - type of report:
|
---|
43 | ; 1-authorization Ending report
|
---|
44 | ; 2-Active authorization report
|
---|
45 | ;OUTPUT:
|
---|
46 | ;1 - exclude
|
---|
47 | ;0 - include
|
---|
48 | LTCRPT(FBAUTHFR,FBAUTHTO,FBRPTFR,FBRPTTO,FBRPTYPE) ;
|
---|
49 | Q:FBRPTYPE=0 0
|
---|
50 | ;authorization Ending report
|
---|
51 | I FBRPTYPE=1 Q:((FBAUTHTO'<FBRPTFR)&(FBAUTHTO'>FBRPTTO)) 0 Q 1
|
---|
52 | ;Active authorization report
|
---|
53 | I FBRPTYPE=2 Q:((FBAUTHTO<FBRPTFR)!(FBAUTHFR>FBRPTTO)) 1 Q 0
|
---|
54 | Q 0
|
---|
55 | ;
|
---|
56 | ;
|
---|
57 | ;FBPTDFN - patient ien in file #2
|
---|
58 | ;FB161P - pointer to multiple in file #161 under the DFN
|
---|
59 | ;FBVEND - vendor
|
---|
60 | ;FBDTB - begin date of the user specified date range
|
---|
61 | ;FBDTE - end date of the user specified date range
|
---|
62 | ;FBAUBEG - begin date of authorization
|
---|
63 | ;FBAUEND - end date of authorization
|
---|
64 | ;
|
---|
65 | ;OUTPUT:
|
---|
66 | ; string to print
|
---|
67 | ;
|
---|
68 | PRNVIS(FBPTDFN,FB161P,FBVEND,FBDTB,FBDTE,FBAUBEG,FBAUEND) ;
|
---|
69 | N FBRET1,FBRETAR,FBVNDR
|
---|
70 | S FBRETAR=""
|
---|
71 | S FBRET1=$$GETVIS(FBPTDFN,FB161P,FBDTB,$S(FBAUEND>FBDTE:FBDTE,1:FBAUEND),FBAUBEG,.FBRETAR)
|
---|
72 | I FBVEND="not specified" D ;if vendor was not specified in (#161)
|
---|
73 | . ;loop thru vendors (#162) under this authorization
|
---|
74 | . S FBVNDR="" F S FBVNDR=$O(FBRETAR(FBVNDR)) Q:FBVNDR="" D
|
---|
75 | . . W !,?6,"Vendor: "_$S(FBVNDR>0:$P($G(^FBAAV(FBVNDR,0)),U),1:"not specified")
|
---|
76 | . . W !,?6,"Visits: "_$G(FBRETAR(FBVNDR,1)),?19,"Paid Amt: $"_$G(FBRETAR(FBVNDR,2)),?39,"Cum Visits: "_$G(FBRETAR(FBVNDR,3)),?56,"Cum Paid Amt: $"_$G(FBRETAR(FBVNDR,4))
|
---|
77 | . W !,?6,"---"
|
---|
78 | W !,?6,"Visits: "_$P(FBRET1,U,1),?19,"Paid Amt: $"_$P(FBRET1,U,2),?39,"Cum Visits: "_$P(FBRET1,U,3),?56,"Cum Paid Amt: $"_$P(FBRET1,U,4)
|
---|
79 | Q
|
---|
80 | ;
|
---|
81 | ;INPUT:
|
---|
82 | ;FBPATDFN - patient ien in file #2
|
---|
83 | ;FB161 - pointer to multiple in file #161 under the DFN
|
---|
84 | ;FBBEG - begin date of the user specified date range
|
---|
85 | ;FBEND - end date of the user specified date range
|
---|
86 | ;FBAUTB - begin date of authorization
|
---|
87 | ;
|
---|
88 | ;OUTPUT:
|
---|
89 | ; returns number_of_visits^total amount^cumulative_number_of_visits^cumulative_total amount
|
---|
90 | ; FBRET - array with results
|
---|
91 | GETVIS(FBPATDFN,FB161,FBBEG,FBEND,FBAUTB,FBRET) ;
|
---|
92 | N FBVND,FBINDT,FBINITDT,FBCPT,FBAMT,FBCNT,FBCMAMT,FBCMCNT,FBDTCPT,FBBB,FBCPTN,FBAMT1
|
---|
93 | ; auth,patient,vendor
|
---|
94 | S (FBCNT,FBAMT,FBCMCNT,FBCMAMT)=0
|
---|
95 | S FBVND=0 F S FBVND=$O(^FBAAC("AF",FB161,FBPATDFN,FBVND)) Q:+FBVND=0 D
|
---|
96 | . F FBBB=1:1:4 S FBRET(FBVND,FBBB)=0
|
---|
97 | . ;auth,patient,vendor,date node
|
---|
98 | . S FBINDT=0 F S FBINDT=$O(^FBAAC("AF",FB161,FBPATDFN,FBVND,FBINDT)) Q:+FBINDT=0 D
|
---|
99 | . . ;determine a date value
|
---|
100 | . . S FBINITDT=+$G(^FBAAC(FBPATDFN,1,FBVND,1,FBINDT,0))
|
---|
101 | . . Q:FBINITDT=0
|
---|
102 | . . I FBINITDT>FBEND Q ;out of date range
|
---|
103 | . . ;patient,vendor,date,CPT code
|
---|
104 | . . S FBCPT=0 F S FBCPT=$O(^FBAAC(FBPATDFN,1,FBVND,1,FBINDT,1,FBCPT)) Q:+FBCPT=0 D
|
---|
105 | . . . S FBCPTN=+$G(^FBAAC(FBPATDFN,1,FBVND,1,FBINDT,1,FBCPT,0))
|
---|
106 | . . . S FBAMT1=+$P($G(^FBAAC(FBPATDFN,1,FBVND,1,FBINDT,1,FBCPT,0)),"^",3)
|
---|
107 | . . . ; cumulative (from the begining of authorization till the end of user's date range)
|
---|
108 | . . . I FBINITDT'<FBAUTB S FBCMAMT=FBCMAMT+FBAMT1,FBRET(FBVND,4)=FBRET(FBVND,4)+FBAMT1 S:'$D(FBDTCPT(FBINITDT,FBCPTN)) FBCMCNT=FBCMCNT+1,FBRET(FBVND,3)=FBRET(FBVND,3)+1
|
---|
109 | . . . ; for user specified date range
|
---|
110 | . . . I FBINITDT'<FBBEG S FBAMT=FBAMT+FBAMT1,FBRET(FBVND,2)=FBRET(FBVND,2)+FBAMT1 S:'$D(FBDTCPT(FBINITDT,FBCPTN)) FBCNT=FBCNT+1,FBRET(FBVND,1)=FBRET(FBVND,1)+1
|
---|
111 | . . . S:'$D(FBDTCPT(FBINITDT,FBCPTN)) FBDTCPT(FBINITDT,FBCPTN)=""
|
---|
112 | S FBRET=FBCNT_"^"_FBAMT_"^"_FBCMCNT_"^"_FBCMAMT
|
---|
113 | Q FBRET
|
---|
114 | ;
|
---|
115 | ;
|
---|
116 | ;FBLTCAR
|
---|