GEN7.Data Storage When Database Used Is Other Than j4

Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

Data Storage When Database Is Other Than

jBASE

TEMENOS EDUCATION CENTRE

Warning: This document, is protected by copyright law and international treaties. No part of this document may be reproduced or transmitted in any form
or by any means, electronic or mechanical, for any purpose, without the express written permission of TEMENOS HEADQQATERS SA. Unauthorized
reproduction or distribution of this presentation or any portion of it, may result in severe civil and criminal penalties, and will be prosecuted to the
maximum extent possible under applicable law.” Information in this document is subject to change without notice.

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 1

1
Version History
Version Changes Date Author Reviewer

1.0 Initial 2005 Alagammai

1.1 Total revamp 2007 Alagammai

1.2 Inclusion of introduction 2007 Sara Cleur Alagammai


slides to highlight jBASE
and T24 relationship and
inclusion of jQL and SQL
conversion.

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 2

2
Agenda

‰ Architecture – An overview with the jEDI Driver


‰ Data Storage and working of the jEDI Driver

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 3

3
Architecture

When a database other than


jBASE is used, a jEDI driver is
installed on each of the T24
application servers

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 4

4
T24 And jBASE

‰ jBASE is the native database for T24


‰ jBASE is an open database
‰ Enables us to communicate with external databases such as
Oracle, DB2 and SQL using direct connect drivers
‰ jBASE is not only T24’s database but also its development
environment. Using jBASE we can
‰ Write Code
‰ Compile code
‰ jBASE and T24 must go together

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 5

5
Data Storage When Database Is Other Than jBASE

‰ When a database other than jBASE is used, all data is stored in


the database and the jBASE Run Time stores the T24 business
logic (code)

‰ Depending on the database used, a jEDI driver needs to be


installed on each of the T24 application servers
‰ Oracle – jEDI XML Oracle Driver
‰ DB2 – jEDI DB2 XML Oracle Driver etc..

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 6

6
Data Storage When Database Is Other Than jBASE

‰ A jEDI driver is required as all T24 business logic is in Infobasic


and Infobasic cannot be directly understood by external
databases
‰ The primary job of the jEDI driver is to
‰ Establish a connection to the database
‰ Transform Infobasic commands and jBASE commands to SQL
statements as understood by the underlying database
‰ Transform the result returned by the database into a format that T24
and the jBASE run time understand

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 7

7
Data Storage When Database Is Other Than jBASE

So, how does data storage and retrieval take place when the
database used is not jBASE?

Let us understand this with an example.

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 8

8
Understanding Data Storage And Retrieval

‰ In order to input a new customer record the CUSTOMER


application is opened, the data is input and committed.
‰ All field level validations and ‘commit’ level validations will
happen as always.
‰ Now that all validations are complete, the record needs to be
stored in the database.
‰ Therefore, the data file will be accessed to store the data. (The
path and the actual name of the data file can be obtained from
the VOC.)

JED VOC FBNK.CUSTOMER


F
../mbdemo.data/st/FBNK.CUST000
../mbdemo.dict/F.CUSTOMER]D

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 9

9
Understanding Data Storage And Retrieval

‰ Normally, if jBASE is the database, this data file will contain the
actual customer records. When an external database is used, the
data file will not contain records, but will contain a reference to
the database table that actually stores the data.

JBC__SOB XMLORACLEInit STFBNK_CUST000


Where
‰ JBC : jBASE compiler
‰ SOB : Shared Object
‰ XMLORACLEInit : Name of the function in the XML Oracle
driver that needs to be invoked
‰ STFBNK_CUST000 : Table name in Oracle
‰ ST : Product
‰ FBNKCUST_000 : Actual unix file name(‘.’ converted to ‘_’)

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 10

10
Understanding Data Storage And Retrieval

‰ STFBNK.CUST000 is the actual Oracle table that will store all


the customer records. The table will contain only tow fields
namely
‰ RecID : Will store the transaction id(customer id in this case)
‰ XMLRecord : Stores the entire customer record , delimited with XML
tags.

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 11

11
Understanding Data Storage And Retrieval

‰ Sample Customer Records


RecID XMLRecord

100069 <row id='100069'><c1>DAOHENGBK</c1><c2>DAO HENG BANK INC</c2><c3>DAO HENG BANK


INC</c3><c5>119 ASIAN MANSION 209 DELA ROSA ST</c5><c6>LEGASPI VILLAGE MAKATI CITY MAN
PH</c6><c10>1111</c10><c11>90</c11><c13>8100</c13><c14>999</c14>
<c15>PH</c15><c16>4</c16><c17>PH</c17><c18>20000101</c18>
<c23>20000101</c23><c26>1</c26><c43>1</c43><c44>18_RICKBANAT1</c44>
<c44 m='2'>28_ANDREABARNES1</c44><c45>0006121042</c45>
<c46>18_RICKBANAT1</c46><c47>US0010001</c47>
<c48>1</c48><c50></c50></row>

100070 <row id='100070'><c1>DBLAMIAMI</c1><c2>DBLA MIAMI</c2>


<c3>DBLA MIAMI</c3><c5>6TH FLOOR 801 BRICKNELL AVENUE</c5>
<c6>MIAMI FLORIDA 33131 USA</c6>
<c10>1111</c10><c11>90</c11><c13>8100</c13><c14>999</c14>
<c15>US</c15><c16>4</c16><c17>US</c17><c18>20000101</c18><c23>20000101
</c23><c26>1</c26><c43>1</c43><c44>18_RICKBANAT1</c44>
<c44 m='2'>28_ANDREABARNES1</c44><c45>0006121039</c45>
<c46>18_RICKBANAT1</c46><c47>US0010001</c47>
<c48>1</c48><c50></c50></row>

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 12

12
jEDI Driver – Data Storage – An Insight

‰ jEDI Driver (Cont.) Application Name : SECTOR


‰ Enables storage of data in XML
SECTOR.CODE DESCRIPTION SHORT.NAME
format
‰ SECTOR application when stored in 1000 Financial Financial Corps
jBASE Corporations
‰ jBASE uses FM (Field Marker) to 1100 Central Banks Central Banks
delimit values of different fields
1200 Building Building Socs
Societies

Table Name : ebSECTOR


‰ SECTOR table when stored in an RECID XMLRECORD
external database
‰ orauser is the name of the schema 1000 <c1>Financial Corporations</c1>
being used <c2>Financial Corps</c2>
– Will differ from one company to
another and may differ from one 1100 <c1>Central Banks</c1>
installation to another <c2>Central Banks</c2>
1200 <c1>Building Societies</c1>
<c2>Building Socs</c2>

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 13

13
jEDI Driver – Data Storage – An Insight

Application Name : SECTOR


‰ jEDI Driver – Multi Value
SECTOR.CODE DESCRIPTION SHORT.NAME
Support
‰ SECTOR application when 1000 Financial Financial Corps
Corporations Financial Insts
stored in jBASE Financial Entities
‰ jBASE uses VM (Value Marker) 1100 Central Banks Central Banks
to delimit multi values
‰ jBASE uses SM (Sub Value 1200 Building Building Socs
Societies
Marker) to delimit sub values

Table Name : ebSECTOR

RECID XMLRECORD

1000 <c1>Financial Corporations</c1>


<c2>Financial Corps</c2>
‰ SECTOR table when stored in <c2 m=‘2’>Financial Insts</c2>
an external database <c2 m=‘3’>Financial Entities</c2>

‰ eb is the product to which the 1100 <c1>Central Banks</c1>


application SECTOR belongs to <c2>Central Banks</c2>
1200 <c1>Building Societies</c1>
<c2>Building Socs</c2>

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 14

14
jEDI Driver – Data Storage – An Insight
Application Name : TRAINING

TRG.CODE DESCRIPTION TRAINER


‰ jEDI Driver – Sub Value Support
1 Basic Technical Alm
‰ TRAINING application when Training Alam
stored in jBASE 2 Advanced Sara
Technical Sheriffa
‰ jBASE uses SM (Sub Value Training
Marker) to delimit sub values 3 Utilities Ramki
Gerard
Nanda

Table Name : stTRAINING

RECID XMLRECORD

1000 <c1>Basic Technical Training</c1>


<c2>Alm</c2>
‰ TRAINING table when stored in
<c2 m=‘1’ s=‘2’>Alam</c2>
an external database
1100 <c1>Advanced Technical
‰ st is the product to which the Training</c1>
application TRAINING belongs <c2>Sara</c2>
to <c2 m=‘1’ s=‘2’>Sheriffa</c2>
1200 <c1>Utilities</c1>
<c2>Ramki</c2>
<c2 m=‘1’ s=‘2’>Gerard</c2>
<c2 m=‘1’ s=‘3’>Nanda</c2>
GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 15

15
Driver Behavior

‰ How do we create files when database used is not jBASE?

At the jsh
prompt

From Oracle

From Oracle SELECT * FROM STUBFILES WHERE ID LIKE ‘%TRG_EXAMPLE%’;

When a file with type XMLORACLE is created, 2 tables (One of the data and one for the dict) are created at
the database level and a file named STUBFILES is updated with the names of the files

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 16

16
Driver Behavior

‰ What happens when we input data into a file?

At the jsh
prompt

From Oracle

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 17

17
Command Translation

‰ The driver converts all jQL to SQL statements.


‰ Example

jQL SQL

READ SELECT

WRITE INSERT/UPDATE

READU SELECT

EB.READLIST SELECT

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 18

18
Log Details

‰ A file named Oradriver.log is available under the HOME (bnk.run)


directory which contains the log of all activities that happen at the
jEDI driver level
‰ In order for the jEDI driver to log details to the log file, set the
following variable in the .profile or the remote.cmd as the case
may be
export JEDI_XMLORACLE_TRACE=1 : Unix
set JEDI_XMLORACLE_TRACE=1 : Windows

GEN5 – 2007.1 Copyright © 2006 TEMENOS HEADQUARTERS SA 19

19

You might also like