1 | IBBDOC ;OAK/ELZ - APIS FOR OTHER PACKAGES FOR PFSS - DOCUMENT ;5-AUG-2004
|
---|
2 | ;;2.0;INTEGRATED BILLING;**267,260,286,361**;21-MAR-94;Build 9
|
---|
3 | ;;Per VHA Directive 2004-038, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | ; Documents the calls to the routine IBBAPI.
|
---|
6 | ;
|
---|
7 | INSUR ;(DFN,IBDT,IBSTAT,IBR,IBFLDS)
|
---|
8 | ; Function to return patient insurance information
|
---|
9 | ; --Input:
|
---|
10 | ; DFN = patient
|
---|
11 | ; IBDT = date insured (optional - default is today's date)
|
---|
12 | ; IBSTAT = Insurance Status filter (combinable based on groups below)
|
---|
13 | ; Group 1
|
---|
14 | ; A = Inactive included (Default is active only)
|
---|
15 | ; Group 2
|
---|
16 | ; R = Not reimbursable included (Default is reimbursable only)
|
---|
17 | ; B = Indemnity included (Default is not included)
|
---|
18 | ; Group 3
|
---|
19 | ; P = Prescription coverage required (Default is all coverages)
|
---|
20 | ; O = Outpatient coverage required (Default is all coverages)
|
---|
21 | ; I = Inpatient coverage only (Default is all coverages)
|
---|
22 | ;
|
---|
23 | ; IBR = Array to return insurance information - passed by reference
|
---|
24 | ; IBFLDS = List of fields to return (1-22) in a comma separated list or "*" for all
|
---|
25 | ;
|
---|
26 | ; --Output:
|
---|
27 | ; -1 = error occurred (error message passed back in
|
---|
28 | ; IBR("IBBAPI","INSUR","ERROR",x) where x is error number
|
---|
29 | ; between 101 & 111
|
---|
30 | ; 0 = No insurance found based on parameters
|
---|
31 | ; 1 = Insurance found
|
---|
32 | ;
|
---|
33 | ;
|
---|
34 | CIDC ; (DFN)
|
---|
35 | ; Input: DFN for the patient in question.
|
---|
36 | ; Output: 1 = Ask CIDC questions for the specified patient
|
---|
37 | ; 0 = Don't ask CIDC questions for the specified patient
|
---|
38 | ;
|
---|
39 | ; The API will evaluate both a CIDC switch and the patient's insurance
|
---|
40 | ; to determine if the CIDC questions should be asked.
|
---|
41 | ;
|
---|
42 | ; The switch will have three internal values:
|
---|
43 | ; 0 = Don't ask any patients
|
---|
44 | ; 1 = Ask for patients only with active billable insurance
|
---|
45 | ; 2 = Ask for all patients
|
---|
46 | ;
|
---|
47 | ;
|
---|
48 | SWSTAT ; ()
|
---|
49 | ; Returns the current status of the PFSS On/Off Switch
|
---|
50 | ;
|
---|
51 | ; Output: <switch_status>^<status_date/time>
|
---|
52 | ;
|
---|
53 | ; <switch_status> will be one of the following:
|
---|
54 | ; 0 = OFF
|
---|
55 | ; 1 = ON
|
---|
56 | ;
|
---|
57 | GETACCT ; (IBBDFN,IBBARFN,IBBEVENT,IBBAPLR,IBBPV1,IBBPV2,IBBPR1,IBBDG1,IBBZCL,IBBDIV,IBBRAIEN,IBBSURG)
|
---|
58 | ; Pass data to IBB for account/visit (ADT) messaging.
|
---|
59 | ;
|
---|
60 | ; Input:
|
---|
61 | ; IBBDFN = Patient; IEN to file #2 [required]
|
---|
62 | ; IBBARFN = Account Reference;
|
---|
63 | ; IEN to file #375 or null [required]
|
---|
64 | ; IBBEVENT = HL7 Event Code; e.g., "A04" [required]
|
---|
65 | ; IBBAPLR = Calling Application;
|
---|
66 | ; <routine> or <tag>_;_<routine>
|
---|
67 | ; IBBPV1 = array for PV1 segment data [required]
|
---|
68 | ; IBBPV1(2) - Patient Class (O=Outpatient;I=Inpatient)
|
---|
69 | ; IBBPV1(3) - IEN to file #44, or "FEE BASIS"
|
---|
70 | ; IBBPV1(4) - Appointment Type; IEN to file #409.1
|
---|
71 | ; IBBPV1(7) - Attending Physician; IEN to file #200
|
---|
72 | ; IBBVP1(9) - Consulting Physician; IEN to file #200
|
---|
73 | ; IBBPV1(10) - Purpose of Visit;
|
---|
74 | ; (Scheduling: 1=C&P;2=10-10;3=SV;4=UV)
|
---|
75 | ; IBBPV1(17) - Admitting Physician or Surgeon;
|
---|
76 | ; IEN to file #200
|
---|
77 | ; IBBPV1(18) - Primary Stop Code; IEN to file #40.7
|
---|
78 | ; IBBPV1(25) - Check-In Date/Time (Scheduling)
|
---|
79 | ; IBBPV1(41) - Credit Stop Code; IEN to file #40.7
|
---|
80 | ; IBBPV1(44) - Admit Date/Time
|
---|
81 | ; IBBPV1(45) - Check-Out Date/Time (Scheduling)
|
---|
82 | ; IBBPV1(50) - Prescription #; IEN to file #52 (Pharmacy)
|
---|
83 | ; IBBPV1(52) - Other Provider; IEN to file #200
|
---|
84 | ; IBBPV2 = array for PV2 segment data
|
---|
85 | ; IBBPV2(7) - Eligibility of Visit; IEN to file #8.1
|
---|
86 | ; IBBPV2(8) - Expected Admit/Visit Date/Time
|
---|
87 | ; IBBPV2(24) - Appointment Status;
|
---|
88 | ; (Scheduling:
|
---|
89 | ; R=Scheduled/Kept;I=Inpatient;
|
---|
90 | ; NS=No-Show;NSR=No-Show, Rescheduled;
|
---|
91 | ; CP=Cancelled by Patient;
|
---|
92 | ; CPR=Cancelled by Patient, Rescheduled;
|
---|
93 | ; CC=Cancelled by Clinic;
|
---|
94 | ; CCR=Cancelled by Clinic, Rescheduled;
|
---|
95 | ; NT=No Action Taken)
|
---|
96 | ; IBBPV2(46) - Date Appointment Made (Scheduling)
|
---|
97 | ; IBBPR1 = array for PR1 segment data
|
---|
98 | ; IBBPR1(3) - Procedure; IEN to file #81
|
---|
99 | ; IBBPR1(4) - Procedure; free text
|
---|
100 | ; IBBPR1(5) - Procedure Date/Time
|
---|
101 | ; IBBPR1(6) - Functional Type;
|
---|
102 | ; (Prosthetics:
|
---|
103 | ; O=Home Oxygen;P=Purchasing;
|
---|
104 | ; I=Stock Issue)
|
---|
105 | ; (Radiology:
|
---|
106 | ; ANI=Angio/Neuro/Interventional;
|
---|
107 | ; CARD=Cardiology Studies;CT=CT Scan;
|
---|
108 | ; RAD=General Radiology;
|
---|
109 | ; MRI=Magnetic Resonance Imaging;
|
---|
110 | ; MAM=Mammography;NM=Nuclear Medicine;
|
---|
111 | ; US=Ultrasound;VAS=Vascular Lab)
|
---|
112 | ; IBBPR1(11) - Surgeon; IEN to file #200
|
---|
113 | ; IBBPR1(16) - <modifier>;<modifier>;<modifier>;...
|
---|
114 | ; where each <modifier> is an IEN to file #81.3
|
---|
115 | ; IBBDG1 = array for DG1 segment data
|
---|
116 | ; IBBDG1(n,3) - Diagnosis; IEN to file #80
|
---|
117 | ; IBBDG1(1,4) - Diagnosis; free text; only one allowed
|
---|
118 | ; IBBDG1(n,6) - Diagnosis Type; (A=Admitting;
|
---|
119 | ; W=Working;
|
---|
120 | ; D=Discharge;
|
---|
121 | ; F=Final)
|
---|
122 | ; IBBZCL = array for ZCL segment data
|
---|
123 | ; IBBZCL(n,2) - Classification Type;
|
---|
124 | ; (1=AO;2=IR;3=SC;4=EC;5=MST;6=HNC;
|
---|
125 | ; 7=CV;8=SHAD)
|
---|
126 | ; IBBZCL(n,3) - Classification Value; (1=YES;0=NO)
|
---|
127 | ; IBBDIV = IEN to file #40.8
|
---|
128 | ; IBBRAIEN = IEN to file #75.1
|
---|
129 | ; IBBSURG = array for special Surgery data
|
---|
130 | ; IBBSURG(1) - Surgical Case #; IEN to file #130
|
---|
131 | ; IBBSURG(2) - Surgical Specialty; IEN to file #45.3
|
---|
132 | ;
|
---|
133 | ; Returns the pointer to the PFSS ACCOUNT file (#375) where
|
---|
134 | ; all application input data is stored.
|
---|
135 | ;
|
---|
136 | ; Output: IEN to file #375, or 0, if unsuccessful
|
---|
137 | ;
|
---|
138 | GETCHGID ; ()
|
---|
139 | ; Returns a Unique Charge ID.
|
---|
140 | ;
|
---|
141 | ; Output: 1 + current value of field #2 of file #372.
|
---|
142 | ;
|
---|
143 | CHARGE ; (IBBDFN,IBBARFN,IBBCTYPE,IBBUCID,IBBFT1,IBBPR1,IBBDG1,IBBZCL,IBBRXE,IBBORIEN,IBBPROS)
|
---|
144 | ; Pass data to IBB for charge (DFT) messaging.
|
---|
145 | ;
|
---|
146 | ; Input:
|
---|
147 | ; IBBDFN = Patient; IEN to file #2 [required]
|
---|
148 | ; IBBARFN = Account Reference; IEN to file #375 [required]
|
---|
149 | ; IBBCTYPE = Charge Type; (CG=debit;CD=credit) [required]
|
---|
150 | ; IBBUCID = Unique Charge ID [required]
|
---|
151 | ; IBBFT1 = array for FT1 segment data [required]
|
---|
152 | ; IBBFT1(4) - Transaction Date/Time
|
---|
153 | ; IBBFT1(7) - Pharmacy Service Code
|
---|
154 | ; IBBFT1(10) - Transaction Quantity
|
---|
155 | ; IBBFT1(13) - Department Code
|
---|
156 | ; IBBFT1(16) - Patient Location; IEN to file #44
|
---|
157 | ; IBBFT1(18) - Patient Status; (Pharmacy: 1=Rx Copay Exempt;
|
---|
158 | ; 0=Not Exempt)
|
---|
159 | ; IBBFT1(20) - Rendering Provider; IEN to file #200
|
---|
160 | ; IBBFT1(21) - Ordering Provider; IEN to file #200
|
---|
161 | ; IBBFT1(22) - Unit Cost
|
---|
162 | ; IBBFT1(29) - <NDC>;<generic_name>
|
---|
163 | ; IBBFT1(31) - Transaction Type;
|
---|
164 | ; (Pharmacy: 1=PSO NSC Rx Copay;
|
---|
165 | ; 2=PSO SC Rx Copay;
|
---|
166 | ; 3=PSO NSC Rx Copay Cancel
|
---|
167 | ; 4=PSO NSC Rx Copay Update
|
---|
168 | ; 5=PSO SC Rx Copay Cancel
|
---|
169 | ; 6=PSO SC Rx Copay Update)
|
---|
170 | ; IBBPR1 = array for PR1 segment data;
|
---|
171 | ; (required except Pharmacy)
|
---|
172 | ; IBBPR1(3) - Procedure; IEN to file #81
|
---|
173 | ; IBBPR1(4) - Procedure; free text
|
---|
174 | ; IBBPR1(5) - Procedure Date/Time
|
---|
175 | ; IBBPR1(6) - Functional Type;
|
---|
176 | ; (Prosthetics: O=Home Oxygen;
|
---|
177 | ; P=Purchasing;
|
---|
178 | ; I=Stock Issue)
|
---|
179 | ; IBBPR1(11,1) - Surgeon; IEN to file #200
|
---|
180 | ; IBBPR1(11,2) - Attending Surgeon; IEN to file #200
|
---|
181 | ; IBBPR1(16) - <modifier>;<modifier>;<modifier>;...;
|
---|
182 | ; each <modifier> is an IEN to file #81.3
|
---|
183 | ; IBBDG1 = array for DG1 segment data
|
---|
184 | ; IBBDG1(n,3) - Diagnosis; IEN to file #80
|
---|
185 | ; IBBDG1(n,6) - Diagnosis Type; (A=Admitting;W=Working;
|
---|
186 | ; D=Discharge;F=Final)
|
---|
187 | ; IBBZCL = array for ZCL segment data
|
---|
188 | ; IBBZCL(n,2) - Classification Type;
|
---|
189 | ; (1=AO;2=IR;3=SC;4=EC;5=MST;
|
---|
190 | ; 6=HNC;7=CV;8=SHAD)
|
---|
191 | ; IBBZCL(n,3) - Classification Value; (1=YES;0=NO)
|
---|
192 | ; IBBRXE = data for RXE segment data (Pharmacy only)
|
---|
193 | ; IBBRXE(1) - <quantity>_;_<days_supply>
|
---|
194 | ; IBBRXE(17) - Refills Dispensed
|
---|
195 | ; IBBRXE(18) - Release Date/Time
|
---|
196 | ; IBBRXE(31) - DEA, Special Handling codes
|
---|
197 | ; IBBPROS = array for special Prosthetics data
|
---|
198 | ; IBBPROS(1) - Vendor; IEN to file #440
|
---|
199 | ; IBBPROS(2) - OBL#
|
---|
200 | ;
|
---|
201 | ; Returns success indicator.
|
---|
202 | ;
|
---|
203 | ; Output: 1, if successful; 0 otherwise
|
---|
204 | ;
|
---|
205 | SETACCT ; (IBBDFN,HLMTIENS)
|
---|
206 | ; Store visit/account # from external billing system in PFSS
|
---|
207 | ; ACCOUNT record; the file #375 record is found based on data
|
---|
208 | ; contained in the HL7 message referenced by HLMTIENS.
|
---|
209 | ; Most of the ADT messages involved originate in VistA and
|
---|
210 | ; are returned by the external billing system with visit#
|
---|
211 | ; attached.
|
---|
212 | ; Some ADT-A01 messages originate in the external billing
|
---|
213 | ; system; these cause a new record to be created in file #375.
|
---|
214 | ;
|
---|
215 | ; Input:
|
---|
216 | ; IBBDFN = Patient; IEN to file #2 [required]
|
---|
217 | ; HLMTIENS = HL7 Message (standard VistA HL7 variable);
|
---|
218 | ; IEN to file #773 [required]
|
---|
219 | ;
|
---|
220 | ; Returns PFSS Account Reference.
|
---|
221 | ;
|
---|
222 | ; Output: IEN to file #375
|
---|
223 | ;
|
---|
224 | EXTNUM ; (IBBDFN,IBBARFN)
|
---|
225 | ; Obtain the visit/account # of the external billing system
|
---|
226 | ; that has been associated with the PFSS ACCOUNT file (#375)
|
---|
227 | ; record.
|
---|
228 | ;
|
---|
229 | ; Input:
|
---|
230 | ; IBBDFN = Patient; IEN to file #2 [required]
|
---|
231 | ; IBBARFN = Account Reference; IEN to file #375 [required]
|
---|
232 | ;
|
---|
233 | ; Returns the value of field #.02 from the file #375 record.
|
---|
234 | ;
|
---|
235 | ; Output: external visit/account #, or 0, if unsuccessful
|
---|
236 | ;
|
---|