Customer hierarchies are used when a customer has a complex chain or organizational structure in which all or some of the parts of this structure will benefit from an agreement made for the custome...
Transportation scheduling (Outbound Scheduling) is a standard SAP functionality which can be used to determine more accurate confirmed delivery date to the customer. During sales order crea…Full description
Don Loden
SAP®Information Steward: Monitoring Data in Real Time
~ Rheinwerk® Publishing Bonn • Boston
What You'll Learn Implement real-time information governance with SAP Information Steward with this E-Bite! Learn how to use three key SAP Information Steward modules: Data Insight, Metadata Management, and Metapedia. Build views and create scorecards with Data Insight. Discover data transparency, and collect and manage metadata with Metadata Management. Implement an enterprise data dictionary to apply business terminology to
data with Metapedia. Complimented with a comprehensive case study, you'll take what you've learned and apply real-world practice! 1
2
3
4
5
6
Information Governance in the Real-Time Enterpri se . . . . . . . . . 1.1 Real-Time Enterprise..... . .. . ........... . .. . ..... 1.2 SAP Information Steward . . . . . . . . . . . . . . . . . . . . . . . . . . Real-Time Governa nce with Data Insight . . . . . . . . . . . . . . . . . . 2.1 SAP Information Steward Validation Rules and Scorecards. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Connecting SAP Information Steward to an SAP ERP Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Building an SAP Information Steward Scorecard.. . . . . . . . Meta data Ma nagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 Con necting to SAP Systems . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Setting Up and Runn ing Collection Tasks . . . . . . . . . . . . . . 3.3 Examin ing Results in SAP Information Steward. . . . . . . . . . Build a n Enterpri se Data Dictionary with Metapedia . . . . . . . . . 4.1 Setting Up Terms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Setting Up Categories. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Exposing Metaped ia Content to Other Systems . . . . . . . . .
Information Governance in the Real-Time Enterprise
Information governance is a core business process that ensures data is treated as a corporate asset and formally managed throughout an enterprise. When executed properly, this information governance paradigm ensures data can be trusted. Defined like this, it is obvious that information governance brings many benefits to an organization. Information governance has always been a puzzling topic for organizations and has gained more ground in recent years, with many organizations embracing information governan ce as a top strategic priority. Without information governance, issues such as data silos, repetitive work, and sacrificing long-term maintainability for short-sighted, short-term application and data solutions can arise. Although there are numerous other advantages to information governance, there is one looming reason why it is now more important than ever: The dawn of the real-time enterprise. Being able to see the effects of data generated in real time creates exciting new opportunities and obstacles that must be addressed. This section will discuss the need to govern information and data quality in a real-time enterprise and the effects of failing to consider these challenges.
1.1
Real -Time Enterprise
A real-time enterprise focuses on the responsiveness of an organization,
bringing formerly discrete business systems into cohesive union by leveraging data in real-time. In this model, business systems are designed in such a way that greater transparency can be achieved by reducing redundant datasets, accomplished by finding data at the source to support either analytical or operational support decisions. Consider how a platform like SAP S/4HANA increases the capability to use one data-centric
5
Information Governance in the Real-Time Enterprise
platform to not only control business processes, but also extract analytics from the same dataset. This capability supports many goals that a realtime enterprise sets out to fulfill, such as: » Reduced turnaround times for customers » Increased transparency straight to core data structures » Ability to share information from a central source across departments » Transactional reporting available at the time of record creation » Reducing overhead of systems and support staff There is tremendous potential for an organization that embraces this shift, as well as many new challenges. We will discuss both opportunities and challenges in the following sections. Opportunities
Real-time governance and attention to data quality is more important than ever when considering an in-memory technology like SAP HANA. With SAP HANA, data can be reported on directly from the source application, and this is especially true for operational reporting. This is only now possible because SAP HANA allows access to sources that traditionally would not lend themselves to direct reporting structures. This is especially true in cases in which a central SAP ERP system is the primary system of record. Figure 1 shows the simplicity possible with SAPS/ 4HANA in regard to operational reporting. This makes a legacy concept of a latency-driven external operational data store somewhat redundant, causing management and architects to wonder whether the additional overhead and complexity of an external operational data store is needed to support the operational reporting paradigm. Although there is no longer a need for redundant data, data quality is still an important issue.
6
I
1
Information Governance in the Real-Time Enterprise
Reporting Int erface
Reporting Interface
OD S LAYER
ETL processing t ransfo rmations and data quality enrichment
Conven t ional SAP ERP source
SAP S/4HANA ERP source
Figure 1 Conven t ial SAP ERP Reporting Compared with SAP S/4HANA Reporting
Challenges Figure 1 shows a simplified reporting method without the ETL transformational layer and ODS. However, you must consider data quality up front in an SAP ERP system. Without quality data, attention to data quality, and proper governance and monitoring, these appliances will only propel bad or incorrect data in reports. In the conventional SAP ERP model shown in Figure 1, an ODS would have provided cleansing and enhancements via an ETL process. However, in the real-time enterp rise,
7
I
1
Information Governance in the Real-Time Enterprise
the fact that you are using transactional data for analytics makes a latencydriven process useless. This is important because organizations already have mechanisms for this in business intelligence (BI) constructs and the ODS layer. From this legacy perspective, data quality issues are corrected and data is prepared in the extract, transform, and load (ETL) layer. These correction mechanisms must be accounted for or at a minimum properly understood in this new "real-time enterprise" before an in-memory appliance can fill all of these gaps. This is where real-time governance comes into play. It may seem obvious, but real-time governance happens in real time!
Straightforward enough- but think of the challenges this introduces. Many master data management activities, like matching and cleansing, are based on transactional latency. To match and cleanse data, data must be collected and processed to be placed into cleansed containers with quality deduplicated data. That is not to say the matching and cleansing process goes away, but thes e types of things must be thought through. If you are going to report on transactional data in real time with SAP S/4HANA, you must deal with data quality in real time in the transactional system. Much thought and design must be placed into the real-time enterprise before bad data begins driving business processes poorly in real-time. This is not an overnight shift, so do not expect too much up front without proper consideration of going "straight to the source" for the data with an in-memory solution. Now, how can an organization begin this conversation about real-time governance? It begins by examining the real-time data quality monitoring and data quality socialization functionality of SAP Information Steward.
1.2
SAP Information Steward
SAP Information Steward provides a single platform to discover, assess, define, monitor, and improve the quality of data. Users can do any of the following tasks:
8
I
1
Information Govern ance in the Real-Time Enterprise
» Profile data with complex profiling options » Create and run validation rules embedded in scorecards » See relationships of metadata from sources all the way to fields used in reports » Manage a data dictionary » Create and develop complex data cleansing rules and dictionaries SAP Information Steward benefits from being part of the SAP product stack and sharing close API ties to the SAP ERP platform. SAP Information Steward can be directly connected to a production SAP system in a safe manner, allowing unprecedented access to an overarching view of data in SAP. A detailed view of how this is accomplished can be found in Section 2.1. SAP Information Steward allows the user to interact with data from a data validation standpoint that can be modeled by a master data domain or by a process flow for the organization. Having this organized, business-centric visibility is crucial to a successful post in, for example, an SAP HANAenabled SAP ERP platform, and is a requirement for governing data in a real-time enterprise. Tactically, governing data in real-time takes many forms in SAP Information Steward, and we will examine a few of these in the next section. SAP Information Steward allows you to create complex quality validation rules to check whether data complies with business constraints and requirements. These rules generate passing or failing scores that are configurable to a variety of situations and use cases. Rules are reusable and illustrate individual business scenarios and objectives. From these rules, a developer can create visualizations based on positive or negative results. These different rules can be used together to create a complex data quality scorecard. In this E-Bite, we will walk through these rules, along with the three primary modules in SAP Information Steward in each individual section:
9
I
1
Real -Time Governance with Data Insight
Data Insight, Metadata Management, and Metapedia. Finally, in Section 5, we will take what we have learned and apply it to a comprehensive case study.
2
Real-Time Governance with Data Insight
Many customers are aware of SAP Information Steward's capabilities within the Data Insight module to rapidly build complex data scorecards, but miss the fact that they can do so safely and effectively against a live production of SAP ERP or SAP CRM. In Section 1, we discussed the business case and needs for monitoring data quality in real time. Now, we will begin to see how SAP Information Steward enables such monitoring as an option for an enterprise. In this section, we will explore the scorecard and rule creation processes to create the foundation for governance in a real-time enterprise. We will also look at best practices for SAP application connectivity and the interaction between SAP Information Steward and SAP ERP to ensure both quality performance and safety for the SAP ERP transactional system.
2.1
SAP Information Steward Validation Rules and Scorecards
SAP Information Steward has many features, but one of the tool's greatest strengths is its ability to track the quality of data over time in a graphical and quantitative way. The heart of this functionality is the SAP Information Steward scorecard. The scorecard is a data socialization tool that validates data by using custom validation rules to ensure that data conforms to given corporate standards. The scorecard then tracks the effects of data conformity over time by plotting that information with a graphical trend line. The scorecard example shown in Figure 2 shows a relatively flat trend and scoring of data.
10
I
2
Real -Time Governance with Data Insight
-----------------------------------------------
SAP SAP Informat:Jon Steward Oat.1Insoght
Welcome:
~IIJilZI~II!I:IIfll
Projects ~ OJstomer •
Show score as of:
No~
-~ .
Sort By: Name
Views:
{];!][QJ _ $_
Q!! Share •
Show O..tllil •
9 .21
Quarotv
Cost
$1.17K
Acom
Cost Tr end
Date Time: Th~: • La.<~·
s•
HiQ:h .
Date Time:
a
Figure 2 Example Customer Data Domain Scorecard
This scorecard tracks customer data and shows a quality trend that is mostly flat, which would not be the case if either the data or the rul,e had changed considerably over time. 'fhe customer example scorecard reports a quality score of9.21, and this quality score is comprised of two quality dimensions: accuracy and completeness. There are many other data quality dimensions that may be utilized to group and order the presentation of data quality for socialization throughout the enterprise. Data quality dimensions are a useful tool for a high-level grouping or for the organization of rules and measurements; however, these lead quickly to what rules and measurements comprise accuracy. To see this level of detail, click the SHow DETAIL button on the main scorecard screen (see Figure 2) to show the details of the scorecard quality dimensions, as shown in Figure 3.
11
I
2
Real -Time Governance with Data Insight
I
2
--------------------------------------------------------------------SAP """T SAP JnformatlOn Steward O.talnsoght
w
-
• -
• 11<1> •
too Off
~~~~ ----------------------ll
Show Kore • of: Now
•
Sort 8y: ~qme
Key Data Oomai"l ASu:i OJ:stomer
The$c: ore 1'\1.. .
9.12
Qi
Ad
9.41
~
erntoote ...,.....,,.,... IWe r;. s...cc.cl>o .. .
8.83
IWefi>o.. .
Cii
Otvcamotbeblanl<
IWefi>o...
9.76
'-l
Phont carnot be blank
~ 00.. Scuce_SQ...
8 .2S
{J!
nJ_ISN..ll_Ad«ess
Test 1f acustorntra...
9.41
ASUG Custome r
lastRo-1: 10
»
SO
Score Range: ~
Ttn shold: • low • S
·~ -~dota
-~
10-
-
.
T-
CoUms
d>o
usa_OJStomtrs
Adchssl
cl>o
uso_customers
Adchssl
9.•U
S...ce,;Ql
cl>o
U$6_MtomtrS
6i'ttotte
6.97
S...CA!,;Ql
d>o
US6_CU$tomefS
Oty
9. 76
So<.rcc_SQL
d>o
usa_OJStorMrs
"""""
8.2S
So<.re<
So<.rce,;Ql So<.rcc,;Ql
O.tte Time
... Yiewltnpac:t
Scor• 8.83
Fi gure 3 Details for Rules behind the Scorecard to Show Organization of Quality Dimensions
On the DETAILS screen, we can see that under DATA QUALITY DIMENSIONS there are the AccuRACY and COMPLETENESS areas. These rules make up the core functionality of the scorecard. Each rule validates a particular business scenario and either passes or fails the data being evaluated. This evaluation creates a score for a given connection , which is illustrated as a rule binding. Individual rule binding scores for each connection that a rule has "rolled up" to an overall rule score. Each rule score rolls up to a composite score for its respective data quality dimensions. The data quality dimension composite score also rolls up to the key data domain score, which represents the highest-level score for the scorecard. Scoring is a crucial concept for a scorecard business scenario and can be adjusted to properly measure particular business conditions. We will examine this concept in greater detail later, in the section Assess and Set Scorecard Weights. Scorecards are essentially a presentation layer for the various validation rules in SAP Information Steward and a means to dial in their measures in
12
Real -Time Governance with Data Insight
order to tell a story of business relevance. It is important to note that validation rules can stand on their own as discrete operational measures, and they can range from very simple completeness checks to extensive and complex designs . To design and construct a rule, you might think that you would need to opt exclusively to code this rule in a scripting- or SQL-type interface. However, in SAP Information Steward this is not the case. This tool is designed with the business user in mind, so there is a graphical user interface (GUI) used to define and construct the validation rule. The Rule Editor in SAP Information Steward is the heart of Data Insight. These topics present an overview of how validation rules and scorecards work together to produce a cohesive business story in an SAP Information Steward Data Insight scorecard. We will fully explore the scorecard creation process in Section 2.3. Let's first examine ways to connect SAP Information Steward directly to tihe SAP ERP system. Only after this connection is established can a user achieve real-time predictive governance.
2.2
Connecting SAP Information Steward to an SAP ERP Application
The SAP ERP application is the solution that global enterprises rely on to run their businesses. However, seeing the data quality and relative relationships as SAP GUI screens can be challenging. This is especially true when a business user needs an overall picture of how data is intertwined to tell the full story of how a particular business process functions . SAP GUI's purpose is to provide input and lookup screens in order for members of an organization to do their respective jobs. This requires information to be compartmentalized and effectively spread throughout the application on a multitude of SAP GUI screens. There are many cases in which organizational constructs that depend on each other may be entered and maintained on separate transaction screens.
13
I
2
Real -Time Governance with Data Insight
What Is Required
SAP Information Steward uses functions that support the use of ABAP, BAPI, and !Doc interfaces on SAP servers. You will need some or all of these functions in the normal operation of the software in an SAP environment. Typically, you will focus on the function modules deployed with the SAP Information Steward software. These functions perform such operations as dynamically loading and executing ABAP programs from the application server, efficiently running preloaded ABAP programs, allowing for seamless metadata browsing and importing from SAP servers, and reporting the status ofrunningjobs. Some of these functions read data from SAP Business Warehouse (SAP BW) sources. It is important to note whether you need to load the functions onto your SAP application system or whether the f111nctions already exist. This is usually determined by what SAP application system version you have deployed in your environment. For SAP NetWeaver 6.0 and later, SAP functions for SAP Data Services and SAP Information Steward are included in three SAP components: PI_ BASIS , SAP _APPL , and SAP _B ~J. If your system does not contain these functions or you plan to upgrade SAP systems , see SAP Note 1919255 for information about SAP Data Services and SAP Information Steward transport functions. If your SAP NetWeaver system does not contain these functions, please contact SAP support and reference SAP Note 1919255. As noted, some SAP NetWeaver systems already contain these supplied functions from SAP and you should check your system. If these functions are not available, then you will need to install the transports. If they are available, then you are ready to begin a connection to SAP Information Steward. SAP Information Steward makes a connection to SAP NetWeaver and calls functions that exist in the SAP application functions construct. What SAP Information Steward can call and utilize depends on the security permissions and authorizations that are granted to the non-dialog user making the connection from the SAP Information Steward system. Note that
14
I
2
Real -Time Governance with Data Insight
although SAP application functions may not be required, depending on which version of the SAP NetWeaver stack you are running, SAP custom security will always be required as a custom setup option, which requires a design by either SAP Basis or the customer's security team. We will explore the setup and design of t hese components in the following section in much greater detail and also will outline the workflow of the setup process implementation. Implementation Workflow
The setup process for the SAP application server can be intimidating, but there is a relatively predictable process workflow that can be utilized to guide setup activities. This section will walk through each step in this workflow. Install SAP Application Transports if Required
The easiest way to survey your SAP system to see if you need to obtain and install the SAP transports is to search for the /SAPDS namespace on the SAP system. To do so, log on to SAP GUI and run Transaction SE37. The resulting SAP GUI screen allows you to search for the /SAPDS function group, as shown in Figure 4. Function Builder: Initial Screen
"' /•~ '* m w [(] B:>
Reassign.. .
Function Module
§f
Display
II?
Change
liD
Cteate
Fi gure 4 SAP GUI Transaction SE37 w ith /SAPDS Search
If the function modules are not present, consult the readme documentation on the SAP Data Services server that you used to obtain the transports (see Figure 5).
1=or SAP BASIS 4.6o or earlier prt ·Nttwe~ver vers1oos. you can find the necessary oau services funct1oos in the 900U7 .R22 transport package incl uded i n Data Ser vices Rl_funct.ions/ transport folder .
SAP Nec-.·eaver 6.0 and hcer. SAP functions for oata serv1cts are incl uded in three SAP coeponents : PIJASIS, SAP....APPI,. and If your system dots not contain t~se functions or- ¥0\1 plan to upgrade SAP systems. see SAP Note 1919255 F for information about Data Service'S transp«t functlons .
SAPJ'~ .
Figure 5 readme.txt File Path and Contents
Here, there are basically two options: Use the provided transports to install on a legacy SAP NetWeaver 4.6 system, or obtain the transports from SAP to install using SAP Note 1919255. If you do have to install the transports, then please refer to the SAP Data Services supplement for SAP guide for your version of SAP Information Steward (visit http:// help.sap.com, and look in the DATA MANAGEMENT section). Design and Implement Security Structures
After the function modules and proper namespace are present on your SAP system, you will need to ensure that the proper authorizations exist so that SAP Information Steward connections can be established. Just as with transports on newer SAP systems, the basic roles may already exist. You should check your SAP system to see if the roles for SAP Information Steward are already present. Roles Your system may have SAP Information Steward roles SAP_ DS_ DEV and SAP_ DS_PROD if you operate a newer SAP NetWeaver system. If this is the case, then these roles can be used as templates for defining authorization profiles for SAP Data Services users working with SAP BASIS/SAP NetWeaver functionality. SAP _DS_DEV is a template for DEVUSER and SAP _DS_PROO is a template for TESTUSER/ PRODUSER.
16
Real -Time Govern ance with Data I nsight
In any case, you will need to design security profiles for your service account that fit each stage of your SAP landscape. SAP Information Steward needs a variety of authorizations to create content in a development (dev) system that will not be ne.e ded in a production (prod) or quality assurance (QA) landscape. You must make sure that your design meets all of these needs to be successful. Table 1 details the authorizations that are needed at a high level. but if more information around the details of the functions accessed in the authorizations is required, please refer to the SAP Data Services supplement guide for your version of SAP Information Steward: http://help.sap.com/businessobject/product_guides/sbods42/en/ ds_42_sap_en.pdf. Service Account User
Authorization
Landscape
SAP Authorizations Required
DEV_ USER
High
Development
"" S_ BTCH_JOB "" S_DEVELOP
... ...
S_RFC S_TABU_ DIS
"" S_ TCODE TEST_USE R
Medium
Test or QA
...
S_B TCH_JOB
"" S_ DEVELOP "" S_RFC
PROD_U SER
Low
Production
... ...
S_TABU_ DIS
... ...
S_ BTCH_JOB
S_TCODE
S_RFC
"" S_TABU_DIS "" S_ TCODE Table 1 Typical SAP Information Steward User Authorizations
It is important to note that the users described in Table 1 are not dialog users, or users that someone would use to access the SAP GUI. These
17
J
2
Real -Time Governance with Data Insight
users are strictly for SAP Information Steward to facilitate communication with the SAP application system. The user-facing security happens on the SAP Information Steward platform itself in the form of users and roles. These users and roles are out of scope for this section, as we are strictly discussing the SAP-related connections that are needed for SAP Information Steward to access the SAP system. It is important to note that SAP authorizations can be managed in two ways:
» Profile generation method When using the profile generation method, activity groups define and control all of the allowed authorizations. Each user is assigned to an activity group that has information about the allowed activities that each user can perform.
» Profiles assigned to users method The profiles assigned to users method relies on the administrator or security team first creating the authorizations needed to perform specific tasks, then creating a user profile to assign the specific authorizations on the SAP system. After the authorizations and the profile are both created and activated, the profile may be assigned to users. Either method is acceptable. The choice should be based on the organization and whether the chosen method will fit into existing user maintenance processes and protocols_ Test with SAP Basis and Security to Remediate Issues
The final task to complete before closing out the security work is to test both the SAP application function modules deployed on the system and the relative access to the system using the created authorizations to these function modules. This testing is typically performed by facilitati ng a session with an SAP Information Steward subject matter expert (SME) and both an SAP Basis resource and a security team resource.
18
I
2
Real -Time Governance with Data I nsight
The SAP Basis resource is not required if the security team resource has both the ability and knowledge to run SAP application traces in order to illustrate distinct processing on the SAP system. The idea is that the SAP Information Steward SME runs various tests on the SAP Information Steward system, such as (but not limited to) importing SAP tables, viewing data on the tables, creating a view on the SAP tables, and running the view. Any one of these tasks may produce errors, which prompts the SAP Basis and/or security team member to review the errors using the SAP trace, to see where the system error was occurring and to troubleshoot the error during an interactive session. If the right people are in the room to troubleshoot any errors, then these sessions go quickly. It should be noted that any changes made during this process should amend the transports used to create both the imported function modules and the security authorization objects and user profiles. By doing so, you can successfully move all changes at one time throughout the landscape as a unit. This not only is best practice, but also assures that no valuable work or troubleshooting solutions are missed in any of the SAP landscapes. In the following section, we wil[ first create views of data on mUJitiple tables, then layer rules on top of these views, and finally place the rules into the scorecard to produce the end result: a finished SAP Information Steward scorecard.
2.3
Building an SAP Information Steward Scorecard
One cannot simply jump straight into developing the visualization of a scorecard. There are many foundational components that must be in place before this can occur. These building blocks of scorecard development start from the ground up. The first of these are the SAP Information Steward views. You must also create a validation rule, which needs to be bound to a view and scheduled. Only then are you ready to associate the
19
J
2
Real -Time Governance with Data Insight
rule with a scorecard. To begin this process, we will first explore how to build an SAP Information Steward view in the next section. Build the View
To have data for a rule to validate, at a minimum you need to have a table containing the desired data. However, in most highly normalized operational systems, a table usually will not suffice to provide a proper productive data set. The data in most operational systems typically is highly normalized, or split into segmented tables, and SAP is no different. Take for instance the material master table in SAP: table MARA. This table is extremely wide, with over 180 columns for most customers, and one would think that so many columns should cover most of the data needed for validation rule processing. However, when you need something as core to a material as a material description, you need to go to table MAKT to get it. This is a simple example, but all of SAP is like this. In order to get data that you need to model a proper business scenario, you must combine these tables together. The way to accomplish this in SAP Information Steward is to create a view. However, with SAP Information Steward, the decision of the user goes even further. Before creating the view, the SAP Information Steward developer must decide whether he needs to create a standard view or an ABAP-enabled application view. Standard Views
A standard view is a straightforward approach to creating views in SAP Information Steward. View creation occurs solely in the tool and does not involve any code creation or management of ABAP in SAP. An example of a standard view can be seen in Figure 6.
In this view, there is only data sourced from one table, as you can see in Figure 7, but you do not need to stop at table KNAl (Customer Master) if more data is required. For instance, if you need to include mll!ltiple addresses used over the life of a customer, simply click the ADD button , as shown in Figure 7.
• •
-
16..,
a Ouo~T-
,.,dolr(IO) ...~tw(.f)
EQC-- "6mAt.!W
-dW(3$)
~I.OitTOt
,
to:~I.AHW)
'>•dw(IS)
.....""
-
a-.-. o.-~Gteq,
_ ...(31)
...
..-.dw()$)
HOoM~.-.::iii'Cfl
01>
Figure 7 View Editor Window, Used to Create the View
The number of tables that you combine is limited only by the business scenarios you are trying measure with each rule. From that perspective,
21
•
2
'* •
too Of!'
Real -Time Governance with Data Insight
you really must let the business scenario dictate your design. Just remember that it is easy to add other tables and join them together. However, joining these tables also comes with a performance penalty in a standard view. Taking the standard view in Figure 7 as an example, you may be transforming the original data in table KNAl with an expression in the mapping of a field, or processing only active customers as a subset of table KNAl. The important thing to note is that data must first be extracted from SAP to the SAP Information Steward application server for processing. This does not mean that SAP Information Steward stores any of the customer data. The application server processes the data as it is streamed from SAP. This is something to particularly watch with standard views that contain multiple tables. For example, if you have two tables and your processing requires the entire data set from both tables, then both tables will be extracted from SAP, and the combination of the two data sets will occur entirely on the SAP Information Steward server. This is fine for master data tables like KNAl , as they do not contain nearly as much data as transactional tables. The data will fit into memory on the application server. There is a simplicity involved here. The SAP Information Steward developer just creates the view using the GUI, saves it, and then executes the view against SAP. There is no involvement with SAP Basis, a security team, or a team of ABAP programmers. This allows for rapid prototyping and development, and most importantly places all development control in the hands of the SAP Information Steward team. This is crucial for these efforts to have a rapid deployment time. However, as stated before, there is a limit to how much data you can fit into memory on the application server. When you run out of memory, the SAP Information Steward application server will start to page the data to the disk, and performance will all but grind to a halt. There is no danger to the SAP NetWeaver system, as the data is extracted only in tiny, 10,000 record segments and compiled on the SAP Information Steward server. The problem is that your processing in SAP Information Steward will essentially stop when
22
J
2
Real -Time Governance with Data Insight
I
2
the memory limit is reached. When you encounter problems like these, it is time to consider creating ABAP-enabled SAP application views. ABAP-Enabled SAP Application Views
ABAP-enabled SAP application views are exactly what they sound like . ABAP is created on the SAP NetWeaver system, and processing occurs entirely on the SAP system before the data set is streamed back to the SAP Information Steward application server. This is extremely important for combining very large transaction tables. Creating an ABAP-enabled view is simple. The only thing that the SAP Information Steward developer needs to do is to select ABAP from the DATA TRANSFER METHOD dropdown menu, as shown in Figure 8.
'"""
• •
-
co"' a
....
_-
~rctw(JO)
0...~~ l
-..rctw(-'9
O..~Acr;oo.ntCiroo.o
-N-()$)
(My
-dw(1SJ
Tilll
\ortJW(lS)
,._ 2
. . . . .OS)
~IV!W~J~ffl
.... """" Fi gure 8 View Editor W indow with Data Transfer Method Dropdown
Then, just select the processing option from DATA TRANSFER METHOD. However, this action only begins the process of managing the generated ABAP code through the SAP NetWeaver landscape. After generating the ABAP, it must be transported from the development system to the test system, and after testing it must be transported again to production. Both of these SAP transports must occur, because the generated code is now SAP NetWeaver code and must be managed just like any other SAP appli-
23
Real -Time Governance with Data Insight
cation development. This is not only additional overhead to a proj ect; you also affect other teams with the introduction of the SAP Basis team at a minimum and sometimes the SAP Security team. These teams will have different priorities from the core SAP Information Steward development team and therefore can significantly slow the SAP Information Steward development process. The following four phases are typical for application development:
1. In the design phase, a high-security profile user designs the data and work flows and generates ABAP programs. The ABAP programs are pushed to the development SAP landscape and executed. 2. In the consolidation phase, developers upload generated ABAP programs into the test SAP system with predefined program names and preregistered connections. A user in this phase can run these programs with a lower security profile- TESTUSER, for example. 3. In the test phase, the SAP Information Steward views must be exported to test the SAP Information Steward landscape, and the generated ABAP programs must be transported to the SAP test system. This process is usually performed by an SAP Basis resource in the organization. 4 The production phase begins when no additional program modifica-
tions are required. The user involved in the move to the production phase has the lowest security profile or fewest permissions. Now that we have a good understanding of what is involved with view creation, we can move on to the second phase in building an SAP Information Steward scorecard: building a rule. Build a Rule
Rules provide the quantitative foundation to demonstrate whether your data conforms to your business scenarios. Rules can drive operational behavior and can fit together to tell a greater story in a scorecard. At their core, rules are pass/fail conditional objects. Failure records are reported
24
I
2
Real -Time Governance with Data Insight
J
2
in scores that display next to the columns to which they are bound, as shown in Figure 9, by the red and green rectangles holding blue numbers. When you click on the blue numbers, if there are failed data records they will be displayed in the FAILED DATA section shown at the bottom right of Figure 9. This is an operational view allowing a user to quickly see how various fields are performing according to business rules that are bound to the table. You can also quickly share this data with others in the organization by exporting to Microsoft Excel. Doing so helps drive data quality in the organization by quickly elevating and allowing access to the root of the problem so that users can correct the data quality issues back in the source system. w~ ...._•• o-
SAP----. SAP lnfotm.JtJon Stew.ard
-
()'
lW>IOf •
vw. · ~ •
~11:::!!:::1~~
......-
--
... • U C.:: Zli.C ISftlM.~:J , LJ C.... ZB.C1S~"M.~
U ~ l9.Gt4..0JST.~t1~ ..to
u
"-' W
'1l
.
O za.r.H_OJ>T_~.,__o,.~
C: ZI.GH.OJ>T.~tl~.-.ot
IJ E
li LJ
ze_cm_o..tn_~t~p-.-.m--.,
t: Zl..'l'\P.$T.Jicrolr.O.tt.,.Adlte.
.u
"~' ·
t/14t'»l
~AIXOo.tii:C)G,C~
'7
,..-.to-w ~c.-
HtwO'oecrll
-~~~
.l YoewMe!cl'lllirdo..r.t
- U ~"" \:) zt.GH.a..os-.Ot'!f»$:15
_,; LJ ~~
Figure 9 Validation Rule Scores in the Rule !Results Tab
In combination with the SAP application views discussed earlier, this complex and fully customizable data quality monitoring can occur in real time against the SAP system in a holistic manner. This is an important operational activity in the SAP S/4HANA world. If the SAP ERP system is on SAP HANA and reporting is now in real time, then it is more important than ever not only for the data in SAP to be of high quality in the source, but also that issues be remediated as quickly as possible.
25
l~ oa
Real -Time Governance with Data Insight
I
2
The operational view of the rules shown in Figure 9 are a result of the designed rules. To code and develop a rule, you must navigate to the Rule Editor, as shown in Figure 10. The Rule Editor is the GUI in which rule development occurs, to both design and compose the rule. Note the relative lack of a normal coding interface. After you give a rule a name and description, you need to set up its parameters. Parameters are required; they are the conduit for connecting, or binding, the rule to columns in views and tables. The rule on its own is just a set of instructions. Only when it is bound to a table or view does it take action and produce scores and failed data. Therefore, establishing parameters is the first step. X
Properties
C~tom AttriiMrt~
Status: Edrtmg Aulhot:"'
~lmpoc.tPttFabe: s
X "'J _CXV X
0
AdrnirisiJotof
Edt.. .
•
(Snoli'IIJI
SP_I_OA.y Adde¢lrHSIOn
SEGJN Rrn.R.H
SPJ ..Cttv IS NO.. tut /In)
soJ ..Otv 1•
~:
Figure 10 Rule Editor GUI Window, Used to Develop Rules
Figure 10 shows the rule ZB_G l 4_Cus t omers , which has an assigned parameter called $P _ l _ City in the PARAMETERS section. This parameter is merely a placeholder for the city data that will be met when you bind the rule to the table or view containing city data. The evaluation of the city
26
Real -Time Governance with Data Insight
J
2
data will occur based on what is specified in the EXPRESSION section. In this example, parameter $P_I_Ci t y is used to evaluate a NULL condition and not equal to blank values. Notice that the expressions are developed using the GUI screens and the foUowing "code" is generated into the section you see in Figure 10: BEGI N RETU RN $P_I_C ity I S NOT NUL L AND $P_I_C ity ! =
A
' ';
nice aspect here is that you did not have to write this code as a devel-
oper. The development occurred using the tools in the GUI, which greatly enhances the opportunity for less technical resources to develop rules. There are times when rules will not be this simple or straightforward and traditional coding will be required, which is why SAP Information Steward offers the ADVANCED RULE EDITOR perspective shown in Figure 11. X
Advan
Templote
1 2 3 4
Keyword
Operotor
C.,_._
Dote
Lodo.!>
Moth
Stmg
Volidotlon
Por"""'te<
BEGIN RETURN $P_!_City IS NOT NULL ANO $P_I_City END
•=..;
Pr'1 Test
el Volidote S)'ntax Desaiptlon
=
U>e l'lJmbe<
OK
Figure 11 Advanced Rule Editor Used for Complex Logic
In this perspective, the developer can use sophisticated templates for proper best practices code and GUI-driven functions or parameter value assignments . The functions are grouped into the following types in the Advanced Rule Editor:
27
cancel
Real -Time Governance with Data Insight
)} CONVERSION
Functions to convert data types from one to another. )} DATE
Good support for traditional date-based functions, such as formatting and date parts. )} LOOKUP
Functions used to iteratively look up values from external files or tables. » MATH
Wide array of built-in mathematical functions. )} STRING
Many standard string functions to ease comparison and parsing of string values. )} VALIDATION
Functions structured around pattern validation. The Advanced Rule Editor shares many characteristics with conventional programming tools, so a seasoned developer can feel right at home. Another benefit is that the syntax of the scripting language in SAP Information Steward is actually the same as that of SAP Data Services. This is a great benefit for organizations that are choosing to standardize on the SAP toolset, because there is a great deal of overlap both in terms of functionality and syntax. The Advanced Rule Editor is a great platform to create even the most complex rules. However, until a rule is bound to a view or table, the rule is in a useless state. You have designed, developed, and created a rule, and now you must bind it. Bind a Rule
Binding a rule is a straightforward task - and incredibly important. Without a connection, the rule is useless. Now, let's bind a rule to a
dataset. To bind a rule to a view or table, click the
The website http://www.sap-press.com/ provides detailed and first-hand information on our current publishing program. Here, you can also easily order all of our books and e-books. Information on Rheinwerk Publishing Inc. and additional contact options can also be found at http://www.sappress.com/.
Legal Notes This section contains the detailed and legally binding usage conditions for this E-Bite. Copyright Note
You are entitled to use this E-Bite for personal purposes only. In particular, you may print the E-Bite for personal use or copy it as long as you store this copy on a device that is solely and personally used by yourself. You are not entitled to any other usage or exploitation. In particular, it is not permitted to forward electronic or printed copies to third parties. Furthermore, it is not permitted to distribute the E-Bite on the Internet, in intranets, or in any other way or make it available to third parties. Any public exhibition, other publication, or any reproduction of the E-Bite beyond personal use are expressly prohibited. The aforementioned does not only apply to the E-Bite in its entirety but also to parts thereof (e.g., charts, pictures, tables, sections of text). Copyright notes, brands, and other legal reservations as well as the digital watermark may not be removed from the E-Bite. Digital Watermark
This E-Bite copy contains a digital watermark, a signature that indicates which person may use this copy. If you, dear reader, are not this person, you are violating the copyright. So please refrain from using this E-Bite
and inform us about this violation. A brief email to [email protected] is sufficient. Thank you! limitation of liability
Regardless of the care that has been taken in creating texts, figures, and programs, neither the publisher nor the author, editor, or translator assume any legal responsibility or any liability for possible errors and their consequences.