Uploaded by TAMIL SALANGAI

Insight BI Platform R16: Multi-Company Data Integration

advertisement
Insight BI Platform R16 Multi-Company
Table of Contents
2
High Level Requirement ........................................................................................................................ 4
3
T24 Multi-Company Data....................................................................................................................... 4
3.1
3.1.1
3.2
3.2.1
3.3
3.3.1
Multi-Company Joins in Insight ................................................................................................... 5
T24 File Types ........................................................................................................................ 5
General Procedure to determine what the join should be .......................................................... 7
T24 Company Metadata ......................................................................................................... 8
Primary and Foreign Natural Keys ........................................................................................... 10
Currency ................................................................................................................................ 10
4
Challenges ........................................................................................................................................... 10
5
Implementation Requirements ............................................................................................................ 10
6
5.1
DW.Export ................................................................................................................................ 10
5.2
InsightImport ............................................................................................................................. 10
5.3
InsightLanding .......................................................................................................................... 10
5.4
InsightStaging ........................................................................................................................... 10
5.5
InsightWarehouse ..................................................................................................................... 10
5.6
Cubes ....................................................................................................................................... 10
5.7
Reports ..................................................................................................................................... 11
Phase II................................................................................................................................................ 11
6.1.1
Security ................................................................................................................................. 11
Disclaimer
The information contained in this document is subject to change without notice. If you find any problems in
the documentation, please report them to us in writing. Temenos does not warrant that this document is errorfree.
T24 and jBASE are registered trademarks of Temenos Holdings NV. Other names may be trademarks of
their respective owners.
1 High Level Requirement
Create a ModelBank configuration that will work for many different multi-company scenarios without the need
to change v_source views, any downstream data models, reports and analysis.
It should be possible to view multi-company data at the detailed or consolidated level. For example it should
be possible for someone with the correct security permissions to create a report that shows total balance by
lead company across time using tables in the existing InsightWarehouse data model.
2 T24 Multi-Company Data
Possible T24 multi-company scenarios are listed here.
T24 Set-up
Extract
Single Company/
Single Company
Multi-book
Single Extract
Multi-company
Single Extract
Extended Multicompany
Single Extract
All above
Multiple Extract
Extract Type
Shared?
Note
In Scope
NA
Single
Company
Implementati
on
Y
Merge Company
Extract
Customer
Merge Company
Extract
Customer
Multiple extracts
Customer
Y
Currency
Y
Currency
Not tested
Y
Multicurrency at
lead
company
level, will
require cross
rates to
convert to
base
currency
Phase 2?
This scenario
will not be
catered for
since there
will be
clashes
between
master
companies.
Additional
work would
be required
N
Currency
Multiple Extract
Multiple Extracts
from multiple
instances of T24
into one Insight
Instance
Multiple extracts
Customer
to model this
data
correctly.
2.1 Multi-Company Joins in Insight
2.1.1 T24 File Types
The following table type need to be joined in v_source views.
Table Type
Description
INT - Installation
There is only one copy of installation level tables in a T24 database so the actual
table name does not include a company mnemonic. Examples of INT level tables
include COMPANY, USER, VERSION and ENQUIRY
CUS - Customer
The CUSTOMER and related tables, often include the customer number in the key.
Examples include CUSTOMER.DEFAULT and LIMIT. This type of table can be
shared between lead companies.
CST - Customer table
Parameter tables related to customer examples include INDUSTRY and SECTOR,
together with parameter tables for limits, collateral and position management. This
type of table can be shared between lead companies.
FIN - Financial
There will always be one copy of a financial table per Lead Company. All branches
linked to a Lead Company will share the same financial table. Lead Company’s do not
share FIN tables. Examples include
ACCOUNT,FUNDS.TRANSFER and TELLER
FRP - Financial
Reporting
There will be one copy of a financial table for every company in the system, examples
include the COB job list tables and REPGEN work files like
RGP.TRANS.JOURNAL2
FTD - Financial Table
Descriptive
Financial parameter tables that do not contain data with amounts or rates linked to a
particular local currency. Examples include the AA.PRODUCT type tables and
BASIC.INTEREST. This type of table can be shared between lead companies.
FTD tables can be shared between Companies, the Id of the owner Company is
specified in the DEFAULT.FINAN.COM Field
If a Company owns only a few FTD type files, they are specified in SPCL.FIN.FILE to
SPCL.FIN.MNE Fields.
FTF - Financial Table
Financial
Financial parameter tables that contain financial data, often contain local currency
amounts. Examples include GROUP.DEBIT.INT, GENERAL.CHARGE and TAX.
This type of table can be shared between lead companies.
CCY - Currency
Tables containing currency related information examples include CURRENCY and
PERIODIC.INTEREST. This type of table can be shared between lead companies.
NOS - Nostro
Tables related to NOSTRO accounts. Examples include AGENCY and
NOSTRO.ACCOUNT. This type of table can be shared between lead companies.
An example of a required join is a join from the Account (FIN) table to the Customer (CUS) table.
Account Table – Not share between companies
LEAD_CO_MNE
BRANCH_CO_MNE
MIS_DATE
@ID
CUSTOMER
BNK
BNK
2014-08-12
EUR199610001
NULL
BCH
BCH
2014-08-12
120000000097
100101
BNK
BNK
2014-08-12
110000002698
630001
Customer Table – Shared between all lead companies
LEAD_CO_MNE
BRANCH_CO_MNE MIS_DATE
@ID
BNK
BNK
2014-08-12
100100
BNK
BNK
2014-08-12
100101
BNK
BNK
2014-08-12
100103
Clearly it is not possible to join the Account table to the Customer table without figuring out the Customer
Company associated with Branch_Co_Mne BCH.
The company table (below) is used to determine this based on the File Type of the CUSTOMER table in
Table 1. In the column [Used to join to table type] we see that we should join on
Company.Customer_Mnemonic.
Company Table – Shared Between lead companies
@ID
MNEM CUSTOMER_M FINANCIA CURRENCY_M DEFAULT_FI
ONIC NEMONIC
L_MNE
NEMONIC
NAN_MNE
SPCL_CU
ST_MNE
FINAN_FIN
AN_MNE
CH001 BCH
0002
BNK
BCH
BNK
BNK
NULL
BNK
LU001 BNK
0001
BNK
BNK
BNK
BNK
NULL
BNK
LU001 NII
9003
BNK
NII
BNK
BNK
NULL
BNK
So the SQL join would be:
Select a.LEAD_CO_MNE Account_Branch_Co_Mne, a.CUSTOMER, a.ONLINE_ACTUAL_BAL,
a.[@id] Account_id, c.lead_co_mne as Customer_Lead_Co_Mne,
com.mnemonic as Company_Mmnemonic, com.Customer_Mnemonic as
Company_Customer_Mnemonic, A.Customer as Customer_ID
from [InsightSource].[BS].[ACCOUNT] a
LEFT JOIN [InsightSource].BS.COMPANY COM
ON COM.MNEMONIC = A.BRANCH_CO_MNE
LEFT JOIN [InsightSource].[BS].[CUSTOMER] c
ON
COM.CUSTOMER_MNEMONIC = c.LEAD_CO_MNE and
a.CUSTOMER = c.[@ID]
Resulting in:
Account_Bra
nch_Co_Mne
CUST ONLINE_AC Accou
OMER TUAL_BAL nt_id
Customer_Le Company_M Company_Custo Custo
ad_Co_Mne mnemonic
mer_Mnemonic
mer_ID
BCH
10010 -57776.19
1
120000 BNK
000022
BCH
BNK
100101
BCH
10010 NULL
1
120000 BNK
000038
BCH
BNK
100101
BCH
10010 -107624.27
1
120000 BNK
000049
BCH
BNK
100101
2.2 General Procedure to determine what the join should be
1. Determine the type of table of the core (the first table referenced in the From Clause of a v_source
view) table. In the case of v_sourceAccountBSAA_Accounts it is AA_ARRANGEMENT, by
refering to the FILE_CONTROL table we determine that AA_ARRANGEMENT is a
FIN table.
2. Then by referring to Table 1 and the column [Used to Join Table Type], we look for FIN and find that
FIN relates to Financial_mne.
3. Therefore the join from the Company table to the Joined to (ACCOUNT) table would be ON
COM.FINANCIAL_MNE = A.LEAD_CO_MNE and AA. LINKED_APPL_ID = A.[@ID]
4. The first part of the join is usually the same.
5. Select * FROM [InsightSource].[BS].[AA_ARRANGEMENT] aa
LEFT JOIN
[InsightSource].[BS].[COMPANY] COM ON COM.MNEMONIC = AA.BRANCH_CO_MNE, the
first table always links on BRANCH_CO_MNE.
6. The Complete join would be
Select *
FROM [InsightSource].[BS].[AA_ARRANGEMENT] aa
LEFT JOIN
[InsightSource].[BS].[COMPANY] COM ON COM.MNEMONIC = AA.BRANCH_CO_MNE
LEFT JOIN
[InsightSource].[BS].[ACCOUNT] a ON a.LEAD_CO_MNE = COM.FINANCIAL_MNE
AND A.[@ID] = aa.LINKED_APPL_ID The other table always links on
LEAD_CO_MNE.
7. Any subsequent joins can (generally) we joined on the Company table which
has already been joined to the first table in the v_source view.
2.2.1
T24 Company Metadata
The company table is used to determine the Branch/Company hierarchy, as well as to serve as an
intermediary table so that tables of different file types can be joined.
Table 1 – Company Metadata
Field
Description
@id
The most granular level of
company and or branch, the
bottom of the hierarchy
Mnemonic
The mnemonic of the @id
record
Financial_com
The parent of the @id record
Financial_mne
The mnemonic of
Financial_com
Used to join to table
type
FIN, FRP
Customer_company
Customer_mnemonic
CUS
Detail
Currency_company
Currency_mnemonic
SPCL_FIN_FILE
CUR
If a Company owns only a few
FTD type files, they can be
specified in SPCL.FIN.FILE to
SPCL.FIN.MNE Fields
DEFAULT_FINAN_MNE
FTD = Case When
SPCL_FIN_FILE is
null THEN
Default_Finan_Mne
ELSE
SPCL_FIN_MNE
END
INT
SPCL_FIN_MNE
Company Type
case when Financial_com
= customer_company then
'Master'
The logic here determines
which records are lead
companies, master company
or branch
when [@id] =
financial_com then
'lead'
else 'Branch' end
Default_Com
Used to identify the company
record that will provide the
data to default values
into the new company record
being created
SPCL_CUST_FILE
CST = CASE WHEN
COM.SPCL_CUST_
FILE IS NULL THEN
COM.DEFAULT_CU
ST_MNE ELSE
COM
SPCL_CUST_MNE
END
DEFAULT_CUST_MNE
SPCL_CUST_MNE
Finan_Finan_Mne
FTF
2.3 Primary and Foreign Natural Keys
It should be ensured that all foreign keys will match to primary keys. For example the method used to
calculate the SourceBranchID (Foreign Natural Key) in v_SourceAccountBS should be the same as that used
to calculate SourceBranchID (Primary Natural Key) in v_SourceBranchBS. So if the SourceBranchID is
Company/ Branch Mnemonic + Company Code, Branch should be the lowest level of granularity in the
company table, eg. 'BS:' + COM.MNEMONIC + ':' + CAST(A.[CO_CODE] as varchar) as
[SourceBranchId].
2.3.1 Currency
In the case of multiple currencies at the lead company level additional data will be required. More to Come in
subsequent phase.
3 Challenges
Liking to tables such as SC_POS_ASSET (INT Table Type) from other FIN tables will be challenging since it
links on COMPANY.DEFAULT_FINAN_MNE. There is no information in the table which shows which Branch
each record in the table is associated with.
4 Implementation Requirements
4.1 DW.Export
Needs to be run as Merge Company.
4.2 InsightImport
T24 data is extracted into one set of tables in Insight Import.
For example the following files from DW Export, SGL_AA_ARRANGEMENT_0002.csv and
BNK_AA_ARRANGEMENT_0008.csv are extracted into one table called AA_Arrangement in Insight.
Branch_Co_Mne/Lead_Co_mne are the key field to distinguish between files inserted into the same table.
4.3 InsightLanding
Additional index fields may need to be added into the ExtractList.PrimaryIndexColumns field.
4.4 InsightStaging
V_source views need to use the join methodology described in this document.
4.5 InsightWarehouse
New field(s) will be added to the datadictionary so that the company hierarchy can be represented.
Lead_company needs to be added at the very least.
The company hierarchy will need to be represented in the DimBranch table.
4.6 Cubes
A Company Hierarchy has been added to the Branch Dimension in the cubes.
4.7 Reports
All reports will need to have the data separated by Branch_Co_Mne/ Lead_Co_Mne. Parameters will need to
be added so that users can request only a certain Lead Company or Branch Company or a consolidated
view.
5 Phase II
FactCurrency? In order to handle multiple currencies per DW.Export.
5.1.1 Security
Security will be at the record level, based on Branch_Co_Mne.
Download