Print Page as PDF
Person Service Lookup java components ICR (4152)

Person Service Lookup java components    ICR (4152)

Name Value
NUMBER 4152
IA # 4152
DATE CREATED 2007/02/28
CUSTODIAL PACKAGE 759
USAGE Controlled Subscription
TYPE Other
NAME Person Service Lookup java components
GENERAL DESCRIPTION
Person Service Lookup includes components necessary to
support the search and retrieval operations for patient and provider lookups
for both web and swing versions.  PSL components include both a web and java
swing-based GUI application client to be used within a consuming host
application.  These GUI components represent the API for consuming
applications that must embed the GUI Person Service Lookup Client components
into the design of their application.  GUI PSL components internally use CAIP
(Cross Application Integration Protocol) delegate to access PSL services
needed to perform a lookup.

PSL provider lookup components do not include any GUI components.  The
provider lookup API consists of a CAIP provider lookup delegate class that is
intended for programmatic access from a consuming application.

PSL Services will be deployed both nationally and locally.
STATUS Pending
DURATION Till Otherwise Agreed
COMPONENT/ENTRY POINT
COMPONENT/ENTRY POINT COMPONENT DESCRIPTION VARIABLES
plu_patient_interface.do
When consuming a web-based application service within
a J2EE architecture, the host application needs to provide a JSP page for the
service to present in.  The host JSP that is the application's web page
instantiates the interface JSP.  It is recommended that this be done as an
iframe.  This provides the service JSP with the ability to function
independently from the host application while appearing as though it were part
of the host application.
VARIABLES TYPE VARIABLES DESCRIPTION
Security Type Input
VistALink supports two types of security.  This value
determines what method of security to use when connecting to the M database
with VistALink.  Acceptable values are DUZ and VPID.
UserCredential Input
This contains the DUZ or the VPID value that is
required by VistALink.
SiteIdentifier Input
This value identifies the VistA site.
DivisionIdentifier Input
Required by VistALink.  If undefined it will use the
default Division for the facility.  If more than one division is defined for a
user, then an error will occur.
SiteOfInterest Input
This value identifies the VistALink database to be
used.
ForwardToPage Input
This is the URL address of the consuming
application's forward to page.  This URL will be used to forward the request
upon PS Lookup exit.
PatientLookupBean Output
ICN = Integration Control Number assigned by the MPI
or local ICN.

DFN = Internal entry number in Patient (#2) file or unique identifier of the
patient on the local M system.

SiteName = The name of the Institution for the database where the patient was
accessed.

SiteNumber = This is the station number including suffixes for the database
where the patient was accessed.

ProductionDatabase = String value indicating if the database is a production
database.

Domain = M database domain returned by Kernel.

FullName = Full name of patient from Patient (#2) file.

FirstName = First name of patient

LastName = Last name of patient

MiddleInitial = Middle initial of patient

NamePrefix = Prefix of patient

NameSuffix = Suffix of patient

NameDegree = Degree of the patient

Gender = Gender of the patient (M or F)

DOBTrueValue = Date of birth for the patient in MM/DD/YY format.

DOB = Date of Birth displayed in patient lookup prior to selection.  This
value may be set to "Sensitive".

SSNTrueValue = Social Security Number of patient.  Pseudo SSNs end with a "P"
and are returned without modification.

SSN = Social Security Number of the patient that is displayed prior to patient
selection.  This value may be changed to "Sensitive".

isSensitiveRecord = String representing the Boolean value indicating whether
this is a sensitive patient or not.  Returned values are true or false.

isServiceConnected = String represents the Boolean value indicating whether
this    patient is service connected or not.  Returned values are true or
false.

SCPercent = String value of the integer data representing the service
connected percentage of the patient.

isVeteran = String representing the Boolean value indicating whether this
patient is a veteran or not.  Returned values are true or false.

PrimaryEligibility = This is the Print Name data element from the MAS
Eligibility Code (#8.1) file for the primary eligibility code of the patient.

RoomBed = Text of room/bed if an inpatient.

TypeOfPatient = Name of the type of patient from Type of Patient (#391) file.

Ward = Name of ward from Ward Location (#42) file if an inpatient.

PCProvider = PCP name, VPID and IEN.

List of Alerts = The PatientLookupBean also includes an ArrayList of all the
alert notification statuses for a given patient.  This ArrayList includes an
AlertVO for each of the alert notifications for the patient represented within
the PatientLookupBean.
iPLUManager
The main vehicle employed by the swing version of PSL
in order to communicate with the host application that needs to perform a
lookup operation is a Java class called the PLUManager.  This class is a
singleton that is capable of instantiating itself through a static method
called getPLUManager.  The host application is responsible for populating a
Java Bean which implements IUserBean interface and placing it within the
PLUManager by invoking the setUserBean method.

In addition, the host application must provide the PLUManager with a parent
JFrame object which will be used to control the modality of the dialogs that
are used to perform a patient lookup by calling setParentFrame on PLUManager.
VARIABLES TYPE VARIABLES DESCRIPTION
SecurityType Input
VistALink supports two types of security.  This value
determines what method of security to use when connecting to the M database
with VistALink.  Acceptable values are DUZ and VPID.
UserCredential Input
This contains the DUZ or the VPID value that is
required by VistALink.
SiteIdentifier Input
This value identifies the VistA site.
DivisionIdentifier Input
Required by VistALink.  If undefined it will use the
default Division for the facility.  If more than one division is defined for a
user, then an error will occur.
SiteOfInterest Input
This value identifies the VistALink database to be
accessed.
ForwardToPage Input
This is the URL address of the consuming
application's forward to page.  This URL will be used to forward the request
upon PS Lookup exit.
PatientLookupBean Output
ICN = Integration Control Number assigned by the MPI
or local ICN.

DFN = Internal entry number in Patient (#2) file or unique identifier of the
patient on the local M system.

SiteName = The name of the Institution for the database where the patient was
accessed.

SiteNumber = This is the station number including suffixes for the database
where the patient was accessed.

ProductionDatabase = String value indicating if the database is a production
database.

Domain = M database domain returned by Kernel.

FullName = Full name of patient from Patient (#2) file.

FirstName = First name of patient

LastName = Last name of patient

MiddleInitial = Middle initial of patient

NamePrefix = Prefix of patient

NameSuffix = Suffix of patient

NameDegree = Degree of the patient

Gender = Gender of the patient (M or F)

DOBTrueValue = Date of birth for the patient in MM/DD/YY format.

DOB = Date of Birth displayed in patient lookup prior to selection.  This
value may be set to "Sensitive".

SSNTrueValue = Social Security Number of patient.  Pseudo SSNs end with a "P"
and are returned without modification.

SSN = Social Security Number of the patient that is displayed prior to patient
selection.  This value may be changed to "Sensitive".

isSensitiveRecord = String representing the Boolean value indicating whether
this is a sensitive patient or not.  Returned values are true or false.

isServiceConnected = String represents the Boolean value indicating whether
this    patient is service connected or not.  Returned values are true or
false.

SCPercent = String value of the integer data representing the service
connected percentage of the patient.

isVeteran = String representing the Boolean value indicating whether this
patient is a veteran or not.  Returned values are true or false.

PrimaryEligibility = This is the Print Name data element from the MAS
Eligibility Code (#8.1) file for the primary eligibility code of the patient.

RoomBed = Text of room/bed if an inpatient.

TypeOfPatient = Name of the type of patient from Type of Patient (#391) file.

Ward = Name of ward from Ward Location (#42) file if an inpatient.

PCProvider = PCP name, VPID and IEN.

List of Alerts = The PatientLookupBean also includes an ArrayList of all the
alert notification statuses for a given patient.  This ArrayList includes an
AlertVO for each of the alert notifications for the patient represented within
the PatientLookupBean.
ICN/DFN Search (swing)
Both the web and Java swing-based versions of PS
Lookup include support for a programmatic ICN and DFN search capability.  When
a programmatic search is performed, PS Lookup displays any patient alert
status notifications before returning a PatientLookupBean to the consuming
application.

In both the web and the Java swing-based versions of PS Lookup it is necessary
to furnish PS Lookup with the user credentials for accessing the patient data
from the VistA system and the ICN or DFN of the patient to be accessed.  In
addition, the swing version requires that the parent frame of the host
application be provided so that all alert notification dialogs displayed to
the user are shown modally relative to this parent frame.

Swing version:  The user credentials and the parent frame must be set using
the methods provided by the IPLUManager interface.  The ICN/DFN search is
performed by calling getPatient( ) method of IPLUManager.
VARIABLES TYPE VARIABLES DESCRIPTION
SearchType Input
The SearchType must be "ICN" or "DFN".
searchValue Input
The searchValue contains the Integration Control
Number (ICN) or the DFN, internal entry number in the Patient (#2) file, for
the patient.
ICN/DFN Search (web)
Both the web and Java swing-based versions of PS
Lookup include support for a programmatic ICN and DFN search capability.  When
a programmatic search is performed, PS Lookup displays any patient alert
status notifications before returning a PatientLookupBean to the consuming
application.

In both the web and the Java swing-based versions of PS Lookup it is necessary
to furnish PS Lookup with the user credentials for accessing the patient data
from the VistA system and the ICN or DFN of the patient to be accessed.  In
addition, the swing version requires that the parent frame of the host
application be provided so that all alert notification dialogs displayed to
the user are shown modally relative to this parent frame.

Web version:  It is necessary to place the user credentials and the desired
ICN/DFN within the user's HttpSession.  When a lookup is performed, the
presence of an ICN/DFN search value within the HttpSession is interpreted as a
request for a specified ICN/DFN.
VARIABLES TYPE VARIABLES DESCRIPTION
ICN/DFN Input
The value of the ICN or DFN must be set in the
HttpSession as follows:

session.setAttribute(IPLUConstants.ICN_SEARCH_VALUE_SESSION_STRING,value of
ICN)

session.setAttribute(IPLUConstants.DFN_SEARCH_VALUE_SESSION_STRING,value of
DFN)

It is the responsibility of the consuming application to remove this value
from the HttpSession once the lookup is complete.
pl_person_interface.do
The Provider Lookup component is designed for use as
a service that is invoked by requesting the CAIP ProviderLookupDelegate class
to perform a lookup.  There is no GUI component provided with the Provider
Lookup component.  The ProviderLookupDelegate method invocation can be viewed
as a client side invocation if the calling program is on the client.
Alternately, this could be viewed as a middle tier service invocation if the
calling program is a middle tier class.
VARIABLES TYPE VARIABLES DESCRIPTION
DUZ Input
DUZ = Internal Entry Number in New Person (#200)
file.
The string value of the DUZ or User ID of the individual performing
the lookup.
Division Input
The string value of the Division for the VistA site
to be accessed.
SiteOfInterest Input
The string value of the name for the VistA site to be
accessed.
VPID Input
The VPID of the provider for the provider lookup to
be performed.  If VPID is specified, then the only other lookup criteria used
is the effective date.  Otherwise, First Name, Last Name, SSN and Station
Number may be provided.
Last Name Input
The last name (or part thereof) of the provider for
the provider lookup to be performed.
First Name Input
The first name (or part thereof) of the provider for
the provider lookup to be performed.
SSN Input
The SSN of the provider for the provider lookup to be
performed.
Station Number Input
The Station Number of the provider for the provider
lookup to be performed.
Effective Date Input
Contains the date used to determine if person class
is active.  Defaults to current date.
IProviderVO Output
VPID = String value of the unique identifier of the
provider in the Administrative Data Repository (ADR).

IEN = String value of the internal entry number of the provider in the local M
database.

First Name = String value of the first name of the provider from the New
Person (#200) file.

Middle Name = String value of the middle name of the provider from the New
Person (#200) file.

Last Name = String value of the last name of the provider from the New Person
(#200) file.

SSN = String value of the Social Security Number of the provider.

DOB = String value of the Date of Birth of provider.

Gender = String value of the gender of the provider.
Returned values are F or M.

Provider Type = String value of the provider type of the provider.

Classification = String value of the classification of the provider.

Specialization = String value of the specialization of the provider.

Specialty Code = String value of the specialty code of the provider.

VA Code = String value of the VA code of the provider.

X12 Code = String value of the X12 code of the provider.
SUBSCRIBING PACKAGE