Book Image

SAP NetWeaver MDM 7.1 Administrator's Guide

By : Uday Rao
Book Image

SAP NetWeaver MDM 7.1 Administrator's Guide

By: Uday Rao

Overview of this book

Table of Contents (18 chapters)
SAP NetWeaver MDM 7.1 Administrator's Guide
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface

MDM Server know how


In the following section, we describe the fundamental components of an MDM environment and discuss about the qualities of a master data repository. Finally, we briefly talk about the table structure and various types of tables available in MDM. This knowledge is useful in proper creation and maintenance of MDM repositories.

What is an MDM Server?

An MDM Server is the heart of an MDM system. It does the job of managing the master data in multiple MDM repositories along with catering to various clients across the network.

An MDM Server sits on top of a commercial SQL backend database. Various backend databases are compatible with the SAP NetWeaver MDM 7.1 Server such as Oracle, Microsoft SQL Server, IBM DB2, and SAP MaxDB.

The MDM software environment consists of the following components:

  • MDM Console

    It is the administrative tool for monitoring MDM Servers, creating and maintaining the structure of MDM repositories as well as managing the repository access control for various users.

  • MDM Rich GUI Clients

    By interacting with the MDM Server, MDM clients are able to import, access, manage, syndicate, and publish master data.

    The following are rich user interface clients available in SAP MDM:

    • MDM Data Manager

    • MDM Import Manager

    • MDM Syndicator

    Apart from the ones aforementioned, SAP MDM also provides customizable interfaces such as iViews (used in SAP Enterprise Portal applications) and APIs (such as Java APIs, ABAP APIs, and so on).

  • DBMS engine

    A commercial SQL Database Management Server (DBMS) stores the master data with controlled access by the MDM Server. SAP NetWeaver MDM 7.1 supports Microsoft SQL Server, Oracle, IBM DB2, and SAP MaxDB.

MDM auxiliary servers

An MDM system, in addition to the MDM Data Server, can also include the following auxiliary servers:

  • Master Data Import Server (MDIS)

    This server interacts with the MDM Data Server to perform automated data imports into an MDM repository. It is an automated version of the MDM Import Manager.

  • Master Data Syndication Server (MDSS)

    The MDSS interacts with the MDM Data Server to perform automated syndication of data from an MDM repository. It is an automated version of the MDM Syndicator.

  • Master Data Layout Server (MDLS)

    The MDLS works with the MDM Data Server and enables the publication of master data from an MDM repository.

Note

Administration of each of these auxiliary servers has to be performed using the MDM Console.

Each auxiliary server's interaction with the MDM Data Server is independent of each other.

What is an MDM repository?

Simply put, an MDM repository is a database consisting of text, images, PDFs, and other data about each record, and in some cases containing up to millions of records. Size alone does not qualify a database to be called a master repository. It is also characterized by its richness and complexity of the underlying information. SAP MDM's underlying data is maintained in a unique way in the database. A feature that sets an MDM repository apart from the rest is the way it can be searched and published.

As described before in Rich Product-Content Management scenario, an MDM repository published as a catalog allows a potential customer to browse the products of a vendor in a convenient way. This makes the presentation, organization, and design of the published catalog critical for a vendor's brand creation and serves as a unique selling point. Thus, a master repository helps in creating and reinforcing a corporate image.

What makes a database a master data repository?

In order to consider a database as an essential master repository, the following points must be kept in mind:

  • Rich master data

    High quality and well-structured master data is the basis of a master repository. Master data used for product information that only provides fields such as part number, price, and product description does not serve the purpose. Apart from the information common to all the products (such as part number and price) a good master data must also include detailed product specifications (or attributes) applicable to a handful of products. Rich content such as images, text blocks, and PDFs are also the qualities of master data.

  • Classification

    Master data records are classified based on a taxonomy consisting of an arbitrary hierarchy that further includes categories and subcategories. An MDM repository may include multiple simultaneous taxonomies co-existing with an unlimited number of categories and sub-categories. A single category may be included more than once within the hierarchy. For instance, consider an MDM repository of product information. It may include computer storage accessories (such as a 4 GB flash memory) under both the memory category and the accessories category.

  • Product families

    Also known as units, presentations, or modules, a product family allows us to further partition the products in each category of an MDM repository (representing product information) into smaller groups based upon the values of other fields and/or attributes. This is very easily seen in a printed catalog which provides a model for organizing information on groups of records into product families within an MDM repository. Family data within a product family may contain images, descriptive paragraphs, and feature bullets. A detailed specification on each product arranged into a well-structured tabular layout is also within the storage capabilities of a product family.

  • Product relationships

    Relationships for products may include structural relationships such as assemblies, kits, bundles, and matching sets (like nuts and screws) as well as merchandising relationships such as cross-sells, up-sells, accessories, and consumables. Such a wide variety of product relationships can be used as a sales tool for effective selling in a published catalog. This makes it important for an MDM repository to effectively capture and represent product relationships such as the ones mentioned before.

  • Product hierarchies

    Master data may contain data which is hierarchical in nature. This hierarchical information needs to be stored in a separate hierarchy sub-table associated with the master data. For example, a manufacturer field requiring division and subdivision information needs to be maintained as a hierarchy.

MDM repository structure

Proper creation and maintenance of an MDM repository requires a thorough understanding of the available tables and data types. The following section familiarizes introductory concepts related to the structure of an MDM repository.

A typical MDM repository consists of the following types of tables:

  • Main tables

    Usually information about a master data record is looked up in a main table. A main table stores primary information about a business object such as a product or a supplier.

    Starting with SAP NetWeaver MDM 7.1, every MDM repository has one or more main tables. For instance, a repository might contain separate main tables for products and business partners. Individual records within a product's main table would contain a particular product's data in the form of fields such as SKU, product name, product description, manufacturer, price, and business partner. Whereas each record within a business partner main table would contain individual fields describing information about each partner.

    Note

    A freshly created MDM repository consists of a default main table named Products. This repository provides a base for designing a custom master data repository to suit customer requirements.

  • Sub-tables

    A sub-table stores the lookup information about every record in the main table. An MDM repository can have any number of sub-tables. A sub-table can define the set of legal values to which a corresponding lookup field in the main table can be assigned. For instance, consider an MDM repository holding product information. A manufacturer field within the main table of this repository may lookup from a sub-table the actual list of allowed manufacturer names. Only those values entered as records in the sub-table can be assigned to the manufacturer lookup field of the main table.

    Note

    With the help of lookup sub-tables MDM also enforces Data Integrity.

    Main table records have data links to lookup sub-table records which also helps in reducing the size occupied by a database.

    Another useful consequence of using lookup sub-tables is that it makes the MDM repository more search-friendly by associating a set of legal values with lookup fields. Thereby ensuring a consistent set of values being used across the entire repository.

  • Object tables

    These are special types of lookup sub-tables where each object table stores a single type of object. Examples of object tables are:

    • Images

    • Sounds

    • Videos

    • Binary objects

    • Text blocks

    • Copy blocks

    • Text HTML

    • PDF tables

    MDM does not allow for storing such objects directly in the main or sub-table fields of an MDM repository. Instead, each object is defined or imported into the repository once and then linked to a main or sub-table field as a lookup into the object table of that type.

    Note

    Data Integrity is ensured by MDM using object tables as they eliminate redundant information. Each object appears only once in the MDM repository and linked one or more times to the main table records.

    A freshly created MDM repository contains, by default, an object table for each type of object.

    As an exception, text blocks alone can be stored in a large text field in the main and sub-table records rather than as a lookup into a text block sub-table. This should be done only with the intention of not reusing the blocks of text.

  • Special tables

    The following are included as special tables in an MDM repository:

    • Image variants

    • Masks

    • Families

    • Relationships

    • Workflows

    • Named searches

    • Tuples

    • Data groups

    • Validation groups

    Note

    A freshly created MDM repository, by default, contains a single instance of each of these special tables.

    In the MDM Console, a user cannot view the Data Groups and Validation Groups tables as they are available in the MDM Data Manager.

  • System tables

    The following are the system tables available in an MDM repository:

    • Roles

      Stores the user roles defined in the MDM repository

    • Users

      Maintains the details of all users created in the MDM repository

    • Connections

      Holds information about the currently ongoing connection sessions

    • Change tracking

      Stores all the changes made to a field being tracked providing an audit log.

    • Remote systems

      Each record in this table corresponds to a logical system that supplies data to, or consumes data from, MDM

    • Ports

      Each record in this table corresponds to an inbound or an outbound port

    • Links

      Maintains URL links containing one or more placeholders for parameters

    • XML schemas

      Stores all the XSD (XML Schema Definition) files to be used in import or syndication

    • Reports

      Each record in this table stores a report generated due to various activities performed in the Console.

    • Logs

      Stores all the system's logs maintained by MDM server

    System tables can be viewed under the Admin node in the Console Hierarchy.

    Note

    A freshly created MDM repository automatically creates a single instance of each of the above system tables.

    The Logs table is independent of the MDM repositories and is specific to the MDM Server. Hence, it appears in the Console Hierarchy under an MDM Server node at the end of all the MDM repository nodes.

Other key capabilities of an MDM repository

Apart from understanding the different table types in MDM, there are other key functionalities supported by MDM that need a brief mention. The following section gives a quick introduction to such key capabilities of an MDM repository.

Taxonomies

Taxonomy enables us to perform a quick search and locate a few specific MDM records in a database of up to a million records.

The purpose of taxonomy is to classify like master data records together into categories, based on a set of common, category-specific characteristics.

In MDM, taxonomy is a hierarchical representation that allows categories to be part of other categories. As we progress down a taxonomy, the type of records included are narrowed down based upon the category.

MDM utilizes this hierarchical concept of taxonomies to represent them as a tree.

It supports eClass taxonomies, UNSPSC, and custom classifications.

Attributes

As we progress down taxonomy, every category has a defining characteristic in addition to the ones corresponding to every category above it in the hierarchy. For instance, in the taxonomy of rocks, igneous rocks have certain specific attributes such as color, texture, and chemistry as well as common characteristics (such as weight and shape) shared with other types of rocks.

In MDM terminology, characteristics are known as attributes and represent fields of information applicable to a handful of main table records in the repository.

Every taxonomy table has a pool of attributes which can be linked to one or more individual categories. Using the Taxonomy mode, you can carry out the management of the attributes in the taxonomy pool.

Attributes linked to categories are associated with main table records only when a record is assigned to a particular category within the taxonomy. The attributes of the parent category are automatically inherited by the main table record assigned to the child category.

A main table record, therefore, consists of common fields, inherited attributes, and category-dependent attributes.

Note

An attribute in an MDM repository is represented as a field specific to only a few records in the main table. Whereas a field defined in the main table is part of every main table record. This requires that a field applicable to every record in an MDM repository must not be set as an attribute. For example, customer number should be defined as a field and not an attribute as it applies to every customer record.

Qualified tables and qualifiers

Qualified tables allow extreme versatility in MDM. These are special kind of lookup tables that can store complex relationships. These relationships exist between the main table record and one or more lookup table records that contain other additional information.

A qualified table contains fields called qualifiers whose values do not apply to the qualified table record. The value of a qualifier is specific to the association of each main table record with the qualified table record. Qualified tables support for multiple prices (based on regions or types including quantity price breaks), cross-reference part numbers, other distributor/supplier/customer-specific information, and product applications.

For example, consider a scenario where a product has multiple prices based on its region. We can utilize the qualified tables to support this scenario out-of-the-box.

Product family

In a situation when the contents of an MDM repository needs to be published containing product information, a finer organization of the records is required than that provided by the categories of a taxonomy. Such as grouping main table records based on not only the category but also the manufacturer. Product families enable support for such granular classifications of records such as eClass taxonomies or UNSPSC within an MDM repository.

A group of main table records can be related based on the value of one or more common fields and/or attributes. Such related main table records form a product family which contains additional family data fields such as image, logo, description, specifications, and so on.

Note

The terms presentation, a unit, or a module are also used in place of product families in other systems.

The MDM system makes use of a patent-pending technology that intelligently automates the creation and management of product families. This gives an innovative approach to structure, store, and maintain product family information. Any changes to the main table records, family structure, and the taxonomy does not affect the integrity of the family records.

Product masks

A single master repository can be sliced into a number of custom virtual repositories with the help of product masks in MDM. This considerably simplifies the maintenance of a single repository which needs to be targeted to multiple audiences.

A user sees each virtual repository as a completely private repository containing a subset of the records from the master repository.

Virtual repositories created using product masks can, for example, be used for custom subsets for contact customers and targeted market segments driven by a single MDM repository.

The added advantage of product masks is that they impose no performance limitations on the DBMS as they are defined at the individual product level rather than at the query level (in contrast to SQL views that are defined at the query level).

In the electronic catalog's web page, a mask can automatically be applied upon site entry thereby controlling the view of the user to see only a part of the MDM repository that is relevant.

Data groups

An MDM repository containing a large volume of images, text blocks, and PDF files needs to have an organization mechanism which enables them to be easily located and linked to a particular master data record. Data groups allows such organization wherein each object is assigned to a data group when it is first created or imported into the system.

Data groups can further be organized in a hierarchy similar to the taxonomy hierarchy. Thus data groups allow a parallel classification scheme like taxonomy hierarchy to organize objects into subgroups called data groups. Individual data groups can exist for product images, category icons, and manufacturer logos.

Validations and validation groups

Validations in MDM are similar to formulas in Excel that return a Boolean result to denote success or failure. Validations include the following capabilities:

  • Reference fields and attributes

  • Perform arithmetic, string, and logical operations

  • Call built-in functions

  • Reference other previously defined validations

Validations are created and executed using the MDM Client. A user can run complex tests for different types of conditions against a group of one or more records.

Validations can be branched based on a specific condition in the main validation. MDM automatically executes the relevant validation based on the condition such as the category value of each record.

Validations can be aggregated and grouped into validation groups and executed as a batch. Thus, multiple related validations can be grouped under a single validation group and run together by running the validation group against the master data records. This simplifies the task of multiple validations one-by-one and reduces time and effort.

Note

In validation expression fields, attributes, operator, or function names can be selected from a drop-down list. This significantly reduces the scope of typos.