Refractive Surgery Consultant



[pic]

SurgiVision® DataLink

SDK

Software Development Kit

Updated March, 2006

Designed for

[pic]

CONFIDENTIAL

Revision 2.2

Copyright© 2006 SurgiVision® Consultants, Inc.

All Rights Reserved

Contents

Contents 2

Introduction 5

Overview 5

Who is this guide for 7

Who is this guide not for 7

Minimum Requirements 7

Packing List for the SurgiVision® DataLink SDK 7

Licensing 7

On-Line Tools for the EMR Integrations Developer 8

IEU Team Site 8

IEU Client Resources 8

IEU LOG Viewer 8

Client Specific Credentials 9

EMR Portal 10

Run the EMR Portal Setup utility 10

Initializing the EMR Portal in your project 10

Setting the Client Cryptography Key 12

DisablePersistantSettings 13

Testing the EMR Portal Connection 13

RSC Portal 16

Installing the Refractive Surgery Consultant Elite Developers Edition for IEU 16

Installing the RSC Portal component 17

RSC Portal Settings 18

Enrolling RSC into the SurgiVision® DataLink 20

Initial Data Load into SurgiVision® DataLink 21

Data Mapping EMR and RSC basic tables 21

DataLink Metadata Viewer 21

Now you are ready to integrate your project 21

SurgiVision® DataLink Overview 22

Functional Requirements 23

RSC Portal Component 24

Figure 3: RSC Portal 25

RSC Portal Class Definitions 26

ActivateIEU 26

GetIEUKeys 27

IEUSync 28

isIEUActivated 28

IEUServices 29

EMR Portal 29

Figure 4: IEU Portal Methods 30

EMR Portal Reference Definitions 31

Patients 31

IEUPortalAddNewPatient 31

IEUPortalDeletePatient 31

IEUPortalEditPatient 32

IEUPortalGetPatientSchema 32

IEUPortalGetPatientsList 33

Preops 34

IEUPortalAppendEditPreop 34

IEUPortalDeletePreop 35

Treatments 36

IEUPortalAppendEditTreatment 36

IEUPortalDeleteTreatment 37

Postops 38

IEUPortalAppendEditPostops 38

IEUPortalDeletePostops 39

Resources 40

IEUPortalGetTransDetail 40

IEUPortalGetProvidersList 42

IEUPortalGetUsersList 42

IEUPortalGetClinicsList 43

IEUPortalGetKeratomesList 44

IEUPortalGetLasersList 45

Treatment Profiles 46

IEUPortalGetTreatmentSpecificProfiles 46

IEUPortalGetTreatmentProfiles 46

Misc 47

IEUPortalGetPendingTransactions 47

IEUPortalClearLogItem 50

AboutIEUServices 51

isLocalVersionOutDated 52

Appendix 53

Appendix A: SOURCE_NAME 53

Appendix B: Working with the IEU XML Results 54

GetXMLnodeslist 55

Appendix C: Patient Schema 57

Appendix D: Treatment Profile Schema 59

Appendix E: EMR GUI / Functional Changes Minimal Requirements 61

Appendix F: Preop Schema 62

Appendix G: Treatment Schema 63

Appendix H: Postop Schema 64

Appendix I: Connection Troubleshooting 65

Timeouts 65

Introduction

Overview

The Refractive Surgery Consultant™ Elite (RSC) software is a database application for capturing information about refractive surgery (e.g., laser eye surgery / LASIK) outcomes. The software contains very sophisticated mathematical algorithms for analyzing past results and uses this information to help produce more accurate outcomes for future surgeries. It also contains an extensive and interactive graphical reports package that allows surgeons to analyze results in great detail.

Electronic Medical Records (EMR) software packages are also database applications that gather clinical data. EMR programs typically capture any and all information about patients – whether or not they are refractive surgery patients. In most practices that use both RSC and EMR programs, a subset of the data in the EMR is re-entered into RSC to permit surgical planning and outcomes analysis.

The need to have data in both places (EMR and RSC) has required double data entry which is time consuming and error prone. In response to user requests, the makers of the Refractive Surgery Consultant™ have developed a product called the SurgiVision® DataLink (Also referred to as the ‘IEU’- Import Export Utility) to permit selected data to migrate from the EMR application to RSC automatically.

The SurgiVision® DataLink contains tools and utilities designed with DotNet 2003 technologies and utilizes Microsoft DotNet framework 1.1. The general flow of information is as follows:

1) User enters patient information into the EMR program

2) The user selects to save the information as shared data between RSC and EMR

3) The EMR program transfers data via a SurgiVision DataLink component (EMR Portal) which automatically encrypts and sends the data the SurgiVision DataLink Server (maintained by SurgiVision)

NOTE: Protected patient information is further encrypted in a manner that it can only be decrypted by authorized personnel at its targeted destination.

4) The SurgiVision Data Link RSC Portal component normalizes the data for RSC and sends it to your RSC database.

5) The record is immediately available to RSC users.

Note that new records go in one direction – from EMR to RSC, and not in reverse.

Besides eliminating the need for double data entry, the SurgiVision® DataLink also assures that the RSC receives postoperative records entered into the EMR after surgery is done. This is important because it provides RSC with the clinical data needed to analyze outcomes.

The SurgiVision® DataLink package contains processes for data validation, data security, and delayed synchronization of data (for example, if a server or internet connection is down for a while). We have attempted to simplify the data handling as much as possible by providing the EMR Portal Component, which contains methods that allow you to send and receive data to and from the SurgiVision® DataLink with minimal programming and maximum security safeguards.

The integration of the SurgiVision® DataLink into your EMR package is up to you. We have specified minimal programming requirements for integration of the SurgiVision® DataLink into your EMR program. Prior to activation of SurgiVision® DataLink licensing, RSC will require documentation that you meet minimal requirements. Still, validation of data mapping and other quality assurance issues regarding the implementation of the SurgiVision® DataLink into your EMR program are up to you.

The minimum GUI requirements for the EMR program include:

1. Exposure of all SurgiVision® DataLink required fields in interface

2. Implementation of SurgiVision® DataLink field validation prior to save (see IEU Client Services)

3. Provision of option or command button in EMR to allow user to designate record as a shared patient

4. Display of Icon / Flag to let user know if patient is to be shared in SurgiVision® DataLink.

5. Display of Icon / Flag to let user know that patient has been successfully migrated through the SurgiVision® DataLink to RSC

6. Display of Treatment Profiles and use of treatment profiles to save operative notes

7. Synch to SurgiVision® DataLink button to allow user to immediately view new EMR records in Refractive Surgery Consultant™

8. Normalization / Intersection of SurgiVision® DataLink – normalized of Lookup fields with EMR SIDS prior to sending data

a. May need to do this with app logic if EMR saves text rather than SIDS, eg, with Visual Acuity fields.

9. Creation of app logic to update shared EMR patient records after receiving edit from RSC via the SurgiVision® DataLink.

NOTE: Since the EMR is obligated to capture all records, and since RSC can only accept complete records that pass validation, it is necessary to create logic on the EMR side to permit only complete records to go to RSC. This logic must be obvious to the user. The use of background colors in required fields and field validation events is recommended. In turn, the user must have the ability to override these rules, and opt not to send certain records to RSC if they are incomplete. This will most likely occur in postoperative records for patients who come in for partial exams.

Who is this guide for

This guide has been prepared for the software architect who desires to integrate their own Electronic Medical Records (EMR) application with the Refractive Surgery Consultant™ for end users to seamlessly exchange patient records between applications.

Who is this guide not for

This guide is not intended to be a resource for business or clinic end users in the operation of the Refractive Surgery Consultant™ or of any Electronic Medical Records applications.

Minimum Requirements

• Minimum of 1 licensed copy of the Refractive Surgery Consultant™ software package (Sold Separately)

• At least 1 site license to the SurgiVision® DataLink

• At least 1 client license to the SurgiVision® DataLink

• General understanding in software development and the Microsoft .NET development environment.

• Internet Connectivity

• Service Port 10084 open on your local firewall

• Microsoft .NET Development environment or any other development environment supporting Web Services

• A Site and Client Account established with SurgiVision® Consultants, Inc.

Packing List for the SurgiVision® DataLink SDK

• Access to the SurgiVision® Consultants, Inc. IEUServices Web Service

• Access to the SurgiVision® Consultants, Inc. Client Resources Web Application

• One SurgiVision® DataLink Site License

• One SurgiVision® DataLink Client License

• RSC Portal Component

• EMR Portal Component

• This Manual

Licensing

Licensing is provided through business agreements with SurgiVision® Consultants, Inc. and the EMR client.

On-Line Tools for the EMR Integrations Developer

As an EMR integration developer, please familiarize yourself with all of these sites.

IEU Team Site



The IEU Team Site is a Microsoft Sharepoint Site where developers may go to download components, component updates and articles relating to the SurgiVision DataLink IEU products.

IEU Client Resources



IEU Client Resources is a set of on-line tools that provide administrative functionality for Data Mapping and Quality Assurance Reports. Between RSC and the Clients EMR, there will be critical lookup tables that need to be mapped together. IEU Client Resources provides that capability with complete on screen / on-line / real-time control of RSC and EMR lookup definitions such as

✓ Clinics

✓ Users

✓ Providers

✓ Lasers

✓ Keratomes

✓ Treatment Profiles

You may visit the IEU Client Resources at

❖ You will need your Site ID and Client ID to enter the site

IEU LOG Viewer



The IEU Log Viewer allows the EMR developer to review transactions that pass through the IEU server. Data includes the HTTP Web Service Request, the status of the transaction, and the server response. This is a great validation and debugging tool.

Client Specific Credentials

For your records you should fill out these values and save them in a safe location. If you don’t have these values, please contact SurgiVision for them.

Development Practice Account

|Property |Value |Source |Usage |

|IEU SITE ID | |SurgiVision |WS Security and ID |

|IEU SITE LICENSE | |SurgiVision |WS Security and ID |

|IEU CLIENT ID | |SurgiVision |WS Security and ID |

|IEU SITE LICENSE | |SurgiVision |WS Security and ID |

|Encryption Key | |Determined by Practice |Client Encryption Key |

Production Practice Account

|Property |Value |Source |Usage |

|IEU SITE ID | |SurgiVision |WS Security and ID |

|IEU SITE LICENSE | |SurgiVision |WS Security and ID |

|IEU CLIENT ID | |SurgiVision |WS Security and ID |

|IEU SITE LICENSE | |SurgiVision |WS Security and ID |

|Encryption Key | |Determined by Practice |Client Encryption Key |

SurgiVision Domain Login Credentials

|Property |Value |Source |Usage |

|SurgiVision Domain Login Name | |SurgiVision |Login to SurgiVision Web Sites |

|SurgiVision Domain Login Password| |SurgiVision |Login to SurgiVision Web Sites |

EMR Portal

There are two main Elements to the IEU that the Practice should be aware of.

The EMR Portal – Used by the EMR developer to integrate into the IEU.

The RSC Portal – Used by RSC to integrate into the IEU.

We begin with the EMR Portal.

Run the EMR Portal Setup utility

This will setup the EMR Portal and the security modules for the Service.

❖ You can obtain the latest version from the IEU Team Site at

Initializing the EMR Portal in your project

In Microsoft .NET, Click open the ‘Project’ Menu, then click ‘Add Reference’. Click Browse and locate the EMRPortal.DLL that was installed by the installer

In Visual Studio 5, 6 or other COM compliant IDE’s, add a reference to ‘SurgiVision EMRPortal’

Before you can begin accessing SurgiVision® DataLink, you must enter the following parameters in Settings:

1. Web Service URL



2. SITE credentials.

Provided to you by SurgiVision

3. Client Level Encryption Key:

Used as a password for encrypting confidential Patient Information in your Practice.

You can perform these tasks by utilizing the Built in Interface from the EMR Portal. To access the interface, perform the following.

❖ NOTE: The EMR Portal Settings Dialog should be available in your interface application perhaps under a ‘Settings’ menu for access to IEU Credentials and the IEU Web Service URL Settings.

Example: Visual Basic 6

Private Sub Btn_Click()

Dim IEUPort As New SurgiVision_IEUPortal.WebServices

IEUPort.ShowSettingsDialog

End Sub

Example:

Private Sub BtnChangeURL_Click( _

ByVal sender As System.Object, _

ByVal e As System.EventArgs) _

Handles BtnChangeURL.Click

Dim IEUPort As New SurgiVision.IEUPortal.WebServices

IEUPort.ShowSettingsDialog()

End Sub

Example: C#.NET

private void Btn_Settings_Click(object sender, EventArgs e)

{

// open the EMR Settings Dialog

SurgiVision.IEUPortal.WebServices IEU = new SurgiVision.IEUPortal.WebServices () ;

IEU.ShowSettingsDialog();

}

The Following Dialog Appears

[pic]

1. Verify that the Current URL under Proxy is set to the following value:

.

If not, click Change URL and make the necessary change.

2. Click the SITE Tab and enter your SITE ID and SITE License provided to you by SurgiVision.

❖ Alternatively you can set these parameters directly through the EMR Portal Properties

Example:

Dim IEUPort As New SurgiVision.IEUPortal.WebServices

IEUPort.IEU_SITE_ID = MY_SITE_ID

IEUPort.IEU_SITE_LICENSE = MY_SITE_LICENSE

Example: C#.NET

{

// set the IEU SITE Parameters programmatically

SurgiVision.IEUPortal.WebServices IEU = new SurgiVision.IEUPortal.WebServices ();

int SITE_ID = 0001;

string SITE_LIC = "MySiteLicense";

IEU.IEU_SITE_ID = SITE_ID;

IEU.IEU_SITE_LICENSE = SITE_LIC;

}

3. Click the Cryptography Tab. In the Client drop down box, select the desired client from the list to set the cryptography key for.

❖ NOTE: The Encryption key must be set in the EMR Portal before any RSC installations can be enrolled into an EMR.

Setting the Client Cryptography Key

The Cryptography phrase acts as a key to encrypt and decrypt protected data. Saved data CANNOT be read if this phrase is lost or forgotten. All data from your practice must be saved using the same ‘key’. You must take great care in recording this phrase. DO NOT LOSE IT. You are the only one with the key. SurgiVision® does not receive keys and cannot replace lost keys. Keep this phrase secure from unauthorized personnel.

There are (2) ways to set the Clients Cryptography Key.

One way is through the Settings Page outlined above in Initializing the EMR Portal.

Another way to set the Cryptography key is through the SetClientCryptoKey method of the EMR Portal.

SetClientCryptoKey

Public Method SurgiVision.IEUPortal.WebServices

SetClientCryptoKey

As Boolean

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_CRYPTO_KEY As String

DisablePersistantSettings

The Site ID, Client ID and Cryptography Key by default are stored on the local computer. If the EMR Architect desires to disable persistent settings and pass these values on each construct of the EMR Portal, they can do so by setting the DisablePersistantSettings flag to true.

DisablePersistantSettings

Public Property SurgiVision.IEUPortal.WebServices

DisablePersistantSettings

As Read/Write Boolean

Testing the EMR Portal Connection

Now you should test the EMR Portal Connection. The AboutIEUServices Method is an ideal tool for this as there is built in error detection routines for connection testing.

Example: Visual Basic 6

Private Sub Command1_Click()

Dim IEUPort As New SurgiVision_IEUPortal.WebServices

IEUPort.AboutIEUServices

End Sub

Example:

Private Sub BtnChangeURL_Click( _

ByVal sender As System.Object, _

ByVal e As System.EventArgs) _

Handles BtnChangeURL.Click

Dim IEUPort As New SurgiVision.IEUPortal.WebServices

IEUPort.AboutIEUServices ()

End Sub

Example: C#.NET

private void Btn_ShowAbout_Click(object sender, System.EventArgs e)

{

// set the IEU SITE Parameters programmatically

SurgiVision.IEUPortal.WebServices IEU = new SurgiVision.IEUPortal.WebServices ();

IEU.AboutIEUServices ();

}

The result displays

1) Whether or not you can connect to the IEU Server

2) Whether Security Credentials were verified

3) About the IEU Service

A good result would look similar to this

[pic]

A result with incorrect credentials might look like this

[pic]

The remainder of the message states:

NOTE: After authentication failed on the first attempt, EMRPortal stripped out Security Credentials and attempted a second time with success.

Please check your SITE ID and SITE License settings.

(About IEU) does not require secure authenticated connections,but ALL other actions and methods do.

What happens in the AboutIEUServices is that it first attempts to authenticate the user. If it fails, the portal receives the failure notice and attempts to execute the method a second time but strips out the security tokens. On this pass, the message is not encrypted in either direction and the Web Service Method AboutIEUServices allows a request with no encryption or security tokens and returns the non-encrypted response. Notice that the Web Service has detected the condition stating “*Security Credentials were not present in requestcontext”. The Web Service is very much aware there are no security credentials but this unique method of the IEU Web Services allows this request for testing. The benefit is that it can assist in debugging connections.

❖ It is important to note that NO OTHER IEU Web Methods will allow non-authorized users, missing tokens or non-encrypted requests to be filled.

With the Green Check you are now ready to integrate the EMR Portal into your solution

RSC Portal

Installing the Refractive Surgery Consultant Elite Developers Edition for IEU

To assist the EMR Developer, we have made available an RSCE IEU Developers Edition version of the Refractive Surgery Consultant Elite Software. This edition has enough functionality provided to allow the EMR developers to demonstrate the success of EMR record migration to RSC with the use of the IEU interface.

Install a copy of the Refractive Surgery Consultant™ Developers Edition on to a selected computer. Licensing is not required for this version.

❖ You may obtain the Full Setup by clicking here RSCE IEU Developers Edition

Or visiting and click RSCE IEU Developers Edition.

Before running RSC, you must add the necessary files provided to you by SurgiVision.

1. SurgVision will provide an MS Access TEST database for the development process with the Refractive Surgery Consultant™. This database can sit anywhere on your network that is accessible to your selected workstation. This database will have a unique Serial number specific to your test practice.

2. SurgiVision will also provide a database called SystemControls.mdb. This database will also be specific to your test practice.

❖ SystemControls must be placed in the System directory under the Refractive Surgery Consultant Installation Directory on your computer.

❖ The Default installation will place a SystemControls.mdb database in this location, but you must overwrite it with the version provided to you by SurgiVision.

❖ If your terminal previously had the Refractive Surgery Consultant Elite installed on it, you will need to manually delete the INI file under the WINNT root directory called M32VBBase.ini

❖ DO NOT INSTALL ON A MACHINE WITH A PRODUCTION VERSION OF RSC.

❖ The Refractive Surgery Consultant Elite Developers Edition for IEU CAN NOT be installed side by side with any other versions of the Refractive Surgery Consultant. Only one installation per terminal is possible.

❖ Before Running The Refractive Surgery Consultant Elite Developers Edition, please be sure to install the RSC Portal Component as described below.

Installing the RSC Portal component

The RSC Portal component is an interpreter component between the Refractive Surgery Consultant ™ and the SurgiVision® DataLink. It also has exposed public methods for the EMR to integrate with. It is important that this component be installed on the machine with the Refractive Surgery Consultant™. The database does not have to reside on the same box but is does need to be visible to both the Refractive Surgery Consultant™ and the RSC Portal.

❖ At implementation, the RSC Portal Component will need to be installed on each machine where the Refractive Surgery Consultant™ is installed.

❖ The SurgiVision DataLink RSC Portal Setup can be obtained at the Component Download center at

To install the SurgiVision DataLink RSC Portal, simply run the setup package.

Running the Refractive Surgery Consultant Elite IEU Developers Edition for the first time

When you run the Refractive Surgery Consultant Elite IEU Developers Edition for the first time with a new database, the setup assistant will appear. It will guide you through setting up some basic information such as practice name, surgeons and co-managing doctors. Many of these items will likely exist in both RSC and the EMR, but are not exchanged through the IEU so the information needs to be added at this time.

Information such as Surgeons will need to be mapped in the IEU Resources tool located at . This is covered more thoroughly in Data Mapping EMR and RSC basic tables below.

Logging Into the Refractive Surgery Consultant Elite

This edition of the Refractive Surgery Consultant Elite does not require a login. Even though the Login Screen appears, any text in the user name will allow you to login. No password is required.

RSC Portal Settings

The first time you enter the Refractive Surgery Consultant Elite IEU Developers Edition, you will be required to setup a few basic parameters for the RSC Portal.

As with the EMR Portal, the RSC Portal also requires a few basic settings.

1. In the Refractive Surgery Consultant Elite IEU Developers Edition, Click on the Options button in the SurgiVision DataLink Status control.

2. Click SurgiVision DataLink Options

3. Click Settings

[pic]

4. In Settings, verify both of the required Web Service URLs.

[pic]

If the IEU Server URL’s are anything other than what’s shown above, please click Change to modify them to reflect the above URL’s.

5. Cryptography:

Click on the Cryptography Tab in the settings form and set the Cryptography key to the same key you used when you setup the EMR Portal.

❖ See Setting the Client Cryptography Key in EMR Portal

Click Close when Done to close the Settings Form.

Enrolling RSC into the SurgiVision® DataLink

Before data can be loaded from RSC into the SurgiVision® DataLink the RSC Client must be enrolled. This can only be done after you have configured the RSC Settings as shown above. The RSC Portal Component contains methods for checking for DataLink Enrollment and for Initiating DataLink Enrollment.

The Refractive Surgery Consultant™ SurgiVision® DataLink Software has enrollment features built in and accessible through a SurgiVision® DataLink menu within the program.

1. In the Refractive Surgery Consultant Elite IEU Developers Edition, Click on the Options button in the SurgiVision DataLink Status control

2. Click SurgiVision DataLink Options

3. Click Activate SurgiVision DataLink

[pic]

4. The following Activation Form appears. Simply click Enroll Now and activation will commence.

[pic]

❖ See RSC Portal Class Definitions - RSCIEUCom.ActivateIEU if you choose to have the EMR enroll the RSC Workstation.

Initial Data Load into SurgiVision® DataLink

Once enrolled, the first step to loading data is to synchronize RSC with the SurgiVision® DataLink. This sends up basic support tables for your Site and Client to the SurgiVision® DataLink server.

❖ The Refractive Surgery Consultant™ SurgiVision® DataLink Edition has this feature built in to the SurgiVision® DataLink Menu.

❖ See RSC Portal Class Definitions - RSCIEUCom.IEUSync if you choose to have your EMR trigger the upload from RSC.

Data Mapping EMR and RSC basic tables

Mapping certain fields between the EMR and RSC is an essential element in the IEU. For this purpose the IEU Client Resources was developed. This is a secure web application that allows the EMR administrator to map tables and rows together between RSC and the EMR. This utility should be accessed after the initial load from RSC to the SurgiVision® DataLink. The RSC ID fields and the IEU ID fields will be populated. All that is left is to map corresponding EMR records.

❖ Visit the IEU Client Resources Site at

❖ See IEU Client Resources for more details

An example of a required field to map is a Surgeon Entered into RSC and the same surgeon entered into the EMR. The mapping tool allows you to associate the 2 records as being the same doctor. When patient records are sent into IEU with the EMR Surgeon’s SID, IEU will know which RSC Surgeon to reference. This is a critical component.

DataLink Metadata Viewer

The IEU Client Resource also has a utility called Metadata Viewer. This is a Meta Data tool that can be utilized to view virtually any field in the IEU database. Information included is Description, validation ranges and allow dbnulls.

Now you are ready to integrate your project

With the previous steps complete, you are now ready to begin developing with the SurgiVision® Consultants, Inc. EMR Portal component. The direction you go from here is determined upon your interface style and particular needs. The following documentation describes in detail the technical aspects of the components, methods and properties available to you for a successful integration.

❖ See Appendix E for minimal requirements (to be expanded).

SurgiVision® DataLink Overview

[pic]

Functional Requirements

[pic]

RSC Portal Component

The RSC Portal is a component that bridges RSC to the IEU Web Service. The RSC Portal is a .NET assembly that has the ability to expose itself as a Com Class to a legacy platform while maintaining the ability to communicate to a .NET Web Service. For developers looking to integrate the IEU Web Service into a legacy systems, this is a good methodology to adapt.

❖ The RSC Portal has been customized solely to bridge RSC to the SurgiVision® DataLink and is NOT intended to be a legacy EMR solution.

❖ The RSC Portal Does require .net framework 1.1 or > installed on the machine running the RSC Portal

❖ It is NOT required for the EMR Developer to work with the RSC Portal. The Refractive Surgery Consultant Elite DataLink Edition Software does take full utilization of the RSC Portal. If the EMR Developer wishes to enhance the automation of the RSC Portal with the EMR then the EMR Developer is welcome to further integrate the RSC Portal into the EMR. Again, it’s not necessary.

Figure 3: RSC Portal

[pic]

RSC Portal Class Definitions

ActivateIEU

Public Method ActivateIEU

Provides a method to activate the IEU Enrollment Interface contained within the class.

Remarks

The Site and Client Accounts must be setup in advance by SurgiVision® Consultants, Inc. The SurgiVision® IEU administrator requires the RSC Serial Number which is used by the ActivateIEU method. The IEU is available to EMR clients and to Refractive Surgery Consultant™ -only clients who wish to access IEU-specific functionality. Once verification is made through the IEU, the Site and Client keys are sent back to the caller and recorded by the ActivateIEU Method. The activation method determines the functionality that will be made available to the Client.

[pic]

GetIEUKeys

Public Method GetIEUKeys

ByRef IEU_EMR_SITE_ID As Integer

ByRef IEU_EMR_SITE_LICENSE As String

ByRef IEU_CLIENT_ID As Integer

ByRef IEU_CLIENT_LICENSE As String

ByRef procerror As String

Retrieves the IEU Site and Client authentication keys for the successfully enrolled RSC client

Remarks

Note that all values are Byref. The empty values will be populated by the method unless procerror returns error.

❖ Future support for this feature may be withdrawn since all IEU calls are currently managed internally by the RSCIEUCom on the RSC side of the IEU.

IEUSync

Public Method IEUSync

Provides a method to activate the IEU Synchronization Interface contained within the class.

This method synchronizes the RSC DB with the IEU

❖ See Functional Requirements (Figure 2) for a list of managed entities.

[pic]

isIEUActivated

Public ReadOnly Property isIEUActivated as Boolean

Indicates if RSC Client is actively enrolled into IEU.

IEUServices

IEUServices is a .NET XML Web Service that runs on the Sugivision® Consultants Inc. Web Server. This service has been developed in .NET 2003 and supports a wide range of client platforms

IEUServices is the heart of the exchange. It provides a COM like interface for our clients that make it easy to integrate other software with the Refractive Surgery Consultant ™.

EMR Portal

The EMR Portal is a component installed on the EMR Client which manages communications between the IEU Server and the EMR. The purpose of the EMR Portal is to shield the EMR developer from the XML web service and security protocols providing a much shorter development period. The EMR Portal was designed in .NET 2003. Currently, development tests have proven VS6 and 2003 successfully integrate with the EMR Portal. .NET 2002 on the other hand does not.

Figure 4: IEU Portal Methods

[pic]

EMR Portal Reference Definitions

Patients

IEUPortalAddNewPatient

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalAddNewPatient

as Results Object Array

ByVal DSPatients As DataSet

ByVal SOURCE_USER_ID As Integer

DSPatients WriteOnly as Dataset

DSPatients contains the XML Schema and XML Data for the transaction. Use IEUPortalGetPatientSchema to acquire the proper Dataset and Schema then populate the dataset with a single patient record to send up through IEUPortalAddNewPatient

❖ See Appendix C: Patients Schema

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing purposes

Return Object Array

❖ See Appendix B: Working with IEU XML Results

IEUPortalDeletePatient

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalDeletePatient

as Results Object Array

ByVal IEU_CLIENT_ID

ByVal IEU_CLIENT_LICENSE

ByVal SOURCE_PAT_ID

ByVal SOURCE_USER_ID

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

SOURCE_PAT_ID : WriteOnly as 32bit integer

The patient ID to delete patient detail for.

SOURCE_PAT_ID patient for the associated SOURCE_NAME property.

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing purposes.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

IEUPortalEditPatient

Public Method SurgiVision.IEUPortal.WebServices

.IEUEditPatient

as Results Object Array

ByVal DSPatients As DataSet

ByVal SOURCE_USER_ID As Integer

DSPatients WriteOnly Dataset

DSPatients contains the XML Schema and XML Data for the transaction. Use IEUPortalGetPatientDetail to acquire the proper Dataset and Schema. Then edit the dataset patient record to send up through IEUPortalEditPatient

❖ See Appendix C: Patients Schema

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for HIPPA Compliance

Return Object Array

❖ See Appendix B: Working with IEU XML Results

IEUPortalGetPatientSchema

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalGetPatientSchema

as Results Object Array

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as Read/Write Dataset

Contains the XML Schema structure for patient actions. This object contains no actual data.

❖ See Appendix C: Patient Schema

IEUPortalGetPatientsList

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalGetPatientsList

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

IEU_CLIENT_ID, IEU_CLIENT_LICENSE WriteOnly

Client Keys used to authenticate request to the IEU Server.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as ReadOnly Dataset

Contains Results of request

Fields

IEU_PAT_ID

EMR_PAT_ID

RSC_PAT_ID

Name

Preops

IEUPortalAppendEditPreop

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalAppendEditPreop

as Results Object Array

ByVal Append1_Edit2 As Integer

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal SOURCE_PREOP_ID As Integer

ByVal SOURCE_PAT_ID As Integer

ByVal SOURCE_PROV_ID As Integer

ByVal IEU_PREOP_EYE As String

ByVal IEU_PREOP_EXAM_DATE As Date ByVal IEU_PREOP_SPH As Decimal

ByVal IEU_PREOP_CYL As Decimal

ByVal IEU_PREOP_AXIS As Integer

ByVal IEU_PREOP_VERTEX As Decimal

ByVal IEU_PREOP_BSCVA_DIST As Integer

ByVal IEU_PREOP_BSCVA_DIST_PRTL As Integer

ByVal IEU_PREOP_IOP As Integer

ByVal IEU_PREOP_PACH_CENTRAL As Integer

ByVal IEU_PREOP_REC_TYPE As Integer

ByVal IEU_PREOP_TOPO_SIM_K_FLAT As Decimal

ByVal IEU_PREOP_TOPO_SIM_K_MERIDIAN_FLAT As Integer

ByVal IEU_PREOP_TOPO_SIM_K_STEEP As Decimal

ByVal IEU_PREOP_TOPO_SIM_K_MERIDIAN_STEEP As Integer

ByVal IEU_PREOP_UCVA_DIST As Integer

ByVal IEU_PREOP_UCVA_DIST_PRTL As Integer

ByVal SOURCE_USER_ID As Integer

Append1_Edit2 WriteOnly as integer

Indicates whether this transaction will be an Append (Add New) or an Edit transaction.

Valid Values are:

1 = Append

2 = Edit

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

IEUPortalDeletePreop

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalDeletePreop

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal SOURCE_PREOP_ID As Integer

ByVal SOURCE_USER_ID As Integer

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

SOURCE_PREOP_ID WriteOnly as 32bit Integer

The Preop ID to delete. This is used with SOURCE_NAME to determine the source of the ID.

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Treatments

IEUPortalAppendEditTreatment

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalAppendEditTreatment

as Results Object Array

ByVal Append1_Edit2 As Integer

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal SOURCE_TMT_ID As Integer

ByVal IEU_TMT_NBR As Integer

ByVal IEU_TMT_AGE As Integer

ByVal IEU_TMT_EYE As String

ByVal IEU_TMT_HUMIDITY As Decimal

ByVal SOURCE_PAT_ID As Integer

ByVal SOURCE_PREOP_ID As Integer

ByVal SOURCE_PROV_ID As Integer

ByVal IEU_TMT_PROG_SPH As Decimal

ByVal IEU_TMT_PROG_CYL As Decimal

ByVal IEU_TMT_PROG_AXIS As Integer

ByVal IEU_TMT_PROG_VERTEX As Decimal

ByVal IEU_TMT_TRGT_SPH As Decimal

ByVal IEU_TMT_TRGT_CYL As Decimal

ByVal IEU_TMT_TRGT_AXIS As Integer

ByVal IEU_TMT_TEMP As Decimal

ByVal IEU_TMT_DATE As Date

ByVal SOURCE_TPROF_ID As Integer

ByVal SOURCE_USER_ID As Integer

Append1_Edit2 WriteOnly as integer

Indicates whether this transaction will be an Append (Add New) or an Edit transaction.

Valid Values are :

1 = Append

2 = Edit

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

SOURCE_TPROF_ID Write Only

Maps to the IEU_TPROF_ID. Supply an IEU Treatment Profile Sid for this value. You can select this value by calling IEUPortalGetTreatmentProfiles and binding the IEU_TPROF_ID field to a control allowing the user to select an Refractive Surgery Consultant™ Treatment Profile.

❖ See IEUPortalGetTreatmentProfiles

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

IEUPortalDeleteTreatment

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalDeleteTreatment

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal SOURCE_TMT_ID As Integer

ByVal SOURCE_USER_ID As Integer

ByRef PROCERROR As String

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

SOURCE_TMT_ID WriteOnly as 32bit Integer

The Treatment ID to delete. This is used with SOURCE_NAME to determine the source of the ID.

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Postops

IEUPortalAppendEditPostops

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalAppendEditPostops

as Results Object Array

ByVal Append1_Edit2 As Integer

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal SOURCE_POSTOP_ID As Integer

ByVal IEU_POSTOP_BSCVA_DIST As Integer

ByVal IEU_POSTOP_BSCVA_DIST_PRTL As Integer

ByVal IEU_POSTOP_DAYS_SINCE_TMT As Integer

ByVal SOURCE_PROV_ID_EXAM As Integer

ByVal IEU_POSTOP_EXAM_DATE As Date

ByVal IEU_POSTOP_EYE As String

ByVal SOURCE_TMT_ID As Integer

ByVal IEU_POSTOP_USE_AS_PREOP_FOR_TMT_ID As Integer

ByVal IEU_POSTOP_SPH As Decimal

ByVal IEU_POSTOP_CYL As Decimal

ByVal IEU_POSTOP_AXIS As Integer

ByVal IEU_POSTOP_VERTEX As Decimal

ByVal SOURCE_PAT_ID As Integer

ByVal IEU_POSTOP_AFTER_TMT_NBR As Integer

ByVal SOURCE_POSTOP_PROV_ID_TMT As Integer

ByVal IEU_POSTOP_UCVA_DIST As Integer

ByVal IEU_POSTOP_UCVA_DIST_PRTL As Integer

ByVal SOURCE_USER_ID As Integer

Append1_Edit2 WriteOnly as integer

Indicates whether this transaction will be an Append (Add New) or an Edit transaction.

Valid Values are:

1 = Append

2 = Edit

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

IEUPortalDeletePostops

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalDeletePostops

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal SOURCE_POSTOP_ID As Integer

ByVal SOURCE_USER_ID As Integer

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

SOURCE_POSTOP_ID WriteOnly as 32bit Integer

The Postop ID to delete. This is used with SOURCE_NAME to determine the source of the ID.

SOURCE_USER_ID WriteOnly as 32bit integer

Provide the USER ID of the user modifying the record. This is tracked for auditing.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Resources

IEUPortalGetTransDetail

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalGetTransDetail

as Results Object Array

Gets detailed transaction records from Patients, Preops, Postops or Treatments.

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal TRANS_MEMBER As IEUServer.TransDetailMember ByVal SOURCE_ITEM_ID As Integer

ByVal SearchByIEUNativeSID As Boolean

ByVal SearchByPatientID As Boolean

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

TRANS_MEMBER : WriteOnly as TransDetailMember

Instructs the IEU DataEngine which data results to request. Available options are:

Namespace: SurgiVision.IEUPortal.IEUServer

❖ TransDetailMember.Patients

❖ TransDetailMember.Preops

❖ TransDetailMember.Treatments

❖ TransDetailMember.Postops

SOURCE_ITEM_ID: WriteOnly as 32bit integer

The SID associated with the record(s) to return.

❖ The behavior of SOURCE_ID is based largely on the values of TRANS_MEMBER, SearchByIEUNativeSID and SearchByPatientID

SOURCE_ITEM_ID can be any one of the following ID’s

For all members:

IEU_Pat_ID

EMR_Pat_ID

Preops:

IEU_PREOP_ID

EMR_PREOP_ID

Treatments:

IEU_TMT_ID

EMR_TMT_ID

Postops:

IEU_POSTOP_ID

EMR_POSTOP_ID

SearchByIEUNativeSID : WriteOnly as boolean

If SearchByIEUNativeSID is true, the search matches SOURCE_ITEM_ ID directly to the IEU_ID in the IEU but will still return data formatted to the SOURCE_NAME property.

For example:

If TRANS_MEMBER = TransDetailMember.Preops and SearchIEUNativeSID = true, and SearchByPatientID = false, then SOURCE_ITEM_ID will be the IEU Preop ID.

Given the same properties, but change SearchIEUNativeSID to false, then the SOURCE_ITEM_ID will be the value for the EMR Preop ID or EMR_PREOP_ID.

SearchByPatientID: WriteOnly as boolean

If SearchByPatientID is True and SearchByIEUNativeSID is False, the IEU will expect SOURCE_ITEM_ID to be the Patient ID based on the value of SOURCE_NAME regardless of the value of TRANS_MEMBER. This allows you to lookup preops, treatments, or postops by the patient id.

For Example:

If SearchByPatientID is True and SearchByIEUNativeSID is True, then the IEU will expect the SOURCE_ITEM_ID to be the IEU_PAT_ID and the returned data will be in the format set by TRANS_MEMBER.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as Dataset

On success the returned dataset will contain one table and x row(s) containing the requested data.

❖ See Appendix for Patients, Preops, Treatments and Postops Schemas

IEUPortalGetProvidersList

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalGetProvidersList

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as ReadOnly Dataset

Contains Results of request

Fields

IEU_PROV_ID

RSC_PROV_ID

EMR_PROV_ID

Name

❖ The EMR_PROV_ID value must be mapped in IEU Client Resources Web Application otherwise it will return DBNULL

See Also

IEU Client Resources

IEUPortalGetUsersList

Public Method SurgiVision.IEUPortal.WebServices

IEUPortalGetUsersList

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as ReadOnly Dataset

Contains Results of request

Fields

IEU_USER_ID

EMR_USER_ID

RSC_USER_ID

Name

❖ The EMR_USER_ID value must be mapped in IEU Client Resources Web Application otherwise it will return DBNULL

See Also

IEU Client Resources

IEUPortalGetClinicsList

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalGetClinicsList

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as ReadOnly Dataset

Contains Results of request

Fields

IEU_CLINIC_ID

EMR_CLINIC_ID

RSC_CLINIC_ID

Name

❖ The EMR_CLINIC_ID value must be mapped in IEU Client Resources Web Application otherwise it will return DBNULL

See Also

IEU Client Resources

IEUPortalGetKeratomesList

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalGetKeratomesList

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal IEU_PROV_ID As Integer

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

IEU_PROV_ID Write Only

If (0) includes all surgeons lasers for IEU_CLIENT_ID. If > 0 then limits Lasers to the specified IEU_PROV_ID.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as ReadOnly Dataset

Contains Results of request

Fields

IEU_KRTME_ID

RSC_KRTME_ID

EMR_KRTME_ID

IEU_KRTME_DESCR

IEU_KRTME_SERIAL_NBR

IEU_KRTME_MDL

IEU_PROV_ID

PROV_NAME

❖ The EMR_KRTME_ID value must be mapped in IEU Client Resources Web Application otherwise it will return DBNULL

See Also

IEU Client Resources

IEUPortalGetLasersList

Public Method SurgiVision.IEUPortal.WebServices

.IEUGetLasersList

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal IEU_PROV_ID As Integer

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only

Client Keys used to authenticate request to the IEU Server.

IEU_PROV_ID Write Only

If (0) includes all surgeons lasers for IEU_CLIENT_ID. If > 0 then limits Lasers to the specified IEU_PROV_ID.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as ReadOnly Dataset

Contains Results of request

Fields

IEU_LASER_ID

RSC_LASER_ID

EMR_LASER_ID

IEU_LASER_DESCR

IEU_LASER_SFTWRE_VER

IEU_LASER_MDL

IEU_PROV_ID

PROV_NAME

❖ The EMR_LASER_ID value must be mapped in IEU Client Resources Web Application otherwise it will return DBNULL

See Also

IEU Client Resources

Treatment Profiles

IEUPortalGetTreatmentSpecificProfiles

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalGetTreatmentSpecificProfiles

as Results Object Array

ByVal IEU_CLIENT_ID As Integer ByVal IEU_CLIENT_LIC As String

ByVal SOURCE_PROV_ID As Integer

ByVal SOURCE_PREOP_ID As Integer

ByVal IEU_TMT_NUMBER As Integer

ByVal TargetS As Decimal

ByVal TargetC As Decimal

ByVal TargetA As Integer

ByVal TargetV As Decimal

Returns a list of TreatmentProfiles specific to an individual patient based on Preop and Target. Use to populate a customized Treatment Profiles list for specific patient.

❖ Use IEUPortalGetTreatmentProfiles if you already have the treatment ID and wish to retrieve a single row of TreatmentProfile Details to display to end users.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as Read Only Dataset

Contains the treatment profiles returned by request

❖ See Appendix D: Treatment Profiles Schema

IEUPortalGetTreatmentProfiles

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalGetTreatmentProfiles

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal IEU_PROV_ID As Integer

ByVal IEU_TPROF_ID As Integer

Returns Treatment Profile(s) based on the following conditions

IEU_CLIENT_ID, IEU_CLIENT_LICENSE WriteOnly

Client Keys used to authenticate request to the IEU Server.

IEU_PROV_ID WriteOnly as 32bit Integer

The IEU Provider ID associated with any desired treatment profile.

❖ Set to 0 (Zero) to include all client providers

IEU_TPROF_ID WriteOnly as 32bit Integer

The IEU Treatment Profile ID to retrieve

❖ Set to 0 (Zero) to include all client specified and provider specified profiles

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Return System.Data.Dataset as ReadOnly Dataset

Contains the XML Schema and Data for Treatment Profiles.

❖ See Appendix D: Treatment Profiles Schema

Misc

IEUPortalGetPendingTransactions

Public SurgiVision.IEUPortal.WebServices

.IEUPortalGetPendingTransactions

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal ReturnSids As Boolean

ByVal IncludePatients As Boolean

ByVal IncludePreops As Boolean

ByVal IncludeTreatments As Boolean

ByVal IncludePostops As Boolean

ByVal IncludeProviders As Boolean

ByVal IncludeUsers As Boolean

ByVal IncludeKeratomes As Boolean

ByVal IncludeLasers As Boolean

ByVal IncludeTreatmentProfiles As Boolean

ByVal IncludeClinics As Boolean

Provides a method to determine if records need to be synchronized between RSC and IEU and identify those records.

IEU_CLIENT_ID, IEU_CLIENT_LICENSE WriteOnly

Client Keys used to authenticate request to the IEU Server.

ReturnSids: WriteOnly as Boolean

Instructs the IEUService to return a DataSet of pending tables and record sids.

IncludePatients: WriteOnly as Boolean

When set to true will include Patient transactions

❖ Current business rules prohibit new Patient Records from being sent from Refractive Surgery Consultant™ to EMR. Only Updated records will be discovered.

IncludePreops: WriteOnly as Boolean

When set to true will include Preop transactions

❖ Current business rules prohibit new Preop Records from being sent from Refractive Surgery Consultant™ to EMR. Only Updated records will be discovered.

IncludeTreatments: WriteOnly as Boolean

When set to true will include Treatment transactions

❖ Current business rules prohibit new Treatment Records from being sent from Refractive Surgery Consultant™ to EMR. Only Updated records will be discovered.

IncludePostops: WriteOnly as Boolean

When set to true will include Postop transactions

❖ Current business rules prohibit new Postop Records from being sent from Refractive Surgery Consultant™ to EMR. Only Updated records will be discovered.

The following Objects are not required to be managed in the EMR as they are managed in IEU Client Resources. The EMR architect can determine the usefulness of having these entities locally available. They may be ignored otherwise.

o IncludeProviders: WriteOnly as Boolean

When set to true will include Provider transactions

o IncludeUsers: WriteOnly as Boolean

When set to true will include User transactions

o IncludeKeratomes: WriteOnly as Boolean

When set to true will include Keratome transactions

o IncludeLasers: WriteOnly as Boolean

When set to true will include Laser transactions

o IncludeTreatmentProfiles: WriteOnly as Boolean

When set to true will include TreatmentProfiles transactions

o IncludeClinics: WriteOnly as Boolean

When set to true will include Clinic transactions

Return Object Array

❖ See Appendix B: Working with IEU XML Results

Returns On Success

System.Data.Dataset as Dataset

If ReturnSids = False then Dataset only returns Table Names and record counts for out of sync records populated in System.Data.Dataset.Tables(0)

/OR/

System.Data.Dataset.Tables(“IEUPending_Cnt”)

XML Data Example

APPEND_CLINIC

64

If ReturnSids = true then Dataset will be populated with 2 tables The first being the IEUPending_Cnt table at index 0 and all out of sync record sids and necessary details to identify the record and the record source.

System.Data.Dataset.Tables(1)

/OR/

System.Data.Dataset.Tables(“IEUPending_Sids”)

XML Data Example

2800

227

26

2003-04-15T11:06:35.0000000-07:00

167

UPDATE_CLINIC

Remarks

This is the mechanism for determining and acquiring out of sync records. Out of sync records are transactions from another source that need to be synchronized. An example is a record modified in Refractive Surgery Consultant™ which would then need to be synchronized with the EMR. Once the Dataset is obtained, the EMR software enumerates the data structure calling back to the various IEU Methods (Such as IEUPortalGetTransDetail) to synchronize the EMR with the RSC changes.

As each row is processed, the EMR client must execute IEUClearLogItem to notify the IEU that the EMR client successfully processed the item

See Also

IEUServices.IEUClearLogItem

IEUPortalClearLogItem

Public Method SurgiVision.IEUPortal.WebServices

.IEUPortalClearLogItem

as Results Object Array

ByVal IEU_CLIENT_ID As Integer

ByVal IEU_CLIENT_LICENSE As String

ByVal IEU_LOG_ID As Integer

Clears a pending transaction notification

IEU_CLIENT_ID, IEU_CLIENT_LICENSE Write Only –

Client Keys used to authenticate request to the IEU Server.

IEU_LOG_ID : WriteOnly as 32bit Integer

Identifies the LOG ID to update.

❖ See Remarks below.

Return Object Array

❖ See Appendix B: Working with IEU XML Results

XML Node

If the returned element of the node returns 0 then one of the following conditions occurred.

1. Selected IEU_LOG_ID has been previously updated. Rows can only be updated once

2. Selected IEU_LOG_ID does not exist.

3. The Site and Client credentials provided were invalid

Remarks

When an IEU Client (Whether Refractive Surgery Consultant™ or EMR) processes pending transactions as determined by the IEUPortalGetPendingTransactions method, it is the responsibility of the client to notify the IEU of the success of the transaction on the respective local side. This is accomplished with the IEUPortalClearLogItem method. Once the item is cleared with this method, the item will no longer appear in the IEUPortalGetPendingTransactions collection. The IEU_LOG_ID property is available in each row of the IEUPortalGetPendingTransactions returned Dataset . As the client enumerates and processes each row of the IEUGetPendingTransactions returned Dataset, the client should also execute IEUClearLogItem upon success of each item.

❖ Each IEU_LOG_ID can only be cleared once. If a second attempt is made to clear an item, the method will return false.

❖ The Refractive Surgery Consultant™ RSCIEU COM already performs this method for the Refractive Surgery Consultant™ Client.

❖ It is required that the EMR architect utilizes this method for the EMR client either through the IEU Portal or directly through the IEUServer interface.

See Also

IEUPortalGetPendingTransactions

AboutIEUServices

Public Property SurgiVision.IEUPortal.WebServices

.AboutIEUServices

ReadOnly:

When executed, returns a dialog of the following information.

1. Retrieves the IEU Web Service Version

2. Retrieves Copyright and Company Information

3. Retrieves current security status

This method can and should be used to verify connection to the IEU server. It can also be used to validate security credentials. As an EMR site begins testing connections and security credentials with the service, this tool provides details regarding the underlying connection which could be very useful for troubleshooting connection problems.

isLocalVersionOutDated

Public Method SurgiVision.IEUPortal.WebServices

.isLocalVersionOutDated as ReadOnly Boolean

This Method compares the running component version with the latest available version. If the local version is out dated, true is returned, and a message dialog indicating the current version and the local version. If the versions are equal, false is returned and no message appears.

GetLocalVersion

Public Method SurgiVision.IEUPortal.WebServices

GetLocalVersion as ReadOnly String

Returns a string representing the local version of the EMR Portal.

Appendix

Appendix A: SOURCE_NAME

|Refractive Surgery Consultant™ |Requesting Source is Refractive Surgery |

| |Consultant |

|EMR |Requesting Source is the Electronic |

| |Medical Records Interface |

❖ EMR Portal users: SOURCE_NAME is managed by the EMR Portal and always set to “EMR”.

Appendix B: Working with the IEU XML Results

The IEU Portal returns a collection of messages that may vary depending on a variety of circumstances. The Returned object from the majority of the IEU Portal Methods will be an Object Array.

'' Create results array

Dim obj(1) As Object

obj(0) = New System.Xml.XmlDocument

obj(1) = New System.Data.DataSet

obj = (IEUPortal Method)

obj(0) as System.Xml.XmlDocument

obj(0) may contain any combination of the following enumerators embedded as Elements

• ERROR

o Represents a critical error that occurred anywhere during the request or response of the method. This may be anything including SQL Validation errors, Authentication Failures, etc.

o May have multiple nodes

• INFO

o Non critical information

• SUCCESS

o Upon success of many transactions, the SUCCESS node will hold the IEU_SID of the successful transaction

• LOGERROR

o Represents an error that is likely non-critical. Check the ERROR nodes for critical errors. If no critical ERRORS, the transaction ran successfully but the action of writing to the IEU Server Log failed.

o For transactions directed to Refractive Surgery Consultant™, this would likely prevent the transaction item from appearing in the IsMessagePending Method to Refractive Surgery Consultant™.

• BEGIN

o Represents a BEGIN Stamp node. Information Only.

Schema for XML Results

* (Only one enumerator per node)

datetime of transaction (Server Clock)

Calling Method

Additional Source Information

Detailed Message / or for success the IEU_SID of the transaction

obj(1) as System.Data.Dataset

obj(1) contains a system.data.dataset object. For methods that return data this object will be populated. Methods that return no data (Outside of XML Results) this dataset will be empty. See associated method text for dataset returns.

Related

GetXMLnodeslist

Public Method SurgiVision.IEUPortal

.GetXMLnodeslist

as System.Xml.XmlNodeList

Obtains a collection of XML nodes based on the value of xType. While this method is not required to be used, it is provided as a convenience. You may use your favorite techniques for reading the produced xml document for action results.

ByVal xType As SurgiVision.IEUPortal.FunctionLib.xType

ByVal XMLdoc As System.Xml.XmlDocument

xType enumerator as SurgiVision.IEUPortal.FunctionLib.xType

Identifies the XML node type to collect.

IEUPortal.FunctionLib.xType.IEU_ERROR

IEUPortal.FunctionLib.xType.IEU_INFO

IEUPortal.FunctionLib.xType.IEU_LOGERROR

IEUPortal.FunctionLib.xType.IEU_SUCCESS

IEUPortal.FunctionLib.xType.IEU_GENERALERROR

IEUPortal.FunctionLib.xType.IEU_BEGIN

XMLDoc as System.Xml.XmlDocument

The xml document object to read from. This is obtained as Object index (0) in the object array returned by the IEUPortal methods.

RETURNS System.Xml.XmlNodeList

Example:

'' Create results array

Dim obj(1) As Object

obj(0) = New System.Xml.XmlDocument

obj(1) = New System.Data.DataSet

'' Create instance of IEU Portal

Dim Port As New SurgiVision.IEUPortal.WebServices

'' Create instance of an xml document

'' populate with an IEUPortal Method

Dim xmldoc As System.Xml.XmlDocument = _

Port.IEUPortalGetPendingTransactions('Place values here' )

'' Create instance of an XMLNodelist

'' Populate it with the getxmlnodeslist method

'' (Or use your favorite XML Reading technique)

Dim xErrorsList As System.Xml.XmlNodeList = _

Port.GetXMLnodeslist( _

SurgiVision.IEUPortal.FunctionLib.xType.IEU_ERROR, _

xmldoc)

'' Check if errors exist

If xErrorsList.Count > 0 Then

'' error(s) exist

'' enumerate through all items

Dim i As Integer

For i = 0 To xErrorsList.Count - 1

'Display all Errors in the Node List.

MsgBox(xErrorsList.ItemOf(i).Item("TIME").InnerText)

MsgBox(xErrorsList.ItemOf(i).Item("METHOD").InnerText)

MsgBox(xErrorsList.ItemOf(i).Item("SOURCE").InnerText)

MsgBox(xErrorsList.ItemOf(i).Item("MESSAGE").InnerText)

Next

Else

'' No errors found

'' Load dataset

Dim ds As DataSet = obj(1)

End If

Appendix C: Patient Schema

Patient Schema used for patient actions. This schema is returned by IEUGetPatientSchema and IEUGetPatientDetail in a System.Data.Dataset.

Attributes

IEU_CLIENT_ID int

IEU_CLIENT_LICENSE varchar(50)

IEU_EMR_SITE_ID int

IEU_EMR_SITE_LICENSE varchar(50)

SOURCE_NAME nvarchar(3)

SOURCE_PAT_ID int

IEU_PAT_NME_FST nvarchar(50)

IEU_PAT_NME_MI nvarchar(10) = NULL

IEU_PAT_NME_LST nvarchar(40)

IEU_PAT_SEX nvarchar(1)

IEU_PAT_DATE_BIRTH datetime

IEU_PAT_OFFC_CHRT_NBR int = NULL

SOURCE_CLINIC_ID int

SOURCE_PROV_ID int

XML Schema

Appendix D: Treatment Profile Schema

XML Data

XML Schema

Appendix E: EMR GUI / Functional Changes Minimal Requirements

GUI Requirements:

10. Exposure of all IEU required fields in interface

11. Implementation of IEU field validation prior to save

12. Display of Icon / Flag to let user know if patient is shared in IEU

13. Option to send patient to IEU on new patient entry / Display of Flag or Refractive Surgery Consultant™ Icon on shared records.

14. Display of Treatment Profiles and use of treatment profiles to save operative notes

15. Synch to IEU button to allow user to immediately view new EMR records in Refractive Surgery Consultant™

16. Normalization / Intersection of IEU – normalized of Lookup fields with EMR SIDS prior to sending data

a. May need to do this with app logic if EMR saves text rather than SIDS, eg, with Visual Acuity fields.

17. Creation of app logic to update shared EMR patient records after receiving edit from IEU

Database requirements

1. Mapping of SIDS as described in IEUSDK

Appendix F: Preop Schema

Appendix G: Treatment Schema

Appendix H: Postop Schema

Appendix I: Connection Troubleshooting

Timeouts

The IEU requires closely coupled time coordination between the DataLink Clients and the IEU Servers.

SurgiVision Consultants Inc. recommends sites linked to atomic clocks which have available free Atomic Clock software and/or Net Time Synchronizers.

Be advised that SurgiVision Consultants Inc. can not Guarantee such sites and advise the client to pursue such services at there own risk.



Time Outs may occur if a sites time zone is not properly configured. Additionally, system clocks and Network Time Servers should be synchronized with UTC.  This is not to say that your clock must show UTC (Or GMT) but the equation of your local time with the offset value indicated for your Time Zone setting in Time And Date Properties must equal GMT.

There is a 5 minutes grace allowance for fast clocks and a 20 minute grace for slow clocks. That is a 25 minute window to synchronization between Clients and the IEU Server. If the Client Clock is fast, a simple TIME OUT message appears. If the client clock is slow, a complex message indicating TTL Expirations will display.

Time Outs may also falsely occur if the EMR Portal has not been initialized with the Site ID and Site License. To check, or adjust, invoke the ShowIEUSettings method of the IEUPortal component.

[pic]

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download