Electronic Media Storage (EMS) Replacement

EMS

EMS is a product component of SunGard's EXP AG and PowerImage products. It is used to process text files e.g. created from host reports and allow further workflow processing of those. This chapter describes how a functional equivalent of EMS can be achieved with concepts of the Infinity Process Platform.

Control File

An EMS Control File (FDL File) is an ASCII file which defines

It consists of discrete records controlling certain parts of the file processing, e.g.

INP1FDBP,0,-1,FDAY,FDAY,FDAY,FDAY,,,,,,COMPLETE,TEXT,T,TEXT,FDAY.PTS.INVESTOR.INP1FDBP.*,-1,-1
INP1FDBP,-1,DATE_MMDDYY,2,98
INP1FDBP,1,POWIMAGE,RPTCOFND,REPORT#,4,s,n,,2,130
INP1FDBP,2,POWIMAGE,RPTCOFND,COMPANY#,3,s,n,,1,4
INP1FDBP,3,POWIMAGE,RPTCOFND,FUND#,3,s,n,,2,4
INP1FDBP,-4,GROUP,RPTCOFND,y

Further details can be obtained from the EMS Documentation.

Control File Functional Mapping

The following table lists all Control File Record types and their parameters as well as their equivalent for Text Processing with IPP.

EMF Control File Record Parameter Camel Configuration Element Camel Configuration Element Parameters Comments
0 lines/doc File Splitting

noOfLines (integer) - if provided used to split
splitByFormFeeds (boolean) - used to split if noOfLines is not defined

0 dept IPP Component Endpoint Mapped to a process data Department, which needs to exist.
0 task-type IPP Component Endpoint
0 rej_dept IPP Component Endpoint Not supported.
0 rej_tasktype IPP Component Endpoint Not supported.
0 reason code IPP Component Endpoint Mapped to a process data ReasonCode (needs to exist)
0 status IPP Component Endpoint Mapped to a process data Status (needs to exist)
0 doc-type IPP Component Endpoint Becomes the type of the document the - possibly split and grouped - page is passed to in IPP
> 0 id-number dataExtractor
> 0 id-type dataExtractor dataId
> 0 id-field dataExtractor mappingPath
> 0 max-chars dataExtractor
> 0 searchType dataExtractor
> 0 user_reqd dataExtractor
> 0 default dataExtractor
> 0 row dataExtractor
> 0 column dataExtractor
> 0 target string dataExtractor
-1 (Date Identifier Record) IPP Component Endpoint TO BE CLARIFIED whether be mapped to process instance properties or process data
-2 (Time Identifier Record) IPP Component Endpoint TO BE CLARIFIED whether be mapped to process instance properties or process data
-4 (Grouping Record) id-type pageGroupAssembler

The parameters

  • row
  • column
  • maxCharacters

are taken from the corresponding data extraction record id-type refers to a data extraction record. This reference is not maintained in the Camel Configuration

-5 (EXP Element Records) format IPP Component Endpoint Only attachments are supported.
-7 (Page Include/Exclude) Records actual value pageFilter
-7 (Page Include/Exclude) Records match pageFilter
-7 (Page Include/Exclude) Records size pageFilter
-7 (Page Include/Exclude) Records row pageFilter
-7 (Page Include/Exclude) Records column pageFilter

Control File Converter

IPP provides a converter for Control Files to create the functional equivalent of the processing specified in the Control File as a Camel Configuration in XML according to the table above. The resulting configuration can either be deployed directly into an IPP Runtime Environment or added to a Camel Trigger in IPP.

convertems -convert -controlfile Control File Path -targetfile Target File Path -validate Model File Path [-verbose]
Parameter Name Description
controlfile controle file location
targetfile generated file location
validate Enables validation of the generated xml file with an XPDL model.
modelfile Model file location

The example command below shows that the control file citi_ems.fdl will be processed by the converter and the generated camel routes will be stored in the file citi-camel-context.xml.

convertems -convert -controlfile Citi_ems.fdl -targetfile citi-camel-context.xml

To display the options for the converter.

convertems -help

Model Validation

The converter will check the data present in the model and map these data to the data provided by routes.

convertems -validate Model File Path

This command mainly validates the generated camel routes versus the model file content. It ensures that each IPP component invocation from a route make reference to a valid ProcessID according to the specified model. It also check that the specified data type and content in the route are valid and correspond to those required by processID.

Installation and Invocation

The converter is a standalone Java application which can be invoked by this command:

java com.infinity.integration.ems.converter.Converter -convert -controlfile Citi_ems.fdl -targetfile citi-camel-context.xml

Hereby it is assumed that the JAR file ems-control-file-converter.jar is located in the class path.