Skip Navigation Links | |
Exit Print View | |
Developing Oracle Java CAPS Master Patient Indexes Java CAPS Documentation |
Developing Oracle Java CAPS Master Patient Indexes
Oracle Java CAPS Master Patient Index Overview
About Oracle Java CAPS Master Patient Index
The Oracle Java CAPS Master Patient Index Solution
Standardization and Matching Logic
Oracle Java CAPS Master Patient Index and HIPAA
Oracle Java CAPS Master Patient Index Repository Components
Match Engine Configuration Files
Oracle Java CAPS Master Patient Index Runtime Environment Components
Oracle Java CAPS Master Patient Index Enterprise Records
Objects in an Enterprise Record
Oracle Java CAPS Master Patient IndexIdentification Codes
Master Index Development Process Overview
The Master Patient Index Framework and the Runtime Environment
Before You Begin Developing a Master Index
Preliminary Data Analysis for a Master Index
Planning a Master Index Project
Master Index Project Initiation Checklist
Custom Plug-ins for Master Index Custom Transaction Processing
Master Index Update Policy Plug-ins
Master Index Field Validation Plug-ins
Master Index Field Masking Plug-ins
Master Index Match Processing Logic Plug-ins
Custom Match Processing Logic Methods
Custom Match Processing Logic Plug-in Requirements
Custom Match Processing Configuration
Master Index Custom Plug-in Exception Processing
Custom Plug-Ins for Master Index Custom Components
Master Index Survivor Calculator Plug-ins
Master Index Query Builder Plug-ins
Master Index Block Picker Plug-ins
Master Index Pass Controller Plug-ins
Standardization Engine Plug-ins
Phonetic Encoders Plug-ins for a Master Index
Implementing Master Index Custom Plug-ins
Creating Master Index Custom Plug-ins
Building Master Index Custom Plug-ins
Generating the Master Index Application
To Generate the Application for the First Time
Master Index Database Scripts and Design
Master Index Database Requirements
Database Platform Requirements
Master Index Database Structure
Designing the Master Index Database
Designing for Performance Optimization
Creating the Master Index Database
Step 1: Analyze the Master Index Database Requirements
Step 2: Create a Master Index Database and User
Step 3: Define Master Index Database Indexes
Step 4: Define Master Index External Systems
Master Index Database Table Description for sbyn_systems
Step 5: Define Master Index Code Lists
To Customize Common Table Data for Oracle
To Customize Common Table Data for SQL Server
Step 6: Define Master Index User Code Lists
Master Index Database Table Description for sbyn_user_code
Step 7: Create Custom Master Index Database Scripts
Step 8: Create the Master Index Database Structure
Deleting Master Index Database Tables and Indexes
To Delete Database Tables and Indexes
Defining a Database Connection Pool Through the Application Server
Step 1: Add the Oracle Driver to the Application Server
Step 2: Create the JDBC Connection Pools
To Create the JDBC Connection Pools
Once you have customized the configuration files and generated the master index application, you can create the master index database. Before you begin, make sure you have Oracle or SQL Server installed on the database server.
During this process you can define custom startup data, such as code lists and source systems. Startup data is predefined in the Code Lists and Systems SQL scripts, and you can customize the statements to insert the data relevant to your object structure. The code lists you define are used to translate processing codes from incoming messages into descriptions for the Patient EDM fields and to create drop-down lists for Patient EDM fields. System information is required in order to add records to the master index application.
Follow these steps to create the database.
You can also delete the database for testing purposes using the supplied script. See Deleting Master Index Database Tables and Indexes for more information.
Before you begin to create the master index database, perform an analysis of the structure of the legacy data to be stored in the database and determine the amount of data that will be processed daily. During the analysis, be sure to define the processing codes that need to be stored in the common maintenance tables and the systems that will share data with the master index application. You should also know the length and format of the local IDs assigned by each system.
A database administrator who is familiar with your data and processing requirements should perform this task. After this task is complete, continue to Step 2: Create a Master Index Database and User.
For additional information and guidelines about how to set up your database, see Master Index Database Scripts and Design.
Before beginning this step, complete Step 1: Analyze the Master Index Database Requirements. After you create the database instance and user, continue to Step 3: Define Master Index Database Indexes if you want to define additional database indexes; otherwise skip to Step 4: Define Master Index External Systems.
For this step you need to create a database in which the master index database instance will be created. Use your Oracle or SQL Server tools to create the database. Using these tools, you define tablespaces, including their sizes and locations; extents; and dump file, log file, and rollback file sizes and locations. Make sure these issues have been thoroughly analyzed and designed before creating the database.
Once you create the database, you can use standard SQL to create the master index application user for the database. The user you create in this step will be used to create the database structure and to connect to the database through the Patient EDM and through the application server.
For Oracle, assign the user to the “connect” and “resource” roles for the master index tablespaces. For example:
create user username identified by password; grant connect, resource to username; commit;
where username is the login ID of the administrator user and password is the login password of the administrator user.
For SQL Server, assign this user to the “db_owner” role. You need to create the server login, create the user, and then assign the user to the role. For example:
CREATE LOGIN loginname WITH PASSWORD = ’password’, DEFAULT_DATABASE = database; CREATE USER username FOR LOGIN loginname; USE database; EXECUTE sp_addrolemember ’db_owner’, ’ username’ GO
where loginname is the login ID for the administrator user, password is the login password, database is the database name, and username is the owner of the database tables created in the master index database.
Note - SQL Server allows Windows Authentication, where only a user name is required. Java CAPS products require full authentication, including both a user name and password. You need to create a database user specifically for the master index application.
If you prefer to assign individual permissions to the user instead of roles, the following permissions are needed.
|
To optimize data processing in the master index application, you can define additional indexes for the database tables that store object data. Best practice is to define indexes for each field used for searching, blocking, or matching. You can define these indexes in the Create User Indexes file or create a new script. Before you begin this step, complete Step 2: Create a Master Index Database and User.
The Systems file in the master index project defines one default source system for the master index application. You can define additional systems as needed or delete the default system. Before you begin this step, complete Step 2: Create a Master Index Database and User and, optionally, Step 3: Define Master Index Database Indexes.
For example:
INSERT into sbyn_systems (systemcode, description, status, id_length, format, input_mask, value_mask, create_date, create_userid) VALUES (’ARS’, ’Automated Registration System’, ’A’, 10, ’[0-9]{10}’, ’DDD-DDD-DDDD’, ’DDD^DDD^DDDD’, sysdate, ”admin’);
The following table lists and describes the columns in the sbyn_systems database table so you can create SQL statements to insert source system information into the master index database.
You only need to perform this step if you defined any fields in the object structure to have a code module. The SQL script for entering processing codes and descriptions into the database is written in PL/SQL. The Code List file contains a stanza for each type of common table data element for which you use processing codes. You can create additional common table data types and additional common table data elements. This script inserts data into two tables: sbyn_common_header, which lists the types of common table data, and sbyn_common_detail, which lists each common table data element. Before you begin this step, complete Step 4: Define Master Index External Systems.
Note - The codes you specify in this file can be no longer than eight characters (the codes are the second value in the value list for each common table data type and data element).
codes tCodeList := tCodeList(
The statements following this line can be customized.
-- **** PHONTYPE **** tCode(’L’, ’PHONTYPE’, ’TELEPHONE TYPE’), tCode(’V’, ’H’, ’HOME’), tCode(’V’, ’M’, ’MOBILE’), tCode(’V’, ’F’, ’FAX’), tCode(’V’, ’O’, ’OFFICE’),
Note - Do not modify the “L” or “V” in each row. These characters define whether the information is inserted into the sbyn_common_header (L) or sbyn_common_detail (V) table. Following the table indicator is the processing code, and the final item in each row is a description. The descriptions appear on the Patient EDM and should be kept short.
For example:
-- **** ADDRTYPE **** tCode(’L’, ’ADDRTYPE’, ’ADDRESS TYPE’), tCode(’V’, ’H’, ’HOME’), tCode(’V’, ’B’, ’BUSINESS’), tCode(’V’, ’M’, ’MAILING’)
begin
The statements following this line can be customized.
-- **** PHONTYPE **** insert into @codelist values(’L’, ’PHONTYPE’, ’TELEPHONE TYPE’), insert into @codelist values(’V’, ’H’, ’HOME’), insert into @codelist values(’V’, ’M’, ’MOBILE’), insert into @codelist values(’V’, ’F’, ’FAX’), insert into @codelist values(’V’, ’O’, ’OFFICE’),
Note - Do not modify the “L” or “V” in each row. These characters define whether the information is inserted into the sbyn_common_header or sbyn_common_detail table. Following the table indicator is the processing code, and the final item in each row is the description that appears on the Patient EDM. The descriptions should be kept short.
If you specified a value for theconstraint-by and user-code elements of a field, you must define the user code values for those fields. Below is a sample insert statement for the sbyn_user_code table.Oracle Java CAPS Master Patient Index provides this sample in a database script you can customize.
insert into sbyn_user_code (code_list, code, descr, format, input_mask, value_mask) values (’AUXIDDEF’, ’CC’, ’CREDIT CARD’, ’[0-9]{16}’, ’DDDD-DDDD-DDDD-DDDD’, ’DDDD^DDDD^DDDD^DDDD’);
To learn more about the sbyn_user_code table, see Master Index Database Table Description for sbyn_user_code. Complete Step 5: Define Master Index Code Lists before beginning this step.
The file opens in the NetBeans editor.
The following table lists and describes the columns in the sbyn_user_code database table so you can create SQL statements to insert user code data into the master index database.
|
You can insert additional information into the database by creating a custom script under the Database Script node. For information about the structure of the master index database, see Understanding Oracle Java CAPS Master Index Processing (Repository).
The new script appears under the Database Script node.
The text editor appears.
After you create the database instance and customize the database scripts, you can create the master index tables and insert the custom data.
For example:
jdbc:oracle:thin:@localhost:1521:IndexDB
jdbc:sqlserver://server:port;databaseName=database
where server is the address of the database server, port is the port number on which SQL Server is listening, and database is the name of the database. You can use “localhost” for the hostname if the database resides on the same machine as NetBeans.
Note - Make sure you enter the database logon credentials for the administrator user you created. You cannot use the logon credentials for the default system user (the database tables will be created, but the master index application will not function correctly).
By default, the EUIDs assigned by the master index application start with “0”, with padded zeroes added to the left to make the EUID number the correct length (for more information, see Understanding Oracle Java CAPS Master Index Configuration Options (Repository)). You can modify this numbering format by changing the value of the seq_name column of the sbyn_seq_table database table where the sequence name is “EUID”. For example:
update sbyn_seq_table set seq_count=1000000001 where seq_name=’EUID’;