LabWare White Paper
LabWare LIMS -
External Systems Interfacing Options
Version Control
V1 / Document created / V. Kershner, 9/98
Change Control
Version / Summary of Key ChangesV1 / Original Issue
V1.1 / Updated
V1.2 / Added Web Services
Template Version Control
Version / Reason For Release / Released by & DateV1 / Document created / E. de Vries 27Sep01
Template Change Control
Version / Summary of Key ChangesV1 / Original Issue
Distribution
Role / Name / CompanySales / John Newtown / LabWare
LabWare LIMS External System Interfaces
1.0 Purpose
The purpose of this document is to outline the methods available for interfacing LabWare LIMS to external systems. Examples of these systems include Enterprise Resource Planning (ERP) Systems, Manufacturing Execution Systems (MES).
Different transfer and transaction initiation mechanisms are reviewed.
Using the facilities described herein it is possible to interface and integrate with almost any external system. Depending on the specific requirements of the external system, some development work by LabWare may be required.
2.0 Transfer Formats
There are several different transfer formats and mechanisms that are supported by LIMS.
2.1 Files
Files and directories can be created and deleted. Files can be written in ASCII format.
2.2 Database Tables
ODBC connections can be established to external databases. Select, Insert, Update, and Delete operations can be performed. Execution of stored procedures is also supported.
LabWare does not encourage external systems writing directly to the LIMS database. The use of “transfer” or “transaction” tables is recommended for importing data into LIMS.
LIMS can be configured to read tables from external systems as if they are native LIMS tables. This feature can be used with database views to allow LIMS to reference data in external systems without having to copy, or import it, into the LIMS database.
2.3 Dynamic Data Exchange
LIMS can act as a DDE client. Execute, Request, and Poke messages are supported.
2.4 Mail Messages
MAPI mail messages can be sent by LIMS to other systems. LIMS also has the internal support to receive formatted mail messages.
2.5 RS/232 Serial Communications
Serial communication links can be established. Data can be read and written over the links. LIMS can wait for terminated messages to be received.
2.6 Import Files
Comma separated value (CSV) files can be imported.
2.7 Dynamic Link Libraries
Thirty-two-bit dynamic link libraries (DLL’s) can be called.
2.8 External Program Execution
External executable programs can be invoked.
2.9 LabStationTM
The LabStationTM instrument interface program can be used to parse files from external systems and generate import files for LIMS.
2.10 FTP
LIMS has internal support for File Transfer Protocol (FTP), that can be used to transfer files to/from remote systems.
2.11 TCP/IP Sockets
LabWare LIMS can listen for connection requests from external systems. When a request is received, a LIMS Basic subroutine is triggered to take actions and generate a response. LIMS Basic can also initiate connections to external systems using sockets.
3.0 Input/Output Triggers
Interface transactions can be initiated by several different means.
3.1 LIMS Basic Scheduler
The LIMS Basic Scheduler can be used to poll for interface transactions. It can also be used to implement a store-and-forward messaging scheme.
3.2 Event Triggers
Sample, Test, Project, and Lot event triggers can initiate interface transactions when status changes occur.
3.3 Automation Scripts
Automation scripts can be used to initiate interface transactions when LIMS records are created or modified.
3.4 File Importer
The Import File Parser can be used to poll for comma-separated-value (CSV) files and import the data into LIMS.
4.0 Web Services
Web Services
Web Services are one of the most recent and significant technology inventions to come out of the World Wide Web Consortium (W3C) and provide an industry standard way to achieve system-to-system integration between two or more business applications over an Intranet or Internet. In today's enterprise environments, a LIMS cannot be considered an isolated or standalone application, because there are business critical needs to share important laboratory data with other applications inside and outside the enterprise. Thanks to the Internet, there is now a robust and highly supported mechanism to achieve application integration using Web Services.
LabWare LIMS offers comprehensive support for Web Services and ships with more than 300 web services for the most common LIMS functions such as logging samples, retrieving test results, performing calculations, and many other LIMS functions. In addition to providing Web Services, LabWare LIMS can consume Web Services that are published by other applications.
In order to fully utilize Web Services, there are a number of prerequisites that an application must have to be Web Service compliant:
· Built-in XML messaging support
· The LIMS must be able to import and export XML documents that reflect the hierarchical data relationships that will exist in the LIMS relational database
· The XML must abide by an XML Schema (XSD) such that applications can validate the XML content to assure it is properly formed and can interpret the meaning of the hierarchy within the XML document
· Data transport requires the SOAP (Simple Object Access Protocol) messaging protocol to be used between the service provider and the service consumer
· Web Service Provider support
· The LIMS must have the ability to expose it's business services to the enterprise using a Web Services framework running from a compliant Web Server environment such as a J2EE Web Server
o Web Service Consumer support
· The LIMS must have the ability to consume Web Services offered by other enterprise applications or B2B services
· The LIMS must be scalable and able to consume more than one Web Service within its architecture
o All Web Services functionality that the LIMS provides must be described using a properly constructed WSDL (Web Service Description Language file) so that other applications can understand how to properly form any calls made into the Web Service
LabWare LIMS supports all of these requirements.
Dynamic Web Services
LabWare cannot possibly envision all of the many ways that our customers will want to use our Web Services capabilities. To realize the full potential of Enterprise Application Integration using Web Services, LabWare has empowered our customers to be able to create Dynamic Web Services within the LabWare WebLIMS environment.
LabWare Administrators can design a subroutine using LabWare's powerful scripting environment called LIMS Basic, and then selectively choose which routines to expose via the Web Service. LabWare LIMS will automatically create the WSDL for your web method so that the consuming application or development tool will understand the method's function prototype or signature.
Administrators have full control over what data types are required as arguments and what the web method should return upon successful execution of the web method. Dynamic Web Services enable a limitless number of ways that two applications can interact via Web Services.
Service Oriented Architectures (SOA)
Businesses are increasing looking at Services Oriented Architectures to be able to more effectively utilize Web Services within the enterprise in a more robust, scalable, and in disconnected integration scenarios. Ordinary Web Services may have been designed for a custom point-to-point solution and may never have been architected to work in an SOA. LabWare and IBM have worked closely together in a partnership to ensure that LabWare's Web Services can plug and play in an SOA environment where systems interoperate in a loosely coupled and disconnected scenarios. Customers can be assured that LabWare LIMS can provide Web Services that conform to the most current industry standardssuch as XML, SOAP, and WSDL, and can be utilized in a scalable and robust heterogeneous computing environment.
Summary
LabWare LIMS supports many means of integrating to external applications from simple file transfer to automated web services. The application provides the ability to integrate and automate in a manner that
· Takes advantage of the best technology for the task at hand
· Can be supported, modified and upgraded over time
· Provides the most value to the customer
This flexible and innovative approach has been proven effective time and again in hundreds of LabWare LIMS implementations around the world.
LabWare Confidential Page 1 of 7