Friday, 30 September 2016

SAP TechEd & HANA Express Edition

As always it was great to catch up with lots of friends in the SAP ecosystem - and to make some new ones. The show is a highlight for the SAP techie community and this year they celebrated the 20th SAP TechEd in North America.

Generally speaking those going to their first or second TechEd thought the show was great. Those with more TechEd experience were less enthusiastic - the best adjective I can come up with to describe the show is “subdued”.

In evaluating the success of TechEd 2016 there are many facets that need to be considered - but there are two obvious issues that changed the feel of the event.

Thursday, 29 September 2016

Handling Internal-table inside AMDP

While developing AMDP class there must be a situation like how to handle internal table inside AMDP.

Well below is the example for that in short and sweet manner.

Scenario : Suppose you have Airline code(Carrid) and connection number(Connid) in an internal table based on that you need to fetch data from inside AMDP.

Steps : AMDP Definition :

Wednesday, 28 September 2016

The Parent Child hierarchy in HANA

There are two types of hierarchies supported in HANA:

  • Parent-Child hierarchy
  • Level hierarchy

In this document, I would like to take the readers through the Parent child hierarchy: to create a very simple Parent Child hierarchy and to use it in a reporting tool that supports multidimensional reporting, like A-Office.

Monday, 26 September 2016

SAP HANA DB Installation Steps (Part 2)

Steps to follow:

1) Download the SAP HANA media file  from  service market place
2) Place the media file into the some safe directory location
3) Loginto OS level with” root user” or SIDadm
4) Go the directories which you the HANA media file cd <installation medium>/DATA_UNITS/HDB_LCM_LINUX_X86_64
5) Start the SAP HANA platform lifecycle management tool:
6) Find the file and execute “./hdblcm --compontent_root=/DVD"

Saturday, 24 September 2016

SAP HANA Installation Steps (Part 1)


1) Pre-study and go through the SAP Notes & recommendations
2) Prepare for Hardware requirements
3) Prepare for OS environment like UNIX, SUSE Linux, windows etc...
4) Install Java 1.6 or higher level
5) Install GUI Component
6) Download the HANA database software from service market place

Friday, 23 September 2016

Choosing The Most Effective Approach for Technical Migration to SAP HANA

There are three main technical migration paths to SAP HANA. All of these methods have their own advantages and disadvantages compared to each other. My aim is to provide guidance and recommendation to plan your HANA technical migration using most effective approach for your business case.

Before starting I have to mention that all these methods (except maybe greenfield approach) would require a general technical planning and preparations such as;
  • Housekeeping activities, removing obsolete data or archiving old data.
  • Collect and update database statistics
  • Perform consistency check for tables and dictionary objects.
  • Operating system and database related checks and verifications.
  • Parameterization for improved performance.

Thursday, 22 September 2016

Securing the Communication between SAP HANA Studio and SAP HANA Server through SSL


HANA Server is installed and running
HANA studio is installed in the local system
Access to the HANA server
Putty / WinSCP tools

HANA Server and client without SSL configured:

Securing the Communication between SAP HANA Studio and SAP HANA Server through SSL

Wednesday, 21 September 2016

How to Get Dependent Object List (Models & Tables) of a Model using Graphical Calculation View

Finding SAP Dependent object / Catalog object form HANA System is always a challenge. Once we used to do some change in Information model, before doing so, we should have analyzed the dependent object list. Here is a Graphical way, how you can found the dependent object from Active_ObjectCrossRef table.

This will help you to understand the foot print of your model and other affecting areas. Moreover, it is required before modifying Modeling object or information model. To know, which all are affected object of this change. If you required, the list of models and tables for a particular Top information model you can use this model to identify those stuff.

Monday, 19 September 2016

Optimising HANA Query push-down from Apache Spark

As you start using it with larger Tables or Views in HANA, you may notice that the query that is pushed down into HANA is not optimised efficiently. SUM & GROUP BY Clauses are NOT pushed down into HANA,  this may cause a large granular result set to be move across the network, to only be Aggregated in Spark.  That is certainly a waste of HANA's powerful query engine.
In this blog I will demonstrate the problem and show several ways to help get around it, using Apache Spark.

Using the same dataset from the earlier blog  we can see how more complex Spark SQL ( executing against a test table in HANA - "RDATA") is actually pushed down into HANA.

Saturday, 17 September 2016

How to found Dependent Objects in SAP HANA

This is a Blog to help you out in finding SAP Dependent object / Catalog object form HANA System. Once we used to do some change in Information model, before doing so, we should have analyzed the dependent object list.

This will help you to understand the foot print of your model and other affecting areas. Moreover it is required before modifying Modeling object or information model. To know, which all are affected object of this change.

If you required the list of tables for a particular SCHEMA or the list of Field of a particular table, this this is one and only easiest way. Even if you would like to know, which Tables are using same field, this can be a simple way.

Friday, 16 September 2016

ABAP new Open SQL and CDS runtime

With the introduction of NW AS ABAP 740 SPS5, the New enhanced extended Open SQL was introduced. The new enhanced open sql has some good features such introduction of aggregate functions, right outer join, casting, etc making it a starting step for Code-Push down paradigm.

The Code push down techniques (CDS and New SQL) are compared in the demo here. Below is a demo program of data retrieval from BKPF and BSEG.

1) ABAP program using inner join between BKPF and BSEG
2) ABAP program using CDS view entity
3) ABAP program using enhanced Open SQL features

Thursday, 15 September 2016

SAP HANA: Using SAX Parser for Loading XML response from outbound HTTP into table

In this blog , I would like to share my thoughts around using XS destinations for internet connectivity and capturing the XML response and loading the same into HANA with the help of SAX XML Parser.

Scenario :

We shall take the familiar Google Maps API and let us see how can we connect from SAP HANA and capture the XML response. We would need to define xshttpdest for outbound connectivity.

Tuesday, 13 September 2016

HANA XS Dynamic Job Scheduling through UI5 application the Easy Way

So the process's very simple, we define an "empty" job in XS Job Dashboard, then we add/delete the job scheduler through the UI5 application with a switch action.

First, the user you're using to authentication for your UI5 application must have the following role assigned:


HANA XS Dynamic Job Scheduling through UI5 application the Easy Way

Monday, 12 September 2016

Calling HANA Views from Apache Spark

Open Source Apache Spark  is fast becoming the de facto standard for Big Data processing and analytics. It’s an ‘in-memory’ data processing engine, utilising the distributed computing power of 10’s or even 1000’s of logical linked host machines (cluster). It’s able to crunch through vast quantities of both structured and unstructured data. You can easily scale out your cluster as your data appetite grows.

In addition to this it can also be used as a data federation layer spanning both traditional databases as well as other popular big data platforms, such as Hadoop HDFS, Hadoop Hbase, Cassandra, Amazon Redshift and S3, to name a few.

Sunday, 11 September 2016

Table Functions in SAP HANA - Demo

Post SPS 11 there are changes and restructuring in the way of HANA modeling. In this document I am trying to discuss about Table Functions (User Defined Functions).
The recommendation is to make use of Graphical Calculation views as the end product, so that the complexity of the information views are hidden inside Table Functions.
SAP recommends to Migrate Script-based Calculation Views to Table Functions and then into the Graphical Calculation Views. In the future, SAP recommends using graphical calculation views for modeling any analytic use cases. A migration tool within the SAP HANA modeler allows you to convert existing script-based calculation views available in your system to table functions and graphical calculation views.

Saturday, 10 September 2016

My Life Cycle Experience (SP8)

I’m writing this blog in regards to the SAP HANA Lifecycle Management tool in SP8, hdblcm (SAP Note 1997526). The plan for this blog is to initially post about installing HANA (and components) using hdblcm (also taking a detour to add a node) and then when SAP HANA SP9 comes out I will upgrade using the new hdblcm that comes with SP9.

So where is the hdblcm tool? this is found in the install media (if this is downloaded from the SAP Service Market Place you will need to have SAPCAR on your system to un-archive this file). It can be started in two ways, by calling ./hdblcm or ./hdblcmgui.

Friday, 9 September 2016

SAP HANA: Exploring data using SAP Visual Intelligence

SAP Visual Intelligence is SAP’s latest innovation in the SAP BusinessObjects Explorer solution family. It is a desktop-based visualization and data manipulation solution that allows business users to acquire data from a variety of corporate and personal data sources and manipulate without any scripting.
They can then analyze this data, with beautiful visualizations, quickly discovering unique insight that can be easily shared, shaping the business faster than ever before. -- As mentioned by SAP

Let us see what SAP says that we can do with SAP HANA using SAP Visual Intelligence:

Thursday, 8 September 2016

SAP HANA Migration from Multi-Node to Single-Node

SAP HANA Database SPS 08 and higher

Install a New HANA Database as Single-Host System

An SAP HANA database cannot be recovered to an SAP HANA database with a lower software version. The SAP HANA software version used for the recovery must always be the same version or higher than the SAP HANA database used to create the data backup or storage snapshot.

Wednesday, 7 September 2016

Network Bandwidth Test for HANA Server and Replication Calculation

For network bandwidth testing you need the newest NIPING version for this test, please follow SAP note 799428 to get it.

First start the NIPING server on Secondary server site which you plan to use as data replication target site with the following command:

niping -s -I 0 (the last character is zero, not the letter O)

One can also use the command: niping -s

Tuesday, 6 September 2016

Create Cumulative figure in HANA Graphical Calculation View

This is a document how you can create a cumulative calculation using HANA Graphical Calculation View. It is one of the easy example, but you can extend it to any complex scenario.

I am creating a Simple file like this and our aim is to create the cumulative column as show bellow.

Product Annual Sales(USD) Cumulative Sum Sales
1070 3600 3600
1050 336 3969
1020 220 4156
1060 192 4348

Saturday, 3 September 2016

SAP HANA Scripted Calculation View

When I was trying to learn HANA scripted calculation view, I had to spend lot of time in creating tables, views and data records in order to get my hands dirty and learn how the scripted calculation views works. What I am trying to do here is gather all of these information in this blog so that one can create their own tables, data and finally scripted calculation Views in the following ways.

We will Discuss Calculation View using.

1. SQL Script - Using CE Functions
2. Table Functions
3. Procedure

Friday, 2 September 2016

Upload and Retrieve Image using SAP HANA XS & SAP UI5

One of the most common use case in building XS based Native HANA Application is working with file uploads like image, csv etc.,
In this blog I will explain how to:
  1. Use SAPUI5 File Uploader to upload an image
  2. Render preview of the uploaded image
  3. Save it to HANA DB using a XSJS service.
  4. Retrieve the saved image using XSJS service and render it on the UI.
Please note this approach can be applied for any type of file. e.g .csv, xlsx etc.,
Upload an Image using SAPUI5 File Uploader: