RDM on Demand

RDM on Demand
Banking Example
Copyright © 2007–2016 by Ataccama. All rights reserved.
Read the most up-to-date documentation for the latest Ataccama release online at
docs.ataccama.com
Table of Contents
Table of Contents
1 Introduction
4
1.1 Banking Data Model
4
2 Banking Data Model Details
7
2.1 Branch Table
7
2.1.1 Table Definition
2.1.2 Table Visualization
2.1.3 Foreign Keys to Several Tables
2.1.4 Regular Expression Validations
7
7
8
8
2.2 Product Table
9
2.2.1 Table Definition
2.2.2 Table Visualization
2.2.3 Foreign Keys to Six Tables
2.2.4 Web Service for Reading Data
10
10
10
11
2.3 City Table
11
2.3.1 Table Definition
2.3.2 Table Visualization
2.3.3 Flag Images Rendered from URLs
2.3.4 GPS Coordinates to Google Maps
2.3.5 SQL Validation
12
12
12
12
13
2.4 Org Chart
14
2.4.1 Table Definition
2.4.2 Table Visualization
2.4.3 Self References Supported
14
14
14
2.5 Currency Table
2.6 Canadian Region Table
14
14
2.6.1 Table Definition
2.6.2 Table Visualization
15
15
2.7 Canadian Province Table
15
2.7.1 Table Definition
2.7.2 Table Visualization
15
16
2.8 Product Division Table
16
2.8.1 Table Definition
2.8.2 Table Visualization
16
16
2.9 Product Group Table
17
2.9.1 Table Definition
2.9.2 Table Visualization
17
17
2.10 Product LOB Table
17
2.10.1 Table Definition
2.10.2 Table Visualization
18
18
2.11 Product Eligibility Table
18
2.11.1 Table Definition
2.11.2 Table Visualization
19
19
2.12 Product Card Brand Table
19
2.12.1 Table Definition
20
2
Table of Contents
2.12.2 Table Visualization
20
2.13 Product Term Maturity Table
20
2.13.1 Table Definition
2.13.2 Table Visualization
21
21
2.14 Person Table
21
2.14.1 Table Definition
2.14.2 Table Visualization
21
22
3
1 Introduction
1 Introduction
The Banking example is a sample Reference Data Manager (RDM) instance intended to help you
understand the main features and processes of RDM on Demand. The sample reference data is information
about bank branches, their products, geography presence, employees. The banking example contains the
standard RDM on Demand product, meaning all RDM features are available.
Within the Banking example, you can modify both the reference data in the RDM web application and the
model definition in the Reference Data Manager Designer (RDM Designer). See the RDM Web Application
User Guide to learn how to work with reference data in the RDM and Getting Started with RDM
Designer to learn how to build the RDM solution in the RDM Designer.
1.1 Banking Data Model
The Geography example data model consists of 15 tables, the image below demonstrates their
relationships.
Data Model Used in the Banking Example
Table [name]
Records
[count]
Branch
8
Attributes [count(list)]
11 (Name, Code, Branch Manager, Phone, City, Address,
Valid From, Valid To, Product Groups, Include in DWH
Dimensions, Start Loading From)
4
Database
size [kB]
8
1 Introduction
City
23
5 (ID, Name, Region, GPS, Logo)
8
Canadian
Province
13
4 (ID, English Name, French Name, Abbreviation)
8
Canadian
Region
27
3 (ID, Name, Abbreviation)
8
Currency
179
4 (ID, ISO 4217 Code, Currency Number, Currency Name)
16
Organization
Chart
4
3 (ID, Unit, Managing Unit)
8
Person
44
3 (Employee ID, Name, Role)
8
Product
521
14 (GUID, Sort Order, Preferred Name, Long Name, Short
Name, Abbreviation, Currency Code, Product Code, Product
Division Code, Product Group Code, Product LOB Code,
Product Eligibility Code, Product Card Brand Code, Product
Term Maturity Code)
96
Product Card
Brand
5
7 (GUID, Sort Order, Preferred Name, Long Name, Short
Name, Abbreviation, Product Card Brand Code)
8
Product
Division
6
7 (GUID, Sort Order, Preferred Name, Long Name, Short
Name, Abbreviation, Product Division Code)
8
Product
Eligibility
5
7 (GUID, Sort Order, Preferred Name, Long Name, Short
Name, Abbreviation, Product Eligibility Code)
8
Product Group
13
7 (GUID, Sort Order, Preferred Name, Long Name, Short
Name, Abbreviation, Product Group Code)
8
Product LOB
61
7 (GUID, Sort Order, Preferred Name, Long Name, Short
Name, Abbreviation, Product LOB Code)
8
Product Term
Maturity
22
7 (GUID, Sort Order, Preferred Name, Long Name, Short
Name, Abbreviation, Product Maturity Code)
8
Representative
Assignment
1
2 (Branch, Reps)
8
TOTAL
216
5
1 Introduction
See 2 Banking Data Model Details for more information on tables defined in this example and RDM features
implemented in them.
6
2 Banking Data Model Details
2 Banking Data Model Details
This article demonstrates the definition of tables in RDM Designer, their visualization with populated data
in RDM, and selected RDM features implemented in some tables. This is not a complete, formal model
definition.
2.1 Branch Table
The Branch table is the central table in the model. It contains attributes that describe the bank's branches.
2.1.1 Table Definition
Branch Table Definition in RDM Designer
2.1.2 Table Visualization
Branch Table Populated with Data in RDM
7
2 Banking Data Model Details
2.1.3 Foreign Keys to Several Tables
Foreign key attributes to parent tables Person, City, and Product assure error-free value entry for those
attributes. As an example from the Person table, which provides values for the Branch Manager attribute,
there are two records named "John Smith;" however it is possible to choose the correct one based on the
details available about each record. See Creating Table Relationships in RDM Designer to learn how to
create a parent-child relationship in RDM Designer.
Parent Value Lookup in RDM
2.1.4 Regular Expression Validations
The Code and Phone attributes have regular expression–based validation. See Creating Domains in RDM
Designer to see how to create a domain with a regular expression in RDM Designer.
Regular Expression Definition in RDM Designer
The screenshot below shows what happens a user enters a non-compliant character to the Code field
when creating a record in RDM.
8
2 Banking Data Model Details
Code Validation in Action in RDM
2.2 Product Table
Product is table that contains the bank's products. Besides an implemented web service for reading data
from this table, the Product table is an example of multiple relationships with child tables.
9
2 Banking Data Model Details
2.2.1 Table Definition
Product Table Definition in RDM Designer
2.2.2 Table Visualization
Product Table Populated with Data in RDM
2.2.3 Foreign Keys to Six Tables
The Products table uses values from six different tables containing various product parameters and
attributes, such product division, line of business, eligibility, term, and others. Having these attributes in
separate tables ensures consistency and up-to-dateness of product referential data. See Creating Table
Relationships in RDM Designer to learn how to create a parent-child relationship in RDM Designer.
10
2 Banking Data Model Details
Lookups to Six Tables in the Record Editing Dialog
2.2.4 Web Service for Reading Data
The Product table has a defined web service allowing to make calls to this table via SOAP over HTTP. See
Enabling Web Service Interfaces in RDM Designer to learn how to enable web service for a table in RDM
Designer.
Web Service Defined in RDM Designer
2.3 City Table
City contains locations of branches. The table has a foreign key to Region table.
11
2 Banking Data Model Details
2.3.1 Table Definition
City Table Definition in RDM Designer
2.3.2 Table Visualization
City Table Populated with Data in RDM
2.3.3 Flag Images Rendered from URLs
The City table has a special value provider assigned to the Logo column. It renders images from ULRs
values that are input as column values. See Adding and Configuring Tables in RDM Designer to learn how
configure a value provider for a column.
2.3.4 GPS Coordinates to Google Maps
The GPS column in the table link directly to Google Maps. The functionality is achieved by assigning a
special value presenter in the RDM Designer. See Adding and Configuring Tables in RDM Designer to
learn how configure a value provider for a column.
12
2 Banking Data Model Details
2.3.5 SQL Validation
RDM supports the usage of complex validations that utilize SQL scripts for validations across columns and
rows of the table specified and other tables. In this example, if the number of cities is higher than 23, a user
will get a warning when creating a record. It will be possible to save the record, but not to publish it. This
feature uses a special RDM SQL syntax similar to ANSI SQL. See Creating SQL Validations in RDM Designer
to learn how to add an SQL validation to a table.
Definition of the SQL Validation in RDM Designer
The screenshot below shows what happens a user tries to create a twenty-fourth record in the City table in
RDM.
SQL Validation in Action in RDM
13
2 Banking Data Model Details
2.4 Org Chart
The Org Chart table is designed to show a hierarchy of the bank's employees. For this purpose it has a selfreference implemented.
2.4.1 Table Definition
Org Chart Table Definition in RDM Designer
2.4.2 Table Visualization
Org Chart Table Populated with Data in RDM
2.4.3 Self References Supported
The managing unit column is a self-reference. It references values from the unit column (via the id column)
in order to show a hierarchical relationship between units. This functionality is achieved in the same way as
creating a relationship between two different tables. In case of a self-reference relationship is created
within the same table See Creating Table Relationships in RDM Designer to learn more.
2.5 Currency Table
The Currency table lists currencies used with the bank's products.
2.6 Canadian Region Table
Canadian Region contains a list of basic administrative divisions, like states or provinces. The table contains
a foreign key to the Canadian Province table and is a parent to the CIty table.
14
2 Banking Data Model Details
2.6.1 Table Definition
Region Table Definition in RDM Designer
2.6.2 Table Visualization
Region Table Populated with Data in RDM
2.7 Canadian Province Table
Canadian Province contains a list of Canadian provinces and territories, the administrative units in Canada.
This is a parent table to the Canadian Region table.
2.7.1 Table Definition
Canadian Province Table Definition in RDM Designer
15
2 Banking Data Model Details
2.7.2 Table Visualization
Canadian Province Table Populated with Data in RDM
2.8 Product Division Table
Product Division contains the list of bank divisions that services a product. This is one of the parent tables
to the Product table.
2.8.1 Table Definition
Product Division Table Definition in RDM Designer
2.8.2 Table Visualization
Product Division Table Populated with Data in RDM
16
2 Banking Data Model Details
2.9 Product Group Table
Product Division contains the list of general product types available in the bank. This is one of the parent
tables to the Product table.
2.9.1 Table Definition
Product Group Table Definition in RDM Designer
2.9.2 Table Visualization
Product Group Table Populated with Data in RDM
2.10 Product LOB Table
Product LOB contains the list of lines of business used in the bank. This is one of the parent tables to the
Product table.
17
2 Banking Data Model Details
2.10.1 Table Definition
Product LOB Table Definition in RDM Designer
2.10.2 Table Visualization
Product LOB Table Populated with Data in RDM
2.11 Product Eligibility Table
Product Eligibility contains the list of customer types in the bank, which determine who is eligible for which
product. This is one of the parent tables to the Product table.
18
2 Banking Data Model Details
2.11.1 Table Definition
Product Eligibility Table Definition in RDM Designer
2.11.2 Table Visualization
Product Eligibility Table Populated with Data in RDM
2.12 Product Card Brand Table
Product Card Brand contains the list of credit card companies whose cards the bank can issue. This is one
of the parent tables to the Product table.
19
2 Banking Data Model Details
2.12.1 Table Definition
Product Card Brand Table Definition in RDM Designer
2.12.2 Table Visualization
Product Card Brand Table Populated with Data in RDM
2.13 Product Term Maturity Table
Product Term Maturity contains the list of product terms available in the bank. This is one of the parent
tables to the Product table.
20
2 Banking Data Model Details
2.13.1 Table Definition
Product Term Maturity Table Definition in RDM Designer
2.13.2 Table Visualization
Product Term Maturity Table Populated with Data in RDM
2.14 Person Table
Person contains the list of employees in the bank's branches. This table is a parent table to the Branch
table.
2.14.1 Table Definition
Product Term Maturity Table Definition in RDM Designer
21
2 Banking Data Model Details
2.14.2 Table Visualization
Product Term Maturity Table Populated with Data in RDM
22