ISM:OneHtml

From ISM
Jump to: navigation, search

Contents

Introduction

ISM:Foundation

<translate>

ISM Architecture

ISM consists of three main components.

  • Platform — J2EE compliant application server like JBoss, WebLogic, and BusinessWare
  • ISM Engine — Execute and control business services on the platform
  • ISM Web Console — Manage, execute, and monitor the services


ISM Architecture

Platform

As an EAI/ESB tool, it serves the interface function among integration target systems. It provides consistent network interface by offering connector(adapter) according to application type. ISM provides instant messaging function, one of the most important feature as a platform, providing synchronous/asynchronous/broadcasting messaging function so that the users can choose according to integrated working service type. The stability of messaging include not only swift and precise delivery but also the system which can prevent duplicated delivery. To prevent the possibility of errors for duplicated data which has already been processed, the feature of transaction management is positively necessary. For this, BusinessWare provides transaction managing feature which supports J2EE transaction service standard and reliable messaging. ISM engine executes integration business service making use of BusinessWare messaging, transaction managing feature, connector feature. The communication of relevant target system to integration between ISM engine is mediated by connector/messaging layer of BusinessWare. The components executing integration service is expressed as a project as a executable unit of BusinessWare. Every process of ISM is a project based on BusinessWare in the prospective of process.

ISM Engine

ISM engine is an essential component of integration business service. ISM comprised of pattern management, service process, service/information management, service tracking/monitoring components.

Pattern Management

A user registers the information including the location of the source system, and what information has to be sent to where. When ISM engine receives the service request, ISM fetches the data from the source system and apply it the the target system according to the registered information. It can be called interface pattern between the source and target. Many types of interface patterns can be registered on ISM web console, and they are processed by ISM engine. ISM conducts the interface between source/target system according to predefined pattern, and the result is also processed as defined. There's no fixed pattern in ISM, but the patterns commonly used are as follow.

Online

  • Source 1 → Target 1 transaction process request (synchronous interface)
  • Source 1 → Target 1 process result transfer (asynchronous interface)

Batch

  • Source 1 → Target 1 Data synchronization (DB type)
  • Source 1 → Target 1 Data synchronization (File type)

Deferred

  • Source 1 → Target 1 Data synchronization (DB type)
  • Source 1 → Target 1 Date synchronization (File type)

Besides, other patterns meets integration service requirements can be customized by users.

Service Processor

Sometimes, the data has to be modified by the business conditions. On other occasions, the data has to verified to prevent data contamination before the process. Service processor plays a role to execute required processes by each stage of the whole service flow. Required processes are as below.

Extracting Data and Information

When the first data process request is received, and in the condition the data to be processed by external system is transferred, the operation of extracting service information form the input data is required. Service information extraction is the process of extracting integration service ID which has the same key of ISM administrating information, and after the operation is completed, the regular ISM integration service began. After the service ID is extracted, the operation of referring what pattern is it defined to process.

Data Analysis

When the target system varies with the contents of data or when it's require to be verified to prevent data contamination, analyze the data. In the case the data is transferred to target data regardless of its contents, do not.

Data Verification

The process of data verification is to divide the data to defined data structure by data analysis, and then confirm whether does each filed value conform to defined rule. Data is verified by checking whether it equal to defined value, or within the value range, or fit in the list predefined, or the user's result correspond to predefined function.

Data Conversion

If input data has to be reproduced be sent to target system, ISM conduct the data conversion in the way defined. Each conversion is conducted according to 1:1, N:1, default value, conversion function, etc.

Service Information Manager

Administration activity of registration/modification/deletion/application of service information in runtime is conducted by ISM web console, but the role to deliver these requests to each integration service process/component is conducted by service information manager. The service information created by ISM web console exist not as the form the process operable but as text data. Service information manager convert the data to the object operable by the process. Since the conversion is completed, each process notify and transfer the changes to each process so that each process can use the service information. By this process, the service information is created and modified dynamically.

Tracking and Monitoring

To see whether the integration service is conducted well or not, there must be result log or it has to be provided in the form lucidly. ISM Service tracking/monitoring component store the service performance in separated media so that make it approachable to web console. It provides not only the result but the status of process including the status of process or the concentration and dispersion status of the service. There's also a monitoring environment to notify users the error or failure swiftly.

ISM Web Console

Web console produces the information for the engine conducting its service and manage it. It manages the whole conditions of integration service and send the information of processed result or statistics to the users. The functions of web console is in the following.

Interface Organization

Interface Organization is the most basic function of web console to configure the integration service. Integration service comprise of system, data, rules of process. System mean each source and target system, and the data is the data structure between the source and target, the rules of process is the methods of data transmission between the source and the target system. These information is combined to web console creating unified integration service. The integration service is managed by its versions, and even the integration service shares the same name can be defined differently to the interface with other data or system.

Service Control

The batch/online service executed by external request cannot be controlled by web console, but the deferred service executed by ISM scheduler can be controlled by web console. The whole process of service's start/suspend/resume/end is controlled by web console.

Transaction Result and Report

Web console provides the view which the result of the service process can be referred informs whether the services processed normally, what data has been processed. It also provides hourly/daily status report for each service performance to show current information to predict system management information.

ISM Service Flow

ISM Flow


The components related to ISM service can be listed according to the processing flow as follows.

Component(system)Role

External System(source)

Requests Service Operation

Channel Service

Accepts service execution request. The channel service recieve the request by each interface type, extract the integration service information from the data, turn over it to the service controller. Return the processed result to external system(source) after the service controller's process.

Service Controller

Inquires the integration service information, determine how to handle the service, send the request to component service according to processing method. If any conversion, verification, or routing is necessary, the controller determines the component service to send the request.

Component Service

Sends the transfer request from the service controller to external system. Return the processed result to external system(source) after the service controller's process. Monitors whether to retire the target system when it's on failure.

External System(target)

Receive the execution request, execute it and returns the result.

ISM Service Types

ISM provided services sorted into three different types: Batch/Deferred/Online. Another service which can be categorized to these category but exceeds the ISM provided functions, assort it to Custom Service.

Batch Service

Batch service means the service to transfer a file or data from source to target by user request or scheduler. the request data in batch service include the conditions to hand over a file or table data. The request from scheduler has a certain cycle, but the request of user doesn't. Batch service supported application types are file and database. It supports 1:1~n patterns in the basis of the number of integration target systems.

Deferred Service

Deferred service is the service which transfers the table data of source system and syncs it to target system. Most of data to be processed to deferred data doesn't have to be synced immediately, but it has to not too be late. Immediate transfer of log data are the data have to be processed by deferred service. To do this, ISM determines the data process cycle by its scheduler. The scheduler of batch service is on external system of ISM which can set daily, weekly cycle but the scheduler of deferred service manages relatively short cycle. Deferred service supported application types are file and database but only database can be used as a source system. It supports 1:1~n pattern like the batch service in the basis of the number of integration target systems.

Online Service

Online service is processing flat message including all the data has to be transferred according to the request of the user .The response is immediate, and done in short time. Major interfaces of this are Socket/HTTP/TP monitor/WebService etc. Flat message is made of header and data. Unlike batch and deferred service, more various types of interface - request/respond, publish/subscribe, sync/async are used. </translate>

<translate>


Implementation

When the integration service requirements emerge, the accepting procedure of ISM integration service is as follows.

ISM Implementation procedure
  1. Defines interface components
    • Target system – Defines transmit and receive system. If there's transmit-receive system exist, do use existing system.
    • Data - Defines data structure between transmit and receive system. if the data structure is in use, do not define it.
    • Processing rule - defines data process rule about data conversion, routing rule, data type(file, table, flat message, etc.) Using the rule already in use is also possible.
  2. integration service composition
    • Gather each compoent to a single integration service.
  3. Running process composition
    • If the system not in us is defined, run the executive process
  4. Run integration service and verify its results
    • To run integration service, go through the application procedure of integration service comprised. Applied integration service is executed by ISM run process.
    • After the service is excecuted, verify the service execution result through web console. In the condition verified result is erroneous, check whether it's the problem of the components and repeat the process above.

</translate>

<translate>

Overview

ISM has more than one data processing patterns, but usually the services below are frequently used in general.

Online

Synchronous Request/Response Service

Synchronous Request/Response Service send the request and return the process result in synchronous modes.

Synchronous Pattern

The service pattern requests the process synchronously in sequential order and receive the result from the multiple target systems. The transferring data to each target system can be the requested data from the source system, or the returned data from the preceding target system. Likewise, the data returning to the target system can be the result data of the preceding target system, or the process result data of a certain system. In addition, the combination of the result data from multiple target systems is also available. In this sentence, "combination" doesn't mean it merge all the data received. It means that it extracts the data from the received and makes the response data.

In the pattern, the number of the target systems determine the number of sequential process requests. If the result from a certain target system erroneous, error processing procedure is executed.

Asynchronous Request/Response Service

The request is transferred asynchronously between transmitting and receiving system , and the process result is returned asynchronously.

Asynchronous Request-Response

Like the source system requested, the target system returns its result to the source by separated session. In this service pattern, only single per source and target is possible. Also, it requires to distinguish request data from respond data before the operation.

Asynchronous Sending Service

Transfer data from source system to target system in unidirectionally

Asynchronous send

Source system doesn't receive the request of the result. In this service pattern, the data is transferred from a source system to multiple target systems unidirectionally as the number of target systems in parallel.

1:N Synchronous Routing

The target data changes according to the request of the data from the source system to target system.

1:N synchronous routing

Final received response data is determined in synchronous request/response service. The service pattern can be mixed with sync request/response service.

Batch

File – File Batch Service

Batch service is to deliver source system to target system. Transferable file has no its limit of size or number. File – File batch service only transfer to one-direction.

File – DB Batch Service

This batch service saves generated files of source system to target system's DB as table data. To save file to DB, the data structure of the file must be exist. There's no size limit for transferable file, but the transferable file is only one on batch service operation.

DB – DB Batch Service

This batch service saves the table data of the source system to target systems in predetermined condition. In this DB-DB data transfer process, the conversion of referred data occurs. There's no limitation of transferable data, but the result of refrred table data must be one. Data inquiry result must be operable by inquiry query no matter how many tables are combined.

DB – File Batch Service

This batch service saves the table data of the source system to file of the target systems in predetermined condition. In this DB-File data transfer process, the conversion of referred data occurs. There's no limitation of transferable data, but the result of refrred table data must be one. Data inquiry result must be operable by inquiry query no matter how many tables are combined. Each target system has one generated file.

Deferred

DB – DB Sequential Deferred Service

This deferred service saves the table data of the source system to table data of the target systems in predetermined condition. Deferred service is conducted by ISM cycle using classification key which is the same as serial number. If there are multiple target systems, transfer data to the target system sequentially in a single transaction.

DB – DB Parallel Deferred Service

This deferred service saves the table data of the to table data of the target systems in predetermined condition. The target system of this type of service must be one. The service is used to guarantee the order in data transfer condition which requires high processing performance.

DB – File Deferred Service

This deferred service saves the table data of the source system to file data of the target systems in predetermined condition. Whenever the data is transferred, the file name must be differed.

DB – File Parallel Deferred Service

This deferred service saves the table data of the to table data of the target systems in predetermined condition. The target system of this type of service must be one. The service is used to guarantee the order in data transfer condition which requires high processing performance. </translate>

<translate>

Overview

Integration service defined and used in ISM contains all information for integration: the way to send/receive data between the source to target systems, data types, the procedure of the data process, and access way to system. Integration service is a consolidated object with multiple levels of information, which is used in runtime in the ISM process. The integration service object on runtime is specifically called "rule".

Integration service

Requisite information for integration service among systems can be categorized to system, data, interface service, mapping. For example, file batch service flow is below.


  • Access to the system(Source system)
  • Get file from specific location (directory, file) designated on interface service
  • Analyze according to data structure
  • Data mapping
  • Access to the system(Target System)
  • Put the file to the directed location(directory, file) in the interface service

Integration Service Component

System

Server

Manage the information of physical server machine. Manage hostname or ip using iSM.

Application

Manage the connection information according to application types. The information varies to application types; file and DB type both requires user account information, specific type of application(e.g. socket) requires port information. The picture below shows the required type of information to approach to the DB type of application.

DB type also should describe not only DB name but also DB server according to DBMS types.

System

System is the combination of application and server. The number of combination is usually same with server count. If same business application may run on multiple servers, the number of combination is same with server count. If multiple instances of same business application run in one server, that number of combination is application count * server count. This configuration is often used for web server.


System could have proxy server which substitutes the interface between source and target system on runtime. If connection information should be fixed on a program or component - mainly DBMS - besides there, the connection information can be connected dynamically to the source system and the target system. The systems can be connected in dynamic combinations is to be processed by common predefined alternative system.

Proxy system is used only in BusinessWare version.

Proxy systems are used for these types interfaces.

  • Realtime
    • Source
      • Used to send asynchronous response to source system
    • Target
      • Used to forward request to target system
  • Batch
    • Source
      • Used to get data(file, table) from source system
    • Target
      • Used to put data(file, table) to target system
  • Deferred
    • Source
      • Used to get data(table) from source system
    • Target
      • Used to put data(file, table) to target system

Data

Defines data source system to target system or target system to source system in return. Data is comprised a combination of specific group of fields

Field

Field is used for minimal object to build data. Field is a unit of field group managing the information of length, number, character, date, and format.

Field Group

Field Group is a combination of fields. It defines the order the field appear and manage the way the field is used in the field group - the status of key field, input and output type.

Field group manages individual field delimiter or length.

Data Structure

Data structure is a combination fo field groups. Data structure comprise of master and detial. Master is the field group repeated only once, detail is the field group repeatable multiple times. Data structure is made up more than one master. Each master can have at least one detail. The configuration methods per data type are as follows.

Service Method Data Structure Configuration Description
ISM Message N Master – N Detail

If it is comprised of header and data, contingent on the repetition of data division, Master(header division) + Master(data division) Master(header division) + Detail(data division) Master(header) + Master(data division unrepeated) + Detail(repeated data division)

XML message XML

Compose it to XML expressible structure.

On data structure definition, do not us XML Schema or DTD.

파일

1 Master

File data is comprised of a single master.

Table

1 Master

Table data is comrised of a single master. If the data is referred with multiple tables joined, the data structure is composed the joint results as a field group.

Service

Service is classified to the interface service defining required data and interface type, and the integration service combining interface services.

Interface Service

Manage required data or data extracting or applying method. The batch service transferring file must define the information of file data structure, the file direction, the procedure when the file exist, and then the after transfer procedure(e.g. file authorization change). The data structures used in interace service are input, output, error. How to use each data structure is as follows.

In/Out data structure of services

Data transfer from the source to the target can be expressed to request, the opposite can be expressed to response. When target system returns processing result, there's an error process data included and the error process doesn't correspond to the normal process data, it could be expressed error response.

  • Request
    • The source service uses the input data from the source system as an output to be sent to the target system. The target service use the data sent from the source service as the input date converted to be sent to the target system.
  • Response
    • The target service uses the response data returned from the target system as the output data of the target service. The source service use the use the response data returned from the target service as the converted type of input data to send it back to the source system.
  • Error Response
    • Error Response means the error that is the processed result, and the subject which can generate the error response to the target system. The target service determines the error status of the response data, and return it with conversion if the conversion of the error data isn't predefined.

Interface service manages the way how to bring the data or apply them. In general online service, the processing object data is included in the message requested, but only the condition to the process or the service delimiter is included in batch/deferred type. Therefore, for the interface service which is used on batch/deferred, manage the way of extracting/applying data. The picture down below defines the way to bring the data from DB source interface service.

Data Mapping

When any conversion is required, define the conversion using input and output data.

Integration Service

Interface service does manage how to take the data or apply them, but it doesn't manage how to from integration service. Whole process flow(rule) is managed in integration service.

The integration service defines the routing condition between two services, the source interface and the target interface and, by extension, manage the target system.

Integration Service Management

Version Management

Data managed by ISM is composed of two types. The first is a history data with version information, another is a master data without version information. When on runtime or referring another item there should be a data on master field. For example, there must be at least an application and a server to compose a system. To do so, application and server information on history field has to be in master field.

ISM version flow

Relationships among components

All the data of ISM has no direct class relationships. The system needs application and server information, but the system has none of them but only the connection information. Each data exist individually and applied separately. For instance, If the IP address of the server, there' no need to modify the system information but only the server information. </translate>

Batch Service

<translate>

Overview

Batch service is used when the data is transferred from a file or DB system to another file or DB system. Even if the data is frequently processed like online transactions, the batch service can be used depending on the way of transfer. The batch service is initiated by requesting ISM the required data(a file or table data) not by sending data directly. If ISM receives the request of data transfer, ISM inquires(or fetches) the data and send it to the target system as it has defined on rule. If there is too large data to be processed, the batch service divides the data into segmentations to process the transactions. When an error occurs on processing the segmentation process, it is processed again from the data of the error occurrence.

On batch service, the work that should be processed before or after the job can be defined. We call it "Task", and the work before batch service execution is "Pre Task", the work after the service is "Post Task". The kinds of task are,

  • File Task
  • Table Task
  • Tellnet Task
  • Service Task
  • Stored Procedure Task

The task is executed as a separated transaction from the batch service.

Batch Service Runtime Configuration

Batch service comprises of batch agent which requests batch process, batch manager, and the interface process which conducts interface between each source and target system. Batch service can be configured in either way, master-backup mode or active-active mode. Even the batch service is configured to active-active mode, the master batch manager has to be discriminated by each server or group.

The service flow is as follows,

  1. The batch agent sends the execution request to the batch manager which is registered to the agent.
  2. After the batch manager receive the job request from the agent, it sends the internal source system interface process the data verification(fetching file, verification of table data) request.
  3. Since the source system interface process complete the process, the batch manager send the data refection(reflecting file transfer and table data) request to the target system interface process.
  4. After the target system interface process finish the process, the batch manager save the result of the process and exit the process.
  5. After the batch agent send the process request, it also send the verification request of the processed result in certain period(Default: 100 times per 3 seconds).
  6. The batch manager verify whether the process is completed or not and return the status to the agent.
  7. Since the process is completed, the batch manager return the result to the agent, and the agent receive and print it to the screen, terminate it by setting the exit code to the result code.

When any failure occurs on the transmission process process occurs, the batch manager of the master server rout the request and execute the service. The batch manager of the master server determines the location of the interface process according to the location of the source interface process. However, if there's a shared disk between master and backup server, and it is accessible from both sides, execute the interface with the transmission process regardless of the location of the source process. For example, the organization of the source interface process executing on master server and the target interface executing on backup server is available.

Batch Agent

Batch agent plays a the trigger of the batch service. It sends the data related information which has to be processed on batch service - filename, process object data verification condition - to the batch manager to start the process. It also periodically check the execution result, finish the process by setting the result as the exit code of the process.

Batch Manager

Batch Manager controls the whole processes of batch service. It delivers directions of data inquiry/applying to each interface process, and goes on the next stage when the result is successful. Batch manager conduct pre-requisite operation – pre task – and post production - post task. Each Pre task, post task, and batch service conduct the next job only after the previous job is completed normally. Batch manager communicates with batch agent and notify the result of the process to the batch agent.

Interface Process

Interface process plays a role of conducting the interface between the source and target which fetching the data or transferring it. The division into the source and output is divided by the roles in batch service, each interface process do both of the roles of the source and the target.

Common Process

ISM requires a transmission interface process for each related system. Thus, the more file or DB systems ISM have, the more interface processes are followed. However, in the condition of the amount of service executions aren't many or the time required is short, it must be a waste of time to assign a process for each of them. If these interface processes can be integrated into a single or a few processes, the system resources can be managed more efficiently. For this reason, the batch interface process of the systems which integrates the processes can be executed by the "Common Process".

"Common process" is that defining the "alternative process" among the systems registered to "common system" by the batch interface type. If the alternative system is defined for each registered system of ISM, the batch manager finds the alternative process and sends the service execution request not to the very system but to the alternative system process.

Alternative system can be defined for each type of batch source and batch target. For file system, both of source interface and target interface are processable through the alternative system. For DB system, however, only the source interface is processable through the alternative system.

Batch Service Forwarding

If the batch manager determines that it cannot process more job requests, another batch manager run in another server can handle the jobs. Once the agent send the request of batch, the batch manager compare current processing jobs to the maximum number of jobs. If the current processing request is greater than the number, order direction "forward" to the agent, and the agent send the service processing request to backup batch manager.

The maximum amount of simultaneously processable is defined on ism.xml.

<batch>
<job threshold="30"/> <!-- Maximum number of simultaneous processing = 30 -->
</batch>

System Interface Pattern

The patterns usable in batch interface as follows. Interface type is synchronous way, but it doesn't conduct response conversion using process results nor manage the response data.

Sync classification Request/Response classification Note
ACK transfer Inquire data in synchronous way and apply the data Do not process the process of response data.
  • The patterns defined here aren't the patterns in general meaning but the patterns for ISM to register the batch service.

Interface Types Supported by Batch Service

The interface types supported by batch service are as follow.

  • Source System
    • File(FTP, sFTP, FTPS, SCP)
    • Database(Oracle, MSSQL, Mysql, Informix, Sybase, Teradata, DB2, DB2AS400)
  • Target System
    • File(FTP, sFTP, FTPS, SCP)
    • Database(Oracle, MSSQL, Mysql, Informix, Sybase, Teradata, DB2, DB2AS400)

For additional interface, a file type custom handler should be implemented. Supported combinations of interface types between the target and the source are as follow. The column section is target system, and the row section is source system.

  File Database etc.(File basis)
File O O O
Database O O O
Etc.(File basis) O O O

Do not allow source system to send the data in the way of service request. The way of sending data by target system in the way of service request can be implemented by the custom handler. </translate>

<translate>

Segmentation Processing

Batch service generally processes a large amount of data. If the large data is transferred from a DB to another DB, the amount of transmission can be counted up to millions or billions. This large amount of data cannot be processed in a single transaction unit, so the batch service divides the target data into a certain fixed size of data.

Reprocessing

To reproduce the batch service, requests with the very first requested batch process ID. If the batch process ID is the proses which an error has occurred, ISM reprocess the job right after the point of error occurence. Failed job can be reprocessed by the administrator through web console.

Pre Task and Post Task

If there is a job to be processed before or after the Batch Service, it can be registered to pre/post task of the Batch Service so that they can be executed before or after the Batch Process. For instance, if a stored file has to be applied to the source system's DB after the file transmission on the Batch Service is completed, the post process which runs the script uploading file to DB can be executed. If the pre task fails, the main process of Batch Service won't run. If the main Batch Service Service doesn't completed normally, the Post task won't run. Even if the Post Process fails, the main process of the main Batch Service won't rollback.

Batch Service Parameter

Batch service defines the required parameter as follows.

Parameter type description note
source file name target file name  
source file name filename to be saved in target system  
query parameter The parameter to be replaced on Query when DB batch is inquiring the data Saves as "parameter_name=parameter_value." If the parameter is plural, the delimiter of each parameter is "&"
Previous process parameter The parameter to replace the data to be used on previous process the same way to define the query parameter.
Post process parameter The parameter to replace the data to be used on post parameter the same way to define the query parameter.

Follow the instruction of batch agent installation to see how to define the parameter. The users can previous process/post process parameter can be added/deleted through by Custom process including custom handler. Use ISM based development guide and JobUtil class to see how to add/delete the parameter.

Direct File Transfer

Most of File – File Batch Service conduct the function of sending the file without file data conversion. In addition, the transfer also happens occationally by the administrator for its business nature. In the case the user completed a specific operation and request to send the file to him that instant, the transmission of file is recognized not as a usual Batch Service but the part of online service. For the reason, maximum performance is required on File Batch Service which will still fall short of online service. For that, the function of direct file transfer is provided in the condition of the simple file transfer service with no need of conversion.

ISM Direct Transfer

When ISM received the file transfer request, the file is transferred between the source and target systems. This is used when the FTP access to the source and target is restricted from external system and it's only available on ISM.

Agent Direct Transfer

When ISM receives the file transfer request, transfer the file to the agent directly. The agent transfer the file in stream relay between the source and target system just the same as the ISM direct transfer.

Timeout Management

Multiple timeout settings are used on batch service. Each timeout as follows.

Service Process Timeout

Service Process Timeout is the timeout period which send the process request to the source or target interface process and wait the response. If no response is made within the period of time, the batch manager consider and process it as a failure of the job. The timeout period is fixed to 2 hours.

Data Inquiry Timeout

The timeout is the period of waiting the inquired contents to be generated. The batch service starts from DB is suspended as much as the time spent by the amount of the data verification. Because the batch service sending converted file is only able to execute the latter conversion process, data verification(fetching file) and data application(converting and transferring) progresses sequentially. Since the DB batch service verify the data and save it partitively, new verification result files are generated even before all the data verification completed. Therefore, data application process is able to be processed while the data verification. To execute the data verification and application at the same time, the data verification process is running on background. To process the data application process, the batch manager check whether the file is generated as the result of the verification or not. On inquiry, if the file isn't generated within the timeout period, the batch manager consider and process it as a failure. The timeout is applied to each of the partitioned files. For example, if the data Fetch count is 1000 and the data count has to be sent is 10000, 10 files are generated as the result of the inquiry. Batch manager waits for each 10 files within each timeout period. The timeout period is defined as the batch service's timeout on integration service definition. If it isn't defined, 60 seconds is set to the default timeout.

FTP Connection Timeout

FTP Connection Timeout is the timeout which FTP connection couldn't be available for the error of the opponent's FTP server's failure. Commonly, if FTP isn't on running or the port information is invalid, the connection is refused, but if it's running abnormally, the user might have to be suspended in the middle of connecting with the firewall. Through this the batch service can be suspended unprocessed, to prevent this timeout is used on connecting. The period of time is set to the timeout value of the source and target on integration service definition. If it isn't defined, it's set to default value, 30 seconds, for connecting timeout.

Duplicated Data Error Ignoring Option

In DB data reflecting batch service, a duplication error could occur according to preset key value of the target DB, and the batch service could fail as a following consequence. In the normal condition, precise data must be applied to the target DB without any duplicated date. However, a certain error data could effect the whole service by not reflecting the whole data. Because the correction of the pertinent error data takes too much of physical time and the whole data which should be applied within the time to the target DB, the other services using this data could occur serial failures or errors. It is functionally normal, but it can be a risk factor in the aspect of service management. It is hardly possible to ignore every single error from the batch service, there's an option available to ignore some duplicated data which takes little effects from the error.

<batch>
<db ignoredup="true"/>
</batch>

If the value of ignoredup is true, ignore any duplication error. </translate>

<translate>

Overview

The standard to define the types of the service is the target system. File batch service means when the target system is sending file data. File batch service comprised of File to File, File to DB, File to other(file standard)

Transferable Data

The transferable data as a file is as follows. These are using FTP supported by ISM excepts the custom method.

Category Description Note
Number of Files Transferable files are more than one. If the file are multiple, process it using wildcard.
File Location Connect to FTP and it should be on the relocatable location. Relocatable location include absolute path. If not, limit it on the cases of the absolute path's available.
File Type Ascii data or binary data Define whether ascii/binary for each system. It cannot be used as file based.
File Size FTP Transferable file size Transferable in the coverage of FTP. If the file is too big, longer timeout than the time required to sending file should is needed.

FTP Connecting Method

It supports two different way below.

Passive The way the server doesn't work when the FTP Client is exchanging the data
Active The way the server is running when FTP Client is exchanging the data

Supported FTP Flatform

  • Unix
  • Windows
  • OS/2
  • OS/400
  • MVS
  • VOS
  • VMS

Supported Encoding Type

ISM exclusively supports Unicode type. No supports guaranteed for fixed length of data process using query handler of other Korean encodings.

  • There's an example which used MS949 on AIX 5.3.

Duplicated File Transfer Processing Option

  • Error Occurrence
    • If there's a file have the same name, the error occurs.
  • Overwriting File
    • If there's a file has the same name, overwrite it.
  • Adding File
    • If there's a duplicated file, append the current file to the previous one.
  • Reloading
    • If the transfer has halted from an error, try to reload it and retransfer it from the point which has been halted.

File processing option after the file transfer

  • Move
    • Move the source file to another directory after the transfer.
  • Delete
    • Delete the source file after the transfer.

File - File Batch Service

Overview

When the file transfer is required by the source system, the service send the file registered by rule or request parameter to the target system.

Service Request Protocol

When the batch service is requested by the batch agent, defined and call the source and target files. If both are not assigned, follow the transmission protocol registered on rule. Refer the service request protocol on batch agent installation guide.

FTP Connection Protocol

Both of the source and target system connects to the rule registered server by FTP. If there's a lot of server is registered, try to reconnect to the another server after five attempts. If the connections to the all server fails, stop trying.

FTP Connecting Methods - Active/Passive

Define the unit as file application. When the application is created, the default value is active. If there's no value on set on runtime, use the passive method as default.

File Transfer Mode - binary/ascii

Define the unit as integration service. If there's no value on set on runtime, use ascii as default file transmission mode.

Verification of the size of file

Compare the size of file of the object file to send and the sent file. To check the size of file, current FTP account should have the permission of Dir. The information of the size of file is extracted from the results of list command of FTP by FTP parser. If there's no permission of Dir, cannot inquire the list of files. If the size of file cannot be verified, The following value must be set on ism.xml.

<batch>
<file checkSize=”false”/>
</batch>

Date Output Form

Define the unit as application. Data Output Form is used to extract the file information from FTP parser. FTP parser analyze the returned string in units of string, the delimiter of the analysis of parser is space. The number of spaces are changed to the data output form so that the form must be set by numbers.

  • FTP Data Output Form Verification Protocol

Direct connection to the source/target system. Move to the root directory defined on rule. Execute Dir command on the target directory.

$>ftp deai
Connected to deai.
220 deai FTP server (Version 4.2 Thu Jul 12 13:39:06 CDT 2007) ready.
User (deai:(none)): bwadmin
331 Password required for bwadmin.
Password:
230-Last unsuccessful login: Tue Jul 22 10:32:54 KORST 2008 on /dev/pts/57 from 192.7.106.176
230-Last login: Tue Jul 22 13:30:04 KORST 2008 on ftp from ::ffff:192.7.105.13
230 User bwadmin logged in.
ftp> cd ISM1.1
250 CWD command successful.
ftp> dir
200 PORT command successful.
150 Opening data connection for /bin/ls.
total 265384
-rw-r-----   1 bwadmin  bwadmin     8552836 Jul 02 17:21 BWMonitorPatch.jar
-rw-r--r--   1 bwadmin  bwadmin          35 May 12 2007  Licence.txt
drwxr-xr-x   2 bwadmin  bwadmin         256 Feb 25 19:40 Uninstaller
drwxr-xr-x   6 bwadmin  bwadmin         256 Apr 22 10:02 ba
drwxr-xr-x   6 bwadmin  bwadmin         256 Apr 22 10:02 batch_agent
drwxr-xr-x   4 bwadmin  bwadmin        4096 Jun 17 20:47 bin
drwxr-xr-x   3 bwadmin  bwadmin         256 Jul 02 16:41 bwmonitor
drwxr-xr-x   3 bwadmin  bwadmin         256 Jul 02 16:41 bwmonitor.backip
drwxr-xr-x   5 bwadmin  bwadmin        4096 Jul 15 13:30 data

<!--T:21-->
==> The bolded underlined part  is the date output form. The form expressed above is the default FTP date output form.

ftp data output form default form is MM DD HH:mm.

data form e.g)

drwxr-xr-x   5 bwadmin  bwadmin        4096 7M 2D 13:30 data

output form format : MM DD HH:mm

Custom Handler Definition

Define the custom handler for file data transmission. Define it when other methods are used besides FTP on file transfer. Custom handler is defined by the system.

<batch>
<file system_id handler=””/>
</batch>

File Transfer Rules on File Transferring

Absolute Path Allowance Status

Absolute Path can refer to the root directory of the system according to the authority of the FTP account. Because it could effect to the system security, determines whether to allow the root directory or not following the policy.

<batch>
<path absolute=”true”/>
</batch>

If true, allow absolute path. If false, do not allow the absolute path. If it is supposed that the path of the registered source or target file is ‘/snd/input’ and the input source filename is ‘/root/input.dat', the processing mode is as follows.

Allow the absolute path Do not allow the absolute path
/root/input.dat /snd/input/root/input.dat

Since the absolute path is allowed, ignore the registered path and use the one already registered. If not, process the file attaching the input path to already registered path.

Source File Transfer Rule

Regulation Category Description Processing Status Processing Mode
Delete the source file after the transmission completed Delete the file of the source system after the transmission completed Permission Delete the file of the source system after the transmission completed.

If the source file has a wildcard, delete all the files corresponding to wildcard.

Target File Transfer Rule

Rule Category Description Processing Status Processing Mode
Transfer the file in source filename Transfer the source filename as the target system's filename. Permission The filename generated on the target file is identical to the filename of the source file, but the directory information of the source file isn't used. Since the source filename is used, do not use the input file name on request or rule registered target filename.
Define the target filename and transfer Define the target filename and transfer on request. Permission Use the filename defined by request and transfer

Use the directory information of the target defined by the request

If no directory is defined, use the target directory registered on rule.
Duplicate the target file If the target file already exist, duplicate the If the target file is already existed, overwrite on it. Permission  
Adding target file If the target file is already existed, add it to previous file. Permission  
Define the privilege(mask) of the target file Define the privilege of the target file. The privilege information is defined by numbers. Ex) rw-rw-rw : 666 Permission After the transfer the target file, change the authority information to the defined value.

Source File Definition Rule

The rule defining the source file as follows. The rule applied equally to File - DB Batch.

To explain the defining rules below, fix the directory and file name as follows.

  • File location - /snd/biz/
  • input data name – in.dat
  • input rule data name – in_r.txt
Input rule Permission status Processing type
File name Directory File name
/snd/biz/in.dat /snd in_r.txt Permission Process by input file

Connect to FTP and get the file by input file name

get /snd/biz/in.dat
snd/biz/in.dat /snd in_r.txt Not admitted Even though the same directory is repeated, process it to be attached to the the path registered on rule because there's no absolute path.

Since there's no pertinent directory, the process fails.

get /snd/snd/biz/in.dat
biz/in.dat /snd inpu_r.txt Permission Because there's no absolute path on input file, process it to be attached to the the path registered on rule. get /snd/biz/in.dat
in.dat /snd in_r.txt Because there's no absolute path on input file, process it to be attached to the the path registered on rule.

Since there's no pertinent directory, the process fails.

get /snd/in.dat
/snd/biz/in.dat /snd/biz in_r.txt Permitted In permission of the absolute path

get /snd/biz/in.dat When the absolute path isn't admitted

get /snd/biz/snd/biz/in.dat
No input /snd/biz in_r.txt Not admitted Combine the absolute path and the filename registered on rule and process it

Since the file isn't exist, the process fails.

get /snd/biz/in_r.txt
*.dat /snd/biz in_r.txt Permission Combine the absolute path and the filename registered on rule and process it get /snd/biz/*.dat
No input /snd/biz *.dat Permission Combine the absolute path and the filename registered on rule and process it get /snd/biz/*.dat

Target File Defining Mode

The defining mode below only applies on the transfer rule which isn't using the source file name.

To describe the defining rule below, fix the directory and filename as follow.

  • File directory - /rcv/biz/
  • Input filename – in.dat
  • Rule registered filename – in_r.txt
Transfer filename Rule information Permission status Processing mode
Filename Directory
/rcv/biz/in.dat /rcv in_r.txt Permission Process it according to the input file.

Connect to FTP, and transfer file in the input filename. put /rcv/biz/in.dat

rcv/biz/in.dat / rcv in_r.txt Not admitted Even though the same directory is repeated, process it to be attached to the the path registered on rule because there's no absolute path.

Since there's no pertinent directory, the process fails.

put /rcv/rcv/biz/in.dat
biz/in.dat / rcv inpu_r.txt Permission Because there's no absolute path on input file, process it to be attached to the the path registered on rule. put /rcv/biz/in.dat
in.dat / rcv in_r.txt Permission Since there's no pertinent directory, the process fails. put /rcv/in.dat
/rcv/biz/in.dat /rcv/biz in_r.txt Permission Allow the absolute path

put /rcv/biz/in.dat Do not allow the absolute path

put /rcv/biz/rcv/biz/in.dat
No input /rcv/biz in_r.txt Permission Combine the absolute path and the filename registered on rule and process it put /rcv/biz/in_r.txt
*.dat /rcv/biz in_r.txt Not admitted If the input file is wildcard, only the source filename is available.
No input /rcv/biz *.dat Not admitted If the input file is wildcard, only the source filename is available.

Service Definition

Source File Service Definition

Define the directory to fetch the source file. Directory is indispensable information, if there's none, define the current directory(./). Define the source filename. If there's no filename defined, it should be inputted on batch service request. Define the status whether to delete the source file or not after the transfer is completed.

Target File Service Definition

Define the directory to save the transfer object file. Directory is indispensable information, if there's none, define the current directory(./). Define the target filename. If there's no filename defined, it should be inputted on batch service request, or the source file usage status should be on. Define whether to use the source filename or not. Since the source filename is used, even if the target filename is defined, it is sent by the source filename. Define the processing mode when the target file existed in the target defined directory.

Processing modes are the three below.

  • If it exist, error occurs.
  • If it exist, overwrite on it
  • Add it
  • Subsequent write on it

File Data Structure Definition

If there's a conversion required for the input file data, register the information for data parsing. Input file data structure can have multiple field groups.

Define the information below when the parsing of the input file data is required.

Input data type Field delimiter Record delimiter
Fixed length data X O
Delimiter data O O

Fix the delimiter as follows for convenience.

  • Field delimiter - ‘|’
  • Record delimiter - ‘\n’
Field delimiter Record delimiter Field length definition Permission status Processing mode
No input No input 0 and fixed length mixed Not admitted Since there's no field delimiter, the try of data parsing fails because the field length value isn't accurate.
No input No input Fixed length Permission Data parsing according to the field length.

Since there's no record delimiter Data number * Field group length(fixed length)

is the actual size of the file.
No input \n Fixed length Permission Data parsing according to the field length

Since there's record delimiter Data number * (Field group length + Record delimiter)

is the actual size of the file.
| No input Fixed length Permission Data parsing according to the field delimiter

Since there's no record delimiter Field delimiter number / Field number within the field group

is the actual size of the file.
| \n Fixed length Permission Data parsing according to the field delimiter

Since there's record delimiter The number of the record delimiter

is the actual processing object data number.
| \n 0 and fixed length mixed Permission Data parsing according to the field delimiter

Since there's record delimiter The number of the record delimiter

is the actual processing object data number.

Target Filename Management Class

In sending file, the target filename can be generated in a specific rule. On definition of the file service, the filename class can be defined so that can be changed in every the batch service execution. File name Management Class inherit the TargetFileNameGenerator and be implemented. The contents which has to be implemented in filename management class is the code which replaces the parameters included in the filename. Attach '#' to the both sides of the value to be declared as a parameter.

  • Ex) TGT_FILE.#DATE#.#COUNT#

For this example, the file is generated by taking DATE and COUNT as the parameters. Filename Management Class is implemented to return the proper value for each parameter. The convert() method of the Filename Management Class is called by each parameter unit. In the example, because the parameter is two, call the convert() method twice.

convert(“DATE”);
convert(“COUNT”);

Filename Management Class is implemented as follows.

import com.ism.common.file.TargetFilenameGenerator;

<!--T:50-->
public class FileNameGenerator extends TargetFilenameGenerator {

	<!--T:51-->
public String convert(String exp) {
                      return “XXX”;
	}
}

Implemented class is included to the class path so that execution process can refer it, or included in ism_custom.jar.

Service Model Definition

Form the interface services as the source and the target, and define the routing rule and mapping rule in the way the request is sent from the source to the target. Define the service flow from the source service to the target service by the service model. Determines whether to sequential process or parallel process in the definition of the service flow. The parallel process isn't available on batch service.

Source Service

Properties Description
Pattern

System Interface Pattern Set the ACK transmission.

Routing

Properties Description Accept Value
Routing Determining Method Find the way to search the target service. All
Routing Input Field When the routing determining method isn't All, define the input field.  
Routing Pattern Value Define the assigned input field value, pattern, or the result of the calculation. Send the request to the target service which has the same value set.  
Service Mapping Define the conversion rule between the source service and the target service Mapping Rule
Error Mapping Defines the conversion rule when the error response returned from the target service.  
Target Service Define the target service to send the request according to the routing pattern value. Target Service

Target Service

Properties Description
Pattern

System Interface Pattern Set the ACK transmission.

Etc.

Batch service does not support the parallel processing.

Integration Service Definition

Integration Service defines the source and the target system to the service model result, and other rules on batch service execution.

Other information besides the processing flow as the batch integration service is as follows.

  • 2PC Status
    • If it's not the 2PC transaction, separate the source interface process and the target interface process.
  • Message Verification Status
    • Analyze the input message by the field and apply the verification condition to verify. If there's no verification condition, verify the its length and type.
  • Pre-process
    • The process which has to be done prior the file transmission.
  • Post-process
    • The process which has to be done after the file transmission.
  • 1 time verification number
    • 0 when there's no File – File conversion
  • Transmission Method
    • Agent direct
      • In transferring a file with no conversion, set Agent direct method.
    • Direct Transmission
      • When it is not easy to access from the Agent because of the security problem like firewall with no conversion, set ISM direct transmission.
    • Indirect Transmission
  • Rollback type
    • Whole – If a single fails, rollback the whole.
      • The range of the whole means the the data per 1 time verification number.
    • Failed data – Even if there's a failed data, continue its progress.
  • Standby timeout
    • The period of time that the batch manager waits until the source interface process generate the data verification result file.
  • Transferable file types
    • Binary
    • Ascii
      • Setting on ascii, carriage return(\r) can be deleted or stored according to the operating system.
  • File delimiter class
    • The custom class to divide the file of Fiie – DB service per 1 time verification number unit.
      • FIle with no conversion – not available on file service.
      • Defined when it cannot be processed by basic division class.

Define the object system to execute the source and target interface services defined on the service model, and the timeout value to be used on the interface with the pertinent systems. The timeout value is only available on file interface.

File-DB Batch Service

In the case sending data form file to DB, there should be the transaction unit defined for transaction process. The transaction unit is the same as the data inquiry unit number(fetch number).

If the size of the file data(number) is bigger than the transaction unit, divide the file data to the transaction unit.

File Separator

Because it isn't possible to know whether the size of the file data which will be inputted on DB is bigger than the transaction unit or not, fetch the file and separate it. On file separation job, divide the file according to its record size(Row) registered on rule.

File Separation Methods

Field Delimiter Record Delimiter Support Status Note
In use In use Supported No limits for the length of field delimiter. No limits for the record delimiter.
In use None Supported
None(length) In use Supported
None(length) None Supported The file which the contents is written in a single line viewed on editor because it has no record delimiter.

In the case the data structure registered on rule and the actual data structure is different, use Custom File Separator to separate the file. Custom seperation class is defined as an integration service unit.

Target DB Supported Calculation

  • insert
  • update
  • upsert1(update and not exist, then insert)
  • upsert2(insert and duplicated, then update)

Transaction is only supported by transaction unit. No transaction process per item is supported.

Source DB Query Generation

SQL query to input data to the source DB is generated on ISM. The input data for query generation of ISM are three as follow.

  • Table name
  • Data structure
  • Operation type

ISM generated or supported SQL query's forms as follow.

  • User defined query
  • SQL Function
    • Define the default value of Process Mapping and process it
    • In the case the input data should be replaced within the SQL function, use the transform function
    • It should be defined that the pertinent field is SQL Function on the field group definition
  • NULL Data
    • When the input data is null, input the null data
    • In the case the input is null, but no null is available, use the transform function to generate the basic data.
  • Table name dynamic change
    • In the case the table name is chanded dynamically, use the Custom Table name Management Class to generate the table name.
    • In ISM, use the Custom Class to generate the table name and replace on SQL query.
    • There should be the table name(#TABLE_NAME#) defined to be replaced.

Supported Data Type

  • Number
  • Date
  • Timestamp
  • Char
  • Varchar
  • Long
  • Float
  • Double
  • CLOB
  • BLOB

Date Type Processing Rule

In the case below, there should be a date form defined to process the date type. The form designed by format is the date type supported by Java. On description, the date form is fixed below for convenience. Date form - yyyyMMdd

Source Data Target Data Processing Mode
Type Format Type Format
Character(Including Char, Varchar) Date yyyyMMdd On inquiry, suppose that the data fits on yyyyMMdd form and convert it to Date and process it.
Date yyyyMMdd Date yyyyMMdd >The result of the data is processed as String, as the result, String should be fit on yyyyMMdd form. On the input on the target, it is converted to yyyyMMdd Date type.
Date yyyMMdd Chracter The result of the data is processed as String, as the result, String should be fit on yyyyMMdd form.

Service Definition

Source Service Definition

Follow the source service definition of File-File batch service.

Target Service Definition

Target Service defines the DB calculation to be executed when the data is applied Because the data reflecting SQL query is generated automatically, only define the reflecting target table name. In the case the data reflecting table should be changed according to the executing time of the process, define the table name management class. If the data reflecting Query cannot be generated by the information defined by ISM, define Custom Query Handler.

Data Structure Definition

Source Data Structure Definition

Follow the file data structure definition of File-File batch service.

Target DB Data Structure Definition

Target DB transfer data structure cannot have multiple field groups. Target DB transfer data must be the delimiter length data. There's no need to input both of field delimiter and the record delimiter. The structure definition of date type follow the processing rule of File-DB batch's Date type processing rule. Define whether to use SQL Function on the field group when the SQL Function is required on the generation of target SQL query If there's update query generation is required, define the key field on the definition of the field group.

Definition of the Service Model

Form the interface services as the source and the target, and define the routing rule and mapping rule in the way the request is sent from the source to the target. Define the service flow from the source service to the target service by the service model. Determines whether to sequential process or parallel process in the definition of the service flow. The parallel process is not used on batch service.

Source Service

Properties Description
Pattern

System Interface Pattern Set ACK transmission.

Routing

Properties Description Value
Routing Determining Methods Determines the way to find the target service. All
Routing Input Field If the routing determining method isn't All, define the input field.  
Routing Pattern Value Define the value of the designated input field, pattern, or the result value of the calculation. The same value is sent to request the target service.  
Service Mapping Define the conversion rule between the source and the target service. Mapping Rule.
Error Mapping Defines the conversion rule when the error response returns from the target service.  
Target Service Define the target service to send the request according to the routing pattern value. Target Service

Target Service

Properties Description
Pattern

System Interface Pattern Set the ACK transmission.

Integration Service Definition

Integration Service defines the source and target system on service model result, and the rules of other Batch Service on run Other information besides processing flow for Batch Integration Service is as follows.

  • 2PC Status
    • If it's not 2PC transaction, the transaction between the source interface process and the target interface process is seperated.
  • Message Verification Status
    • Analyze the input message per field and apply the verification condition to verify. If there's no verification condition, verify the length and type.
  • Post Process
    • The process has to be handled before DB data transmission
  • Post Process
    • The process has to be handled after DB data transmission.
  • 1 time inquiry number
    • The default value is 0.
    • If it is set to 0, the unit of process is set to 10000
  • Transmission Method
    • Indirect Transfer
      • Only indirect transfer is available.
  • Rollback type
    • The whole – If even a single case fails, rollback the whole.
      • The range of the whole is the 1 time inquiry number of data.
    • Failed data – progress it even if it has failed data.
  • Standby Timeout
    • The time the batch manager standby until the source interface process generate the file of data verification result.
  • Transfer file type
    • Binary
    • Ascii
      • Setting on ascii, carriage return(\r) can be deleted or stored according to the operating system.
      • When the source server's OS and the server of ISM is different(e.g. Window verse Unix), reflects these on record delimiter.
  • File delimiter class
    • The custom class to divide the file of Fiie – DB service per 1 time verification number unit.
      • FIle with no conversion – not available on file service.
      • Defined when it cannot be processed by basic division class.

Define the object system to execute the source and target interface services defined on the service model, and the timeout value to be used on the interface with the pertinent systems. The timeout value is only available on file interface. </translate>

<translate>

Overview

If there's a request of table data transfer from the source system, ISM inquires the data in rule defined query and transfer it to the target system. DB batch service is divided into DB-DB service and DB-file service.

Transaction Management

Transaction is supported by transaction unit. The process per transaction isn't supported.

Transferable Data

Transferable data by the DB batch method is as follows.

Category Description Note
Data inquiry method Data in able to inquiry in a single query Unable to process when the data inquiry is required on multiple table but cannot join.
Processing Object Data Type Processable Data Type Only ascii data is available Cannot process the data including binary data
Processing object data size No limit of processable number of data in one a single batch. If the number is too great, the transaction is processed according to rule defined processing unit(the number of fetch).

When the size of the processing object data is too great, the batch agent can have timeout. Therefore, the batch agent should have separated verification method of processing result without delaying.

DB connecting method

Source DB Approach Method

Defines JDBC type on rule definition, and the approach method is limited to JDBC supported types. No need to manage the transaction because the transfer is used only on data inquiry.

Target DB approach method

In the case of XA transaction, approach it using the Adapter/Datasource which is provided by the platform.

  • JBoss
    • XA Datasource
  • BW
    • RDBMS Connector

(*) If it's not XA transaction, approach it in the same way of sending using ISM registered information

Supported database

The database supporting target DB on ISM is as follows.

  • Oracle
  • DB2
  • MS-SQL
  • Informix
  • Sybase
  • Mysql
  • Teradata

JDBC types supporting the approach to target DB are as follows.

JDBC TYPE Description Oracle MS-SQL Infomix DB2 Others
1 JDBC-ODBC Bridge O(Convert it to 4) O(Convert it to 4) O(Convert it to 4) O(Convert it to 4) O(Convert it to 4)
2 Native-API Driver specification O(OCI) O(app)
3 Network-Protocol Driver
4 Native-Protocol Driver O(Thin) O O O(net) O

DB – DB batch service

Service definition

Source Service Definition

Register SQL query to be used on data inquiry on the source service. If the data verification object table must be modified by the condition of initialization of the serial number, defines the table name management class. Defines the unit of data processing(the fetch number). It means the unit of transaction. If the processing object data number is greater than the fetch number, divide and process into multiple times. If the data inquiry method cannot be handled by input verification query, defines the Custom Query Handler. Custom Query Handler is defined with DB Service Definition.

Target Service Definition

Follow the definition of target service of File-DB Batch service.

Data Structure Definition

Source DB Data Structure Definition

  • Input DB Data Structure cannot have multiple field groups.
  • DB input data must be the data delimiter length of data.
  • Not both of field delimiter and record delimiter don't have to be entered.

Structure definition of date type follow the rules of Data type processing rule of File-DB Batch

Target DB Data Structure Definition

  • Target DB transfer data structure cannot have multiple field groups.
  • Target DB transfer data data must be the data delimiter length of data.
  • Not both of field delimiter and record delimiter don't have to be entered.

Structure definition Structure definition of date type follow the rules of Data type processing rule of File-DB Batch

  • When SQL function is necessary on query generation, define the status of SQL Function on field group.
  • The key field must be defined on filed group definition when update query generation is required.

Service Model Definition

Compose interface services to the source and target, and define routing rules, mapping rules when the request is sent from the source to the target. Define the service flow of the source service to the target system by service model. Set whether the service sequential processing or parallel processing on service flow definition. Parallel processing isn't used on batch service.

Transfer Service

Properties Description
Pattern

System interface pattern Configure ACK Transfer.

Routing

Property Description Allowable value
Routing Determining Protocol Determines the way to find the target service. All
Routing Input Field Defines the input field when routing determining protocol doesn't correspond to All.  
Routing Pattern Value Defines the value of assigned input field, pattern, the result of calculation. The same value transfer the request to the target system which has the same valued set.  
Service Mapping Defines the conversion rules between the source and target service. Mapping rule.
Error mapping Defines the conversion rules when the error is returned from the target service.  
Target Service Defines the target service to send the request by routing pattern value. Target Service

Target Service

Properties Description
Pattern

System Interface Pattern Set ACK Transfer.

Integration Service Definition

Integration service defines the source and target systems to execute defined by model service, and defines the rules on other batch service execution.

Other information besides processing flow for Batch Integration Service is as follows.

  • 2PC Status
    • If it's not 2PC transaction, the transaction between the source interface process and the target interface process is seperated.


  • Message Verification Status
    • Analyze the input message per field and apply the verification condition to verify. If there's no verification condition, verify the length and type.


  • Previous Process
    • The process which has to be done before the DB data transmission.
  • Post Process
    • The process which has to be done after the file data transmission.
  • 1 inquiry number
    • If it is set to 0, the unit of process is set to 10000
  • Transmission Method
    • Only indirect transfer is available.
  • Rollback type
    • The whole – If even a single case fails, rollback the whole.
      • In the case of file, the whole rollback is the only option.
    • Failed data – Continue to process even if there's any failed data.
  • Standby timeout
    • The time the batch manager standby until the source interface process generate the file of data verification result. Standby 60 seconds.
  • Transfer file type
    • n/a.
  • File delimiter class
    • n/a.

Define the object system to perform the transmit-transfer interface service predefined on the service model, and the timeout value to be used on the interface with pertinent systems. Timeout value is used only on file interface.

DB - File Batch Service

Service Definition

Source DB Service Definition

Source DB service definition follows the source service definition(ISM:BatchDB#Source Service Definition) of DB-DB batch service

Target File Service Definition

Target File Service Definition follows the definition of Target File Service Definition(ISM:BatchFile#Target File Service Definition) of File-File Batch Service.

If the number of the process target data is more than 1 time inquiry number unit, configure the duplication process option of the file service to overwriting or adding.
Even if it is set to overwrite, adding mode is operated automatically in the condition of sending multiple files separated.

Data structure definition

Source DB Data Structure Definition

The Source Data Structure Definition follows the Transfer DB Data Structure Definition(ISM:BatchDB#Source DB Data Structure Definition) of DB-DB Batch Service.

Target file data structure definition

For the target file data structure definition, follow the file data structure definition(ISM:BatchFile#File Data Structure Definition) of file-file batch service.

Service Model Definition

Defines routing rules, mapping rules when the interface services are composed of the source and target, and when the request is sent from the source to the target. The Service Model defines the service flow starting from the source to the target. Set whether the service flow definition is sequential processing or parallel processing. Parallel processing isn't used on Batch Service.

Transfer Service

Properties Description
Pattern

System Interface Pattern Set ACK Transfer

Routing

Properties Description Allowable Value
Routing Determining Protocol Determines the way to find the target service. All
Routing Input Field When Routing Determining Protocol isn't All, assign the input field.  
Routing Pattern Value Assigns the value of assigned input field, pattern, processed result value. The same value send the request to the target service.  
Service Mapping Defines the conversion rules between the source service and the target service. Mapping Rule.
Error Mapping Defines the conversion rule when the error is returned from the target service.  
Target Service Defines the target service to request per routing pattern value. 수신 서비스

Target Service

Properties Description
Pattern

System Interface Pattern Set ACK Transfer.

Integration Service Definition

Integration Service defines the source and target system on service model result, and the rules of other Batch Service on run.

Other information besides processing flow for Batch Integration Service is as follows.

  • 2PC Status
    • If it's not 2PC transaction, the transaction between the source interface process and the target interface process is seperated.
  • Message Verification Status
    • Analyze the input message per field and apply the verification condition to verify. If there's no verification condition, verify the length and type.
  • Post Process
    • The process has to be handled before DB data transmission
  • Post Process
    • The process has to be handled after DB data transmission.
  • 1 inquiry number
    • If it is set to 0, the unit of process is set to 10000
  • Transmission Method
    • Only indirect transfer is available.
  • Rollback type
    • The whole – If even a single case fails, rollback the whole.
      • In the case of file, the whole rollback is the only option.
  • Standby Timeout
    • The time the batch manager standby until the source interface process generate the file of data verification result. Standby 60 seconds.
  • Transfer file type
    • n/a.
  • File delimiter class
    • n/a.

Define the object system to perform the transmit-transfer interface service predefined on the service model, and the timeout value to be used on the interface with pertinent systems. Timeout value is used only on file interface. </translate>

Deferred Service

<translate>

Overview

Deferred service is used to send DB data of the source system to the target system in real time. Deferred service follows the preassigned process interval, and the interval is adjusted according to the data number to be processed. To apply deferred service, the data structure of the target DB should include the serial number field. Deferred service executes its operation through the serial number, so the processing method depends on the way to manage the serial number. Serial number field should be included on data verification result, and the pertinent field must be assigned to key field(ISM:DeferredDB#Source DB Data Structure Definition).

Deferred Runtime Configuration

Deferred runtime comprises of ISM agent, deferred manager, and the interface process executing the interface between each source and target systems. Deferred service is able to be configured to either master-backup mode or active-active mode.

  • Master-Backup Configuration
    • Deferred service is executed exclusively on master server. In the case of failure on master server or deferred manager of the server, run the deferred manager of backup server, and execute the deferred service.
  • Active-Active Configuration
    • Deferred service is executed on either servers. However, the same deferred service cannot be executed in both servers. In the case of one side server's failure halt the deferred service of the server.

Deferred service is started and controlled by ISM agent. ISM Agent request the job execution according to the job cycle, and the deferred manager execute the requested job by the source and target interface processes and manage the transaction. ISM agent is the ISM common process existing in the same server or domain.

When a failure occurs on the way of the service at the transmission process, the deferred manager of master server executes the service by sending request to transmission process of backup server. The deferred manager of master server determines the location of the target interface process according to the location of the source interface process. The interface between the source and target process is executed regardless of where the source process located only when the shared disk is set between master and backup server, and if they are accessible to both servers. For example, the source interface process is able to be configured to executed in master server, and the target interface process is to executed on backup server.

ISM Agent

Deferred Service

ISM agent controls the deferred job, gives directions to data inquiry/application. If each result of the process succeed, proceed to the next step. If it fails, rollback the process. It also manage the working directory(serial number) and conduct the process after the current position when the next request is made. It also manage the location(the serial number) which has processed so far, and process since then when the next job request is received. The processed information to the current location is included in the transaction range of the deferred service.

Interface Process

Interface Process executes the role of getting the data or sending the data.between the source and the target systems. Transmit-Receive process is separated by the role in the service, each interface process execute both of the roles of the source and the target.

Common Process

Common process is registrable similar to the common process of batch service. If the pertinent service assign the alternative system according to the system registered to ISM, the deferred manager finds the alternative system process not the current pertinent system and send the execution request. Agent service is defined to each deferred source/deferred target type. In the case of file system, the target interface is able to be processed by agent system. In the case of DB system, the source interface is able to be processed by agent system.

Deferred Service Supported Interface Types

The interface types supported in deferred service as described below.

  • Source System
    • Database
  • Target System
    • Database
    • File

When the user wants an additional interface type, custom source process or target process should be implemented. The way to send data to the target system by service call can be implemented by custom interface. </translate>

<translate>

Serial Number Management

The source table or target table can be changed by the serial number initializing condition. These are the methods of initializing the serial number provided by the deferred service.

Serial Number Initialization Condition

  • Not in use(unconditionally Increases)
    • Since there's no serial number initialization, the serial number continues to increase.
  • Change by the system date.
    • If a system date is modified, initialize the serial number.
  • Change by the business date
    • If a date is modified in a specific condition, initialize the serial number.
  • Change by the maximum serial number.
    • Initialize the serial number if it reaches the maximum value.
  • Change by the job completion value.
    • If a a value of a specific field is correspond to the condition, initialize the serial number.

Not in use(unconditionally increases)

The serial number continues to increase.

Change by System Date

When a system date is changed, the serial number is initialized by the system date. The changeable information on the serial number initialization is as below. These are applied to all initialization conditions.

  • Source table name
    • The table name is changed by source table name management class. When the source table name included on query is registered to the rule, include #TABLE_NAME# parameter to replace it.
  • Target table name
    • The table name is changed by the target table name management class. When the target table name is registered on rule, include #TABLE_NAME# parameter to replace it.
  • Date
    • The information is included in data verification condition.
    • Define the date management class and include #DATE# on inquiry query, then it replace the execution result of the date management class on date changing to verify the data.
    • If additional date management class isn't defined, use the system date instead.

Change by Business Date

Define the date management class to initialize the serial number. If there's no date management class, use the system date as the standard. By verification of the date of the data process, if a different date is returned not the current date, initialize the serial number. Configurable information on initialization of the serial number is the same as the change condition of the system date.

Change by Maximum Serial Number

When the serial number of the inquired data reaches to the maximum serial number, initialize the serial number. By comparing the value of the column registered as key field on data verification, if there's the maximum serial number included on the inquired data, initialize the serial number. Configurable information on serial number initialization is the same as the change condition of the system date.

Change by Finishing Job Value

If a specific field value is corresponding to the finishing job value, initialize the serial number. The configurable information is the same as the change condition of the system date.

Date Management Class according to the condition of the serial number initialization

Date management class always have to return the current date. Refer to Custom Handlers Guide(ISM:Customs#Deferred Date Management Class) to look up how to implement this.

The Point when the Custom Date Management Class is requested

  1. Initialization of the serial number by system date
    • No objects.
  2. Initialization of the serial number by business date
    • When a job starts
      • Register the job.
    • When the job is cleared
      • Register the first date.
    • When the date is inquired
      • If the result of the data is 0, call to verify the business date change status.
    • When the data is applied
      • Call to compare the next business date and the current one after the data is applied.
  3. Initialization of the serial number by maximum value
    • When a job starts
      • Register the job.
    • When the job is cleared
      • Register the first date.
    • When the data is inquired
      • Do not call.
    • When the data is applied
      • Call to aquire the next date after the data is applied and it reaches to the maximum value.
  4. Initialization of the serial number by delimiter
    • When a job starts
      • Register the job.
    • When the job is cleared
      • Register the first date.
    • When the data is inquired
      • Do not call.
    • When the data is applied
      • Call to aquire the next date after the data is applied and it meets the delimiter.
  • If the first date is registered or on initialization, the null is sent to the date information.
  • If the date management class isn't defined at the first job starts, do not call until it reaches to the condition of initialization.

Initialization Number Automatic Generation

When no column exists corresponding to the serial number on the source table, a serial number can be generated by assigning a serial number column. The serial number column could be the column already exists, if not, additional column has to be added. The serial number is set according to the order the data is inquired by normal select query. In automatic generation of the serial number, the used column is a serial number column and a date column. If there's already a date column, the serial number is initialized by the system date unit.

Deferred Period Management

Deferred Period Management is determined by the Fetch Interval registered on rule.If no inquiry period is defined, use the default 30 seconds as the interval. If the data number is corresponding to the rule defined Fetch Count on data verification, consider it there's more data exist and adjust the date inquiry period to 1 second automatically. If the data number is less than Fetch Count after the inquiry, return it to the Fetch Interval registered on the rule..

  • For this, there must be Fetch Count registered on rule. If there's no Fetch Count defined, the actual process take the maximum number 1000 as its standard, but it doesn't change the Fetch Interval even if the inquiry result date reaches the 1000.

Sequential Process

Deferred service execute the sequential process if there are multiple target systems which has to reflect the inquired data from the source to process it as a single transaction. Sequential process process the data synchronously and the sequential process is the basic processing flow of the deferred service. Sequential process once inquire the data and reflect it to multiple target systems in order and process the next data.

Parallel Process

Among the data which has to be processed by the deferred service, there's data which has too much data and high requirements so that it can cause process delay by the sequential process. In this case, the parallel process can process this kinds of data. In parallel process, set the checkpoint to ensure the order of the data. Parallel process only able to permit a single target system. Parallel process handle the data asynchronously unlike the sequential process.

Setting the Checkpoint

Checkpoint is used to check the reception before it is applied to the target system; it has three locations as follow.

The location of the checkpoint Setting Description
Regardless of the order 0 Process the data which each process has received regardless of the order
Before the data application starts 1 Load the inquired data to send it to the target system and check the order.
Just before the data application 2 After completing the conversion task of the data and check the order before applying the data to the target system.

If the target system is file, check the order before sending the file to the target system after the conversion.

After the application of the data 3 Check the order after applying the data to the target system.

If the target system is DB, check the order before committing after the data application. If the target system is file, send the file and check the order.

Checkpoint is set on ism.xml and it is applied to the whole deferred service. To apply this to the whole deferred service, configure the setting as follows.

<deferred>
<multisequence checkpoint="2" committimeout="30000"   handler="com.ism.deferred.process.DefaultSequenceHandler" />
</deferred>

To apply the checkpoint to a specific service, configure the setting as follows.

        <multisequence checkpoint="2" committimeout="30000" handler="com.ism.deferred.process.DefaultSequenceHandler">
            <integrationservice_id checkpoint="0"/>
        </multisequence>

The time waiting for the data to be processed right before the order uses committimeout value(millisecond) set on ism.xml, if it isn't defined, use the default value(60 seconds). In the parallel process, it segments the process target data into continuous sections. There shouldn't be missing number in this continuous numerical order. The continuous section number use the basic section division class(com.ism.deferred.process.DefaultSequenceHandler) if it isn't defined separately.

Post Task

When the following work is required after the the job in the deferred section is completed, the post task can be defined and used. The post task can be used to execute the script sending the file sent from DB-File service to the target DB, or DB operation to notify the file transmission, or etc. Available types and usages of the post task is the same as the task of batch service.

The post task of the deferred process is executed within the same transaction unlike the batch process. Since there's no guarantee that it can be executed by the same session, it is not possible to manipulate the data sent from DB-DB deferred type to the target system.

Post Task Parameter

The parameters available on the post task are as follow.

Name of the parameter Description
TGT_FILE_NAME Target filename It includes directory information.
SRC_TABLE_NAME Source table name
TGT_TABLE_NAME Target table name
PROC_START_TIME The time when the task starts. The time when the data verification starts
PROC_END_TIME The time when the task is completed. The time when the data reflection is completed
SERVICE_ID Integration Service ID
PROC_DT The date of the task. It is NOT the system date but the date information which is managed by the deferred service.
START_SEQ Serial number at the beginning
END_SEQ Serial number at the end
DATA_COUNT The number of data processed
FILE_SIZE The size of the target file
JOB_ORDER The order of the job. The job order is initialized by the date which is managed by the deferred service. The order of the job increase 1 for every successfully completed job. It starts from the number 1.
END_REACHED Whether it reaches the finishing job status. true/false

Deferred Task Control

Deferred task is controlled by the web console. The details of the deferred task regulation are as follow.

Task Contents

Task Start

Start the deferred task.

Task Pause

Pause the deferred task.

Task Resume

Resume the task paused.

Task Abortion

Abort the deferred task and delete the information. Because aborted task lose all the information, restarting the task means starting a new task.

Change the Serial Number

Change the serial number to the previous or latter number. Modification of the serial number is conducted when the task is paused.

Date Modification

Change the date which the task is executed. Modification of the date is conducted when the task is paused.

Reset

Initialize the task information,. Initialize the serial number to 0, and reset the date information too.

Procedure

Task is executed by the web console.. Deferred Task Management on Task Management menu, inquire current processing task and register the new one if there's no task. </translate>

<translate>

Overview

Deferred service is the service inquires the data periodically from the table(including join) has serial number defined, and apply it to the target DB. Data processing unit follow the fetch number defined on rule. If the target DB is multiple, process the whole target DB with 2PC transaction. Transaction is only supported by the unit of transaction. Transaction per item isn't supported.

Transferable Data

Transferable data in DB batch method is as follows.

Entry Description Note
Data Verification Method Data which is able to be inquired in a single query The case that the data should be verified by multiple tables but unable to join cannot be processed.
Processing Object Data Type Processable Data Type Both of ascii/binary is processable Only processable when the temporary file save mode is set to binary
Processing Object Data Size No limitation on the number of data which can be processed by a single job. If the number is too large, process the transaction by the ruled processing unit(the fetch number).

DB Connecting Method

Source DB Approach Method

Defines JDBC Type the approach method by rule in the way JDBC supports. No transaction management required because the source is only used on data verification.

Target DB Approach Method

In the case of XA transaction processing, use platform provided Adapter/Datasource to approach.

  • JBoss
    • XA Datasource
  • BW
    • RDBMS Connector

(*) If it's not XA transaction, use the information registered in ISM and approach it in the same way of the source.

Supported Database

The database supported by source DB on ISM is as follows.

  • Oracle
  • DB2
  • MS-SQL
  • Informix
  • Sybase
  • Mysql
  • Teradata

Supported JDBC types approaching source DB are as follow.

JDBC TYPE Description Oracle MS-SQL Infomix DB2 Others
1 JDBC-ODBC Bridge O(Convert it to 4) O(Convert it to 4) O(Convert it to 4) O(Convert it to 4) O(Convert it to 4)
2 Native-API Driver specification O(OCI) O(app)
3 Network-Protocol Driver
4 Native-Protocol Driver O(Thin) O O O(net) O

DB-DB Deferred Service

Service Definition

Source Service Definition

Register SQL query to be used on data verification.

Data Inquiry Query

Inquiry query must satisfy following conditions..

  • There must be the serial number field among the inquired columns.
    • If there's no serial number field, repeat the process at the same serial number(0).
  • The condition to inquire Query according to the serial number.
    • where seq_no > #STARTSEQ#
  • The condition to order the result of the inquiry according the order of the serial numbers.
    • order by seq_no
  • If the data is included on query, use the variable #DATE# to show the date.
  • To show the value which has to be excepted in the inquiry target group, use the variable #EXCLUDEVALUE#.
The Example of Data Inquiry Query
select col1, col2, seq_no, proc_dt
from source_table_#TABLE_NAME#
where seq_no > #STARTSEQ# and proc_dt = #DATE#
order by ser_no
Source Processing Rule

If the data verification target table has to be changed by the serial number initialization condition, define the table name management class. Define the unit of the data process. Process the number of data which has inquired. Even if the process target data is more than the processing unit, process it gradually with the number of processing unit. Define the data verification period. Execute the process by the unit of data verification period. If the process target data is more than the processing unit, the verification prior is set to 1 second automatically. If the process target data is less than the processing, return to normal verification period. If there's no verification period defined, use 30 seconds as a default period.

Source Service Definition

In Source Service, defines the DB calculation which will be executed on data application on the target service. Because the data reflecting SQL query is generated automatically, define the reflecting target table name. If the data reflecting target table should be changed by the serial number initialization condition, define the table name management class.

Data Structure Definition

Source DB Data Structure Definition

Follow the source DB data structure definition of DB-DB batch service.

The difference between the source DB data structure definition and the batch, only a single key field has to be defined and the field must be the serial code field. The name of the key field has to be the same as the one of the column which is inquired by query.

For example,

Inquiry query)

select key_col1, key_col2, data_col1, data_col2, sequence_col from table1 where sequence_col > #STARTSEQ# order by sequence_col

Field group)

Field Number Field Name Key Status
0 key_col1 No
1 key_col2 No
2 data_col1 No
3 data_col2 No
4 sequence_col Yes

Regardless of the key status of the table, the 5th column should be defined as a key field because the column must be used as a serial number.

Target DB Data Structure Definition

Follow the target DB data structure definition of DB-DB batch service.

Target DB Support Calculation

Follow the target DB support calculation of DB – DB batch service.

Service Model Definition

Form the interface services as the source and the target, and define the routing rule and mapping rule in the way the request is sent from the source to the target. Define the service flow from the source service to the target service by the service model. Determines whether to sequential process or parallel process in the definition of the service flow. The parallel process is only available on asynchronous batch service.

Source Service

Properties Description
Pattern

System Interface Pattern Set ACK transmission If it's parallel process, set the asynchronous transmission.

Routing

Properties Description Accept Value
Routing Determining Method Find the way to search the target service. All
Routing Input Field When the routing determining method isn't All, define the input field.  
Routing Pattern Value Define the assigned input field value, pattern, or the result of the calculation. Send the request to the target service which has the same value set.  
Service Mapping Define the conversion rule between the source service and the target service. Mapping Rule.
Error Mapping Defines the conversion rule when the error response returned from the target service.  
Target Service Define the target service to send the request according to the routing pattern value. Target Service

Target Service

Properties Description
Pattern

System Interface Pattern Set ACK transmission. If it's parallel process, set the asynchronous transmission.

Integration Service Definition

Integration Service defines the source and target system on service model result, and the rules of other Batch Service on run. Other information besides processing flow for Batch Integration Service is as follows.

Properties Description Default Value
2PC Status If it's not 2PC transaction, the transaction between the source interface process and the target interface process is seperated. Yes
Message Verification Status Analyze the input message per field and apply the verification condition to verify. If there's no verification condition, verify the length and type. No
Post-process The process has to be handled after DB data transmission. None
Rollback type The whole – If even a single case fails, rollback the whole.

Failed data – progress it continuously even is there's a failed data (*) The range of the whole is the data by the 1 time inquiry number of data

The whole
Inquiry Period Deferred Service Execution Period. 60 seconds as default 60
Maximum Serial Number The maximum serial number as the condition to initialize the serial number. (*)Used when the condition of the serial number initialization is the maximum serial number. 1000000000
1 time Inquiry Number The maximum inquiry number by the 1 time of deferred service execution

(*) 1000 as default (*) If the number of inquired data is the same as the 1time inquiry number, consider it has more data and set the inquiry period to 1 second automatically.

1000
Serial number initialization condition Serial number initialization condition setting Not in use(increases unconditionally)
Finishing job field name Set when the serial number is initialized by the finishing job field value. None
Finishing job field name Set when the serial number is initialized by the finishing job field value. None
Final value transfer status Whether to send the final value on the initialization by the maximum serial number. (*)Set not to send only when the maximum serial number isn't the data but has the meaning as the final. Do not transfer
Automatic generation of serial number Whether to generate the serial number of the inquiry target table automatically. of the source system. (*)There must be additional field to be used as the serial number, date information on automatic generation. Not generated
Serial Number Field Serial Number Field None
Date Field System Date Field – yyyyMMdd form None
Final value verification class In the case of the maximum serial number, use it when the final value doesn't exist on the verification target table but on the extra table. None

DB-File Deferred Service

The data inquired on the source DB is saved as file on the target system. How to process it is the same as the DB-DB deferred service. However, the generation rule of the file data must be defined. If the file which has the same name is generated in saving file on the target system, it overwrites on the previous file, so it always have to be saved as new file or the type of file is available for subsequent writing. In processing of the subsequent writing, the same file can be bigger and bigger indefinitely so it should include at least the date of written or the time information to prevent this. The target filename is geneated throught the fileneame management class. To look up the way to use the file management class, refer to the target file management class(ISM:BatchFile#Target Filename Management Class) of the batch file service

Transferable Data

It is the same as DB-DB deferred service.

DB Connection Method

It is the same as DB-DB deferred service.

Service Definition

Source Service Definition

It is the same as the source service definition method of DB-DB deferred service.

Source Processing Rule

It is the same as the source processing rule of DB-DB deferred service.

Target Service Definition

Defines the directory and filename to store the data in the target service. Define the filename management class to generate the filename differently for every process.

Data Structure Definition

Source DB Data Structure Definition

Follow the source DB data structure definition of DB-DB deferred service.

Target File Data Structure Definition

Follow the target file data structure definition of the file batch service.

Result reflecting data structure definition

Follow the result reflecting data structure definition of DB-DB deferred service.

Target File Support Calculation

Follow the target file process definition of file batch service.

Service Model Definition

The configured contents is the same as the DB-DB deferred service.

Integration Service Definition

The configured contents is the same as DB-DB deferred service. </translate>

Realtime Service

<translate>

Synchronous Type Service

Transferable Data

Synchronous Type Service uses the message which has a header part and data part. Each message is a fixed-length message which is divided by the length of the field.

Delimiter Message

Not supported.

XML Message Processing Limitation

When the conversion between XML to Flat message is made, the message has to be converted to the message which has a fixed length to be processed in ISM. Therefore, the source or target connector interface model has to be converted to fit on ISM type. In this case, the message cannot be processed if the structures of the XML message are duplicated more than three layers. The processable stage is up to the second stage, the master – detail.

Service Definition

Source Service Definition

Defines the input and output data structure. If any error mapping is required, it defines the error data structure. The request data which is sent from the source to the target service is output; the error response data from the target to the source service is input; The error response data which is sent from the target service is error data structure. Available source service types are as follow.

Electronic Messaging Service

Nothing to be defined specifically.

Target Service Definition

Defines the input and output data structure. If any error mapping is required, defines the error data structure. The request data which is sent from the target to the source service is output; the error response data from the target to the source service is input; The error response data which is sent from the target service is error data structure. Available source service types are as follow.

Electronic Messaging Service

Nothing to be defined specifically.

Web Service

Defines the way to search the web service. Refer the Import WSDL category(ISM:Webconsole#Import WSDL) of the web console to look up the setting on web service.

Data Structure Definition

Source Data Structure

The Source Data is made of at least a master. Repeatable sections are set by the detail included on master. The number of the repetition of detail can be fixed or determined by the certain field of master.

Target Data Structure

The same as above.

Service Model Definition

Assort the interface services to the source and the target, and define the routing rule and mapping rule when the request is made from the source to the target. Define the service flow from the source service to the target service by the service model definition. Set whether the service is subsequent process or the parallel process. Parallel process is set only in the processing of an asynchronous parallel process,

Target Service

Properties Description
Pattern

System Interface Pattern If it is synchronous way– set the sync request.

Routing

Properties Description Accept value
Routing determining method Determines the way to search the target service. All
Routing Input Field If the routing determining method isn't All, define the input field.  
Routing Pattern Value Defines the value, pattern, or the result value of the calculation on the specified input field. Send the request to the target service which has the same value set.  
Service mapping Defines the conversion rule between the source and the target service. Mapping rule
Error mapping Defines the conversion rule when an error response is returned from the target service.  
Target Service Define the target service to send the request per routing pattern value. Target Service

Target Service

Properties Description
Pattern

System Interface Pattern

  • If it is synchronous way– set to the sync request.
  • If it should be interfaced asynchronously, set to the asynchronous request.

Integration Service Definition

Integration Service define the source and target system to the service model result, and define the rules on other online service performances The information has to be set besides processing flow is as follows.

  • 2PC Status
    • If it's not the 2PC transaction, separate the source interface process and the target interface process.
  • Message Verification Status
    • Analyze and verify the input message per the field unit applying verification conditions. If there's no verification condition, check its length and type.
  • Process Log Status
    • Determines whether to leave the service processing result or not.
  • Entire Log Status
    • Determines whether to leave the original message or the converted message on the process or not.
  • Target System Timeout Setting

Default Timeout is set to 30 seconds when the target system is requested,

Asynchronous Way Service

Transferable data

Only the message which has a header and data is used. Message is the fixed length of message which separates each field by its length. It supports delimiter message and XML message as the same as synchronous service.

Service Definition

Source Service Definition

The request data received from the source to the target system is output; the response data from the target to the source is input; The error response data received from the target service is error data structure.

Telegram Service

Nothing to be defined separately.

Target Service Definition

Defines the input & output data structure. If any error mapping is required, defines the error data structure. The request data received from the target system to the source system is defined to input; the response data from the target to the source is defined to output; The error response data received from the target system is defined to error data structure.

Telegram Service

Nothing to be defined separately.

Web Service

Defines the way to search the web service. Refer the Import WSDL category(ISM:Webconsole#Import WSDL) of the web console to look up the preference setting on web service.

Data Structure Definition

Source Data Structure Definition

Source data structure is comprised of at least one master. Repeatable section is set to the details included in master. The number of the repetition of the detail can be fixed, or determined by a specific field value of the master.

Target Data Structure Definition

The same as the Source Data Structure Definition.

Service Model Definition

Form the interface services into the source and the target, and define the routing rule and mapping rule when the request is made from the source to the target. Defines the service flow from the source to the target by its service model. Determines whether to sequential process or parallel process. Parallel process is only available on the parallel process in asynchronous way.

Source Service

Properties Description
Pattern

System Interface Pattern

  • Set one-way transmission - asynchronous transmission.
  • Set asynchronous request/response - asynchronous transmission.
  • If one-way transmission - source system receive ACK, set the ACK transmission.
  • Synchronous request/response - If the source system receive ACK, set the ACK request.

Routing

Properties Description Accept Value
Routing Determining Method Determine the way to search the target service. All
Routing Input Field If the way of routing determination isn't All, specify the input field.  
Routing Pattern Value Define the value, pattern, or the result value of the calculation on a specified input field. Send the request to the target service which has the same value set.  
Service Mapping Defines the converting rule between the source and the target service. Mapping Rule
Error Mapping Define the converting rule when the error response is returned from the target service.  
Target Service Define the target service which will send the request per the routing pattern value. Target Service

Target Service

Properties Description
Pattern

System Interface Pattern

  • Set one-way transmission - asynchronous transmission.
  • Set asynchronous request/response - asynchronous transmission.
  • If one-way transmission - source system receive ACK, set the ACK transmission.
  • Synchronous request/response - If the source system receive ACK, set the ACK request.

Etc.

Parallel Process Status Configuration

  • Parallel Process – Yes
    • When there's no need to guarantee the order or one-way transmission.
  • Parallel Process – No
    • When the service is an asynchronous request/response.

Integration Service Definition

Integration Service not only defines the source and target system to the service model result, but also the rules on other online service performance. The information has to be set besides processing flow is as follows.

  • 2PC Status
    • If it isn't 2PC transaction, the transaction between the source and the target interface process is divided.
  • Message Verification Status
    • Analyze and verify the input message per field unit applying verifying conditions. If there's no verification condition, check its length and type.
  • Process Log Status=
    • Determines whether to leave the service processing result or not.
  • Entire Log Status
    • Determines whether to leave the original message or the converted message on the process or not.
  • Target System Timeout Setting

Default Timeout is set to 30 seconds when the target system is requested,

</translate>

Web console

<translate> __NUMBEREDHEADINGS__

ISM Console Overview

ISM executes all the jobs related to the interface development by web console. The interface is developed, applied, modified, and controlled by the console.

Getting Started Web Console

BusinessWare

Execute webconsole/bin/startup.sh(bat) below ISM installation directory to start the web console.

The default URL of the web console is as below.

JBoss

Execute JBoss to start the web console application since it is installed as an JBoss application. The port of web console is the same as the http port of JBoss.

Web Console Login

Default user/password which is generated on installation is "ism/fiss". This user is an admin user. To manage the privilege, log in as the admin user to create new users.

Login

The main screen composition printed right after logging in is as below.

Main screen

Each section information is as follows.

  1. Header section
    • ISM Logo
      • Click the ISM logo screen to toggle between show and hide the menu section.(toggle)
    • User
      • Show the current logged in user.
    • Current Server
      • Show the current logged in server.
    • Language Selection
      • Automatically select the language corresponding to the user environment.
      • English/Korean are supported.
    • Logout Button
      • Logout and return to the login screen.
  2. Menu Section
    • Menu Section shows the ISM relevant jobs including development/management/process result inquiry according to the categories.

Menu section shows ISM relevant jobs including interface development/management/process result inquiry.

  1. Main Section
    • When the menu is selected, the screens of pertinent menu is printed and process required job in the section.

Web Console Menu

Interface Information

This menu is to manage the jobs for the interface development/modification. The items under the menu are the required to configure the interface of ISM.

Integration Service Management Integration Service List Manage the ISM interface.
Service List Manage the service to be used to transfer/receive.
Task List Manage the previous process/post process information to be used on batch/deferred service.
Service Modeling Manage the information of the service flow.
System Management System List Manage the interface target system.
Application List Manage the application in running on the system.
Server List Manage the information of the host where the application is running
Common System Manage the system ID to be used on the common process.
Data Management Date Structure List Manage the data structure to be used to the input/output of the Transfer/Receive service.
Field Group List Manage the field group to constitute the data structure
Field List Manage individual field comprising data that is used to input/output
Service Mapping Manage the conversion information on input/output.
Function Template Manage the transform function.
Code Conversion Manage the mapping information according to code values

Job Management

Rule Reservation Application Reserve the time to apply the runtime
Deferred Job Management Controls the deferred Job
Import Rule Import the interface information written by another server
Publish Rule Apply developed interface on runtime

Process Result Inquiry

Online Process Result Show the results of the online process.
Batch Process Result Show the results of the file/DB batch interface.
Deferred Process Result Show the results of the deferred interface.

Statistics Inquiry

Online Statistics by Time Show the report by time of the online interface.
Online Statistics by Date Show the report by date of the online interface.
Statistics by Batch Time Show the report by time of the batch interface.
Statistics by Batch Date Show the report by date of the batch interface.
Statistics by Deferred Time Show the report by time of the deferred interface.
Statistics by Deferred Date Show the report by date of the deferred interface.

Monitoring

Show Dashboard Show the monitoring dashboard.
Create Dashboard Create the monitoring dashboard
Custom Widget Manage the custom monitoring widget to be printed on dashboard
Dashboard error message Manage the error message printed on dashboard

Basic Information Management

General Code Manage the codes related to run ISM.
User Management Manage the web console user.
Privilege Management Manage the user privilege by the roles of web console.
Rule Modification History Show the modification history of the information constituting the interface.

Fetching

Import WSDL Create the service importing web service information
Import SAP Create the service importing SAP RFC information

Web Console Button Description

The meaning of the buttons commonly used on the web console is as follows.

  • Add.png Add
  • Edit.png Edit
  • Save.png Save
  • Tomaster.png Apply master
  • Viewmaster.png View master
  • Publishruntime.png Runtime application
  • Unpublished.png Inquire unpublished rule

Print all the items which aren't applied to runtime among the same sort of items.

  • Saveas-new-version.png Save as a new version

The first version is saved to 1.0, and the new version is saved to 1.1.

  • Saveas-new-id.png Save as a new ID
  • View-impact.png View impact

If the user click "View impact" while he clicks the item, the top items using the pertinent item are printed.

Impact view

Version Management

The relevant information of the interface is printed as below according to each status.

First Creation Field-history-en.png
Master application Field-master-en.png
Modification after the master application Field-history+-en.png
Runtime application Field-runtime-en.png

Basic Information Management

General Code

The information managed by codes is as the picture below.

AgentDomain

AgentDomain is used to send the request or information to the current running ISM processes. The communication types using AgentDomain is as follows.

  • Application of Interface Runtime

When the deveoped interface is applied to runtime, the location of current running process(host) must be identified to send the modified or added information to the ISM process. To send the modified or added information to the ISM process, the location of the current running process(host) must be identified. When the ISM process is on running in multiple hosts(machines), register each host, and order the host processes to register or renew the interface information.

  • View the Electronic Message

Read the data(electronic message) which has used by the process stages on the process result screen of the online interface, and print it on the process result screen of the online interface.

Agent Domain
AgentDomain Registeration
Code Classification AgentDomain
Code Name Host name of the ISM process is running
Code Contents Description of code name

DFD Domain

Defines what host will execute the deferred interface.

Deferred Domain
DFDDomain Registration
Code Classification DFDDomain
Code Name Name of the host in running by deferred manager + ":" + queue name used by deferred manager
Code Contents Description of the code name

Businessware version is able to run the deferred processes that are using different queue name, but the WAS version such as JBoss has the same queue name of the deferred manager. WAS version is able to be running on multiple processes with a queue name by the Cluster function of Quartz scheduler.

Batch Domain

Define the main server to restart reprocessing batch process.

Batch Domain
Code classification BatchDomain
Code name Name of the host running batch manager
Code contents Description of the code name

ISM Console

Define the web console correspondent to the source to fetch the interface information from when the developed interface is moved(e.g. moved from development server to management server)

Batch Domain
Code Classification ISMConsole
Code Name Server in running web server + ":" + Port number
Code Description Description of the code name
  • Port number
    • BusinessWare : 9080
    • JBoss : 8080

User Management

Manage the user logged in the web console.

User management
Properties Description Note
User Id User Identification
Name User Name
Password Password A number under 16-digit number, character, special characters are available.
Department User Business Team Not in use
Manager Manager Status Not in use
Privilege User Privilege User privilege to access the screen
Position User Position Not in use
Telephone Telephone number Not in use

Privilege Management

Define which menu a user can access. Access privilege is set per the role not user.

User privileges

Click SAVE to save the menu to be allowed to the selected role.

Reload the screen to apply the changes since the privilege setting is saved.

Rule Modification Record

Rule Modification Record shows the modification record of each item on the interface. The type of modification record is as follows.

  • Create
  • Modify
  • Delete
  • Master Application
  • Runtime Application
Rule history

</translate>

<translate> The flow of an interface development is as follows.

  • First make pieces of an interface. The pieces are field, field group, server, application, service, mapping, and etc.
  • Then assemble pieces into a bigger component like data structure, system, and service model.
  • Finally combine components into an interface.

This chapter explains each piece and component according to the flow.

Refer to tutorials(Realtime Message-DB tutorial) for handson guide.

Data

Input/output data structures of interfaces are managed here. Data structure has 3 types.

  • ISM type
    • consists of 1 or more field groups.
    • requires fields and field groups.
  • XML type
    • normal xml message
    • generated through sample xml data
  • ISO type
    • ISO 8583 message


Field

Field is the smallest unit of a ISM data structure. Field is like a column of a table, an attribute of a C struct.

Field

Field has some properties to be used for transformation, validation, and formatting.

property Description Remarks
Name Field name
Description Field description
Type Field type
Length Field length
Filler Filler character when the length of a value is shorter than length
Format Field format. Used to convert character to date type.
Alignment Alignment of a field value. From left or right

Field group

Field group is an ordered set of one or more fields. Field group is basic unit of ISM data structure.

Common

Common tab defines general properties of a field group.

Field group common
property Description Remarks
Fieldgroup name Field group name
Fieldgroup description Field group description
Delimeter Field group delimeter Usually used for delimiter based file data
upload excel file excel file name
Sheet name sheet name which contains field definition Only used when field group is defined in an excel file.
Set as Default header Check when this field group is used as commonly used header definition of a message Used only for ISM data structure

Mapping

Mapping is to assign fields into a field group, to specify usage for each field in a field group.

Field group mapping

Properties of mapping table are followings.

Column name Description
index Field index in this field group. Index starts from 0.
Field id Field id from field definition
Field name Field name from field definition
Length Field length from field definition
Offset Offset from index 0 in this field group
Type Field type from field definition
Format Field format from field definition
Filler Filler from field definition
Align Field align from field definition
In/Out Field usage in this field group. Used for stored procedure.
Is Length field? Field usage in this field group. Used for flat message.
Value diff When this field is used as a length field, difference value to be minus. 8 means -8, -8 means add 8.
Key Key field in this field group. Used for table operation.
Null Nullable or not.
SQL Function SQL Function or not. Used for query generation
Validation Validation type
Key

Key is used for DB operation. One field group can have 0 or more key fields like a table. Key fields are used to generate condition parameters for

  1. select ... where param1 = key_field_N and param2 = key_field_M and ...
  2. update ... where key1 = key_field_N and key2 = key_field_M and ...
  3. delete ... where key1 = key_field_N and key2 = key_field_M and ...
SQL Function

SQL Function is used during transformation. ISM generates query for target operation during transformation in batch/deferred interface. When ISM generates queries, it checks whether a field is used as a sql function. If the field is defined as a sql function, the result of transformation of that field is added to the generated query as a constant.

For example,

  • Col3 is normal field not used as sql function.
  • Mapping to that field assigns SYSDATE as default value.
  • Transformation result of that field is SYSDATE.

ISM will generate this query.

insert into target_table(col1, col2, col3) values(?, ?, ?);

if query is literal type, generated query will look like this.

insert into target_table(col1, col2, col3) values('col1_value', 'col2_value', 'SYSDATE');
  • Col3 is used as sql function.
  • Mapping to that field assigns SYSDATE as default value.
  • Transformation result of that field is SYSDATE.

ISM will generate this query.

insert into target_table(col1, col2, col3) values(?, ?, SYSDATE);

if query is literal type, generated query will look like this.

insert into target_table(col1, col2, col3) values('col1_value', 'col2_value', SYSDATE);
Null

If input value of Nullable field is null, ISM will do

  • For realtime flat message
    • fill filler character to the field
  • For database operation
    • set null parameter
  • For file operation with fixed length
    • fill filler character to the field
  • For file operation with delimiter
    • set empty value
Add a field

Go to mapping tab.

Field group mapping

Click add field button(Table row insert.png), a new row is appended at the end of the field list.

Field group mapping

Click empty cell and popup field list dialog.

Select a field, and selected field is set to the new row.

Field group mapping

To insert a field into a specific index, set index value and click add field button(Table row insert.png).

Field group mapping

To delete a field, select a field and click delete button((Table row delete.png)

Excel upload

Field group excel upload

For the layout of excel file, refer to this file field group sample. This file is included under ISM_INSTALL_DIR/data.

Data structure

ISM

ISM data structure defines

  • layout of data
    • ISM data structure consists of at least 1 master field group.
    • 1 master field group can have 0 or more detail field groups.
    • Refer to File-DB Batch tutorial for how to generate ISM data structure.
  • record delimiter
    • Used for file based data
  • repeated group and repeat count
    • Only detail group can be repeated.
    • Repeat count is not fixed, repeat count must be assigned somewhere in the data structure before that detail group.
    • Refer to Message-DB Realtime tutorial for how to define repeat group and repeat count

XML

XML data is generated from sample xml.

ISM does not provide data structure generation from xml schema or DTD.

Refer to Message-DB Realtime tutorial for how to generate XML data structure.

ISO

System

System is a combination of application and server. One system can have one or more combinations of them. Usual production systems run same services on multiple servers.

Application

Application defines type of software or package.

Common

Common tab defines application type and account information(userid/password).

Application common properties
property Description Remarks
Application type Type of this application
Application name Name of this application
Application description Description of this application
Port no Listening port of this application
User id User id of this application File, DB application requires user id
User password Password FIle, DB application requires user password

File application

ISM connects FTP or SSH daemon to get or put file(s).

  • FTP
  • sFTP
  • FTPs
  • SCP
  • Tandem FTP
  • SFTP(Windows)
    • This type is to simulate FTP ascii type transfer in sFTP.
  • Custom
    • When

DB application

ISM connects database servers via JDBC protocol. When DB application is used as a target and XA transaction is required, ISM uses platform provided adapter or datasource to communicate.

  • Oracle
  • MSSQL
  • Mysql
  • DB2
  • DB2AS400
  • Informix
  • Sybase
  • Teradata

Web application

Defines Web server. ISM just calls http(s) url regardless the type of http application - php, asp, jsp, etc.

EJB application

ISM communicates with J2EE servers via two protocols. One is JMS and the other is EJB. ISM uses Web application type to communicate other than JMS and EJB.

JMS type

  • ActiveMQ
  • SonicMQ
  • MQ

EJB type

  • Websphere
  • WebLogic
  • JBoss-as-5
  • JBoss-as-7

Message application

Message application is used to communicate with applications in which flat messages are used. Flat message usually have fixed length data.

These classification don't have different implementation. They just indicate what applications are running.

  • Socket
  • TP Monitor

Etc

Etc type has no specific properties. It indicates that application is not in the application list.

Server

Server defines physical host address or hostname.

Server

System

System combines one application with one or more servers. ISM invokes service running on one of the servers against load balancing rule or constructs connection information like FTP or database.

Common

Common tab defines general policies for that system. Load balancing and status management are defined.

Common properties of system
property Description Remarks
System name System name
System description description
Loadbalancing type How to balance requests to servers in that system Refer to Load balancing policy
Use health check Determine health check is required or not If check, when an error occurs, ISM tries to determine whether that error means system failure or not. Otherwise, ISM ignores system failure. Refer to Detect and recover of system failure.
Auto recovery Determine change server status automatically Used with Use health check property.
GID Check Allow same transaction or not GID is a identifying key of each transaction
Call limit Determine how many requests can go to that system. This property is ambiguous. Don't set other value than 0.
Auto recovery

Both Health check and auto recovery are on, then ISM tries to send dummy message for health check to that down server. The dummy message for health check is provided by user program. In ISM realtime ISM requires realtime parser. Realtime parser is used to extract information from input message and set value to outbound message. Another things parser should provide are ACK message and health check messages.

ACK message does not mean network level protocol but business level protocol. ACK is required, ISM ask parser to generate ACK message based on input message. ISM returns that ACK message to sender/source system.

Refer to Realtime parser for how to generate those messages.

Server Mapping

Here ISM combines application and server and assign special properties to that combination related with load balancing policy.

Server mapping properties of system

Click Add button(Server add.png) to add a new combination.

Click Application id or Application name cell to choose an application.

Click Server id or Server name cell to choose a server.

All the other properties of this combination are about load balancing policy.

Is master

This property is used when load balancing type is either

  • failover
  • dedicated

failover

  • All the requests goes to the master server except only when master server is down.
  • When master server is down, ISM tries to determine which is the backup server of this server.
  • If all the servers are set as master, first server in the list is the master server.

dedicated

  • All the requests goes to the master server even if when master server is down.
weight for load balancing

This property is used when load balancing type is

  • Round robin

Default weight among the servers are same. Other value than 0 is assigned to a server, ISM sums up all the values and calculates weight per server.

Server status

Refer to Server status for values for available server status.

Default status value is No run.

  • No run
    • means status is not checked.

To enable server status check, set status value to Run.

Healthcheck interval

This value is used only when that server is down.

Interval means with which interval seconds ISM will try to check the status of that server.

Backup application index

This property indicates next server to invoke when this server is down. If the index is not assigned, i.e. -1, then ISM look for next master server from the list.

Proxy system

Proxy system is used in Businessware version.

System id of the proxy system is meaningful. Proxy system means what common process will be used to communicate to real target system for what type of interface. Refer to Types of proxy system for usage of proxy system

Proxy properties of system

Common system

Common system is used for Businessware version only.

Common system stands for a process which is in charge of communication to multiple systems. Common system id is the only meaningful property.

Common system

Interface

Service

Service is used to define what to do for source/target respectively.

For example, in a DB-DB batch interface, a service for source interface gets data from source system. Service definition for source interface contains query for getting data from source table. Service definition for target interface contains operation - CUD - and table name.

Common

Common tab defines general policies for that system. Load balancing and status management are defined.

Service common
property Description Remarks
Service name Service name
Service description description
Input data structure data structure used as input
Output data structure data structure used as output
Error data structure data structure used as error response
Service type service type
Blocked Service is blocked? Used for realtime services to prevent bad service from affecting target system.

DB Service

DB Service tab defines table related operations.

DB Service
Property Description Remarks
CRUD DB operation
Table name Table name
Stored procedure? is target stored procedure? Not used yet
Query type JDBC query tyle
  • prepared - prepared statement like
    • select * from table_name where condition1 = ? and condition2 = ?
  • literal - literal statement like
    • select * from table_name where condition1 = 'value1' and condition2 = 'value2'
Date management class date management class
Table name manager class Table name manager class Used when table name contains #TABLE_NAME# parameter
Query handler class Custom query generation class Used when query generated by ISM cannot satisfy user requirements. Used for all the operation types.
Filter type ---
Filter handler Used when Filter type is handler.
Fetch count ---
Query Used when CRUD value is one of select, user sql or user sql(skip error).
CRUD
  • select
  • insert
  • update
  • delete
  • Insert if update failed
    • insert if update count is 0
    • When the record does not exist, insert that record.
  • update if insert failed.
    • update if insert raises duplication error.
    • When the record already exists, update that record.
  • insert(skip duplicate)
    • Even if duplication error occurs, just ignore.
  • update(skip count 0)
    • Even if no record is updated, just ignore.
  • delete(skip count 0)
    • Even if no record is deleted, just ignore.
  • dynamic
    • ---
  • dynamic(skip error)
    • ---
  • user sql
    • ---
  • user sql(skip error)
    • ---
Filter type
  • Value
    • ---
  • Pattern
    • ---
  • Handler
    • ---
Stored procedure type

This type is used only in realtime service for now.

ISM assumes query entered in the Query area as stored procedure call statement when Stored procedure property is checked. Query for stored procedure looks like this.

{call GetInterfaceWithOutput(#parameter_name#, ?, ?, ?, ?, ?)}
  • #iparameter_name#
    • Enclose parameter with #.
    • parameter_name must match a field name of input data structure.
  • ?
    • ? means input or output parameter.

ISM replace #parameter_name# with ? if query type is prepared. It means that prepared type query is used, ? can be used for input parameters.

Data structure of stored procedure
  • stored procedure has no input/output parameters and returns result as a result set.

Contents of stored procedure(mysql)

DELIMITER //
DROP PROCEDURE IF EXISTS GetAllInterfaces;
CREATE PROCEDURE GetAllInterfaces()
    BEGIN
    SELECT 'GetAll', INTEGRATIONSERVICEID, ISTWOPHASECOMMIT, INTEGRATIONSERVICENAME, INTEGRATIONSERVICEDESC FROM integrationservice;
    END //
DELIMITER ;

ISM query

{call GetAllInterfaces()}

Input data structure is not required.

Output data structure

output data structure of stored procedure

IN or OUT type value is not checked. Output data structure must contain one master field group with RESULT_COUNT field only.

    • Result set data are mapped as detail field group.
  • stored procedure has only input parameters and returns result as a result set.

RESULT_COUNT is fixed field name which indicates how many records exist in the return.

Contents of stored procedure(mysql)

DELIMITER //
DROP PROCEDURE IF EXISTS GetFilteredInterfaces;
CREATE PROCEDURE GetFilteredInterfaces(IN id varchar(255))
    BEGIN
    SELECT 'GetFiltered', INTEGRATIONSERVICEID, ISTWOPHASECOMMIT, INTEGRATIONSERVICENAME, INTEGRATIONSERVICEDESC FROM integrationservice where integrationserviceid like concat ('%', id, '%');
    END //
DELIMITER ;

ISM query

{call GetFilteredInterfaces(?)} or {call GetFilteredInterfaces(#id_filter#)}

Input data structure is used to for input parameter mapping.

Output data structure is same with the above case.

  • stored procedure has both input/output parameters and returns result via output parameters.

Contents of stored procedure(mysql)

DELIMITER //
DROP PROCEDURE IF EXISTS GetInterfaceWithOutput;
CREATE PROCEDURE GetInterfaceWithOutput(IN id_filter varchar(255),
        OUT out_header varchar(255),
        OUT out_id varchar(255), 
        OUT out_2pc varchar(1),
        OUT out_name varchar(255),
        OUT out_desc varchar(255)
        )
    BEGIN
    SELECT 'GetWithOutput', INTEGRATIONSERVICEID, ISTWOPHASECOMMIT, INTEGRATIONSERVICENAME, INTEGRATIONSERVICEDESC
    INTO out_header, out_id, out_2pc, out_name, out_desc
    FROM integrationservice where integrationserviceid like concat ('%', id_filter, '%');
    END //
DELIMITER ;

ISM query

{call GetInterfaceWithOutput(#id_filter#, ?, ?, ?, ?, ?)} or {call GetInterfaceWithOutput(?, ?, ?, ?, ?, ?)}

Input data structure

output data structure of stored procedure

Input data structure must contain both input and output parameters to register output parameters while invoking stored procedure.

Output data structure

output data structure of stored procedure

Input and output data structure must have same field group.

File Service

File Service
property description remarks
File path directory for file(s)
File name file name If file name is not specified here, ISM looks for a file name from input parameter
File authority(mask) file mode File mode - rwx, set as number
Transfer attributes Duplicated file control

Specifies what to do when a file with same name already exists,

  • raise exception
  • overwrite
    • Overwrite current existing file.
  • append
    • Append to current existing file.
  • restart
    • When an FTP transfer was interrupted, restart FTP transfer from the interrupted position.
    • FTP server must support restart feature.
Use original file name to put Use source file name Used when this service is a target service. Use source file name, even if target file name is specified as a service property or input parameter.
Use temp file name Use temporary file name to put file Used when this service is a target service. ISM puts file data with temporary file name. After file transfer finished, ISM renames that temporary file to expected target file name.
Sent file attribute Operation for source file after transfer
  • Move
  • Delete
Result file path Transfer result file path Used to indicate file transfer is completed
Result file name Transfer result file name Used to indicate file transfer is completed
File name manager class File name converter class Used when file name contains parameters. Parameter is enclosed by #, for example #parameter_name#.

Refer to Custom handlers for implementation details.

Fetch count --- ---
Data structure in realtime service

When a file service is used in realtime interface, it has return data with only one field named FILE_NAME.

Response data structure

FILE_NAME is fixed field name in ISM. The length can be modified.

JMS Service

JMS Service
property description remarks
message type JMS message type
  • Text
  • Object
  • Map
  • ByteArray
Queue name queue or topic name
Connection Factory JMS connection factory ---
Transfer type Queue or topic

Web Service

Web Service
property description remarks
WSDL URL WSDL url
WSDL Version WSDL specification version
  • 1.1
  • 2.0
    • Not supported
Operation name Operation to invoke

Operation is defined as root element of Input xml data structure. Response of an operation is also defined as root element of output xml data structure.

Target Name Space Web service name space
Service name Web service name
Endpoint URL for the web service Endpoint does not include host:port

EJB Service

EJB Service
property description remarks
JNDI Name JNDI name of EJB
  • WebLogic
  • JBoss
  • Websphere
EJB Version EJB version
  • 2
    • Requires client stub to invoke. Not supported
  • 3
    • Dynamic invocation

Service mapping

Service mapping means every mapping involves output(s) of previous step(s) and input of next step. Each step stands for a service. One step may involve several output data to make its own input data.

Mapping

Service mapping consists of one or more input services and one output service. Refer to File-DB Batch tutorial for the steps to define a mapping.

Data structures used for mapping are followings.

  • Input service(s)
    • Output data structure
    • Error data structure
  • Output service
    • Input data structure
Mapping
  • Connect by name
    • For file or table, ISM connects wires input field to output field with same name.
  • Add default value
    • For a output field, default value can be assigned. When a default value is assigned, regardless the mapping wires, the default value is set to output value.
  • Add conversion function
    • For a output field, conversion function can be assigned for arithmetic calculation, concatenation, trim, and etc.


Function template

Function template manages user defined custom conversion functions.

Function template main screen

User can create his/her own function in web console.

Function template code area
property description remarks
Function name Function name Function name is used as java class name. Naming convention follows java class naming convention. Special characters are not allowed.
Parameter count parameter count This property is used to generate function definition while mapping definition.
Function description description of function
Function code Implementation code Write user code here.
If user code requires 3rd party libraries other than jdk like JDBC, write code in external IDE, and put compiled class to $ISM_HOME/custom directory.

Below is the bundled functions list.

Function name Description Parameter count Example
CodeConverter Code mapper. Used for simple code mapping. Ex) input value 'A' to 1, 'B' to 2
  • 1st : is code mapping id
  • 2nd : is input field
CodeConverter(CM00001, $1);
ltrim Left trim. Remove left side space or newline of input value.
  • 1st : is input field.
ltrim($1);
rtrim Right trim. Remove right side space or newline of input value.
  • 1st : is input field.
rtrim($1);
nvl Return a certain value when input is null.
  • 1st : Is input field.
nvl($1, a_value);
nvl2 Return a certain value according to input for both null and not-null case.
  • 1st : is is input field to be checked for a null value.
  • 2nd : is return value when 1st parameter is not null.
  • 3rd : is return value when 1st parameter is null.
nvl2($1, null_value, notnull_value);
tolower Convert input string value to lower case
  • 1st : is input field
tolower($1);
toupper Convert input string value to upper case
  • 1st : is input field.
toupper($1);

Code conversion

Code mapping is used to convert meta code like values from one type to another type. It does not involve any calculation but map input value to output value.

Code mapping
Common

Common tab defines general explanation of code mapping definition.

property description remarks
Code conversion id code conversion id Id is automatically generated.
Code converson name code conversion name
Code conversion description description
Mapping

Mapping tab defines input/output value list.

Code mapping
property description remarks
input data input value
output data output value
Field id field id converted with this conversion Field id is not used in conversion. It's just for information.
Field name Field name from field id Field name is also assigned for information.

Service model

Service model defines flow of an interface. Physical system is not included in service model. User defines flow with previously defined service and mapping information. Refer to Realtime Message-DB tutorial.

Common

Common tab defines basic information about a service model.

Service model
property description remarks
Service model name Name of service model
Service model desc Description of service model
Concurrent processing Parallel processing
Used only in realtime and deferred services

Flow design

Flow design designs service flow from source to target(s) and how to.

Flow design
Source
Source flow
  • Service
    • Click search button(Button-search.png) to set service
  • pattern
    • pattern indicates how to communicate with source system.
    • Sync request
      • Source will wait response in a synchronous way.
    • Async request
      • Source will wait response in an asynchronous way.
    • Async transfer
      • Source will not wait response.
    • ACK request
      • Source will wait response in an asynchronous way but ACK is required.
    • ACK transfer
      • Source will not wait response but ACK is required.

red button(Servicemodel-source-red.png) means send/request. blue button(Servicemodel-source-blue.png) means response.

Routing

Routing has two types. One is used to send/request to target system. The other is used to respond to source or send/request to another target.

Send/Request
Routing for request/send
  • Upper box is used to routing method and add or remove routing targets.
    • Green button(Servicemodel-routing-green.png) adds sequential routing target.
    • Orange button(Servicemodel-routing-orange.png) adds concurrent routing target.
    • remove button(Servicemodel-routing-white.png) removes last routing target.
  • Lower box is used to specify mapping and routing target.
    • Click search button(Button-search.png) to choose mapping.
    • Click clear button(Button-clear.png) to unset mapping.
    • Click red button(Servicemodel-source-red.png and blue button(Servicemodel-target-blue.png) to wire routing target.
    • Checkbox is default routing target. When no matching condition is found, ISM sends to this routing target.
    • Left text field is routing value.
    • Right text field is mapping id.
    • Routing method is not All, ISM looks for matching routing target based on the value set in the routing value field.
Response
Servicemodel-routing-receive-en.png
  • Upper box is used to routing method, error mapping and add or remove routing targets.
    • If error response returns from target system, ISM returns error response without further checking.
    • If error mapping is defined, ISM transforms error response with error mapping and returns.
  • Lower box is used to specify mapping and routing target.
    • The layout of lower box is same with Send/Request routing box.
Routing method

Routing method has four types.

  • All
    • Send to all the routing targets.
  • Value
    • Send to the routing target which contains exactly same value with routing input.
  • Function
    • Send to the routing target which contains exactly same value with the result of function execution.
    • Function is user defined java class. Refer to Routing function about how to implement.
    • Function returns true when routing input matches condition, otherwise returns false.
  • Pattern
    • Send to the routing target of which routing input matches the pattern.
    • Pattern means regular expression.

To determine routing target, routing input field(s) are selected. Routing input(s) are selected from output messages of previous steps. Output messages are same with service mapping.

Target
Target flow
  • Service
    • Click search button(Button-search.png) to set service

Pattern property is same with source.

  • pattern
    • Sync request
      • Target will respond in a synchronous way.
    • Async request
      • Target will respond in an asynchronous way.
    • Async transfer
      • Target will not send response.
    • ACK request
      • Target will send response in an asynchronous way and ACK will be returned.
    • ACK transfer
      • Target will not send response but ACK will be returned.
  • blue button(Servicemodel-target-blue.png) means send/Request.
  • red button(Servicemodel-target-red.png) means response.

Click routing button(Servicemodel-target-routing.png) to add routing.

Task

Task is used to do pre or post processing before or after main processing in batch and deferred services. Each task consists a group of jobs.

One interface can have only one pre task and one post task at best.
Task

Common

Common tab defines basic information about a task.

property description remarks
Task id Task id Id is generated automatically
Task name Name of task
Task description Description of task

Task

Task tab defines a set of jobs. Each job is executed sequentially according to the index from 0. If a job fails, ISM stops processing.

Task

Job definition

Task
property description remarks
Task name Name of job
Task type Type of task
File name Name of file Used in File task.
Handler class Name of handler class Used in Service and Custom task
Sync? is sync? Used in Service task. If async is selected, ISM does not wait response from job.
System id System id to execute this job System id is used to get connection information
Data Data used as input for job
  • Table task
    • Sql query or queries
    • Each query is separated with ;
  • File task
    • File contents
  • Stored procedure
    • Sql query to execute stored procedure
  • Telnet
    • Telnet connection information and shell script name
  • Custom
    • Custom task handler
    • Input data for custom task
  • Service
    • Input data for service task
    • Service task can process only ISM type data
Table task

Table task does not support select query. Even if you enter select query, ISM does not get query result. ISM just check whether the query is successful or not.

Telnet task
attribute description usage example
host name Telnet host list, separated with comma(,) #$telnet.host ex) #$telnet.host=localhost
port Telnet port, default port is 23. #$telnet.port ex)#$telnet.port=23
user telnet user id. multiple users are separated with comma(,) #$telnet.user ex)#$telnet.user=user1
password password

Encrypted password must be assigned. When multiple users are assigned, separate with comma(,).

#$telnet.password ex)#$telnet.password=IUbOQ0vlgMKPF77kYaNmkw==
prompt Telnet prompt

After login, telnet server returns prompt. After prompt, user can execute command. The prompt format is different per server, so prompt format should be defined. When multiple servers should be defined like master and backup, each server is separated with comma(,).

#$telnet.prompt ex)#$telnet.prompt=/home/ism>
timeout script execution timeout

deafult is 60 seconds

#$telnet.timeout ex)#$telnet.timeout=120
login prompt After connection, telnet server returns login prompt. Login prompt is used to inform user to enter user id. The format of login prompt is usually ends with ogin:.

No login prompt is assigned, default value used is ogin:.

#$telnet.login.prompt #$telnet.login.prompt=ogin:
password prompt After user entered user id, telnet server returns password prompt. Password prompt is used to inform user to enter password. The format of login prompt is usually ends with assword:.

No password prompt is assigned, default value used is password:.

#telnet.password.prompt #telnet.password.prompt=assword:

(*) To encrypt password, use encrypt.sh(bat) command. $>encrypt.sh raw_string_to_be_encrypted

ex) /sw/ISM/bin/util>encrypt.sh solulink IUbOQ0vlgMKPF77kYaNmkw==

Stored procedure task

ISM does not use output parameters after execution. ISM just checks whether execution is successful or not.

Stored procedure call query looks like this.

{call sp_name('string_param_value', number_param_value)}

Don't forget {} at both ends of the query.

Service task

Service task is used to invoke application or service on target system. This task generates message to be used to invoke ISM realtime interface and send to realtime module. That realtime interface forwards incoming message to target system and returns result to service task. Message handler class is used to generate message for ISM realtime interface. If no message handler class is defined, the value on data property is sent as it is.

Function
  • Usage

To indicate function, enclose function invocation with <!, !>. If parameter(s) exist(s) inside function invocation, ISM converts parameters then invokes function. After function is executed, ISM pass the result to handler class.

  • sample
<!F(#TGT_FILE_NAME#,20,1," ")!>
F Name of conversion function. java class name.
#TGT_FILE_NAME# parameter name. User defined parameters can be assigned as pre or post parameters of batch agent.
  • Function class

Refer to Service task function about how to implement a function.

Handler class

Handler class is used for service task and custom task. Handler does

  • generates message to be sent to target system
  • or execute some business logic
  • and determine whether the result is success or failure

Refer to Task handler about how it is used and implemented.

Interface

Interface is final assembly of previously defined items.

  • Interface type
  • properties for selected type
  • system

are assigned here.

After generating interface, publish to master, validate(Rule-validation.png) whether it can be sent to runtime.

Integration

Common properties

property description remarks
integration service id Interface id Key to identify an interface
integration service name Name of interface
integration service description Description of interface
Is 2PC Flag to process as XA transaction or not
Validate message? flag to message validation If validation is yes,
  1. validates each field against the definition of each field. Length, type, and format for date type are validated.
  2. field validation rule is defined in field group, check field value against validation rule.
Service model Service model id When creating a new interface, service model is selected first.
Business code Business code of this interface Not used
interface type Interface type
  • Realtime
  • Batch
  • Deferred

Realtime service

Realtime service
Properties
property description remarks
Log processed? flag to log transaction result Transaction results are stored in database
Message log flag to log message Messages are stored in file system
Async Retry Count retry count How many times to try to send a message to target systems when failed for asynchronous transfer?
Async Retry Timeout retry time(seconds) How long the failed message must not be maintained before purge for asynchronous transfer?
  • Async Retry policy follows either max value.

Example)

  • retry count = 10
  • retry timeout = 30 seconds

if retry timeout reaches after 4th retry, then ISM purges the message from the queue. If retry count reaches max before timeout reaches, then ISM purges the message from the queue.

Default retry policy is unlimited retry until success.

System properties
property description remarks
timeout communication and service execution timeout included.

Batch service

Batch service
Properties
property description remarks
Pre task Jobs to be executed before main process
Post task Jobs to be executed after main process
Fetch count Processing uint. Record count in one processing

If whole record count to be processed is greater than fetch count, ISM splits records per fetch count and process. Default fetch count is 10000, when 0 or nothing is assigned.

Transfer method Transfer method
  • Direct(EAI)
    • Used only both source and target service are file.
    • Direct transfer via ISM with no transformation
  • Direct(Agent)
    • Used only both source and target service are file.
    • Direct transfer via Agent with no transformation
    • Agent connects to target system and transfer file(s).
Rollback type rollback type when a processing unit failed
  • All
    • Previous units are already committed, only current unit can be rollbacked.
  • Failed data
    • Ignore failed records, just commit.
Timeout wait timeout of batch manager

Data collection is performed in background.

  • Collection flow
    • Batch job manager orders source system interface module to collect data.
    • Source system interface module starts background collection thread.
    • Source system interface module returns temporary file names to be used.
    • Background collection thread saves collected data into temporary files.
    • Batch job manager waits for first temporary record file until Timeout.
    • Batch job manager orders target system interface module to process the records stored in the temporary file.
    • Target system interface module reads temporary file and processes records in that file.
    • Batch job manager repeat wait and order steps until all the files are processed, if no error occurs.

Default Timeout is 60 seconds, , when 0 or nothing is assigned.

File transfer type file mode
  • ASCII
  • Binary
File separation handler class File split class Custom class when default split class does not fit the file structure.

Default file separation classses are

  • FixedLength
  • FixedLengthWithRecordDelimeter
  • FieldDelimeter
  • FieldDelimeterWithRecordDelimeter
System properties
property description remarks
timeout not used

Deferred service

Deferred service
Properties
property description remarks
Rollback type rollback type when a processing unit failed
  • All
    • Previous units are already committed, only current unit can be rollbacked.
  • Failed data
    • Ignore failed records, just commit.
Fetch count Processing uint. Record count in one processing

If whole record count to be processed is greater than fetch count, ISM splits records per fetch count and process. Default fetch count is 10000, when 0 or nothing is assigned.

Retrieve interval Timer interval(seconds)

Default interval is 30 seconds, when 0 or nothing is assigned.

Day-close field name Flag column to be used as an indicator of sequence initialization

Used only when sequence initialization type is Change by day-close value

Day-close field value Value of flag column to be used as an indicator of sequence initialization

Used only when sequence initialization type is Change by day-close value

Excluded value Not used
Last value getter class When next sequence to fetch is not managed in the source table or in different way.

For example, sequence value is managed in a different table.

Sequence automatic generation generation interval(seconds)

When sequence value does not exist in source table and no other way to identify records to be processed, ISM recommends additional empty two columns which can be used as sequence and date field. ISM sequence generator fills up those two columns with sequence and current date and ISM will process based on the sequence.

Max sequence no max sequence number

If you want endless growth of sequence, set empty.

Sequence initialization condition Sequence initialization type
  • Not used
  • Change by system date
  • Others(Change by business rule)
  • Change by max sequence no
  • Change by day-close value
Send last value Flag to send day-close value to target or not
Sequence field Sequence field to be used for automatic sequence generation
Date field Date field to be used for automatic sequence generation
System properties
property description remarks
timeout Not used

</translate>

Schedule Rule publishing

This is runtime publishing at scheduled time not now. This is usually used in production to change information at planned time.

Rule reservation

New Schedule

To add a new scheduled publishing, click add button(Add.png) and choose item.

New schedule
property description remarks
Rule type Rule item type Item types which can be published
Rule item id Item id
Reserved date Planned time
Execution result Execution result message

Schedule execution result

Deferred Management

Deferred interface is executed only by ISM scheduler. ISM has two types of scheduler. First one is cron style batch scheduler and the other is java timer style deferred scheduler.

  • Batch scheduler
    • Cron style
    • Use same expression with cron
    • Used to schedule jobs running with fixed time schedule, for example every 1st day of a month.
  • Deferred scheduler
    • Simple timer style
    • Used to schedule jobs running with fixed and short interval, for example every 30 seconds.

The interval is defined in interface definition. Here users control which deferred job should run or not. Only registered deferred interfaces here can be executed.

The first thing is to register a job. Click add button(Deferred-add-job-button.png) to register a new job. Choose deferred interface from the list. The list shows only deferred interfaces.

Register deferred job
property description remarks
Domain Host name of deferred manager in which this job is running.
Manager The name of deferred manager Used in Businessware environment. In JBoss environments, only one manager is used.
Id integration service id
State State of a job running or paused
Interval execution interval Defined in interface definition. Minimum interval values is 1 second. Interval changes automatically when records to be processed are equal to or more than fetch count.
Date Date of records to be processed When date value is used as query filter and initialisation condition, this value is used.
Sequence Sequence number of the last record processed When sequence value is used as query filter, this value is used.
Sequence Initialization Condition If initialization condition is used, the type of condition is displayed. If no initialisation condition is defined, "Not used" is displayed.
Last updated Last executed time This time shows last successfully executed time. When this job fails, last updated value does not change.

After register, registered job is displayed in the list.

Register deferred job

The default state of a registered job is running.

To pause a job, choose a job and click pause button(Deferred-pause-job-button.png). To change status or running information of a job, that job should be paused first. After pause, choose a job from the list then control buttons are displayed.

Control deferred job

The buttons are these from the left.

  • Resume
    • Resume paused job
  • Close
    • Terminate paused job
  • Clear
    • Initialize job information
  • Change sequence
    • Change sequence number of job, if exists.
  • Change date
    • Change date of job, if exists.

Import Rule

This menu is used to migrate interface components from one server to another server, especially from development to production. To guarantee consistency of interface information, ISM does not allow to generate interface components in production environments. The only way to generate interfaces in production is to import via this menu. Otherwise database migration can be an alternative for same purpose.
The status of imported items are in "published to master" after import. Those items are not ready to be used in runtime. You need to publish rule(s) separately.


Import rule


Items or properties displayed in red color stands for difference with local items or local properties. If local ISM does not have same item nothing is displayed in Local column.

These types of items can be imported.

  • Integration service
  • Service modeling
  • Service
  • AppSystem
  • Task
  • Application
  • Server
  • Service mapping
  • Data structure
  • Field group
  • Field
  • Function template
  • Code conversion

Whatever items which have sub items can be imported as a whole. For example, when a field group is imported, all the fields included in that field group can be imported together.

  • Save
    • Save current item only, sub items are not included.
  • Save all
    • Save both current item and sub items recursively.
    • For integration service, System information are not included. System information must be imported separately.
  • Excel
    • Generate comparison report to Excel format.

Publish Rule

For interfaces to be used in runtime, ISM requires publishing to runtime step.

Users can publish each component in component menu respectively. This menu is mostly used to publish whole components of an interface at one time or for whole items for one type of component like field.

Publish rule

Publish to

  • Master
    • If components are not published to master yet, publish to master.
    • Components which are not published to master can not be published to runtime directly.
  • Runtime
    • If components are not published to runtime yet, publish to runtime.

Components which can be published via this menu are these.

  • ALL
    • All components not published to master or runtime are displayed.
  • INTEGRATIONSERVICE
    • Used to publish entire sub components of this interface.
    • Always exact integration service id should be assigned to retrieve.
    • Sub items of this interface can be displayed.
    • Select all items of this interface and publish entire components.
  • SERVICETEMPLETE
    • Service modeling components
  • SERVICE
  • TASK
  • APPSYSTEM
    • System does not include sub components.
    • Sub components of this system - application and servers - should be published separately.
  • APPLICATION
  • SERVER
  • COMMONSYSTEM
  • SERVICEMAPPINGRULE
  • DATASTRUCTURE
  • FIELDGROUP
  • FIELD
  • CODEMAP

Realtime result

It shows results of realtime transactions. It displays results only in one hour not whole day. If message log attribute of an interface is on, raw message can be retrieved.
The screen consists of three parts - search filter, transaction list, and detail of selected transaction.

Realtime result

Search filter

property Description Remarks
Process date Transaction date
Integration service id Realtime interface id to filter Transaction results of which integration service id match the filter. If filter is set like 'IDS', then transaction results of integration service id starts with IDS will be returned.
Global ID Transaction id to filter Transaction results of which transaction id match the filter. If filter is set like 'TX01', then transaction results of transaction id starts with TX01 will be returned.
Only error Filter to display only error transactions
show count Flag on display of total count. To improve performance of search, the count of whole transactions which match the filters are not displayed as default.This flag is on, Total count is also displayed.

Transaction list

property Description Remarks
Integration service id interface id
Global ID Business transaction id
xid XA Transaction id, if exists XA transaction id is displayed for transactions of which 'Is 2PC' option is on.
Start time Transaction start time The display format is HH:mm:ss.SSS. SSS means milli seconds.
Finish time Transaction end time The display format is HH:mm:ss.SSS. SSS means milli seconds.
Response time Elapsed time from Start to Finish
Result Transaction result Success or Failure
Error code ISM error code Success or Failure

Transaction detail

property Description Remarks
Source step Processing step in source module side Source step has either R01(Receiving request) or S04(Sending response).
Target step Processing step in target module Target step has either S02(Sending request) or R03(Receiving response).
Model component name Module name or process name In Businessware version, module name stands for a project. In JBoss version, module name stands for the name of EJB or parser class used.
System id System id of current step System id means system id used in integration service definition.
Process sequence order of source or target component 0 is source component and from 1 to N stands for target components
Start time Step start time The display format is HH:mm:ss.SSS. SSS means milli seconds.
Finish time Step end time The display format is HH:mm:ss.SSS. SSS means milli seconds.
Response time Elapsed time
Result Step result Success or Failure
Error code Error code

Batch result

It shows results of batch transactions. It displays results of whole day.

The screen consists of three parts - search filter, transaction list, and detail of selected transaction.

Batch result


Search filter

property Description Remarks
Process date Transaction date and time
Integration service id Batch interface id to filter Transaction results of which integration service id match the filter. If filter is set like 'IDS', then transaction results of integration service id starts with IDS will be returned.
Batch Job ID Batch execution id to filter Transaction results of which job id match the filter. If filter is set like 'TX01', then transaction results of transaction id starts with TX01 will be returned.
Source file Source file name filter of a batch transaction File transactions which involves source file name match the filter will be displayed. If filter is set like 'SRC01', then transaction results of source file name starts with SRC01 will be returned.
Service type Source type of a batch transaction. Only transactions of which source type is selected type will be displayed.
All, Failure, Not finished Transaction status. Only transactions of which status is selected type will be displayed. Not finished means currently being processed.

Transaction list

property Description Remarks
Integration service id interface id
State Transaction result and elapsed time
Processed at Host name in which ISM batch manager is running. This means a batch job is executed on this host.
Total data Record count or file size If a file is transferred without transformation, total data value means file size in bytes.
Success Success count Succeeded record count in a batch transaction. If rollback type of a batch interface is set ****, then success count may be different from the total record count.
Failure Failure count Failed record count in a batch transaction. If rollback type of a batch interface is set ****, then sum of success count and failure count is same with total count.
Start time Transaction start time The display format is HH:mm:ss.SSS. SSS means milli seconds.
Finish time Transaction end time The display format is HH:mm:ss.SSS. SSS means milli seconds.
Send Source system
Receiver Target system
Transfer directory Directory of source system Displayed only when source type is file.
Transfer file Transferred file name Displayed only when source type is file. If multiple files are transferred, all the file names are displayed separated with comma(,).
Receiver directory Directory of target system Displayed only when target type is file.
Receiver file Generated file name Displayed only when target type is file. If multiple files are transferred, all the file names are displayed separated with comma(,).

Transaction detail

property Description Remarks
Model component name In Businessware version, module name stands for a project. In JBoss version, nothing is displayed.
Model processing content Description about the step.
Process result Result of a step Success or Failure
Process time Complete time of a step The display format is HH:mm:ss.SSS. SSS means milli seconds.
Receiver System id or component If a step handles source or target operation, system id of that system is displayed. If a step handles manager operation, JOB_MGR_TASK is displayed.
Description Detail information of a step Used to show how many records are processed in that step. Total record count, successful count, failed count, and skipped count.
Reprocess no Retry count This number shows how many times this step is retried. If a job failed while updating steps, the retry starts from updating steps. A batch execution id is generated by ISM. But user or batch agent can assign batch execution id. If batch execution id is assigned, ISM checks whether the job is already complete or no. If a job already exists and failed, ISM assumes this request is retry.

Deferred result

It shows results of deferred transactions. It displays results of whole day.

The screen consists of two tab panes. First tab is for overall result and the other is for error data. Overall result tab consists of three parts - search filter, transaction list, and detail of selected transaction.

Overall result


Deferred result


Search filter

Deferred job is continuously repeated job per interval. So deferred job does not have any transaction id like realtime or batch interfaces. And deferred job is endless job with no final result. It contains only current position or state. There is no error result but has only error history.

Search filter in deferred result contains only integration service id and time period.

property Description Remarks
Process date Transaction date and time
Integration service id Batch interface id to filter Transaction results of which integration service id match the filter. If filter is set like 'IDS', then transaction results of integration service id starts with IDS will be returned.

Transaction list

property Description Remarks
Integration service id interface id
Start time Transaction processing time for the first record set during selected time period The display format is HH:mm:ss.SSS. SSS means milli seconds.
Finish time Transaction processing time for the last record set during selected time period The display format is HH:mm:ss.SSS. SSS means milli seconds.
Start sequence Sequence number, if exists. If collect query used to collect data from source contains sequence number, first sequence number of collected result is displayed. Otherwise, the key field value(s) of the first record is(are) displayed.
Last sequence no Sequence number, if exists. If collect query used to collect data from source contains sequence number, last sequence number of collected result is displayed. Otherwise, the key field value(s) of the last record is(are) displayed.
Total count Processed count Processed data count during the time period
Success Successfully updated count If rollback type is all, success count should be same with total count.
Failure Failed count Only when rollback type is Failed data, failed count can be non zero.

Transaction detail

property Description Remarks
Integration service id interface id
System System id Complete means deferred job manager.
Start time Transaction start time of one record unit The display format is HH:mm:ss.SSS. SSS means milli seconds.
Finish time Transaction end time of one record unit The display format is HH:mm:ss.SSS. SSS means milli seconds.
Start sequence Sequence number, if exists. If collect query used to collect data from source contains sequence number, first sequence number of processed result is displayed. Otherwise, the key field value(s) of the first record is(are) displayed.
Last sequence no Sequence number, if exists. If collect query used to collect data from source contains sequence number, last sequence number of processed result is displayed. Otherwise, the key field value(s) of the last record is(are) displayed.
Total count Processed count Processed data count in one collected unit
Success Successfully updated count If rollback type is all, success count should be same with total count.
Failure Failed count Only when rollback type is Failed data, failed count can be non zero.
Skip Skipped count Not processed count. Only when target operation contain skip option, skipped count can be non zero.
Step Step name in one processing


Retrieve : collect data
Update : execute update operation
Insert : execute insert operation
Complete : Completion of one processing. Used to identify whole processing of one collected unit is finished successfully.

Error data

Error data tab shows the cause of error and error data to help easy understanding of what data causes error. If stack trace option is on in ism.xml, stack trace of the error can be retrieved.

Deferred error

Report menu shows summary information of each type of transactions per hour or daily basis. Hourly report shows hourly information per interface. Daily report shows daily information per interface.

Realtime report

Hourly report

Hourly report shows summary per date, per interface, per hour. Hour range is from 00 to 23.

Realtime hourly report

Daily report

Hourly report shows summary per date, per interface.

Realtime daily report

Batch report

Batch report provides filter for source type. You can filter report per source type. Available source types are DB and File.
If Data volume flag is checked, The result shows record count or file size. (NNN R) means NNN record count and (NNN B) means NNN bytes file(s).

Hourly report

Hourly report shows summary per date, per interface, per hour. Hour range is from 00 to 23.

Batch hourly report

Daily report

Hourly report shows summary per date, per interface.

Batch daily report

Deferred report

Deferred report always shows record count not size. Available source type is database, and all the records are processed as record not size, even if the target system receives as file.

Hourly report

Deferred hourly report

Daily report

Deferred daily report