Wednesday, August 31, 2016

Third Party ETL Tool Certification Program for SAP HANA

Home


The SAP HANA (In memory) database supports a wide variety of interfaces: ODBC (for C/C++ based programs), JDBC (for Java applications),
ODBO (for analytic applications), and internally the Python DBAPI and SQLDBC. SAP HANA database interfaces provide the implementation layer
between the database and the application. The supported interfaces components provide a database access Application Programming Interface (API)
 for their respective language and environment. For some interface components the API is defined by a standards body or an application.


The objective of the certification program is to integrate SAP HANA with 3rd party ETL tools. Once the minimum requirements by the partner ETL tool are met, the integration by SAP is certified. The following interfaces are currently available for partners to certify their ETL tools against SAP HANA.

Interface Environment API Description Version
JDBC JAVA Java Community Process (JCP) 3.0, 4.0
ODBC C/C++ SQL Standard (SQL/CLI), Microsoft 3.0, 3.51
Certification Prerequisites

The following system landscape prerequisites must be deployed by the partners in their lab environment for the SAP HANA certification:

SAP HANA (SP04 or SP05, latest Revision) appliance
SAP HANA Studio and SAP HANA Drivers installed – Latest Revision
SAP Data Sources Connectivity ( Ex: ECC, ERP, BW, SCM, CRM etc.)
Non Sap Data Sources Connectivity ( 3rd party Applications/Databases)
Partner ETL tool (latest release version) landscape configured and connected to SAP HANA via ODBC/JDBC dedicated user.
Connectivity to SAP HANA Cloud instance on Amazon Web Services -> For cloud based ETL use case scenarios

Technical Requirements

This section provides a list of the ETL relevant HANA database features and associated requirements for tighter integration between the ETL tool and the SAP HANA database. A partner ETL tool certified on SAP HANA should enable consumption of these features to the end user for all data replication business scenarios. If the ETL tool has any limitations in supporting these features, they must be communicated clearly during the certification process.

Connectivity, Security Read, Write & Update data into SAP HANA db Bulk Data Inserts, Delta Loading Mechanism Administration, Monitoring, Error Handlind & Debugging
Mechnism to import data into SAP HANA Repository for all Metadata Objects etc.

SAP NetWeaver BW on SAP HANA

Home

Video presentation;

https://sap.na.pgiconnect.com/p55028624/

SAP Notes for PCA:

Note: 1614266 System Copy: Post Copy Automation (PCA)/LVM
Note: 1707321 BW System Copy: Note analyzer Post Copy Autmoation (BW-PCA)

Additional info:

1) BW PCA is embedded into the LVM framework, it requires a valid LVM License.
2) End-to-end copy scenarios for SAP BW,SAP CRM and SAP SCM are available with release 2.0 of SAP
Landscap virtualization Management


Prerequisites: You have to be registered as a LVM customer else the software is not visible.

SAP Marketpalace - Download Location

http://service.sap.com/swdc -> installations and upgrades -> Browse our Download catalog
-> SAP Netweaver and complementary products -> SAP NW Landsc VIRT MGY ENT -> SAP NW LANDSC VIRT MGT ENT 1.0 -> installation


Installation
1.1  LVM license:

Typically the process starts with getting the license for LVM in place. As BW PCA is embedded into the Post-Copy Automation framework this is licensed by LVM and requires a valid LVM license. Customers wanting to use BW PCA Initial Copy (incl. delta queue cloning feature), need to contact their Account Executive / Global Account Director to get the according license. For questions on licensing please contact your AE or LVM Solution Management Jens.Rolke@sap.com). Due to involvement of different parties to get the license in place you should start getting the license early in your project phase. The details on the license installation you find in the installation guide at http://service.sap.com/~sapidb/011000358700000175442014E.
1.2   Where can I download the software, I can’t find the software in service market place.

Before being able to see the software you have to be registered as a LVM customer. This requires the license for LVM (see point 1). In case this is in place you can find the software under following the path http://service.sap.com/swdc --> Installations and Upgrades --> Browse our Download Catalog --> SAP NetWeaver and Complementary Products --> SAP NW LANDSC VIRT MGT ENT --> SAP NW LANDSC VIRT MGT ENT 2.0 --> Installation.
1.3   What is the install footprint for BW PCA?

The functionality of BW PCA is delivered via notes and support packages. However in order to use the
tool, you need a license key for LVM. This key is an add-on, so SAP is able to restrict access to the functionality.
1.4   What are the required SAP notes I have to implement?

To get a list of the notes required in ECC and BW, please follow the instruction mentioned in the  note http://service.sap.com/sap/support/notes/1707321 (for BW notes) and http://service.sap.com/sap/support/notes/1614266 (for basis notes) in all systems affected by BW PCA. Execute the note analyzer report attached to the note 1614266 and choose  the right option for the affected system to download and implement the needed notes. Lessons learned from customer that used BW PCA are, that you should execute this report with the latest XML file in ECC and BW immediately before starting your system copy procedure. That ensures that you have the latest developments / corrections in your systems.
1.5   I don’t copy the ERP system. Do I still have to install notes in the ECC?

There are currently several notes that need to be applied to your ECC systems. Which of those apply to your system, you can check out using the note analyzer report attached in note http://service.sap.com/sap/support/notes/1707321, choose the option “Post-Copy Automation requirements for BW source system that will not be copied”.
2.   Further information
2.1   Where within SAP do I find more information about BW PCA Initial Copy?

We have created an official SDN page regarding the BW PCA Initial Copy functionality with presentation material and details on which licenses are required, etc. Please visit http://scn.sap.com/docs/DOC-32414 For more info about the whole scope of BW PCA please visit the SCN page:http://scn.sap.com/docs/DOC-54097 (System Copy Automation for SAP Business Warehouse System Landscapes (BW PCA))
2.2  Are there any recorded sessions available

We have 2 recorded sessions that should provide an overview of the BW PCA Initial Copy procedure.

http://scn.sap.com/docs/DOC-34256

There is an RDS solution available. In case you want to make yourself familiar with it have a look at https://service.sap.com/rds-hana-bwmig.
2.3  Is there an RDS solution available?

There is an RDS solution available. In case you want to make yourself familiar with it have a look at https://service.sap.com/rds-hana-bwmig.
2.4  More practical infos :

First guidance about BW Housekeeping and BW PCA: http://scn.sap.com/docs/DOC-46433
How-To guide for delta queue cloning http://scn.sap.com/docs/DOC-47447
Be aware that the Note Analyzer Program described in above document has been changed, so for the note implementation please refer this guide: http://service.sap.com/~sapidb/011000358700000175442014E
3.   Impact of the cloning on ECC and BW
3.1   What happens to my ECC environment?

3.1.1   Do I have to lock ECC against data changes?
The cloning of the queues can happen without any implication to the operational processes in ECC. All Queues visible in transaction RSA7 get cloned and will be populated as soon as they are available. Existing queues are not influenced. Cloning means, we double the pointers for delta queues, not the data behind. The data is kept in ECC as long as the cloned BW system hasn’t picked up the deltas as well (growth of ARFCSDATA table). So please consider that in your overall planning as this phase of growing delta queues should be as short as possible.
3.1.2  Do I have to open the ECC for metadata changes?
If note 1855474 is implemented (it is part of aforementioned note analyzer list), then the source system doesn’t need to be changeable during the PCA procedure.
3.2  What happens during the cloning process and what are things I should consider:


The cloning of the queues can be divided into 2 phases.
The whole procedure starts by executing the step “Clone delta queues in BW source system” with the task list
SAP_BW_COPY_INITIAL_PREPARE in the original BW system. This step processes the queues of each configured BW source system that is connected to BW. The process clones the relevant queues in the underlying BW source system by creating the relevant entries in the metadata tables.
In the step Synchronize delta queues in BW source system the task list has to synchronize the cloned queues with the
original queues in the underlying BW source systems by processing the single queues sequentially. With recent feature improvement the synchronization procedure enables parallelization in different BW source systems to speed up the process. If you have created a large amount of LUWs in ECC between the clone step and the synchronization step, the runtime of this synchronization step can be significant long. In Pilot projects, we have seen runtimes of up to 5 hours. As a recommendation here you should empty the queues before cloning by getting deltas into BW. Furthermore you should keep the time between the clone step and the synchronization step as short as possible.
3.3  Which delta queues get cloned and which applications do not support BW PCA?

All delta queues which are visible in transaction RSA7 get cloned. However those extractors that developed an own change pointer management which can only deliver one single BW system will not be treated by BW PCA delta queue clone, i.e. though the cloning in RSA7 might appear ok, the DataSource can encounter errors during data load. This means those applications have to check whether there is a workaround possible (e.g. duplication of the datasource, own logic, etc.). The industry solution IS-H is such an example.
Please have a look at note http://service.sap.com/sap/support/notes/1932459 for unsupported data sources.
3.4  What should I consider once the delta queues get very large in between the single phases I am able to extract towards the connected BW?

If the delta queue got very large (e.g. during system copy and HANA Migration) you can use the parameter MAXPAK in the InfoPackage of a delta upload (->Scheduler –> Data Source Default Data Transfer) and configure the relevant parameter. See notes http://service.sap.com/sap/support/notes/1160555 and http://service.sap.com/sap/support/notes/1231922 for details.
3.5  What is the impact on the BW system?

3.5.1  Can I still load data and execute Queries?
After the cloning task has started, new delta initializations cannot be done anymore until the prepare task list is finished after the database export. When the queue synchronization phase has started (which can take a few hours in case of large delta queues) delta loads or initializations of deltas cannot be executed until the synchronization process is over, the BW database is exported and the prepare task list is finished. You can minimize the time needed for synchronization by following the advices given below in section “Runtime considerations”. Reporting on existing data is however still possible during that phase until the BW is shut down for database export.
3.5.2  Do I have to set the BW system to changeable?
If you have installed the latest version of the XML file of note http://service.sap.com/sap/support/notes/1707321 then the BW system does not have to be changeable during the PCA procedure.
4.  How to Use the Task Lists
4.1   What are the task lists I have to execute and in which system do I have to do that?

In the original BW you have to execute the task list SAP_BW_COPY_INITIAL_PREPARE. After you copied the system you execute the task list SAP_BW_BASIS_COPY_INITIAL_CONFIG in the copied system. For details on the procedure please check the configuration guide at http://service.sap.com/~sapidb/011000358700000368892013E
4.2  Should I continue the execution of the task list SAP_BW_COPY_INITIAL_PREPARE (i.e. after the step Confirm export) in the copied system?

No, the task list SAP_BW_COPY_INITIAL_PREPARE should only be executed in the original BW system. Please continue the task list after the step Confirm export in the original BW system using transaction STC02.
Don’t create a new execution of a task list (e.g. SAP_BW_COPY_INITIAL_PREPARE) via transaction STC01 while there is already an execution in process. Use transaction STC02 in order to resume the execution instead.
4.3  How should I execute the cloning step-by-step?

A good procedure in case you don’t use the Database Migration Option of Software Upgrade Manager (DMO of SUM) is the following:
Extract all deltas in the original BW system using standard procedure. Some of our customers created an own Process Chain
that includes all Delta InfoPackages and executed this Process Chain. Ideally you do this twice in order to also remove the data in the delta queue which is stored for possible delta repeat request.
Clone delta queues by executing BW PCA task list SAP_BW_COPY_INITIAL_PREPARE in original BW system.
Extract all deltas in the original BW system once more (is checked in the BW PCA procedure). Ideally you do this twice in
order to also remove the data in the delta queue which is stored for possible delta repeat request.
Synchronize delta queues by continuing BW PCA task list SAP_BW_COPY_INITIAL_PREPARE in original BW system.
Export BW database and startup original BW followed by executing regularly tasks as you do it usual
Resume the task list SAP_BW_COPY_INITIAL_PREPARE in transaction STC02 in the original BW
system.
Parallel you can import BW database to build a new cloned BW system.
Extract deltas in cloned BW system twice (by using Process Chain from Step i))
Optional upgrade cloned BW system to your target release.
Extract deltas in your upgraded BW system twice (by using Process Chain from Step i))
Migrate your database to SAP HANA
Run post migration activities
Extract and execute deltas in BW on HANA on a regularly basis
4.4  Are there further task list which are interesting for me?

BW Housekeeping task list can be applied prior to system copy and migration (see note http://service.sap.com/sap/support/notes/1829728).
5.   Runtime considerations
5.1   How long will the execution of the task list take in the original system

The cloning phase itself is quite fast. The synchronization phase will take longer, it was however parallelized and hence also won’t take days, especially if you follow the step by step procedure given above. It is however crucial, that the sync step doesn’t encounter failed delta data loads. These loads are already given as warning in the clone step, and will cause the sync step to halt in error in the check phase. You are then asked to repair these loads, and in case the only possible repair is to delete the initialization, then you are in trouble, because no changes to initializations are allowed anymore after the clone step. Most time in past projects has been spent with repairing old and outdated loads rather than the plain run time of the automated steps. For that reason make sure that all DataSources with active delta initialization do indeed work and have been loaded recently (cf step i. in the procedure outlined above). Run the SAP_BW_COPY_INITIAL_PREPARE in check mode first to detect potential problematic candidates and fix them before you run the task list in execution mode.
5.2  How long will the execution of the task list
take in the cloned system

Most long running steps like reconnect or TSPREFIX-Rename have recently been parallelized in the different BW source systems to speed up the process. We have seen that the runtime is sometimes determined by the runtime of BDLS, not so much for the initial copy (which this FAQ concentrates on), because usually only the BW system itself is renamed, but for refresh scenarios, where also the source systems are renamed. The BDLS runtime has been improved a lot recently within PCA. With parallelization of conversion jobs based on table entries, the runtime of BDLS especially for BW systems can be reduced significantly. For better planning and preparation of your project you should run the analysis report RBDLS_CHECK beforehand in your productive BW system to extract the relevant tables for conversion and get estimation about how to schedule the BDLS process. For more information look at the following links:  
http://scn.sap.com/docs/DOC-60122
https://scn.sap.com/docs/DOC-62597
/ BW on RDBMS system landscape?
In case you used the BW InfoObject 0LOGSYS in DSOs, InfoCubes or Masterdata objects, the runtime of BDLS can be significant. In that case consider to execute the procedure given in note http://service.sap.com/sap/support/notes/1894679
6.  Landscape considerations
6.1   Can we have a mixed BW on HANA

With help of BW PCA (delta queue cloning and initial copy configuration) you can copy a BW system which can then be upgraded and migrated to HANA. However it is not recommended to have a mixed system landscape (Dev, QA and prod) running on different databases. For more info please refer http://scn.sap.com/docs/DOC-41509 (page 25 ff.) SAP Note 1808450 - Homogenous system landscape for on BW-HANA
6.2  I want to upgrade/migrate my original system. Does PCA initial copy help me here?

You can use PCA initial copy to create a temporary synchronized copy of your original system which can be used by the end users during the time in which you upgrade / migrate your original system. After the original system is again productive, you can decommission the copied system.
6.3  Is the copied system synchronized in all aspects?

The cloning procedure covers only Service API extraction from ERP systems. ODP extraction is currently under development.
If you use DB Connect source systems, then the DBCON entries are copied as well, so you would extract the same data into either BW system. In case this is not desired, you would have to change the DBCON entries manually.
If you use WebService Push Data Load, then the remote WebService Systems will continue to send the data into the original BW only. In case it shall send
it to the new BW instead (or as well), the WebService System must be changed, eventually even by adopting the code of the Service.
If you load data into further (data mart) BW systems, then you have to decide, whether the Data Mart shall receive the data from the original or from
the new BW system or from both. If you chose to switch the delivery to the new BW, then you need to manually change the host in the RFC destinations of the DataMart system and execute BDLS there to point to the new BW. If you chose to receive data from both BW systems, you can connect the new BW system manually and use the data flow copy tool within the DataMart to copy the data flows which load from the original BW.
If you use planning tools, then the plan data will be stored in one BW only, depending on which one you execute the planning. The other system is not synchronized, except you use dedicated SLT features. Every other change not related to DataLoads, like e.g. workflow processes, are also not synchronized, but could be with specialized setup of SLT processes.
6.4  How long can both BW systems be maintained parallel?

If the restrictions given above are mitigated, then the systems can in principle be operated infinitely in parallel.
7.   Deletion / Undo of the Cloning
7.1    When the original BW is decommissioned, the original delta queues should not be filled anymore. What is the advised method of deleting these delta queues?

The easiest way to decommission the original BW system is to stop all loading processes followed by a deletion of source systems in the Administrator Workbench. The related delta queues of the source systems have to be deleted in RSA7 manually resp. with the report given in note http://service.sap.com/sap/support/notes/2014906.
7.2  Customer wants to decommission a BW source system or reset the cloned delta queues created by BW PCA and restart the configuration. What are the required steps?

Suppose you have a BW source system connection from a source system A to a BW system B. For this connection, delta is recorded. You want to delete the connection and the delta ecording. There are three cases to consider, for which we need to describe hat happens in BW system B and BW source system A when decommissioning the ystem.
7.2.1   Not even in source system A, an entry in table RSBASIDOC exists for BW system B
This is the case after elta queue cloning for PCA, when the new BW system B was not yet created and onnected to source system A.
You should copy the -Report attached to SAP note http://service.sap.com/sap/support/notes/2014906 to your source system A and execute it,
passing the logical system name of BW system B as input parameter.
This will cause the following changes in source ystem A:
delete the ALE change pointer delta recording
in table TBDA2. Delta is no longer recorded for those.
delete the delta DataSources from RSA7
belonging to BW system B. Delta is no longer recorded for those.
7.2.2  Within the BW system B, the source system A is visible n the Administrator Workbench.
In this case you have o delete the source system A from the administrator workbench in the source ystem tree in BW system B.
This will cause the following changes in BW system B:
the entry for source system A in table SBASIDOC will be deleted
all source system dependent metadata for system  will be deleted
This will cause the following changes in source system A:
the entry for BW system B in table RSBASIDOC will be deleted
all entries in table ROOSGEN for BW system B will be deleted
the ALE change pointer delta recording is set to inactive in table TBDA2. The delta is no longer recorded for those. The entries of table TBDA2 are not deleted, as this is not required, as delta is no longer recorded.
all delta DataSources in RSA7 of source system A pointing to BW system B appear as red. Nevertheless the delta is still recorded for those.
Therefore you have to copy the Z-report attached to SAP note http://service.sap.com/sap/support/notes/2014906to your source system A and execute it, passing system B as input parameter.
In the source system A following changes are caused by this report:
delete the ALE change pointer delta recording in table TBDA2. Delta is no longer recorded for those.
delete the delta DataSources from RSA7 belonging to BW system B. Delta is no longer recorded for those.
7.2.3  Within the BW system B the source System A is not visible in the Administrator Workbench or does not exist in the metadata tables of BW system B. But in source system A, in table RSBASIDOC, the entry for connection towards BW system B is still present.
In this case you have to execute function module RSAP_BIW_DISCONNECT in single test in source system A, passing the logical system name of BW system B as input parameter for the BW system, and the logical system name of source system A as input parameter for the OLTP-system. Do also set the FORCE_DELETE parameter to X.
This will cause the following changes in source system A:
the entry in table RSBASIDOC is deleted all entries in table ROOSGEN for BW system B are deleted
the ALE change pointer delta recording is set to inactive in table TBDA2. The delta is no longer recorded for those. The table entries are not deleted.
all delta DataSources in RSA7 of source system A pointing to BW system B appear as red. Nevertheless the delta is still recorded for those.
Therefore you have to copy the Z-report attached to SAP note 2014906 to your source system A and execute it, passing the logical system name of BW system B as input parameter.
In the source system A following changes are caused by this report:
delete the ALE change pointer delta recording in table TBDA2. Delta is no longer recorded for those.
delete the delta DataSources from RSA7 belonging to BW system B. Delta is no longer recorded for those.
7.3  Useful reports

We had a few customer situations in which the PCA procedure detected inconsistencies in already existing queues in the ECC environment. As this leads to a stop in the whole PCA procedure until the whole issue is fixed, we recommend to schedule the report RSC1_DIAGNOSIS in ECC, to check the consistency of the queues which should be cloned.

Wednesday, August 24, 2016

HANA to Netweaver Gateway - connectivity steps

Home


Step-by-Step Procedure 

1.1 Install the SAP HANA DBSL kernel files on the SAP NetWeaver Gateway
1.2 Install the SAP HANA client on the SAP NetWeaver Gateway application server
1.3 Maintain DBCON Table in Gateway System
1.4 Create Model Class
1.5 Configure a service
1.6 Implement a BAdI Class for DB determination
1.7 Register a Service and test it.


1. Business Scenario

SAP HANA Database is a high performance in-memory database offered by SAP.
By combining SAP NetWeaver Gateway and SAP HANA, you can expose the information from a
HANA database as OData Services. Integration between SAP NetWeaver Gateway and SAP HANA
provides a way for business users to see HANA data on any device or platform through SAP
NetWeaver Gateway

2. Background Information.

In this How To Guide, we will show you how to expose SAP HANA data with OData Service via SAP
NetWeaver Gateway. As of SP04 of SAP NetWeaver Gateway, only read scenarios are supported.
SAP HANA is specified as a secondary Database of NetWeaver Gateway and all of the requests will
go through SAP NetWeaver Gateway.
You can use the following information models as an OData service from the SAP HANA DB:

 --  Attribute views
 --  Analytic views
 --  Calculation views

Please be aware that SAP is also planning to release the XS Engine as a part of HANA technology.
The XS Engine allows users to expose HANA data as Odata services natively without SAP
NetWeaver Gateway.

3. Prerequisites

The following pre-requisites are required to support this scenario:
 Access to SAP HANA 1.0 or higher system
 Access to any type of View in the HANA system.
 Access to SAP NetWeaver Gateway 2.0 SP04 or higher system.
 7.20 Kernel patch level 110 or higher is used for the NetWeaver Gateway
 IW_BEP is installed on the Gateway Hub System
 IW_HDB is installed on the Gateway Hub System

Note: It is technically possible to have a distributed deployment of IW_FND (Hub) and IW_BEP
with IW_HDB. This means that the Business Suite system with IW_BEP and IW_HDB component
can also be used to connect to the HANA DB. The prerequisite for IW_HDB installation will be the
SAP NetWeaver Release 7.02 with SP9 level.

Note: To simplify the deployment, this document will use the Gateway Server with IW_BEP and
IW_HDB.

You can download the installation file of IW_HDB component from SAP service marketplace.
http://service.sap.com/swdc. Please be sure that you need to down load the file from
“Installations and Upgrades” menu not from “Support Packages and Patches” area.
The following SAP Note has to be applied to the Gateway Server if you are using SP 00 of ”IW_HDB 1.0” .

 Note 1730866 - ODC / IWHDB - Problem with type conversion
 Note 1732474 - OData Channel - Usage of DECFLOAT16 and DECFLOAT34 fields
 Note 1712966 - ODC / IWHDB - Database connection not closed in runtime

For more information on HANA connectivity from an ABAP system, please refer to the following

SAP Note: Note 1597627 - SAP HANA connection


4. Step-by-Step Procedure

The following steps will guide you through configuring the connectivity between SAP NetWeaver
Gateway and SAP HANA. Connectivity settings between the ABAP system and a HANA system are

followed by Gateway specific development settings.

4.1 Install the SAP HANA DBSL kernel files on the SAP NetWeaver Gateway application server.

A system administrator first needs to configure the connectivity between NetWeaver Gateway as a
ABAP system and HANA as a secondary database.

1. Put HANA DBSL kernel files on the SAP NetWeaver Gateway application server
The DBSL for SAP HANA database (lib_dbsl_PL.SAR) is available on SAP Service Marketplace
under the following path

Additional components

 SAP Kernel
 SAP KERNEL 64-BIT UNICODE
 SAP KERNEL 7.20 64-BIT UNICODE (or)
 SAP KERNEL 7.20 EXT 64-BIT UC
 <operating system>
 SAP In-Memory Database
 Extract the file with SAPCAR and put the files on the kernel directory.

e.g. <Drive>:\usr\sap\<SID>\SYS\exe\uc\NTAMD64 in case of windows

4.2 Install the SAP HANA client on the SAP NetWeaver Gateway application server.

On each application server, install the DB client software for SAP HANA. Download the client
software from SAP Service Marketplace as described in Note 1603671.
If you have multiple application servers, you need to install the HANA client individually.
Unix

The installation must be performed under the user <root>.
hdbinst -a client -p /usr/sap/<SID>/hdbclient -s <SID>

Windows

Log on to your Windows application server as the SAP administrator (<SID>adm).
hdbinst -a client -p <lw>:\usr\sap\<SID>\hdbclient

4.3 Maintain DBCON Table in Gateway System

1. Log on NetWeaver Gateway System with SAP GUI.
2. Go to transaction DBCO.
3. Go into Change mode by click the Display/Change icon
4. Click on” New Entries”
5. Fill in the connection detail of SAP HANA Database.
Please enter <hostname>:<port number> to the “Conn. Info” field.
6. Click on Save button.
Now you are ready to connect to HANA as a secondary database.


4.4 Create Model Class
...
1. Go to transaction SE80 . ABAP Development Workbench
2. Change the object type drop down to be Class / Interface:
3. Enter in the class name
4. Click the Display icon
5. Since the object does not yet exist you will be asked if you want to create it
6. Click the Yes button.
7. Enter a description and click Save.
8. Save your newly created class as a Local Object.
How To... Configure NetWeaver Gateway HANA connectivity
July 2012 7
9. You should now see the following:
10. Double click on the class you just created, this will open the class editor.
11. Switch to edit mode by clicking on the Display<->Change icon.
12. In the class editor switch to the Properties tab.
13. Click the Superclass button.
14. Enter in the HANA Connectivity Metadata Class -/IWHDB/CL_HAI_RT_ABS_MODEL
This is a subclass of ordinary Odata Channel Metadata Class /IWBEP/CL_MGW_ABS_MODEL.
15. Save your class.
16. Open the Methods > Inherited Methods node of your Class in the Class browser.

17. Right click on the GET_HDB_ARTIFACTS method and in the context menu select Redefine.
18. The method editor for the redefined method will open up
19. Enter in the following code to specify the Analytics View of HANA.

20. Save and Activate your class.

4.5 Configure a service

1. Start transaction SPRO
2. Click on SAP Reference IMG
3. Follow the path SAP NetWeaver->Gateway Service Enablement->Backend Odata Channel-
>Service Development for Backend Odata Channel
4. Start the Maintain Object Models activity.
5. Enter the Technical Model Name and a version number.
6. Press the Create button.
7. Enter the name of the metadata class and give it some meaningful description.
8. Save the changes and back out to the IMG tree structure.
9. Now run the Maintain Service activity.
10. Enter Technical Service Name and a version number.
11. Press Create
12. On the following screen, enter the default Runtime Data Provider class for HANA Connectivity
/IWHDB/CL_HAI_RT_DATA and a meaningful description.
13. You must now save your configuration otherwise you will get an error message on the
following pop-up screen.
14. Since we have already created a Technical Model to wrap our metadata class, we need to
press the Assign Model button, NOT the Create Model button.
15. On the following pop-up, enter the name of the Technical Model we created above
(Z_HANA_VIEW_TM1), the version number and press the save button.
Now press Sa ve , a nd your c omple te d c onfigura tion should look lik e this

4.6 Implement a BAdI Class for DB determination

To determine the HANA database, we need to implement a BADI.
This BADI can also be used to determine the backend ABAP system.

1. Go to transaction SE19 – BAdI Builder
1. The Enhancement Spot to determine HANA DB is /IWBEP/ES_DESTIN_FINDER.
Enter that into the Enhancement Spot input field shown below.
2. Click Create Impl. button.
3. In the popup window Create Enhancement Implementation enter the details as shown below
and Click the Create button
4. Enter the short text and Click Enter.
5. In the Create Composite Enhancement Implementation popup window enter a description
and click the Enter button twice.

6. The Create BAdI Implementation popup window will now be displayed. Enter in the details as
shown below. And click the Enter button.
7. You will be presented with the following. Double Click on Implementation Class.
8. Double click on the implementation Class.
9. Go into Change mode by click the Display/Change button.
10. Double click on the method /IWBEP/IF_DESTIN_FINDER_BADI~GET_DB_CONNECTION.
11. Add the follow code between the METHOD and ENDMETHOD lines.
*always connect to HANA DB CT1
RV_DB_CONNECTION = 'CT1' .
In this case, we will only connect to a single HANA Database and there is no branch in the code.
You also can add any logic and it will be necessary when you have multiple HANA databases
connecting from a SAP NetWeaver Gateway System.
12. Save and activate your changes.
4.7 Register a Service and test it
1. Go to transaction /IWFND/MAINT_SERVICE.
2. Press add service button.

3. Enter system alias and you will see a list of all Gateway services available from the Gateway
Hub system
4. Click on the Service you’ve configured
5. A pop-up box now asks you to enter the package for this service. Enter the package you have
been using. In this case, $tmp is shown as the example for local objects.
6. Press Enter.
7. Successful creation of the service is confirmed on the lower left status bar.
8. Click the Back arrow on the top toolbar.
9. Click the Search button and search for HANA_VIEW1, you should find the service defined.
10. Click on the service
11. Make sure the ODATA Row is highlighted and has an alias defined.
12. Click the Call Browser button. This will launch a browser for the service
13. The Service Document for the HANA_VIEW1 should be displayed in the browser.
You can see the View name is used as the name of collection.
Change the URL in the browser to access to the HANA View by adding the view name after
the ending „/
http://host:port/sap/opu/odata/sap/HANA_VIEW1/AN_EFASHION?$format=xml
You can use a several options like $top,$skiptoken,$select,$filter,&$orderby etc here.
14. Add $metadata to the URL for the Service Document to display the Service Metadata
Document.
http:// host:port /sap/opu/odata/sap/HANA_VIEW1/$metadata
The metadata information is automatically retrieved from the HANA database.


5. Contraints:

 It is not possible to apply an SAP HANA analytical privileges concept within the
SAP NetWeaver Gateway integration since the ADBC (ABAP Database Connectivity)
interface uses only one defined database user in DBCON table.
For the workaround, a new authorization object /IWHDB/HAI HANA is available. You can
specify Catalog Name and HANA Artifact Name there.
This authorization object is checked in CHECK_AUTHORITY method of runtime class
/IWHDB/CL_HAI_RT_DATA.
Customers also have the possibility to enhance these methods by redefinition in the
inherited classes.
 Filtering with $filter option for measures (known as key figures in SAP BW) is currently NOT
supported.
 Input parameters for calculation and analytical views are NOT supported.
 Reference definitions for measure and unit/currency are NOT supported.


Tuesday, August 23, 2016

HANA (High performance analytics appliance)

Home


SAP HANA is an in-memory database and application platform, column-oriented,compressed and relational database management system developed and marketed by SAP
primary function as database server is to store and retrieve data as requested by the applications. In addition,
it performs advanced analytics (predictive analytics, spatial data processing, text analytics, text search,
streaming analytics, graph data processing) and  includes ETL capabilities and an application server.

HANA started with

  HANA 1.0 ---->   SPS 03 --> In Nov 2011
           ---->    SPS 04 -->  April 2012
           ---->   SPS 05 -->  Dec   2012
           ---->   SPS 06 -->  June  2013
           ---->   SPS 07 -->  Dec   2013
           ---->   SPS 08 -->  May   2014
           ---->   SPS 09 -->  Nov   2014
           ---->   SPS 10 -->  June  2015
           ---->   SPS 11 -->  Nov   2015
           ---->   SPS 12 -->  May   2016


SAP HANA is supported on below platforms:

VMware    --> vSphere
IBM       --> PowerVM
Hitachi   --> LPAR
Huawei    --> Fushion Sphere
RedHatRHEL--> KVM Hypervisor
SUSE Linux--> Enterprise Hypervisor


SAP is providing two editions of HANA:

1) SAP HANA Platform edition

   1.1) HANA Database
   1.2) HANA Studio
   1.3) HANA Client
 
Optional components

     AFL ( Application functional libraries)
     IC  ( Information Composer)
     SDA (Smart data access)

2) SAP HANA Enterprise edition

   2.1) ETL (Extract Transform Load)

   -SAP Data Services (BODS)
   -SAP Landscape Replication server.



Features of SAP HANA:

The main features of SAP HANA are given below −

SAP HANA is a combination of software and hardware innovation to process huge amount of real time data.

Based on multi core architecture in distributed system environment.

Based on row and column type of data-storage in database.

Used extensively in Memory Computing Engine (IMCE) to process and analyze massive amount of real time data.

It reduces cost of ownership, increases application performance, enables new applications to run on real time environment that were not possible before.

It is written in C++, supports and runs on only one Operating System Suse Linux Enterprise Server 11 SP1/2.


Features of In-Memory Database:

The main features of SAP HANA in-memory database are −

SAP HANA is Hybrid In-memory database.

It combines row based, column based and Object Oriented base technology.

It uses parallel processing with multicore CPU Architecture.

Conventional Database reads memory data in 5 milliseconds. SAP HANA In-Memory database reads data in 5 nanoseconds.

It means, memory reads in HANA database are 1 million times faster than a conventional database hard disk memory reads.


Analysts want to see current data immediately in real time and do not want to wait for data until it is loaded to SAP BW system. SAP HANA In-Memory processing allows loading of real time data with use of various data provisioning techniques.

Advantages of In-Memory Database
HANA database takes advantage of in-memory processing to deliver the fastest data-retrieval speeds, which is enticing to companies struggling with high-scale online transactions or timely forecasting and planning.

Disk-based storage is still the enterprise standard and price of RAM has been declining steadily, so memory-intensive architectures will eventually replace slow, mechanical spinning disks and will lower the cost of data storage.

In-Memory Column-based storage provides data compression up to 11 times, thus, reducing the storage space of huge data.

This speed advantages offered by RAM storage system are further enhanced by the use of multi-core CPUs, multiple CPUs per node and multiple nodes per server in a distributed environment.


Need for SAP HANA:

Today, most successful companies respond quickly to market changes and new opportunities. A key to this is the effective and efficient use of data and information by analyst and managers.

HANA overcomes the limitations mentioned below −

Due to increase in “Data Volume”, it is a challenge for the companies to provide access to real time data for analysis and business use.

It involves high maintenance cost for IT companies to store and maintain large data volumes.

Due to unavailability of real time data, analysis and processing results are delayed.

Monday, August 22, 2016

SAP

Home


1)What is SAP
  • SAP - Systems, Applications and Products in Data Processing. SAP is a fourth generation programming language language called ABAP (Advance Business Application Programming). SAP is an ERP (enterprise resource planning) software product capable of integrating multiple business applications, with each application representing a specific business area. These applications update and process transactions in real time mode. It has the ability to be configured to meets the needs of the business.
  • SAP is Modules are divided into 2 parts: Technical and Functional:
  • Technical is categorized into 3 areas:
    • ABAP (Advance Business Application Programming)
    • BASIS (Business Application System Integrated Software)
    • Net Weaver ( Web Application Server, Exchange Infrastructure (XI), Enterprise Portal (EP), Master Data Management (MDM), Business Information Warehouse)
  • Functional is categorized into 3 areas:
    • Logistics
      • Sales and Distribution (SD)
      • Production Planning (PP)
      • Material Management (MM)
      • Warehouse Management (WM)
      • Quality Management (QM)
      • General Logistics (LO)


    • Financial
      • Financial Accounting (FI)
      • Controlling (CO)
      • Enterprise Controlling (EC)
      • Investment Management (IM)
      • Treasury (TR)

    • Human Resources
      • Personnel Administration (PA)
      • Personnel Development (PD)



An Introduction to SAP
SAP was founded in 1972 in Walldorf, Germany. It stands for Systems, Applications and Products in Data Processing. Over the years, it has grown and evolved to become the world premier provider of client/server business solutions for which it is so well known today. The SAP R/3 enterprise application suite for open client/server systems has established new standards for providing business information management solutions.
The main advantage of using SAP as your company ERP system is that SAP have a very high level of integration among its individual applications which guarantee consistency of data throughout the system and the company itself.
In a standard SAP project system, it is divided into three environments,
Development, Quality Assurance and Production. The development system is where most of the implementation work takes place. The quality assurance system is where all the final testing is conducted before moving the transports to the production environment.  The production system is where all the daily business activities occur.  It is also the client that all the end users use to perform their daily job functions.
To all company, the production system should only contains transport that have passed all the tests.
SAP is table drive customization software.  It allows businesses to make rapid changes in their business requirements with a common set of programs.  User-exits are provided for business to add in additional source code.  Tools such as screen variants are provided to let you set fields attributes whether to hide, display and make them mandatory fields
3) What is SAP Landscape?
Landscape is like a server system or like a layout of the servers or some may even call it the architecture of the servers viz. SAP is divided into three different landscape DEV, QAS and PROD.
·         DEV would have multiple clients for ex: 190- Sandbox, 100- Golden, and 180- Unit Test.
·          QAS may again have multiple clients for ex: 300- Integration Test, 700 to 710 Training.
·          PROD may have something like a 200 Production.
These names and numbers are the implementer's discreet on how they want it or they have been using in their previous implementations or how is the client's business scenario. 
Now whatever you do in the Sandbox doesn't affect the other servers or clients. Whenever you think you are satisfied with your configuration and you think you can use it moving forward, you RE-DO it in the golden client (remember, this is a very neat and clean client and you cannot use it for rough usage). As you re-do everything that you had thought was important and usable, you get a transport request pop up upon saving every time. You save it under a transport request and give your description to it. Thus the configuration is transported to the Unit Test client (180 in this example). 
You don't run any transaction or even use the SAP Easy Access screen on the 100 (golden) clients. This is a configuration only client. Now upon a successful transport by the Basis guy, you have all the configuration in the Testing client, just as it is in the Golden client. The configuration remains in sync between these two clients. 
But in the Testing client you can not even access SPRO  (Display IMG) screen. It's a transaction only client where you perform the unit test. Upon a satisfactory unit test, you move the good configuration to the next SERVER (DEV). The incorrect or unsatisfactory configuration is corrected in Golden (may again as well be practiced in the sandbox prior to Golden) and accordingly transported back to 180 (Unit Test) until the unit test affected by that particular config is satisfactory. 
The Golden client remains the 'database' (if you wanna call it that) or you may rather call it the 'ultimate' reference client for all the good, complete and final configuration that is being used in the implementation.
In summary:
Landscape: is the arrangement for the servers
IDES: is purely for education purpose and is NOT INCLUDED in the landscape.
DEVELOPMENT ---> QUALITY ----> PRODUCTION
DEVELOPMENT: is where the the consultants do the customization as per the company's requirement.
QUALITY: is where the core team members and other members test the customization.
PRODUCTION: is where the live data of the company is recorded.
A request will flow from Dev->Qual->Prod and not backwards.
1. Sandbox server: In the initial stages of any implementation project, You are given a sandbox server where you do all the configuration/customization as per the companies business process.
2. Development Server: - Once the BBP gets signed off, the configuration is done is development server and saved in workbench requests, to be transported to Production server.
3. Production Server: This is the last/ most refined client where the user will work after project GO LIVE. Any changes/ new development is done is development client and the request is transported to production.
These three are landscape of any Company. They organized their office in these three way. Developer develop their program in Development server and then transport it to test server. In testing server tester check/test the program and then transport it to Production Server. Later it will deploy to client from production server.
Presentation Server- Where SAP GUI have.
Application Server - Where SAP Installed.
Database Server - Where Database installed.

What is the meaning of "R" in R/3 systems?
R/3 stands for real-time three tier architecture. This is the kind of architecture SAP R/3 system has.
R/3 means three layers are installed in Different system/server and they are connected with each other.
1) Presentation
2) Application
3) Database

Releases:

    SAP R/1, System RF - 1972
    SAP R/2, ran on a Mainframe architecture - 1979

    SAP R/3 Enterprise Edition 1.0 A - July 1992
    SAP R/3 Enterprise Edition 2.0 - 1993
    SAP R/3 Enterprise Edition 3.0 - 1995
    SAP R/3 Enterprise Edition 4.0 B - June 1998
    SAP R/3 Enterprise Edition 4.3
    SAP R/3 Enterprise Edition 4.5 B - March 1999
    SAP R/3 Enterprise Edition 4.6 C - April 2001
    SAP R/3 Enterprise Edition 4.6 F
    SAP R/3 Enterprise Release 4.70 Release Date March- Dec 2003[2]
    SAP R/3 Enterprise Edition 4.7
    SAP R/3 Enterprise Central Component (ECC) 5.0 - 2004
    SAP R/3 Enterprise Central Component (ECC) 6.0 - Oct 2005- Jun2006
    SAP ERP 6.0 - Enhancement Packages (1,2,3,4,5,6,7)










Wednesday, August 17, 2016

XI/PI Error: HTTP 403 Forbidden

Home



Description: The server understood the request, but is refusing to fulfill it
Possible Tips:

Path sap/xi/engine not active

• HTTP 403 during cache refresh of the adapter framework - Refer SAP Note -751856
• Because of Inactive Services in ICF –Go to SICF transaction and activate the services. Refer SAP Note -517484
• Error in RWB/Message Monitoring- because of J2EE roles – Refer SAP Note -796726
• Error in SOAP Adapter - "403 Forbidden" from the adapter's servlet. –Because of the URL is incorrect or the adapter is not correctly deployed.

XI/PI -- Error: HTTP 400- Bad Request- ICM_HTTP_CONNECTION_FAILED

Home



Description: The request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.

Possible Tips: May be because of huge message flow.

Related SAP Notes-824554, 906435, 783515, 910649, 706563

If it is because of Queue problems have a look into SMQ2 and then  Re-Process failed XI Messages Automatically

XI/PI - HTTP Code 200 OK

Home


HTTP Code 200 OK

Description: The request has succeeded. The information returned with the response is dependent on the method used in the request GET an entity corresponding to requested resource is sent in the response; HEAD the entity-header fields corresponding to the requested resource are sent in the response without any message-body; POST an entity describing or containing the result of the action;
TRACE an entity containing the request message as received by the end server.

Possible Tips: Have a look into SAP Note: 871959

XI/PI -- Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized

Home


Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized

Possible Tips:
• Check XIAPPLUSER is having this Role -SAP_XI_APPL_SERV_USER
• If the error is in XI Adapter, then your port entry should J2EE port 5<System no>
• If the error is in Adapter Engine

Then have a look into SAP note- 821026, Delete the Adapter Engine cache in transaction SXI_CACHE Goto --> Cache.
• May be wrong password for user XIISUSER
• May be wrong password for user XIAFUSER

- for this Check the Exchange Profile and transaction SU01, try to reset the password -Restart the J2EE Engine to activate changes in the
Exchange Profile After doing this, you can restart the message

- Go to SM59 and check your http connection, also check maintained rfc user has proper authorizations or not.

- Instead of testing the interface from adapter engine, test it with your integration engine with the correct user credentials. It should work.


SSO (Single sighn on)

Home


Procedure for SSO

1) Export certificate from portal (verifyder and verifypse)
 
a) Navigate to 'System Administration' >> 'System configuration' >> 'Keystore Administration'

 b) in 'Content' select "SAPLogonTicketKeypar-cert" and press'n'save "Download verifypse file" and "Download verifyder file"

2) Check existence of SAPJSF user in target system a) Create if necessary using transaction SU01
 
b) User should have two roles: SAP_BC_JSF_COMMUNICATION and   
                                             SAP_BC_USR_CUA_CLIENT_RFC (if you have CUA in place)
 c) Probably you will have to generate profiles for those roles in target system (transaction PFCG)

3) Check profile parameters
 a) use transaction RZ10

 b) choose instance profile, 'extended maintenance', then 'Change'

 c) make sure that "login/create_sso2_ticket" is set to "2" and "login/accepte_sso2_ticket" set to "1"

4) Export certificate from target system (the system to which you want to connect using SSO from portal)
 a) use transaction STRUSTSSO2

 b) double-click on "Own Certif" on "CN=" part

 c) press on "Export certificate" button in the middle of the screen and provide file name and  
      path, where to save certificate file

5) Import portal certificate to target system
 a) Use transaction STRUSTSSO2 in target system

 b) push "Import certificate" button in the middle of the screen

 c) in 'File path' field enter path to *der file, you created in step 1 (or point at it via 'Browse'  
     button)

 d) Press "Enter"

 e) Press 'Add to certificate list' button and then 'Add to ACL button

6) Create an JCo RFC provider in J2EE engine of portal system
 a) Logon to J2EE using J2EE Admin tool (gobat)

 b) navigate to 'Server' >> 'JCo RFC provider' node

 c) On the right side of the screen choose any entry in 'Available RFC destinations' area

 d) Enter information about new destination:
  - Program ID: name of the program (you will need it later) - sapj2ee_port, for example
  - Gateway host - FQDN of target system - serverdomaincom, for example
  - Gateway service - sapgw00 for example

 e) in 'Repository' section enter:
  - Application server host - FQDN of target system - serverdomaincom, for example
  - system number - 00, for example
  - client - 100, for example
  - logon language - EN
  - user - SAPJSF (from step 2)
  - password (from step 2)

 f) press 'Set'

7) Add target system to Security providers list
 a) Open J2EE Admin and navigate to 'Server' >> 'Services' >> 'Security Provider' In components
     select 'Ticket' Enter edit mode (button with pencil above)

 b) select 'Login module' "comsapsecuritycoreserverjaasEvaluateTicketLoginModule" and press
     'Modify'

 c) ensure that "umeconfigurationactive" is set to "true"

 d) enter following info:
  - Name - 'trustedsysN' (there should be a number instead "N", if target system is the first one you implementing SSO with, there should be 'trustedsys1') Enter <SID>,<client> as a value (C11,100 for example)
  - Name - 'trustedissN' (there should be a number instead "N", if target system is the first one you implementing SSO with, there should be 'trustediss1') Enter CN=<SID> as a value (CN=C11 for example)
  - Name - 'trusteddnN' (there should be a number instead "N", if target system is the first one you implementing SSO with, there should be 'trusteddn1') Enter CN=<SID> as a value (CN=C11 for example)

 e) Press 'OK'

 f) Do substeps b,c,d,e in 'evaluate_assertion_ticket' view for "comsapsecuritycoreserverjaasEvaluateAssertionTicketLoginModule" login module

8) Import target system certificate to J2EE of portal system (from step 4) a) Open J2EE Administrator and logon to portal instance

 b) Navigate to 'Server" >> 'Services' >> 'Key storage'

 c) in 'Ticket keystore' view press 'load' and select certificate of target system, you exported in step 3








9) Restart J2EE instance

10) Create RFC connection in target system

 a) use transaction SM59

 b) Point to TCP/IP connections and press 'New'

 c) Enter name for new connection ("RFC_to_portal", for example), enter connection type "T" (external TCP/IP application) and description Save

 d) in 'Technical settings' choose "Registered server program" and enter application name from step 6d in "Program ID" field Provide 'Gateway host' and 'Gateway service' same as in step 6d Save Test connection RFC connection ready