Upload
phamthuan
View
214
Download
0
Embed Size (px)
Citation preview
Symphonia Messaging Toolkit
A developer’s productivity tool that
Reduces development time by 90%
Message Definition
Huge Message Libraries
Message Testing - Explorer
Symphonia Engine (processes over 3,000,000 messages per hour)
XML Message Definition
Programming Components –Dynamic Binding
Message Mapping
Instantly creates ActiveX objects
EDI (Eletronic Data Interchange)EDI describes the movement of business-orientated information in a
structuredformat between computer applications
MSH|^~\&|TAT|SBCL|ATNGITEST1|182478|199909161440||ORU^R01|08980|P|2.3PID||0004015|AT003398T||TEST^CORRECTED 2||19740418|F||||||||||0004015OBR|1|0004015|AT003398T|353||||||||||||DR NO|||||AT|199909161440|||FOBX|1|NM|45009600^C4S^SBCL|1|62|MG/DL|16-47|H|||C||||ATNTE|1|| *************************NTE|2|| ** => AMENDED RESULT **NTE|3|| *************************
StandardsHL7, EDIFACT, X12, HIPPA, HCFA,NCPDP, any user defined formats
XML A replacement for EDI?Markup language for documents containing structured information
Message MappingSo different systems can talk
EDI and XML Messaging
Symphonia 3 is an easy-to-use toolkit that allows vendors, consultants and developers to rapidly add messaging capabilities to new, existing and legacy applications.
Four Applicationso EDI Message Designer (create definitions,
documentation, customize standards)o Explorer (debug messages, send, receive and log
sample messages)o XML Message Designer (create XML schema
definitions)o Symphonia Mapper (define and test message
mappings)
What is Symphonia
At the heart of the Symphonia 3 toolkit is the Symphonia engine. This parses an extensive range of EDI protocols and any user-defined formats. It is extremely fast and supported on a variety of operating systems. In addition to this is the Mapper Engine, which is also fast and again has cross platform support.
Two Engines
o EDI ‘Symphonia Engine’
o Mapper Engine
Wrappers for XML, TCP etc
What is Symphonia
The EDI ‘Symphonia Engine’ has Unicode support
Composer –Message designer
Explorer –Message Testbench
Intergate Symphonia into your own Application…so easy
Using Symphonia for EDI Messaging
Using Symphonia with JavaJava developers are well supported by Symphonia
Java Classes be used instead of ActiveX objects
Symphonia and XMLXML Document creation is made so much easier with the help of XML Composer
Has Java support now too. Generated Java classes wrap the Oracle DOM
Message Mapping
Creating a mapping is as simple as drag and dropping…more complex mapping can be creating via a simple C based programming language external dll and COM functions
Define mapping Implement mapping
Has a Java Mapping Engine as well as Unix ports
Input/Outputs
testing
Using EDI and XML Composer define your input and output definitions
EDI Message Designer
• Messages• Segments (the building blocks of messages)• Composites (Complex datatypes)• Validation tables (enforced field values)• Message set properties (separators)• Field Instances (override composites locally)• NotesAnd generate• RTF/HTML documentation• ActiveX objects, Java classes, Parser control
files
allows you to define….
Symphonia LibrariesThe wizard can be run to import messages from the
Library. Select the messaging standard and then the messages you require.
EDI Message DesignerSymphonia’s tool to construct and modify
message definitions
MessagesSegments
Composites Validation TablesMessage structure
Fields..Fields can be added and edited…
Datatypes can complex compostie datatypes
Required, Length, Repeat properties can be set
Validation Tables
Separatorsdefine message separators for a set of messages
Separators value can be set and modified
Separator Replacements are also supported
Fixed or variable..the message defines its own separators
Message Type determination…..setup by matching the values in the values in the message type fields with the message tag for a particular message….
Message type fields
..and/or use the message match list
Properties
Windows XP, 2000, NT 3.5, 98, 95 Unix, HPUX, DGUX, Solaris, Linux and others VMS, MacOS etc
Programming with Symphonia
Developers have a number of options to choose from:
Generate ActiveX objects (DAGs)
COM parsing engine
C++ or Java parsing engine’s
Java classes
This means the following operating systems are supported….
Direct ActiveX GenerationGenerate an ActiceX object that Encapulates your message definition and the Symphonia Engine
Select the DAG generation option
Enter a name and filename for the ActiveX object
Unicode support is available
Other Development Tools
The DAG can be used in any of the following development environments….
Delphi
ASP
Visual C++
PowerBuilder
C++ Builder
C##
…..any COM Compliant development language
Using the PCFThe PCF…generic classes…don’t need to recompile the application.PCF files can be used by the following engines
Java Parsing engine
COM Parsing engine
C++ Parsing engine
Additionally Composer can generate Java classes
Using the PCFCreating a batch message….
Load the PCF file in to the Messagefactory.
Messages can be created using MessageElements passing component names as parameters.
Repeating fields/Segments can be added using ‘AppendElement’
DAG vs PCFDAG avantages
• Easy to program with
• Can be used in any COM Compliant language
PCF avantages
• No need to recomplie you applications
• Deployable across many kinds of OS
DAG disadvantages
• If you change your definition the DAG needs to be regenerated and your application recomplied
• Only runs on Windows
PCF disadvantages
• More complex to program with..Fields can’t be accessed using code inslight
Typical uses….Small applications written for a single site, in a development language like VB or Delphi
Typical uses….Larger applications written for deployment on multiple sites, that may run on various OS’s
TCP ActiveX Object
TCP Object
Input parser
Symphonia also contains a TCP object for sending and receiveing messages…
Object handles Message Trailer and Headers
Handling Events like Connections and receiving messages from external applications is easy
Parse message strings into usable objects
Report GenerationGenerate reports for your message definition in seconds….
RTF documents generated and display in Word with full table of contents support
HTML reports can be generated also
Your documentation is never out of date!!!
Flat File FormatsIn addition to message standards, user defined formats can be created.
Comma delimited flat message definitions can be set up..
,
Symphonia Explorer
You must first load an s3d file (from Composer), to make it message aware
The message window is made up of 3 parts - Message tree, message string and error list
Import/Export messages
Send and Receive messages via TCP
Logging support
Explorer is a ‘window’ to the Symphonia engine, a powerful EDI debugging tool
Importing messagesSample messages can be quickly verified
Load your message definition (Composer s3d file)…
Import a message…
You can create new messages also
Sending and Receiving messages
Explorer can also be used a debugging tool with other applications
Send message to a server application
Or set Explorer up as server and receive messages
Explorer can also act as a router, receiving messages and routing them to another system
XML Composer
Symphonia’s Tool for defining XML schemas
Create/Edit XML schemas
Generate ActiveX objects…. wraps the Mircosoft XML DOM
Generates Java code…wraps the Oracle XML DOM
Import/Export DTD’s
Import/Export W3C Schemas
Defining XML Schemas is so simple…
XML Composer Generate ActiveX objects
Documents, Elements, Fields, Attributes
Import/Export Schemas and DTDs
The Symphonia Message Mapper
Solves communications problems between information systems with different formats by providing mapping between them.
Creating a map file e.g. HL7 to XML Map file in use - mapping HL7 to XML
Drag and drop from each format to create file
Rapidly enables universal data communicationsbetween previously incompatible systems
Maps virtually any format to any other format. Programming is significantly reduced by
user-friendly GUI and wizards
The Symphonia Message Mapper
Import Input and Output Definitions
A mapping wizard allows mappings to be quickly set up..
The mapper can import any EDI Composer files and XML formats
Sub maps…enables code reuse and similifies mappings
With the Symphonia Mapper you have a Rapid Mapping Development Application
Some Features….Globals variables
Call Stored procedures in ODBC databases
Call COM components
Customized External functions
Automap similar fields
Compiling and TestingWhen a mapping is complete, it is then compiled into an ecc file…
Mapping can be tested with sample input messages
The ecc file and the mapper engine is all that is required to add mapping to an application
Solo mapper, NT service
The Symphonia Mapper Service is a Windows NT/2000 service for mapping messages between 2 connections. These connections can be a combination of TCP connections and directory-based connections.
Additionally the Mapper has two other applications that users toreceive messages and map them and send the output to another machine or directory
The SoloMapper implements an automatic transfer operation where a message is mapped using a mapping file generated by The Symphonia Mapper.
Concise C based code mapping language.Clear, concise, easy to understand - capable of virtually any mapping at all.
Ease of Use.User friendly Drag and Drop GUI simplifies the mapping process.
Extensibility and Scalability.The use of COM interfaces, engine APIs and ActiveX objects promotes a high degree of customisation and programmability.
Supports multiple platformsWindows 95/98/2000NTSun SolarisHP-UXIBM AIXUnixLinux
Mapper Summary
Symphonia Runtimes
Symphonia Development keyRequired to run Composer, Explorer, XML Composer and the Symphonia Engine on a Development machine.
Symphonia Runtime keysRequired to run the Symphonia Engine on a Runtime machine. One key per machine.
Mapper Development keysRequired to run the Symphonia Mapper and mapper engine.
Mapper Runtime keysRequired to run the Symphonia mapper engine on a Runtime machine. One key per machine.
Demo Overview
Visual Basic Client Visual Basic Server
Sends HL7 ORU message
(Lab result)
Receives ORU Message
Maps to an XML document and saves to file
Send via TCP
This is a demonstration of using Symphonia to send EDI messages, mapping messages from one format to another and parse XML documents.