Temenos T24 TAFJ Connector Guide

The Temenos T24 TAFJ connector is instrumental in exposing APIs to Temenos applications deployed on remote data source servers. 

With the help of the OpenLegacy CLI and the Temenos T24 TAFJ connector, you can create Temenos assets based on the metadata extracted from one of two types of sources: a fetched Temenos T24 application transaction or a fetched Temenos Enquiry. You can then upload the asset to the OpenLegacy Hub and generate a service that provides a working API to the remote Temenos applications based on your uploaded asset. 

Create Temenos module and assets

To create a Temenos asset, you will perform the following steps:

  1. Create a Temenos module to contain Temenos assets.
  2. Test the connection to the remote Temenos server. 
  3. Create a JSON-based Temenos asset by fetching a transaction or by fetching an Enquiry. 
  4. Test the created asset by sending a test query to the remote Temenos data source.

Step 1. Create a Temenos module

First, create the Temenos module. 

> ol create module --connector temenos-t24-tafj module-temenos
$ ol create module --connector temenos-t24-tafj module-temenos

Review the connector properties. For more information on the Temenos-t24-TAFJ connection properties, see Properties below.

Step 2. Test the connection to the remote Temenos T24 server

Run the ol test connectioncommand to verify that the connection properties are correct and hence that the Temenos T24 server on the remote data source is accessible. 

  1. Navigate to the module folder:

    > cd module-temenos
    
    $ cd module-temenos
    
  2. From under the module directory, display the help menu of the ol test connection command to review the temenos-t24-tafj connector connection properties.

    > ol test connection --help
    
    $ ol test connection --help
    

The ol test connection help menu displays the connector property list.

Options:
  --verbose                             Enables verbose mode
  --verbose-debug                       Enables debug mode
  --verbose-trace                       Enables trace mode
  --host TEXT                           Provide the hostname or ip (required)
  --port TEXT                           Provide the port number (default: 80)
  --username TEXT                       Provide the username (required)
  --password TEXT                       Provide the password
  --source TEXT                         Provide the OFS source name
  --charset TEXT                        Provide the charset name (optional) (default: UTF-8)
  --jms-username TEXT
  --jms-password TEXT
  --jms-vpn-name TEXT
  --jms-initial-context-factory TEXT
  --jms-remote-connection-factory TEXT
  --jms-provider-url TEXT
  --jms-init-connection-on-start TEXT   (default: true)
  --jms-request-queue-name TEXT
  --jms-reply-queue-name TEXT
  --timeout TEXT                        Provide the timeout (optional)
  --version TEXT                        Temenos Application Framework version[TAFC, TAFJ] (default: TAFC)
  --protocol TEXT                       Provide the protocol ('http://' or 'https://') (default: http://)
  --tafj-connection-type TEXT           Represents the way request will be send to TAFJ[SOAP, JMS, JMS_SOLACE] (default: SOAP)
  --profile TEXT                        Configuration profile
  -h, --help                            Show this message and exit
  1. Run ol test connection.:
    > ol test connection --version TAFJ --host 111.111.111.111 --port 90899 --username USER --password PASSWORD --tafj-connection-type JMS --jms-username JmsUser --jms-password JmsPassword
    
    $ ol test connection --version TAFJ --host 111.111.111.111 --port 90899 --username USER --password PASSWORD --tafj-connection-type JMS --jms-username JmsUser --jms-password JmsPassword
    

❗️

The following options are mandatory in particular circumstances:

  • The --soap-endpoint-path is mandatory when the TAFJ connection type is SOAP. Set this property to the path of the WSDL document from which the connector extracts the connection path to the Temenos TAFJ SOAP server.
  • The --version TAFJ option is mandatory when setting the module connection details with the ol test connection or the ol add commands.

Step 3. Add an asset to the Temenos 24 TAFJ module

After verifying the connection parameters, you can create a Temenos T24 TAFJ asset by executing the ol add command. Since the connector supports both the transaction request type and the enquiry request type to request data from Temenos, you can use the ol add command to either create a transaction-based asset or an enquiry-based asset.

Add a transaction request type asset

  1. Review the transaction-related properties of ol addcommand:
    [module-name]> ol add --help
    
    [module-name]$ ol add --help
    

The ol add help menu displays the connector property list. Let's focus on the section related to transaction-related properties:

Transaction:
  --t24-application TEXT      Provide T24 application name to fetch and parse
  --transaction-version TEXT  Provide transaction version (optional)
  --function TEXT             Provide transaction function (optional)
  --gts-control TEXT          Provide GTS control number (optional)
  --company TEXT              Provide company (optional)

Options:
  --operation-name TEXT        Define name for this operation (required)
  --soap-endpoint-path TEXT    SOAP endpoint for accessing the server
  1. Run ol add with the transaction-related options to create a transaction-based asset.
    > ol add --operation-name customer --t24-application CUSTOMER --gts-control 1 --company openlegacy --function I/PROCESS --soap-endpoint-path TAFJServices/services/OFSService.OFSServiceHttpSoap12Endpoint/
    
    $ ol add --operation-name customer --t24-application CUSTOMER --gts-control 1 --company openlegacy --function I/PROCESS --soap-endpoint-path TAFJServices/services/OFSService.OFSServiceHttpSoap12Endpoint/
    

📘

To learn more about the transaction-related and all other properties, see the Options section below.

Add an enquiry request type asset

  1. Review the enquiry-related properties of the ol add command:
    [module-name]> ol add --help
    
    [module-name]$ ol add --help
    

The ol add help menu displays the connector property list:

Enquiry:
  --enquiry TEXT             Name of the Temenos Enquiry. Indicates need to use Enquiry Fetcher. When not specified, a T24 Application
                             (Transaction) fetcher is being used by default.
  --criteria TEXT            Additional criteria for executing an Enquiry. Usually used for specifying values mandatory fields. For example,
                             'NAME,EQ,John'
  --criteria-delimiter TEXT  Delimiter character that separates additional criteria values. For example ',' for 'NAME,EQ,John'
  1. Run ol add with the enquiry-related options to create an enquiry-based asset. 
    ol add --enquiry STMT.ENT.BOOK --operation-name stmt-ent-book-enquiry --criteria ACCT.ID,EQ,1, --soap-endpoint-path TAFJServices/services/OFSService.OFSServiceHttpSoap12Endpoint/
    
    $ ol add --enquiry STMT.ENT.BOOK --operation-name stmt-ent-book-enquiry --criteria ACCT.ID,EQ,1, --soap-endpoint-path TAFJServices/services/OFSService.OFSServiceHttpSoap12Endpoint/
    

❗️

To learn more about the enquiry-related and all other properties, see the Options section below.

Step 4. Test Temenos T24 TAFJ asset

After adding the transaction request type asset or the enquiry request type asset, you can test the asset by executing the ol test asset command to verify that you can request and receive actual business data from the data source.

Test a transaction request type asset

  1. From your module folder root go to assets/customer/test_data/case1/:

    > cd assets/customer/test_data/case1/
    
    $ cd assets/customer/test_data/case1/
    
  2. To view and edit the test input data open in.json

    case-1> notepad in.json
    
    case-1$ notepad in.json
    

in.json contains the information sent to the remote business operation. It consists of the input keys and values that the business operation requires. 

{
 "@_transaction_info_": {
  "operation": "customer",
  "messageId": null,
  "transactionId": "",
  "options": {
   "version": "",
   "function": "I",
   "processingFlag": ""
  },
  "userInformation": {
   "userName": "",
   "password": "",
   "additional": []
  },
  "statusCode": null
 }
}

❗️

The operation field containing the name of the program or enquiry is required if the service uses a SOAP protocol.

  1. In in.json, type the values of the input properties. In the example above, for the transactionId  field type 100384.
  2. Now you are ready to run ol test asset:
    > ol test asset customer
    
    $ ol test asset customer
    

The response from the remote Temenos server is displayed:

{
 "@_transaction_info_": {
  "operation": "customer",
  "messageId": null,
  "transactionId": "100384",
  "options": {
   "version": "",
   "function": "I",
   "processingFlag": "BUILD"
  },
  "userInformation": {
   "userName": "INPUTT",
   "password": "123456",
   "additional": []
  },
  "statusCode": null
 }
}

❗️

The operation field containing the name of the program or enquiry is required if the service uses a SOAP protocol.

Test an enquiry request type asset

  1.  From your module folder root go to assets/currency-enquiry/test_data/case1/:

    > cd assets/currency-enquiry/test_data/case1/
    
    $ cd assets/currency-enquiry/test_data/case1/
    
  2. To view and edit the test input data open in.json:

    case-1> notepad in.json
    
    case-1$ notepad in.json
    

in.json contains the information sent to the remote business operation. It consists of the input keys and values that the business operation requires. When testing a Temenos enquiry asset, specify the input criteria in the in.json file:

{
 "@_enquiry_info_": {
    "criteria": [
      {
        "value": "",
        "fieldName": "",
        "operand": ""
      }
    ]
  }
}
  1. In in.json,  enter the criteria fields: 
{
 "@_enquiry_info_": {
    "criteria": [
      {
        "value": "XAU",
        "fieldName": "@ID",
        "operand": "EQ"
      }
    ]
  }
}
  1. Now you are ready to run ol test asset.
    > ol test asset itemdet
    
    $ ol test asset itemdet
    

The response from the remote Temenos server is displayed:

{
  "currencyEnquiryResult" : [ {
    "ccyId" : "XAU",
    "ccyNo" : "959",
    "noOfDecimals" : "3",
    "quotationCode" : "0",
    "deliveryDays" : "1",
    "midRevalRate" : "1625.00000",
    "buyRate" : "1620.00000",
    "sellRate" : "1630.00000",
    "timeStamp" : "04 JAN 12 07:39"
  } ]

Options

Transaction request type options

--t24-application

The name of the t24 application serving as the destination of the Temenos transaction. The connector’s transaction fetcher extracts the application metadata to model the application business fields.

--t24-application Customer

--transaction-version

A modifier on the t24-application name to designate a particular application version that differs in contents and settings.

--transaction-version OFS.DEMO

--function

The pattern in the transaction OFS string that specifies the /FUNCTION/PROCESSING FLAG options. The FUNCTION option can have the following values (partial list):

  • I - "Input" (default)
  • D - "Delete"
  • R - "Reverse"
  • V - "Verify"

The PROCESSING FLAG can have the following values (partial list):

  • PROCESS (default)
  • VALIDATE
  • BUILD
--function ofs.demo/i/validate

A few examples of OFS options

OFS options
VERSION
FUNCTION
PROCESSING FLAG
OFS.DEMO/I/PROCESS
OFS.DEMO
I
PROCESS
OFS.DEMO
OFS.DEMO
I
PROCESS
OFS.DEMO/I/VALIDATE
OFS.DEMO
I
VALIDATE
/R
Not set.
R
PROCESS
/D
Not set.
D
PROCESS
OFS.DEMO/V
OFS.DEMO
V
PROCESS
//VALIDATE
Not set.
I
VALIDATE

--company

Indicates in which company context the t24 application is invoked. If not specified, the default company of the user will be used.

--company openlegacy

--gts-control

Controls the outcome of an OFS transaction in case it is faced with an error message and/or an override message from the application being processed.

  • Null - Reject errors / Approve overrides
  • 1 - Errors on HLD / Approve Overrides
  • 2 - Errors Rejected / Overrides in HLD
  • 3 - Errors in HLD / Overrides HLD
  • 4 - Hold Only
--gts-control 1

Enquiry request type options

--enquiry

The Temenos Enquiry name.

--enquiry STMT.ENT.BOOKSTMT.ENT.BOOK

--criteria

Some enquiries include mandatory selection rules called criteria. Because they are mandatory the enquiry fetcher is required to execute them, although they have no role in the metadata extract. Criteria have a filename, value, operand pattern.

Possible values for the Operand:

  • EQ - "Equals"
  • NE - "Not equals"
  • GE - "Greater or equals"
  • GT - "Greater than"
  • GT - "Greater than"
  • LE - "Less than or equals"
  • LT - "Less than"
  • UL - "Not matches"
  • LK - "Like"
  • NR - "Not between"
  • RG - "Between"
  • CT - "Contains"
  • NC - "Not containing"
  • BW - "Begins with"
  • EW - "Ends with"
  • DNBW - "Does not begin with"
  • DNEW - "Does not end with"
  • SAID - "Sounds like"
--criteria ccyId,EQ,1

--criteria-delimiter

Delimiter character that separates criteria elements, e.g. ACCT.ID,EQ,1,TIMESTAMP,EQ,25JUL2020

--criteria-delimiter ','

Other options

--source (required)

The name of the OFS.SOURCE application on the Temenos server side that handles all request types. A Temenos server can have multiple OFS.source applications.

--source OFS.DEMO

--host (required)

The hostname or IP of the Temenos server

--host t24-tafj.openlegacy.com

--operation-name (required)

The added asset name

--operation-name customer

--use-single-model

Whether to use one model per asset or two models: one for the base common business fields, the other for the service unique business fields, (default: false).

--use-single-model true

--tafj-connection-type

Represents the request messaging protocol used to send to TAFJ [SOAP, JMS, JMS_SOLACE] (default: SOAP)

--tafj-connection-type JMS

--version

The Temenos Application Framework version [TAFC, TAFJ] (default: TAFC). The --version TAFJ option is mandatory when setting the module connection details with the ol test connection or the ol add commands.

--version TAFJ

--soap-endpoint-path

The path to the WSDL document from which the connection path to the Temenos TAFJ SOAP server is extracted. The --soap-endpoint-path is mandatory when the TAFJ connection type is SOAP.

--soap-endpoint-path /TAFJServices/services/OFSService?wsdl

--jms-username

The username for the TAFJ JMS connection type

--jms-username user001

--jms-password

The password for the TAFJ JMS connection type

--jms-password P@ssw0rd

--charset

The request character encoding standard, (default: UTF-8)

--charset ANSI

--protocol

The protocol (http:// or https://) (default value is http://)

--protocol https

--port

The Temenos system port on the remote server (default: 80)

--port 20002

--username

The valid Temenos account username

--username user001acc

--password

The valid Temenos account password

--password P@ssw0rd2

--timeout

The period in milliseconds to establish a connection between a client and a server. When the server doesn't send a response within this period, the connection is reset with a corresponding error.

--timeout [missing_value]

--additional

key-value pairs of dynamic options

--additional [missing_value]

--profile

The connection profile of ol add or ol test connection (see: Connection Profiles).

--profile dev
--profile qa

How does the connector work on runtime

The Temenos-t4-TAFJ connector runtime data flow consists of the following steps:

  1. First, the data consumer sends a data query described in JSON to the OpenLegacy Temenos service. 
  2. After receiving the request, the OpenLegacy Temenos service converts the JSON data query to either a Temenos transaction or a Temenos Enquiry.  The service then sends the transaction or Enquiry to the remote Temenos data source. 
  3. The remote Temenos data source processes the Enquiry or the transaction and responds with the required data.