Friday, May 24, 2013

BEx Query Designer: Usage of NODIM function in formulas

Data function in BW BEx Query Designer NODIM is used to remove unit or currencies from key figures. It is useful while you need to calculate over key figures with different units or currencies.

Unless you employ using the NODIM you will get messages like MIXED VALUES or similar depending on customizing (SPRO - > BW - > Reporting-relevant Settings - > General Reporting Settings - > Display of Numerical Values in the Business Explorer).

How you use the function within BEx Query Designer’s formulas?

If you put it like this:

It is not correct. While you run report you get message:

Element  is not correctly defined check the query definition

Additional elements are added to the item Variance that do not have the same dimension, for example, quantities and amounts or amounts and ratios.

If you the addition is still meaningful, you can hide the dimensionality of one or both partial outputs with the operator 'NODIM'. The system then understands this partial output as a dimensionless number.

Correct way of using NODIM function is:

Monday, May 20, 2013

HILO = SAPVisi = Photon = SAP Lumira

One of last week SAPphirenow (14-16 may 2013) outcomes was announcement of new name for SAP Visual Intelligence. From this time on the new name is SAP Lumira. Tool initially started as project HILO as new generation of data visualization software. Yep! Even after all tools acquired from BusinessObjects SAP indented to create a new tool. Just needed to say that project was driven within BusinessObjects portfolio particularly in what is BusinessObjects Explorer. HILO was Desktop Edition of BusinessObjects Explorer. Around spring of 2012 it was aimed to access, manipulate and match up data in order to create rich, beautiful and highly interactive data visualizations. 
Then moving to end of 2012 year a Visual Intelligence (in short SAPVisi) was chosen as new name. It was the data manipulation and visualization tool. Enables to connect various data sources, select and clean data, manipulate and visualize data with a diverse offer of graphical charts and tables. SAP Visual Intelligence can be installed locally and can operate on data either remotely or on locally stored datasets. The outputs (e.g. charts) created (in format .SViD) can be saved as files and sent out by email. File is a document that contains the data source connection information, the data definition and data, and the visualizations. Datasets can be published to SAP Hana, and documents published to SAP Streamwork activities, etc.

Early in 2013 a project "Photon" came in to the game. It represents SAP’s move to cloud analytics. There are some companies (e.g. gooddata) which came with this concept earlier. Cloud analytics is a service model in which elements of the data analytics process are provided through a public or private cloud. In broader terms cloud analytics can be service like hosted data warehouses, software-as-a-service business intelligence (SaaS BI known as on-demand BI or cloud BI) and cloud-based social media analytics. SaaS BI may involve delivery of BI apps to users from a hosted/cloud location. Photon is set to materialize SAPVisi in forms like self-service data visualization in the cloud. It remains to be part of SAP’s BI OnDemand.
Finally last week Photon got official name SAP Lumira. Lumira positioned as new innovation for self-service BI. Lumira comes on two flavors, as:

SAP Lumira – Desktop app
SAP Lumira Cloud – Cloud app

BTW: SAP BusinessObjects Explorer stays stand-alone as Lumira and Explorer are complementary and integrated. SAP Lumira allows Analysts to load, mash-up and manipulate data and then share their results back into SAP BusinessObjects Explorer for distribution over the web and onto mobile devices. See FAQs.

Download links:

Useful links:

Friday, May 17, 2013


There is an interesting addition to some of ABAP statements which is suppressing ABAP dump (Runtime Error: LOAD_PROGRAM_NOT_FOUND, Except: CX_SY_PROGRAM_NOT_FOUND) introduced. It came with NetWeaver ABAP AS release 6.40. It is used to in case when specified include program does not exist normally a syntax error will be triggered. Syntax error message can be suppressed by specifying the addition IF FOUND. Usage e.g.:

PERFORM function(zmm_formpool_1) IF FOUND.

In BW area IF FOUND can be used as well. E.g. If you have your business logic for BW transformation in include ABAP program. You can call include the include ABAP report with the if found addition.

Monday, May 13, 2013

Python and SAP?

Python is extremely popular in areas of string manipulation and search in a dictionary. This makes this programing language preferred option by programmers for writing scripting applications. As part of these areas of usage and others; python is used in SAP arena as well.

1/ First time I encounter python in SAP was earlier in 2007 when I start to work with BI Accelerator. Here there is an accelerator admin console written in python. It is using script to start it up - Python Admintool or so called TREX Administration Tool (Python). The tool as itself is used to administrate queues of the TREX queue server and indexes of the TREX index server. It is possible to monitor availability and functions of the TREX. The tool was written in python to be used regardless of the operating system on which TREX was installed. Also as it is stand-alone tool it can be used to monitor TREX during routine operation independently of the application using the TREX.
Speaking of BI Accelerator (later renamed to BWA) there is a bunch of other tools written in python as well. E.g.:
  • / – backup/restore  TREX index and queue files
  • - Python Trace
  • - TREXAlertserver
  • – TREX topology
  • etc.

2/ Another big SAP field where python language is used in SAP MaxDB. There are MaxDB python modules to access SAP MaxDB databases from python scripts. Scope of modules covers executing SQL statements, managing databases, importing and exporting data.

3/ ABAP connectivity. Python us used in several areas e.g. in web applications development, RESTful hardware integration and ABAP extensions while speaking of accessing SAP backaend. As for ABAP based (ABAP stack) backend there must be Python RFC connectors which enable that connectivity. Apart of others SAP is providing Python RFC Connector for that as well. Here’s official pages.

4/ Last but not least there is also SAP HANA relying on the python.
Few examples of how Python is used in HANA:
1659599 - SAP HANA: Pythontrace for TREX-ABAP interfaces
report HANA_ABAP_PYTHON - to switch on ABAP-Python trace
report TREX_ABAP_CUSTOMIZING - Customizing for the TREX ABAP Client, Customizing indexing and search you can choose between the communication methods ICM or TCM. ICM is the default. TCM is slightly faster than ICM and does not do any implicit commits, but can only be chosen if the MaxDB client is installed. (TCM as formerly known as DBSL).

There are some python related blogs available on SCN:

Wednesday, May 8, 2013

SAP HANA Enterprise Cloud (HEC)

Here’s short recap for those of you who didn’t notice yesterday’s rush on e.g. twitter regarding SAP’s announcement. If you are twitter familiar you can look up a hash tag #simplyHANA as event was covered by that tag. 

Basically what was said is that SAP is moving its HANA solution more and further into the cloud. So called SAP HANA Enterprise Cloud (HEC) was announced. It is another SAP’s cloud initiative (SAP HANA One – developer or business editions, just to mention very few related to the HANA). This is about HANA going on large scale. SAP believes that in future even companies with mission critical systems (e.g. from banking, pharma industries) will put their applications, infrastructures and all platforms into the cloud. Given this SAP is offering possibility to run customer’s apps on top of a cloud-based version of HANA in-memory DB technology. Basically this is an essence what was the event about. They emphasizing that they could run also big apps like data warehouses (SAP BW), CRM, ERPs apps. There was short demo of app called Cloud Frame Monitor. The app enables to configure and deploy HANA instances over the cloud. Like customer can configure, dynamically add more power (more CPUs, nodes) and storage to the running app as needed. 

From licensing point of view it was said that customer needs to have HANA license as well as app license (BW, CRM, ERP, ...). They app is deployed into SAP HANA Enterprise Cloud which will use most likely subscription pricing model.
See all of Vishal Sikka’s thoughts of the announcement here.

To me personally I’m even more confused what I heard at event. It looks like potentially SAP would run their (own?) data centers with offering of having customer’s apps running in those so called SAP’s clouds. This is very new to current status as SAP is relaying on partner (amazon’s AWS, cloudshare, ucloud, etc.) cloud to run SAP’s apps. Would SAP invest into the data centers? Maybe they gained some while acquisitions of ariba and successfactors?  
Let's see if next week's Sapphire conference in Orlando will give more clarify about SAP HEC.

For event’s whole reply look here.

Operational Data Provisioning (ODP)

You may encounter this topic while speaking of datasource which are or are not released for ODP. The release it self means either they are enabled to be used by tools like SAP Data Services (former SAP BusinessObjects Data Services (BODS)) (DS). ODP Data Replication API is used for internal connection of Data Services to application extractors. Interface is delivered with a NetWeaver Support Package. SP is specific for each of ECC’s component PI_BASIS.

Great benefit of ODP is that so far only BW could use business content datasources. While utilizing ODP all Business Suite extractor can be consumed without BW. Also there is no need for ABAP flows where data provided by extractor is processed while staging. This clearly indicates that one of data consumer is SAP HANA.

How to recognize if particular DS is released for ODP? Check table ROOSATTR. If the datasource (extractor) is marked as released in ROOSATTR (field EXPOSE_EXTERNAL = X), then ODP API will be used for extraction and multiple subscriptions should be possible.  If it is not marked as released in ROOSATTR, then you are not using ODP to do extractions and multiple subscriptions are not possible.

If you have developed your custom extractors and you would like to released them in this way you need to use ABAP report RODPS_OS_EXPOSE for that.

P.S: be careful while you upgrading your ECC via SP or EHP. It may happen that upgrade will release some of business content datasources as ODP. As consequence some of them may stop working. Therefore always check SMP for the latest fixes of such a issues.

More info on ODP topic:
1558737 - Data Sources released for ODP data replication API
1585204 - ETL interface: Release of DataSources

For other option DXC (Direct Extractor Connectioncomplement to ODP see here

Changes to ABAP workbench TAs

I just observed that also ABAP Workbench is going through few some changes. So it is not only HANA which is main focus at SAP :-)

SAP_ABA 730 08:

SAP_ABA 731 05:

There is no Status any more:

Main program is now called Master Program and few less flags: