$$GETACCT |
$$GETACCT is used by an application that requires a
PFSS Account Reference in order to associate a patient visit, encounter, or
occasion of service to an "account" entity within the commercial medical
billing system used for PFSS.
Called as $$GETACCT^IBBAPI(VAR1,VAR2,VAR3,VAR4,.ARR1,.ARR2,.ARR3,.ARR4,
.ARR5,VAR5,VAR6,.ARR6) where IBBDFN=VAR1 (required) IBBARFN=VAR2 (required;
may be null) IBBEVENT=VAR3 (required) IBBAPLR=VAR4 (required; may be null)
IBBPV1=ARR1 (required) IBBPV2=ARR2 (optional) IBBPR1=ARR3 (optional)
IBBDG1(n)=ARR4 (optional) IBBZCL(n)=ARR5 (optional) IBBDIV=VAR5 (optional)
IBBRAIEN=VAR6 (optional) IBBSURG=ARR6 (optional)
Returns PFSS Account Reference; internal entry number to PFSS ACCOUNT file
(#375). 0, if unsuccessful.
All data passed in is stored in the PFSS ACCOUNT file (#375). Both the
internal entry number and #.01 of the record are set to the value of the PFSS
Account Reference. This value is the normal return of $$GETACCT, and should
be retained by the calling application.
|
VARIABLES |
TYPE |
VARIABLES DESCRIPTION |
VAR1 |
Input |
Patient Identifier; numeric; standard VistA variable
DFN.
VAR1 is required.
|
VAR2 |
Input |
PFSS Account Reference; numeric; pointer to PFSS
ACCOUNT file (#375). Must be null if requesting a new PFSS Account Number
Reference.
VAR2 is required.
|
VAR3 |
Input |
HL7 Event Code; free text; e.g.,"A04".
VAR3 is required.
|
VAR4 |
Input |
Application Location Reference; free text;
tag^routine or routine; e.g.,"EN^SRCHL7A".
VAR4 is required; may be null.
|
ARR1 |
Input |
Array of data elements for HL7 Segment PV1 as
follows: ARR1(2) = Patient Class; (required)
I(npatient) or O(utpatient) ARR1(3) = Patient Location; (required)
PTF only - may use "FEE BASIS
All others - use pointer to file #44. ARR1(4) = Appointment Type;
(optional)
Scheduling and PCE only pointer to file #409.1 ARR1(7) = Attending
Physician; (required)
Pointer to file #200. ARR1(9) = Consulting Physician; (optional)
Pointer to file #200. ARR1(10) = Purpose of Visit; (optional)
Scheduling only; set of codes. ARR1(17) = Admitting Physician;
(optional)
Pointer to file #200. ARR1(18) = Primary Stop Code; (optional)
Pointer to file #40.7 ARR1(24) = Workload Non-Count; (optional)
Scheduling only; Y/N. ARR1(25) = Check-In Date/Time; (optional)
Scheduling only; FileMan date/time; time required. ARR1(41) =
Credit Stop Code; (optional)
Scheduling only pointer to file #40.7 ARR1(44) = Admit Date/Time;
(required, if not A05 event)
FileMan date/time; time optional. ARR1(45) = Discharge Date/Time;
(optional)
Scheduling only; FileMan date/time; time required. ARR1(50) =
Alternate Visit ID; (optional)
OP Pharmacy only pointer to file #52. ARR1(52) = Other Provider;
(optional)
Pointer to file #200.
Array ARR1 is required, although many elements in the array are optional.
|
ARR2 |
Input |
Array of data elements for HL7 Segment PV2 as
follows: ARR2(7) = Eligibility of Visit; (optional)
Scheduling and PCE only - pointer to file #8.1 ARR2(8) = Expected
Admit Date/Time; (required for A05)
FileMan date/time; time optional. ARR2(24) = Appointment Status;
(optional)
Scheduling only; set of codes. ARR2(46) = Pt. Status Effective
Date; (optional)
Scheduling - Date appointment made.
Prosthetics - Date of order.
FileMan date/time; date only.
If variable VAR3 is "A05", then array ARR2 is required; otherwise, it is
optional.
|
ARR3 |
Input |
Array of data elements for HL7 Segment PR1 as
follows: ARR3(3) = Procedure Code (required, if PR1(4) is null)
Pointer to file #81. ARR3(4) = Procedure Description (required, if
PR1(3) is null)
Free text; max. 200 characters ARR3(5) = Procedure Date/Time
(optional)
FileMan date/time; time optional. ARR3(6) = Procedure Functional
Type (optional)
Prosthetics - "O" (Home Oxygen), "P" (Purchasing),
"I" (Stock Issue).
Radiology - Imaging Type (file #79.2) abbreviation. ARR3(11) =
Surgeon (optional)
Surgery only; pointer to file #200. ARR3(16) = Procedure Code
Modifier(s) (optional)
Free text; one or more pointers to file #81.3
delimited by ";".
Array ARR3 is optional.
|
ARR4 |
Input |
Array of data elements for HL7 Segment DG1 as
follows: ARR4(n,3) = Diagnosis Code (required, if ARR4(1,4) is null)
Pointer to file #80. ARR4(1,4) = Diagnosis Description (required,
if ARR4(1,3) is null)
Free text; max. 200 characters. ARR4(n,6) = Diagnosis Type
(required)
"A" (admitting), "W" (working), "D" (discharging),
"F" (final).
Since there may be more than one diagnosis, ARR4 will have two subscripts.
The first subscript is a sequential integer that pertains to a given diagnosis
The second subscript refers to the corresponding Sequence number within the
DG1 Segment. Diagnoses must be placed in the array in priority order; i.e.,
primary diagnosis must be first, followed in descending priority order by
additional diagnoses (if any).
If diagnosis is sent as free text rather than a pointer to file #80, then only
one diagnosis may be used and the text must appear in array element ARR4(1,4).
Array ARR4 is optional.
|
ARR5 |
Input |
Array of data elements for HL7 Segment ZCL as
follows: ARR5(n,2) = Type (required)
1 - AO (Agent Orange)
2 - IR (Ionizing Radiation)
3 - SC (Service Connected)
4 - EC (Environmental Contaminants)
5 - MST (Military Sexual Trauma)
6 - HNC (Head and/or Neck Cancer)
7 - CV (Combat Veteran) ARR5(n,3) = Value (required)
1 - Yes
2 - No
Each ARR5(n) represents one of the possible SC/EI classifications. Array ARR5
is optional.
|
VAR5 |
Input |
The calling application may, if necessary, pass a
pointer to the MEDICAL CENTER DIVISION file (#40.8). If passed, then the
facility identifier is derived from the pointed-to file #40.8 record, which in
turn points to the INSTITUTION file (#4). If variable VAR5 is null, then
facility identifier is derived from the HOSPITAL LOCATION file (#44), pointed
to by input variable ARR1(3). The file #44 record also has a pointer to file
#4.
VAR5 is optional.
|
VAR6 |
Input |
Input variable VAR6 is used only by the Radiology
application. It contains the pointer to the exam request in the RAD/NUC MED
ORDERS file (#75.1) for which the account is being created.
VAR6 is required for Radiology only.
|
ARR6 |
Input |
Array ARR6 is used only by the Surgery application.
ARR6(1) = Surgery Case # (optional)
Pointer to SURGERY file (#130). ARR6(2) = Surgical Specialty
(required)
Pointer to SURGICAL SPECIALTY file (#45.3).
ARR6 is required for Surgery only.
|
$$GETACCT |
Output |
If successful, the return value is a pointer to the
PFSS ACCOUNT file (#375) record, which holds the data provided by the input
parameters. Returns 0, if filing to the PFSS ACCOUNT file (#375) is
unsuccessful.
|
|
$$SETACCT |
When account create messages (resulting from
$$GETACCT) are received by the commercial medical billing system, the account
is created and assigned an Account Number. This number is sent back to VistA
via HL7 messaging.
In VistA, the routine that processes the inbound message will call $$SETACCT.
This IBB function parses relevant data from the HL7 message using the standard
VistA HL7 API, locates the correct record in the PFSS ACCOUNT file (#375)
based on that data, and stores the returned Account Number in the EXTERNAL
ACCOUNT NUMBER field (#.02).
Called as $$SETACCT^IBBAPI(VAR1,VAR2) where IBBDFN=VAR1 (required)
HLMTIENS=VAR2 (required)
Returns PFSS Account Reference; internal entry number to PFSS ACCOUNT file
(#375). 0, if unsuccessful.
|
VARIABLES |
TYPE |
VARIABLES DESCRIPTION |
VAR1 |
Input |
Patient Identifier; numeric; standard VistA variable
DFN.
|
VAR2 |
Input |
Standard VistA HL7 variable; IEN for HL7 MESSAGE
ADMINISTRATION file (#773).
|
$$SETACCT |
Output |
If successful, the return value is a pointer to the
PFSS ACCOUNT file (#375) record, which holds the data provided by the input
parameters. Otherwise, returns 0.
|
|
$$EXTNUM |
It may be necessary for applications to retrieve the
Account Number assigned by the commercial medical billing system for a given
patient admission/visit/encounter. This simple function returns the Account
Number when the PFSS Account Reference is provided as input.
Called as $$EXTNUM^IBBAPI(VAR1,VAR2) where IBBDFN=VAR1 (required) IBBARFN=VAR2
(required)
Returns Account Number assigned by the commercial billing system; i.e., the
value of the EXTERNAL ACCOUNT NUMBER field (#.02) in the PFSS ACCOUNT (file
#375) record. 0, if no record matches the IEN value in VAR2.
|
VARIABLES |
TYPE |
VARIABLES DESCRIPTION |
VAR1 |
Input |
Patient Identifier; numeric; standard VistA variable
DFN.
|
VAR2 |
Input |
PFSS Account Reference; numeric; pointer to PFSS
ACCOUNT file (#375).
|
$$EXTNUM |
Output |
Account Number assigned by the commercial billing
system; i.e., the value of the EXTERNAL ACCOUNT NUMBER field (#.02) in the
PFSS ACCOUNT (file #375) record. 0, if no record matches the IEN value in
VAR2.
|
|