Key Concepts Refresher
In Chapter 14, we discussed how to provide data to SAP HANA systems. We started with the overview diagram shown in Figure 14.1, which we said could be viewed as a summary of the entire book.
We are now at the last step in the modeling process, in which you present your SAP HANA information models to the world!
[+] Tip
It will be useful to take another look at the Database Connections section in Chapter 14, which we will build on in this chapter.
Let’s start by looking at reporting and the evolution of business intelligence.
Business Intelligence Concepts
If you worked with data and modeling in the 1990s, you might have used something like Microsoft Visual Basic or Borland Delphi. Back then, you created reports for end users via reporting tool like Crystal Reports, which was one of the most-used reporting tools of the era. Another tool that financial people and engineers often used was Microsoft Excel. Both these tools surprisingly are still in use today and are discussed in this chapter.
Reports mostly consisted of thousands of lines of transactional line items, printed out on reams of papers. To make sense of all this data, you need to see the patterns or exceptions in all that text and form a mental picture. Over time, reporting tools improved and allowed you to embed simple graphs. You could develop more complex reports that resembled tax forms, with lots of blocks and lines. Instead of filling in these forms with a pen, they were populated from a database and then printed. (Workflows were still largely paper based.)
During those days, you needed programming skills to use reporting tools, as well as a working knowledge of databases. Reports were therefore developed by IT and were quite prescriptive. Developing these reports took time, and they could not be changed easily. Because running these reports was time-consuming, they were scheduled to be run and printed at night. Each morning, you would find your printed reports on your desk.
Business Objects acquired Crystal Reports from Seagate in 2003, and SAP acquired Business Objects in 2007. Today, we still have SAP Crystal Reports, albeit a largely improved version. However, this is no longer the only reporting tool available.
We have moved from simple reporting to the concept of business intelligence, which includes powerful analytics, data mining, and data science. “Reporting” as we once knew it is now merely a subsection of a much wider topic. We have moved from paper-based forms and workflows to web-based options and mobile consumption, and we now have the tools to enable it all.
In this chapter, we will only focus on the tools that are relevant for SAP HANA. Most of the tools are generic tools; that is, they are not specific to SAP HANA alone. Therein lies some of the complexity when choosing the right tool for the job!
Business intelligence can be described as taking raw (transactional) business data and transforming it into useful information for the purpose of business analysis. Building information models in SAP HANA can be seen as part of this process. We enable people to process large volumes of data to find new opportunities based on insights gained from our information models. Hopefully, this can provide businesses with a competitive market advantage and long-term sustainability.
Business intelligence can consist of the following:
- Reporting of historical and current information. We described reporting in the previous section. A report is a document that can contain information organized in a tabular or a graphical format.
- Analytics, through which we discover meaningful patterns in data and use visualization techniques to promote insight.
- Complex event processing, such as SAP HANA smart data streaming (SDS).
- Predictive analytics, through which we attempt to forecast what will happen.
- Prescriptive analytics, through which a business acts on predictive analytics—for example, by replacing a part in a machine before it breaks, because the predictive analytics indicate a high chance of the part breaking soon.
- Text mining, data mining, and process mining.
- OLAP—that is, SAP BW systems and data warehouses can be seen as a subsection of business intelligence.
Convergence of SAP’s Business Intelligence Tools
Over the years, SAP has collected and developed a large number of business intelligence tools. Some were added when SAP acquired Business Objects. Others were business intelligence tools developed for use with SAP Business Warehouse (BW). Others are new tools recently developed to make use of SAP HANA or to add new business intelligence features, such as visualization and predictive analysis.
The middle column of Table 15.1 shows a list of the available SAP business intelligence tools: There are 15 tools listed! SAP realized that this list is too long and decided to trim it to just five, which are shown in the right column. SAP calls this the convergence of its business intelligence tools.
Convergence of SAP BI Tools | ||
Office Integration |
|
|
Applications and Dashboards |
|
|
Data Discovery |
|
|
Reporting |
|
|
Table 15.1 Convergence of SAP Business Intelligence Tools
SAP split the list of tools into four types, grouped by use cases rather than by features and functions. For each category (shown in the left column of Table 15.1), SAP selected only one or two business intelligence tools that will be actively developed and improved going forward. The tools not on this list will converge into the selected SAP business intelligence tool(s) for each category. These older tools will not stop working or disappear; they will still be maintained and supported, but they will not continue to be developed.
SAP also will not force people to migrate to the new, shorter list of tools. Because many of the tools have been in use for more than 20 years, it is not a simple matter to just “kill” the old products. Millions of reports are still running daily using these old tools. Such large-scale migrations are not feasible.
SAP recommends that all new projects should preferably use the list of SAP business intelligence tools in the right column. All the unique features might not yet be available in these five SAP BI tools, but they will be included over time.
The selected SAP business intelligence tools for each of the four content types are as follows:
- Microsoft Office integration
The SAP reporting tool going forward is SAP BusinessObjects Analysis, edition for Microsoft Office. This tool runs as a Microsoft Office plug-in. - Applications and dashboards
SAP BusinessObjects Design Studio is a relatively young tool for creating dashboards and web applications. - Data discovery
SAP Lumira is also a young tool, one that integrates very well with SAP HANA. It is strong with visualization and working with all different kinds of information. It is an easy tool to learn, so end users can quickly create impressive results. - Reporting
The tools selected here are SAP BusinessObjects Web Intelligence and SAP Crystal Reports.
All five of the selected tools work well together, so you can publish results from one tool and consume it in another.
You should focus mainly on these five SAP business intelligence tools. SAP Business Explorer (BEx) tools are specifically for SAP BW and will not be discussed in this chapter.
Creators and Consumers
Creators use SAP’s business intelligence tools to build models, reports, and analytics. Consumers use the same tools, but only to view the results. The dividing line is not always clear. It can be blurred with power users, who do a bit of both.
[+] Tip
What is important here is that all of these people use the same business intelligence tools; they just use them in totally different ways. How each group uses these tools factors into deciding which tool to use.
Professionally Authored and Self-Service
Because people use these business intelligence tools differently, it is easy to see that some tools suit one group of people more, and other tools suit another group more.
Some SAP business intelligence tools suit an approach called professionally authored. These types of tools expect IT folks, creators, analysts, data scientists, and power users to be the creators and designers. Other tools suit a more relaxed approach. They make it easy for average end users, decision makers, and power users to find, discover, visualize, and consume information. This is the self-service approach.
[»] Note
You can use the same tools with either approach. Some tools just seem to encourage a certain approach, as we will discuss when we look at individual tools.
There is also a group that lies in between these approaches. This group includes analysts who author business intelligence content for their own use or for use within their department or line of business (LOB).
These different groups are shown in Figure 15.1, which nearly summarizes the entire chapter. By looking at the usage patterns, the types of users, and the business intelligence tool categories, you can start to make a decision about which tool to use.
Figure 15.1 Four Types of SAP Business Intelligence Tools and Three Types of Users
Trusted Data
The concept of professionally authored is associated with a concept called trusted data. SAP BusinessObjects Design Studio is an example of a trusted visualization and dashboard creation tool. With these types of tools, you are restricted to trusted data sources, such as universes, BEx queries, and SAP HANA views. These data sources are seen as “trusted” because they are managed and governed by IT. Although SAP BusinessObjects Design Studio leans towards creating professionally authored dashboards and applications, it is specifically focused to consume trusted data sources. It does not even allow you to connect to some types of data sources. SAP Lumira, on the other hand, allows you to be as open and free for your data discovery needs and allows you to connect it to a large variety of information sources.
SAP Cloud for Analytics
In all areas of SAP, there is an emphasis on making sure products also work in the cloud. We have seen that even SAP HANA has cloud deployment (see the Cloud Deployments section in Chapter 3), and SAP business intelligence tools are no exception. SAP created a new cloud product offering called SAP Cloud for Analytics, which provides analytics functionality on SAP HANA Cloud Platform (HCP).
In this chapter, we will focus our attention on the on-premise SAP business intelligence tools. This does not mean that we will completely ignore the cloud; for example, you can publish directly from SAP Lumira, an on-premise SAP BI tool, to the cloud.
Business Intelligence Tools for Microsoft Office Integration
Tools that integrate with parts of Microsoft Office fall within this section as they relate to SAP HANA. They mostly focus on Microsoft Excel but can also use Microsoft PowerPoint.
The convergence of the SAP’s business intelligence tools means that we will not pay any attention in this chapter to Microsoft Live Office, the EPM Add-In, or the BEx Analyzer.
We’ll look at two tools specifically: Microsoft Excel; and SAP BusinessObjects Analysis, edition for Microsoft Office (occasionally referred to as Analysis Office).
[»] Note
The official name is SAP BusinessObjects Analysis, edition for Microsoft Office. Analysis Office is not an official abbreviation, but we have seen it used in several publicly available SAP slide sets and published YouTube videos. You will also find it commonly used in online forms, such as those at SAP Community Network (SCN).
In the certification exam, the official name of an SAP product is always used. Sometimes, the exam will display the abbreviated name as well—for example, SAP HANA smart data access (SDA).
Microsoft Excel
Let’s start with Microsoft Excel, which is obviously not an SAP tool, but has probably been the most widely used and best-known business intelligence tool available for more than 30 years.
As much as financial and engineering departments love Microsoft Excel, many IT departments hate it. The difference lies in their approach to the same tool. People with a self-service approach love it, whereas people with a professionally authored approach hate it. IT does not control and manage it, so it is seen as “unprofessional.”
Fact Sheet
Figure 15.2 presents many useful facts about Microsoft Excel. We will use Microsoft Excel as an example to describe the layout of the fact sheet. We use this same layout to help you learn the features for each of the SAP business intelligence tools that we discuss in this chapter. The features presented in the fact sheets were selected to help you choose the correct tools when consuming your SAP HANA information models.
Figure 15.2 Microsoft Excel Fact Sheet
Let’s start at the top left of the fact sheet. Microsoft Excel is a self-service business intelligence tool and falls into the Office Integration category because it is actually a part of Microsoft Office. What do we learn from this?
- Because it is a self-service tool, this tells us that the users are self-service users or analysts, who consume it themselves or in their department. (Look again at Figure 15.1.)
- Because it falls into the Microsoft Office integration category, we know that the tool environment is Excel-based. Other business intelligence tools can, for example, be Eclipse-based or web-based. The end user also consumes the content created with this business intelligence tool in Microsoft Excel, either on their desktops or their tablets with the Microsoft Excel mobile app. Other end user consumption environments include dashboards, web applications, printed reports, web pages, or mobile apps.
Microsoft Excel uses the ODBO driver to connect to SAP HANA. It is the only business intelligence tool that uses this driver. The ODBO driver implies that it uses MDX, which means it can read cubes. This means that Microsoft Excel is able to consume SAP HANA analytic and calculation cube views. By knowing that ODBO uses MDX and that MDX reads cubes, you just have to remember that Microsoft Excel uses ODBO.
Using Microsoft Excel with SAP HANA
Microsoft Excel is the ultimate self-service business intelligence tool. However, despite all its flexibility, it is also easy to use it “incorrectly.” If you import 700,000 records into Microsoft Excel and then build a pivot table on that data, you are not using Excel in the best possible way. If you use it that way, you use Microsoft Excel as a database—and it is not meant to be a database. You are also straining the network while transferring that much data.
A better way to use Microsoft Excel is to connect it to SAP HANA, as shown in Figure 15.3. You can then build the pivot table directly on the SAP HANA view. In this case, SAP HANA performs all the calculations, and Microsoft Excel displays the results. The 700,000 records stay in SAP HANA, and the minimum amount of data is transferred via the network. SAP HANA usually also uses less memory and thus is faster.
Figure 15.3 Use SAP HANA Information Models with Hierarchies in Pivot Table
The best way to test if you are using business intelligence tools correctly is to ask, will it work on a mobile device, like a tablet? If you load 700,000 records into Microsoft Excel, it will not work on your tablet. The tablet simply does not have enough memory, and your mobile data costs will be high. With the “correct” way, on the other hand, you could probably get this setup working on the mobile app version of Microsoft Excel if you had the correct driver installed.
An added benefit is that your reports and analytics become interactive; for example, drilldowns are easy to implement.
SAP BusinessObjects Analysis, Edition for Microsoft Office
SAP BusinessObjects Analysis, edition for Microsoft Office consists of plug-in tools for Microsoft Excel and Microsoft PowerPoint and therefore is a Microsoft Office integration type of business intelligence tool. The main user group for this is analysts, as the product name indicates.
Like Microsoft Excel, SAP BusinessObjects Analysis, edition for Microsoft Office is a self-service business intelligence tool. In this case, however, the focus is on working with trusted data (see Figure 15.4).
Figure 15.4 SAP BusinessObjects Analysis, Edition for Microsoft Office Fact Sheet
Because SAP BusinessObjects Analysis, edition for Microsoft Office focuses on trusted OLAP data sources and is an SAP business intelligence tool, the preferred BICS connection is expected.
Figure 15.5 provides a snapshot of SAP BusinessObjects Analysis, edition for Microsoft Office.
Figure 15.5 SAP BusinessObjects Analysis, Edition for Microsoft Office Microsoft Excel Plug-In
On the top of the screen, notice that there is a new menu option and ribbon bar available inside Microsoft Excel after you’ve installed the plug-in. The Analysis screen on the right looks very similar to the pivot table that Microsoft Excel users are accustomed to.
Business Intelligence Tools for Applications and Dashboards
SAP business intelligence tools for applications and dashboards are used for tasks such as creating dashboards for executives and decision makers and web applications for end users. This category of tools focuses on professionally authored results for trusted data.
We will look at SAP BusinessObjects Design Studio in this section. The other SAP business intelligence tools in this category will converge to SAP BusinessObjects Design Studio, which is the main tool in the applications and dashboards category.
SAP BusinessObjects Design Studio is used to create dashboards, OLAP web applications, and guided analytics. It features native (direct) connections to SAP BW and SAP HANA.
SAP BusinessObjects Design Studio concentrates on trusted data, and therefore uses BICS connectivity. The SAP BusinessObjects fact sheet is shown in Figure 15.6.
Figure 15.6 SAP BusinessObjects Design Studio Fact Sheet
SAP BusinessObjects Design Studio was built with mobility in mind, so it features both Apple iPad support and an HTML5 user interface.
SAP BusinessObjects Design Studio falls into the professionally authored category, in which analytic content is centrally governed. It tends to be more of a developer’s tool, so some knowledge of JavaScript is required to get the most out of it. In addition, it draws a strong distinction between creators and consumers. The creators are normally IT professionals, and the consumers are normally executives and decision makers. Remember that these lines between creators and consumers can blur; for example, a CIO is the executive in charge of IT.
SAP BusinessObjects Design Studio has an Eclipse-based what you see is what you get (WYSIWYG) design environment, as shown in Figure 15.7.
Figure 15.7 Designing a Dashboard in SAP BusinessObjects Design Studio
Business Intelligence Tools for Data Discovery
SAP’s business intelligence tools for data discovery focus on self-service and visualization. These tools are easy to learn and have a wide audience. They also connect to more data sources than other business intelligence tools that focus on trusted data only.
SAP’s business intelligence tools in this category will converge to SAP Lumira. We will look at two SAP BI tools: SAP Lumira and SAP Predictive Analytics, which runs on SAP Lumira.
SAP Lumira
SAP Lumira is a comparatively new tool for the self-service and visualization of analytics. It was designed with SAP HANA in mind, so it leverages SAP HANA features to deliver fast results.
SAP Lumira had separate desktop, server, and cloud versions, but these are now converging into a new version of SAP Lumira. The new SAP Lumira integrates with SAP Cloud for Analytics. It is also easy to consume SAP Lumira content on mobile devices via the SAP BusinessObjects BI Mobile app.
SAP Lumira is well suited for ad hoc types of analytics; you can view and visualize any type of data in the way you like with minimal effort. In contrast to SAP BusinessObjects Design Studio, it does not focus only on trusted data; SAP Lumira connects to all the SAP HANA information models, like dimension views and OLAP views (see Figure 15.8).
Figure 15.8 SAP Lumira Fact Sheet
Figure 15.9 shows the visualization options available in SAP Lumira. Here, you can see information from the SAP HANA Interactive Education (SHINE) procurement views displayed on a geo cloropleth map. On a cloropleth map, the countries that sold more products are a darker green color than the countries that sold less.
Figure 15.9 Data from SAP HANA Information Model on Geo Cloropleth Chart
You can combine multiple graphs (see Figure 15.10) or tables with information to create storyboards in SAP Lumira. You can then publish these storyboards to the web or to the cloud.
Figure 15.10 SAP Lumira Storyboard
For more information on features such as infographics that are updated in real time and Smart Bus Cockpits, go to http://help.sap.com/lumira. You can download SAP Lumira at http://www.saplumira.com.
SAP Predictive Analytics
SAP Predictive Analytics is based on SAP Lumira technology. It is a combination of SAP Lumira and two older products: SAP Predictive Analytics and SAP InfiniteInsight.
SAP Predictive Analytics’ features are similar to those of SAP Lumira. However, a large amount of extra functionality is available for this product, especially for data scientists, a very small group of people that will use this functionality. Self-service tools like SAP Lumira cater to about 97% of the business intelligence audience. Designers of tools that create professionally authored content are about 3% of the business intelligence audience. Data scientists are perhaps only 0.01% of the audience.
You can use SAP Predictive Analytics to build predictive models, which can use an automated predictive library. Data scientists can also use the advanced features of SAP Predictive Analytics to integrate their own R language code, for example.
An example of how to use predictive models is to analyze the “churn” of banking customers. By looking at all the customers’ transactions and historical data, predictive models can be taught to identify when banking customers are likely to change to another bank. A personal banker can then get an alert to contact the customer and fix any issues before they leave the bank.
Executives and decision makers generally will not use predictive models, but they will be able to act on the results of these models.
Business Intelligence Tools for Reporting
In this section, we will look at two SAP business intelligence tools in the reporting category: SAP BusinessObjects Web Intelligence and SAP Crystal Reports.
SAP BusinessObjects Web Intelligence
SAP BusinessObjects Web Intelligence, popularly called Webi, is one of the most popular SAP business intelligence tools because it is easy to work with, yet powerful and fast enough to get the job done. You might hear SAP business intelligence people say, “When in doubt, use WebI.” See Figure 15.11.
Figure 15.11 SAP BusinessObjects Web Intelligence Fact Sheet
SAP BusinessObjects Web Intelligence is useful for many users and can be used for both self-service purposes and professionally authored reports. It was one of the first self-service style business intelligence tools from SAP. Because self-service BI tools allow users to use most business intelligence information sources, SAP BusinessObjects Web Intelligence can use all the SAP HANA tables and views.
End users can consume SAP intelligence reports using the mobile app or via a browser.
SAP Crystal Reports
We mentioned SAP Crystal Reports in the Business Intelligence Concepts section earlier in this chapter. In this section, we’ll dive deeper into the product details. There are two versions of SAP Crystal Reports to note: SAP Crystal Reports for Enterprise and SAP Crystal Reports 2011/2013. In this section we will specifically look at SAP Crystal Reports for Enterprise.
SAP Crystal Reports for Enterprise is used to create reports, which often have the exact specifications and look of the existing paper forms. The term “pixel-perfect” describes this requirement. It focuses on professionally authored reports, which can be viewed on desktops, browsers, and offline. Figure 15.12 shows the fact sheet.
SAP Crystal Reports for Enterprise can use a wide variety of data sources, including SAP HANA tables and views.
Figure 15.12 SAP Crystal Reports for Enterprise Fact Sheet
Choosing the Right Business Intelligence Tool
You should now have a high-level understanding of the various SAP business intelligence tools available and what each one does. When asked to recommend an SAP business intelligence tool on a project, you can use Table 15.2 as a quick reference.
Business Requirement | SAP Business Intelligence Tool |
SAP BusinessObjects Analysis, edition for Microsoft Office |
|
SAP BusinessObjects Design Studio |
|
SAP BusinessObjects Design Studio |
|
Reporting |
SAP BusinessObjects Web Intelligence or SAP Crystal Reports |
SAP Lumira or SAP BusinessObjects Web Intelligence |
|
SAP BusinessObjects Design Studio or SAP Crystal Reports |
|
SAP BusinessObjects Analysis or SAP BusinessObjects Design Studio |
|
Can consume all data |
SAP Lumira, SAP BusinessObjects Web Intelligence, or SAP Crystal Reports |
SAP BusinessObjects Analysis, edition for Microsoft Office and SAP BusinessObjects Design Studio |
|
Microsoft Excel and SAP Crystal Reports for Enterprise |
Table 15.2 SAP Business Intelligence Tool Options
See if you can expand this table. What SAP business intelligence tool would analysts use? Which would you recommend for trend analysis?
Alternative Consumption Methods for SAP HANA
To this point, we have only discussed which business intelligence tools you can use to consume SAP HANA information models—but SAP HANA views can also be used in many other ways to show business information.
SAP HANA Studio Preview
Another way that we can view information created by SAP HANA views is with the Data Preview feature in SAP HANA studio or the SAP HANA web-based development workbench. We discussed this feature in Chapter 5 in the Data Preview and Catalog Area sections (see Figure 5.5 and Figure 5.18).
In the Data Preview of SAP HANA studio, you can show raw data, apply filters to data, show distinct values, and analyze data. We hinted at this way of consuming SAP HANA information in the real-world scenario presented at the start of the chapter.
Using SAP HANA Information Models in SAP HANA XS
In Chapter 3, in the SAP HANA as a Platform section, we discussed the SAP HANA Extended Application Services (XS) component that is built into SAP HANA. SAP HANA is more than just a database. Although the primary focus of both this book and the exam are modeling, there is also another capability that makes SAP HANA invaluable: developing custom web applications using information models, OData and REST services, and the SAPUI5 framework. This method of development is also known as Model-View-Controller (MVC).
The following looks at the three layers used in MVC:
- Models
The types of models are same SAP HANA information models that we have created in this book—for example, calculation views. You can also create the models in SQLScript. - Controllers
Controllers are the “glue” holding models and views together. You can use OData or REST services with XSJS (XS JavaScript) to expose SAP HANA information models as web services. These web services consume the information in information models—provided of course that the end users have the necessary authorizations. The information gathered by the controllers is sent to the views using the normal HTTP protocol used by the web. The OData or REST web services are available to the web and can be used via RESTful HTTP commands such as GET, PUT, POST, and DELETE. The data is sent to the SAPUI5 views in either XML or JavaScript Object Notation (JSON) format. Controllers are written with server-side JavaScript. - SAPUI5 views
These are not the same as calculation views in SAP HANA; they refer to the HTML5 screens displayed in the web browser. SAPUI5 uses client-side JavaScript.Note the differences in where the JavaScript runs. For controllers, the JavaScript runs on the SAP HANA server. The views are displayed in the browser, so the JavaScript code runs inside the browser on the end user’s device.
[»] Further Information
The SAP HA450 training course and the free openSAP training courses on SAP HANA development go into more details on this topic.
Using SAP HANA Information Models in SAP BW
We discussed SAP BW running on SAP HANA in the SAP HANA as a Database section of Chapter 3 (see also Figure 3.11).
SAP BW has its own information modeling objects—for example, InfoCubes and Data Store Objects (DSOs). The objects in SAP BW are built in the application server layer. Even if SAP BW is powered by SAP HANA and these SAP BW objects are optimized for SAP HANA, they are still completely different from the normal SAP HANA information models, like calculation views.
Figure 15.13 SAP BW Information Objects and SAP HANA Information Models Together
You can have a single SAP HANA system in which one portion is used as the SAP HANA database for an SAP BW system and another portion is used for SAP HANA as a platform. Let’s call the SAP BW portion BW1 and the SAP HANA platform portion HA1, as shown in Figure 15.13.
The BW1 portion will contain SAP BW modeling objects, and the HA1 portion will contain SAP HANA calculation views.
In a system like this, we can perform the following tasks:
- Enable the SAP BW system to consume the SAP HANA calculation views from the HA1 portion.
- Get the SAP BW system to generate normal SAP HANA views in HA1 to expose the SAP BW information for consumption by SAP HANA.
You can use the HA1 portion with all the standard SAP HANA modeling, data provisioning, and utilization techniques.
SAP BW Consuming SAP HANA Information Models
Say that you have built a calculation view in the HA1 portion. You can use that calculation view in the BW1 portion and make it available for the SAP BW application server by creating a Transient Provider in SAP BW. You can combine this calculation view with another SAP BW cube by using a Composite Provider. In this way, you can combine historical data in the SAP BW system with operational data in the SAP HANA system.
SAP BW Generating SAP HANA Views
SAP BW powered by SAP HANA is also able to automatically create a calculation view in the HA1 portion. This calculation view exposes the data in an SAP BW cube or DSO. You can then combine the SAP BW–created calculation view with other SAP HANA views, and can then consume SAP BW data inside SAP HANA.
When you change the structure of your SAP BW information objects, the SAP BW–created calculation view will be recreated automatically.