Skip to Content
Author's profile photo Thomas Jung

SAP HANA 2.0 SPS 0: New Developer Features

This week SAP has begun to ship SAP HANA 2.0 SPS 0.  If you would like to learn more about all the new features in SAP HANA 2.0 broadly, you can refer to the following blog post:

SAP Announces SAP HANA 2 – Next Generation Platform for Digital Transformation

In this blog, I would like to point out some of the highlights of the new features for developers who use the SAP HANA native application development capabilities. It should be noted that most of the major architectural changes in the development topic area were recently introduced in SAP HANA 1.0 SPS 11.  This is when we first shipped the SAP HANA extended application services, advanced model (XSA), SAP HANA deployment infrastructure (HDI), and the SAP Web IDE for SAP HANA.  If you are new to these topics in general, you might first want to review the what’s new details from SPS 11, SPS 12 and the recent openSAP course on this topic.

https://blogs.sap.com/2015/12/08/sap-hana-sps-11-new-developer-features/
https://blogs.sap.com/2016/05/20/sap-hana-sps-12-new-developer-features/
https://open.sap.com/courses/hana5/

We will also be hosting a webinar for the What’s New Developer topic:

Dec 5 What’s New – Developer Thomas Jung, Rich Heilman, Lucas Kiesow 6 pm CET 2 hours Download Invite

We have also updated the exercises from the latest openSAP course to include a version that showcases how to build the same using HANA 2.0 SPS 0:

https://github.com/SAP/com.sap.openSAP.hana5.example/tree/hana2_sps0
https://open.sap.com/files/7a5b026b-52b1-4f92-81a8-863dc4b54dee

Database Development
In order to keep this blog from being too large, Rich Heilman posted about the database development features in a separate blog here: https://blogs.sap.com/2016/12/01/sap-hana-2.0-sps-0-new-developer-features-database-development

SAP HANA Extended Application Services, Advanced Model
One of the biggest changes to the SAP HANA architecture was the introduction of XS advanced in SPS 11. SAP HANA extended application services in SPS 11 represents an evolution of the application server architecture building upon the previous strengths while expanding the technical scope. While I don’t want to repeat all the architectural features which came with XS advanced in SPS 11, you can review them in this blog: SAP HANA SPS 11: New Developer Features; XS Advanced

With HANA 2.0 SPS 0, we have a few general improvements to the XSA core.  For instance we introduce Node.js 6.x runtime. We have also done much behind the scenes changes for footprint reduction and protocol optimizations.

One of the often requested features has to do with application routing.  XSA before HANA 2.0 SPS 0, offered host-based or port-based routing.  Host-based routing is rarely used outside of production environments because it requires external DNS wildcard entries.  Port-based routing is much simpler to setup but forces any application consumer to know the port number assigned in order to run the application.

With HANA 2.0 SPS 0, XSA introduces the option of context path based routing.  This allows the developer or admin to assign nice URLs with recognizable path names.  It also avoids the same origin policy issue (CORS/Cross-Site-Scripting). Instead of the port access you can assign a path that will route to your application.  This can be assigned during push or more likely direct assigned to a running application via the new create-route command.

Another nice enhancement is tot he xs logs command.  In the past you could receive all the log, the last x lines, or the recent entries.  With HANA 2.0 SPS 0, we add the option to specific a specific time span with the –since and –till options.

XSA Admin Tool
The XS Advanced Administration Application Monitor also received several new features.  It is our goal to bring as much as possible of the command line features to the web interface as well. With HANA 2.0 SPS 0 we see the added ability of the web tooling to stop, start, restart, restage, scale, rename and delete XSA applications.  We’ve also added a graphical display of the memory consumption of each XSA application.

ODATA
With HANA 1.0 SPS 11, we first introduced a new Node.js based implementation of the XSODATA service document approach to creating OData services.  This was a nearly feature complete version of OData V2 but did lack a few features which we had in XSODATA in XS Classic.  With HANA 2.0 SPS 0, we finish off the feature compatibility to XSODATA in XS Classic by adding support for the OData4SAP annotations.  We also introduce a new feature in the form of additional authorization checks via XSA scopes on the service entitySet level in XSODATA.

However to that end we feel that XSODATA and its OData V2 implementation is feature complete. Beyond HANA 2.0 SPS 0 we don’t plan to make any further enhancements to it.  Instead we will shift all of our focus in this area to new OData V4 implementation.

This new OData V4 implementation will be architecturally different from XSODATA. Therefore won’t be a service document as there is today. Instead there will be a library approach with one or more EDM providers.  For instance we will have a generic CDS provider as one implementation of this library.  This approach is very similar to how ABAP is able to create OData services from CDS.

In fact with HANA 2.0 SPS 0, we ship the first version of this new OData V4 library.  This first implementation is not feature complete.  It primarily provides read-only access. It is also only implemented in the Java runtime.  In 2017 we plan to further build out this runtime with update/delete/create as well as analytic operations. We will also provide a similar V4 library runtime in Node.js.

The usage of this new library is quite simple.  From your HDBCDS artifact you add the @OData.publish: true annotation before your context:

The new Java module wizard in the SAP Web IDE for SAP HANA will then generate the necessary library calls and code to provide an OData V4 service for the entities in this context. But more on that new Java module option in a little bit when we detail the new SAP Web IDE for SAP HANA features.

We have examples of this here: https://github.com/SAP/com.sap.openSAP.hana5.example/blob/hana2_sps0/user_db/src/data/UserData.hdbcds

And examples of such a Java module here: https://github.com/SAP/com.sap.openSAP.hana5.example/tree/hana2_sps0/user_java

SAPUI5 as a Central Service
Another often requested feature was to delivery a central version of SAPUI5. Today XSA applications either have reference the external CDN hosted version of SAPUI5 or pack a complete copy of the SAPUI5 runtime into their application.  With SAP HANA 2.0 SPS 0, we ship SAPUI5 as its own MTAR.  This allows multiple XSA applications to share a single copy of the SAPUI5 runtime.  It also allows multiple versions of the SAPUI5 runtime to be installed in parallel on one system and consumed by different applications.

The SAPUI5 MTA has to be declared as a resource in your mta.yaml file.
https://github.com/SAP/com.sap.openSAP.hana5.example/blob/master/mta.yaml

 - name: ui5-lib
   type: configuration 
   parameters:
      ID: com.sap.ui5.dist.sapui5-dist-xsa.XSAC_SAPUI5_FESV2:sapui5_fesv2 # Specifies the the ID of the provider MTA.
      name: sapui5_fesv2
      version: "=1.38.3"     # The version (range) of the provider MTA.     
      

You then list that resource as a requirement of your html5 modules.

 - name: openSAP5-ex-web
   type: html5 
   path: web
   provides: 
      - name: web
        properties:
          ui-url: "${default-url}"
   requires:
      - name: openSAP5-ex-uaa
      - name: ui5-lib
        properties:
          ui5liburl: ~{url}      
 

In the xs-app.json of your HTML5 module(s) you can configure a dynamic replacement. This avoids having to code the actual URL or port of the SAPUI5 runtime into your application. https://github.com/SAP/com.sap.openSAP.hana5.example/blob/master/web/xs-app.json

}, {
		"source": "/(.*)",
		"localDir": "resources",
		"authenticationType": "xsuaa",
		"scope": {
			"GET": "$XSAPPNAME.Display",
			"default": "$XSAPPNAME.Display"
		},
		"replace": {
			"pathSuffixes": ["index.html", "odataTest.html"],
			"vars": ["ui5liburl"]
		}
	}]

Finally in your html page where you specify the SAPUI5 bootstrap, you can use this replacement variable you defined in the xs-app.json. https://github.com/SAP/com.sap.openSAP.hana5.example/blob/master/web/resources/index.html

<!-- 1.) Load SAPUI5 (from a remote server), select theme and control library -->
	    <!-- <script id="sap-ui-bootstrap" src="https://sapui5.hana.ondemand.com/resources/sap-ui-core.js" -->
	<script id="sap-ui-bootstrap" src="{{{ui5liburl}}}/resources/sap-ui-core.js"
			data-sap-ui-libs="sap.m"
			data-sap-ui-theme="sap_bluecrystal">
	</script>

 

Development Tools
SAP Web IDE for SAP HANA provides a comprehensive web-based end-to-end development experience for creating SAP HANA native applications:

  • Development of SAP HANA content and models
  • UI development with SAPUI5
  • Node.js or XSJS business code
  • Git integration

Therefore it provides a complete workflow for all of your new HANA Deployment Infrastructure (HDI) and XS advanced model (XSA) based development.

SAP Web IDE for SAP HANA comprises capabilities of SAP HANA Studio and SAP HANA Web-based Development Workbench. It represents the long term replacement tool for both of these previous offerings. It consolidates technologies, follows industry trends, and leverages industry standards where possible, while retaining a competitive innovation focus of SAP’s current offering.

With SAP HANA 2.0 SPS 0, we continue to enhance and expand the capabilities of the SAP Web IDE for SAP HANA.

Git Integration
Git is the new source code and design time object repository in the new world of HDI and XSA based development.  Therefore its critical that the SAP Web IDE for SAP HANA has capabilities to allow the developer to directly interact with Git. In HANA 2.0 SPS 0, we add new Git features such as ability to interact with multiple Git branches:

We have also added a Git History viewer to the SAP Web IDE for SAP HANA:

Problems View
One of the items of feedback from customers was that build and syntax errors were difficult to find and read in the SAP Web IDE for SAP HANA. Often they were burred deeply in a larger log.  Also there was little to no connection back to the source object which produced the error.

With SAP HANA 2.0 SPS 0, we are happy to introduce the new Problems View. This tool parses the large and complicated build logs to only display the important problem messages.  It presents them in a much more structured way. It also connects them back to their source location.

CDS Editor
The CDS Editor also has been enhanced in SAP HANA 2.0 SPS 0.  First was the added feature of Beautify.  This reformats the code or as many ABAP developers know it – Pretty Prints it.

Selective Build
One of the major new features of HDB module building is the ability to perform a selective build on one or more files in your module. This is great for iterative development.  For instance maybe you have just designed some new tables, but haven’t built your HDB module yet.  When you go to create a Calculation View, the new tables won’t show up as possible data sources yet.  Now you can selectively build just the new tables so you can easily continue with your View development.

New Modules – Fiori Master-Detail
The SAP HANA 2.0 SPS 0 version of the SAP Web IDE for SAP HANA also introduces support for several new modules. We have expanded the HTML5 module wizards to include a Fiori Master-Detail wizard. But we have also introduced support for a Java module.

This new Fiori Master-Detail wizard not just generates the UI shell, but also allows you to specify the metadata for your target OData service and configure a lot of the UI based upon this service.

For applications generated by this Fiori Master-Detail wizard, the SAP Web IDE for SAP HANA also support the editing or generation of Mock Data for the services as well.

Java Module
Also new is support for Java Modules.  Java development/runtimes have been supported by XSA since its introduction in SAP HANA 1.0 SPS 11. However there was no development tools or build/deployment support for Java modules from the SAP Web IDE for SAP HANA.  This meant that if you had a single application that included Node.js and Java modules you couldn’t do the entire development and building in one place.  You could build and run your Node.js based modules from the SAP Web IDE for SAP HANA, but then had to use Maven and the XS command line to build or run your Java Modules.

With SAP HANA 2.0 SPS 0, we now introduce Java module support within the SAP Web IDE for SAP HANA. This means you can build the complete application even when it contains a Java module from the SAP Web IDE for SAP HANA.

We also introduce wizard and code generation support that will link your Java module to an HDI container and support the new OData V4 service generation from CDS entities.

For an example of something built using this new Java module wizard, see the openSAP HANA5 course example exercise here:
https://github.com/SAP/com.sap.openSAP.hana5.example/tree/hana2_sps0/user_java

SAPUI5 WYSIWYG View Editor
One of the most requested features for the SAP Web IDE for SAP HANA was support for the SAPUI5 WYSIWYG View Editor. I’m happy to announce that this feature finally arrives with SAP HANA 2.0 SPS 0. Now XML views can be previewed and designed using a drag and drop and element property dialog based approach.

Database Explorer
The final new feature of the SAP Web IDE for SAP HANA I want to discuss is the Database Explorer. This tool was formerly know as the HRTT – HANA Runtime Tools.  It was a separate tool from SAP Web IDE for SAP HANA. With SAP HANA 2.0 SPS 0, we have renamed the tool to Database Explorer but also integrated as a perspective within the SAP Web IDE for SAP HANA.

This integration comes with a pretty big visual and interaction redesign to help streamline all the processes that interact with both HDI containers.  We also add the ability to interact with traditional database schema from this tool as well.

Closing
With SAP HANA 1.0 SPS 11, SAP introduced a considerable change in the architecture of application development. Much of the development for the past few years has been focused on just delivering the first version of that new architecture and then only closing gaps between the old and new architecture.  With SAP HANA 2.0 SPS 0, you are beginning to see that we can finally innovate based upon this new architecture.  The general improvements combined with tools and programming model changes you see here are laying the foundation to allow you to build new kinds of applications easier and faster than you ever have before.

Assigned Tags

      62 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo David LAPOINTE
      David LAPOINTE

      Hi Thomas,

      First thank you for this detailed post. Great to see better integration between the SAP Web IDE and SAP Web IDE for HANA.

      I have a question regarding HDBCDS. With new @OData.publish: true in hdbcds files, we will now be able to expose HANA CDS entities directly. Will this release support the use of full annotations/semantics support like on ABAP CDS for things like @UI semantics annotations to fully enable the use of SAP Fiori Elements(Smart Templates) from HANA cds?

      Thank you and again congratulations for all the new improvements.

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      >Will this release support the use of full annotations/semantics support like on ABAP CDS for things like @UI semantics annotations to fully enable the use of SAP Fiori Elements(Smart Templates) from HANA cds?

      XSODATA V2 does support the OData4SAP annotations.  The new @OData.publish and Java V4 implementation support some of the V4 annotations. However we don't yet have support for all the semantic annotations in CDS nor in the OData V4 interface that are required by Fiori Elements. That is, however, one of the major planned development items for the first 1/2 of next year.

      Author's profile photo David LAPOINTE
      David LAPOINTE

      Thank you Thomas for the update. Looking forward for this feature.

      Author's profile photo E. Palmen
      E. Palmen

      Hi Thomas great blog as always.
      when do you plan to update hanaexpress to hana 2.0
      regards Erik

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      An update to HANA Express for HANA 2.0 should happen shortly. Hopefully within a week or two.

      Author's profile photo Sergio Guerrero
      Sergio Guerrero

      thanks for sharing this Thomas - I am very excited to see the OData V 4 , the SAPUI5 central service and the WYSIWYG - this was a loooong requested feature and now it is here - thanks.

      any idea when these same features will be available on HCP ? and HCP trial?

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      You would have to ask HCP about their product roadmap. I can only discuss the HANA delivered features.

      Author's profile photo Former Member
      Former Member

      Thanks for the info Thomas.

      One question : will the WYSIWYG editor be backward compatible with SP12 versions? For customers who may be sticking on with HANA 1.0 SPS12  for a while, will be great if you can make this editor available.

      Regards,
      Sudarshan

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      No we will not backport features to the HANA 1.0 version of the SAP Web IDE for SAP HANA. What we plan to do, however, is allow you to run the HANA 2.0 version of the SAP Web IDE for SAP HANA on HANA 1.0 SPS 12 based systems. You would have to update the XSA Runtime and SAP Web IDE for SAP HANA only.  But this feature is planned for an updated version next year. It is not possible with the initial HANA 2.0 SPS 0 version of the SAP Web IDE for SAP HANA.

      Author's profile photo Former Member
      Former Member

      Can someone please tell why this statement: var json = JSON.parse(response.getContentText()); will not work on a view retrieved from HANA in json format?

      This is the error it gives:  TypeError: Cannot find function getContentText in object <!DOCTYPE html> <html style="height: 100%">

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      Your question doesn't seem to be related to the content of this blog.  For a general support question, please post it as its own question in the Q&A section.  Also probably describe in more detail how you are retrieving the calculation view. XSODATA, XSJS, etc?

      Author's profile photo Former Member
      Former Member

      Hi Thomas,

      Thanks for the article. Very helpfull information !!!

      I'm new in the Hana world, and still trying to put all the architecture together.

      I would like to make some questions regarding the architecture:

      1. Which component will you suggest for programming a long running process in the architecture? SQL Script ? Server Side Java Script ? Java Module?

      2. What is the best way to launch this kind of process from the Web Client ? Is there any way to launch an asynchronic process? What is the suggested aproach for this ? (queue of jobs, schedulling)?

      3. Moving all the data intensive logic to the SQL Script is suggested, will not be a problem in the long term to maintain all that code?, (in the same way that was in the past when people started to code intensively with store procedures in the DB, and then move to have a business layer in the middle, using an object oriented language).

      Thanks for your answers !

      Best Regards

      Carlos

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      >Which component will you suggest for programming a long running process in the architecture? SQL Script ? Server Side Java Script ? Java Module?

      Long running processes?  I guess in HANA you really shouldn't have long running very often.  We do have job scheduling at the XSA level however.

      >What is the best way to launch this kind of process from the Web Client ? Is there any way to launch an asynchronic process? What is the suggested aproach for this ? (queue of jobs, schedulling)?

      Continuation of above - I think the job scheduler with its APIs are probably the right approach.

      >Moving all the data intensive logic to the SQL Script is suggested, will not be a problem in the long term to maintain all that code

      Why exactly would that make the code harder to maintain. Also we never said it should all be SQLScript. Just that the data intensive should run in the DB - that could also be as views.

      Author's profile photo Dirk Raschke
      Dirk Raschke

      SAPUI5 as a Central Service: "With SAP HANA 2.0 SPS 0, we ship SAPUI5 as its own MTAR."

      Does it mean we can use locally each SAPUI5 version until this last release date of the XSA?
      All versions will be shipped?

      Its not that we have to download it like openSAP.

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      There are certain versions that are shipped as MTARs with XSA.  One version doesn't overwrite another as was the case in XSC.  But it doesn't mean we necessarily ship every version.  My HANA system for instance has 1.38 and 1.40 in it.

      Author's profile photo Former Member
      Former Member

      Thank you Thomas for the introduction of new features. As we need to develop some hacks for accelerating the development process in SAP HANA Studio 1.0, is there any functionality in Web IDE for support of the development of the customer-specific text Analysis?

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      hdbtextconfig artifact: https://help.sap.com/saphelp_hanaplatform/helpdata/en/1c/566b54558f497f8f02ecffc96a074b/content.htm

      Author's profile photo Philip MUGGLESTONE
      Philip MUGGLESTONE

      Apologies for the shameless plug, however you might be interested to know that the SAP HANA Academy has now published hands-on tutorials showing how to use many of these new features. Please check out the following playlist: SAP HANA 2.0 SPS 00 - What's New for Developers

      Author's profile photo Former Member
      Former Member

      Hello Thomas,

      Sorry that I had to post this here, but there was no option to post this in the archived blogs (OO ABAP ones).

      All the OO ABAP Tutorial links are broken - can't view the document or download them, would you be able to get them running again?

      The following ones:
      https://archive.sap.com/documents/docs/DOC-10236
      https://archive.sap.com/documents/docs/DOC-10237
      https://archive.sap.com/documents/docs/DOC-10238
      https://archive.sap.com/documents/docs/DOC-10239
      https://archive.sap.com/documents/docs/DOC-10240

      This content was not available in Enterprise Geeks as well.

      Thanks
      -Rejath

      Author's profile photo Former Member
      Former Member

      Happy New Year to All of You!

      About "context path based routing", is there maybe a tutorial/example, I can only find the xs commands in the reference but do not understand yet, how they work together:(

      Having 20 different UI apps running within XSA, every app has its own port, this means for customers they have to open 20 ports in their firewall?;)

      Is it possible with the context path based routing to have only one port open and connect via url paths like '/webide' for webide, '/ea' '/myapp1' .... '/myapp20' to the corresponding app listening on different ports?

      Thanks ... and a very good start in the new year!

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      Yes what you describe is exactly what you do.  You assign a path to each application instead of access by different ports.  You could also consider using hostname based routing which would also avoid the separate ports per application.

      Author's profile photo Former Member
      Former Member

      Hi Thomas,

      At the very beginning I apologize for posting something irrelevant in this thread, But I cannot help. For last entire week have searched a lot for your OO ABAP tutorial series which is somehow not playing. Everytime it is showing page not found error.(I also have come across one of your posts today that you were also in doubt regarding its availability due to improper migration)

      Those video series was really really very helpful,most compact,easy,precise one. I have completed only first and second part almost a year ago. unfortunately I was not able to download all those 5 parts. Please help getting those series back. And also webdynpro series.

      If those are actually lost, then can you please upload them once more so many new learners like me will be benefited.

      Regards,
      Arka

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      SCN/sap.com admins did not migrate the hosted ABAP OO videos and have removed the blog that described them. I have no control over what content gets migrated from the old SCN.  I don't have the original videos either as that was many years ago and a few different jobs ago.

      Author's profile photo Former Member
      Former Member

      Thanks Sir. It is resolved Now.Downloaded the zipped file and with swf player its running.Thanks for this super awesome series.

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      Actually the ABAP OO videos are available on youtube now.  A community member found an old copy offline and shared them with me to upload them again. https://www.youtube.com/playlist?list=PLoc6uc3ML1JSQIEmaze101ZpFo_P8wEDy

      Author's profile photo Former Member
      Former Member

      SAPUI5 as a Central Service: Isn’t that already working with HANA 1.0?

      Following code is supplying the URL to the library in 1.0.

      resources:
        – name: devx-ui5-url
           parameters:
             provider-id: com.sap.devx.di:devx-ui5-url
             version: ~3.12.25
           type: configuration

      Will this work in HANA 2.0 too or do we have to change our code?

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      That is the internal UI5 version used by DEVX (the Web IDE itself).  You should absolutely NOT use this for your own custom applications. It is not supported for this.

      Author's profile photo Former Member
      Former Member

       

      Thank you for your fast reply. Fortunately we don't have so much Applications jet so I will change this immediately.

      Hopefully HANA 2.0 Express will be released for RHEL soon 🙂

      Author's profile photo Fabian Krüger
      Fabian Krüger

      Hello Thomas,

      how does XS Advanced and the HDI relate to the multitenant database containers? I thought if you have HDI, you don't need MDC. Additionally I found somethink like "XSA is not compatible with MDC" in some Blog in November (MDC is compatible with classic XS though). I think you don't need both if you are developing several apps for your own (company). Of course, since with MDC the indexserver processes are independent, you gain some stability/isolation, which makes sense in certain scenarios.

      But it seems you are going for MDC anyway? I read that MDC is the default option for new installations with HANA 2.0?

      HANA Express 2.0 ships with MDC and XSA enabled, too. From what I can see XSA is running in SYSTEMDB, which shouldn't be used for anything but administration? There is also one tenant DB existing ("HXE") but this is not active ("Stopped by user via ALTER SYSTEM STOP DATABASE").

      Could you please give some hints which scenario is preferred? Thanks

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      >how does XS Advanced and the HDI relate to the multitenant database containers?

      Both are independent and can be used in additional to MDC.

      >I thought if you have HDI, you don’t need MDC

      MDC provides higher levels of isolation by running separate operating system processes for each tenant.  You can of course combine the technologies as well.

      >Additionally I found somethink like “XSA is not compatible with MDC” in some Blog in November (MDC is compatible with classic XS though).

      That's a true limitation for SPS 11 and 12 versions of XSA, but those gaps have been filled with HANA 2.0.

      I read that MDC is the default option for new installations with HANA 2.0?

      Yes MDC will be the standard from this point forward.

      From what I can see XSA is running in SYSTEMDB, which shouldn’t be used for anything but administration?

      By default XSA runs in the SYSTEMDB.  You can setup additional spaces and map them to tenants if that is how you want to run your system.

      There is also one tenant DB existing (“HXE”) but this is not active (“Stopped by user via ALTER SYSTEM STOP DATABASE”).

      That's due to the memory limitations of HXE and the fact that it targets a single developer personal environment.

      Author's profile photo Clemens Kopfer
      Clemens Kopfer

      SAP Enterprise Architecture Designer (SAP EA Designer)

       

      Hi Thomas,

      could not find any reference in your great posts to that new web-based tool.

      Can you post some details (+screenprints) as well?

      As SAP Help is in the process of being migrated it is a little bit tricky right now (ie for me impossible) to find something on SAP Help.

      thanks, C

       

      Author's profile photo Krishna Teja Narla
      Krishna Teja Narla

      HI Thomas,

      I am new to WEB IDE XSA. I have created entities but cannot see table structures after clicking “OPEN DATA” from table definition. The wheel keep son spinning but never opens table.

      What authorizations should I look for?

      How can I test the connectivity from my WEB IDE to HANA DB

      Thanks,

      Krishna

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      The spinning issue could be a known problem when using virutal hostnames. This is actually a problem in the database explorer and happens when you try to open a SQL Console or view the data in a table/view. If you have this issue then you should open a support ticket to get assistance from SAP support.

      Author's profile photo Krishna Teja Narla
      Krishna Teja Narla

      Any Directions on specific code for this ticket.

      I see a lot of options on IT Support>IT Direct.

       

      Thanks,

      Krishna

       

       

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      The component for SAP Web IDE for SAP HANA is HAN-WDE

      Author's profile photo Krishna Teja Narla
      Krishna Teja Narla

      Thanks Thomas for all your help.

      But System is not allowing to open an incident as I don't have valid S number.

      Is there any other way I can get assistance on the issue.

       

      Thanks,

      Krishna

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      Why don't you have an S-Number?  That is required to enter a ticket in the support portal.

      Author's profile photo Dirk Raschke
      Dirk Raschke

      Is there somewhere described in which xsa runtime version which version of sapui5 is included or also which version will come in the next time. (XSAC_SAPUI5_FESV2)

      For this moment there is only 1.38.10 included, but we need to get a newer release.

       

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      The updated versions are published on the Service Marketplace. Currently the Service Marketplace has updates for XSAC_SAPUI5_FESV2 to 1.38.17.  I don't know of any documentation location other than that. Currently it is planned that we will update to XSAC_SAPUI5_FESV3 with SAPUI5 version 1.44.x with the HANA 2.0 SPS 01 shipment (planned April 2017).

      Author's profile photo Andreas Krieg
      Andreas Krieg

      What is the purpose of the sap-portal-services (from XSAC_PORTAL_SERV)? And is there somewhere a reference which service does what?;)

      Sorry I'm not able to find soimething about it, opening the URL just says 'Cannot GET /'

      Thanks a lot!

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      XSAC_PORTAL_SERV is the Fiori Launchpad for XSA based applications.  It shipped for internal SAP usage only in HANA 2.0 SPS 0. It is planned to ship for customer usage in HANA 2.0 SPS 01 and therefore will be documented with this upcoming SPS 01 release.

      Author's profile photo Bill Liu
      Bill Liu

      Hi Thomas,

      I understand that there is a technical user generated in HDI for database access. An application user will access database through the technical user’s db connection, and HANA database is still able to recognize the application user in order to apply appropriate analytical privilege. However if I created an analytic privilege that is wrapped in a file.hdbrole, where can I tied this role to an application user especially concerning the application user is from a 3rd party identity provider?

      Thanks!

      Bill

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      The role get assigned to the technical users via the hdbgrant specification.  The XS scopes are what gets assigned to the external user and the scope variables of the external user are what get applied by the filter of the analytic privilege in the DB.

      Author's profile photo Bill Liu
      Bill Liu

      Hi Thomas,

       

      Thanks for the quick reply. may I ask a bit little further?

      How does system know which scope variable applies to which filter of analytic privilege?  Is it simply through the same name mapping (scope variable name = filter name that is a column on analytic privilege) or an explicit mapping is needed somewhere? I assume that hdbgant works for both hdbanalyticprivilege in HDI container and pre-existing analytic privilege in repository (already granted HDI technical user adequate access to calc view in _SYS_BIC), but kindly correct me if my assumption is wrong.

      Regards, Bill

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      You can add scope-references and map to uaa attributes in the xs-security.json file. See example here:

      https://help.sap.com/viewer/4505d0bdaf4948449b7f7379d24d0f0d/2.0.00/en-US/6d3ed64092f748cbac691abc5fe52985.html

      You can use these references in DCL or Structured Privileges in the DB authorizations:

      https://help.sap.com/viewer/4505d0bdaf4948449b7f7379d24d0f0d/2.0.00/en-US/c66b5a46cc4a4f35a16b1d1a31402a0b.html

       

      Author's profile photo Bill Liu
      Bill Liu

      Hi Thomas,

      One limitation by this approach is multiple role instances assigned to an application user will not work as expected as the old composite role concept. i.e. role template has attribute country, and two role instances are created by countries. role1.country = 'US', role2.country = 'DE'. These two role instances can be collectively assigned to an application user. However on HDI analytic privilege side, there is only one value kept as one overwrites another through SESSION_CONTEXT(country) through a quick testing. This will technically ask analytic privilege to work around this limitation by introducing subquery logics in SQL expression, and it will also need some role design/explanation to a separate security team unless we will have a SQL function like SESSION_CONTEXT_LIST(country). Kindly let me know if you will know any better workaround?

      Thank you!

      Bill

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      >ole template has attribute country, and two role instances are created by countries

       

      Role instances? I'm not sure what you mean by that.  The value for country in this example comes from an attribute in the external user store. There can only be one value assigned for an attribute.

       

       

      Author's profile photo Bill Liu
      Bill Liu

       

      The above is one example: two roles created by a template, and an application user gets assigned with above two roles, then what value can be retrieved through SESSION_CONTEXT(country)? through a quick testing, there is only one value kept? it would be great if there is a way to retrieve both values in SQL expression of analytic privilege.

      Thanks!

      bill

      Author's profile photo Bill Liu
      Bill Liu

      In this case, the roll collection is not working like old composite role concept as there is no union for the countries carried on roles' attributes. let me know if you see other approaches? Thanks, Bill

      Author's profile photo Tanveer Shaikh
      Tanveer Shaikh

      Thank you Thomas this helped a lot.

      Currently I am on HANA 1.0 SPS12, revison 122 and using classic XS Odata for UI5 applications currently on 1.28 ui5 runtime. I wish to build analytics using Fiori elements ( Fiori templates) in SAP Webide and source data from Hana calculation views onto Fiori elements based applications. But learned it requires ui5 runtime 1.30 or higher.

      Does this mean that I have no other way to but upgrade my Hana suite to Hana 2.0 and XSA for higher runtime version ? Are there any other options ?

      Thanks,

      Tanveer

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      XSA is available for HANA 1.0 SPS 12.  You wouldn't have to upgrade to begin the switch to XSA.

      Author's profile photo Tanveer Shaikh
      Tanveer Shaikh

      Thanks a lot for such a quick response !

      So If I switch to XSA with HANA 2.0 SPS12 I will be all set to use Fiori Application ? I can host XS ODATA ( Calculation View)  based Fiori elements ( e.g webide built Overview Page, Analytic List page etc )  onto to my HANA suite ?

      Thank you again !

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      >So If I switch to XSA with HANA 2.0 SPS12 I will be all set to use Fiori Application

      Well you will get the newer version of the SAPUI5 framework.  You might find that building Fiori applications might still be complicated by the lack of annontations support in XSODATA (regardless of XSC vs. XSA). It can be done, but probably means you have build separate annotations.xml files for the additional metadata you need.

      Author's profile photo Tanveer Shaikh
      Tanveer Shaikh

      Hi Thomas,

      I was able to install XSA on HANA 1.0 SPS 12 and now XSA is up and running.(Thank you !)  In the past I have built some simple ui5 applications using XSC and I believe I also have a good handle on creating  local annotations.xml from wbide cloud platform annotation modeler BUT seems deploying Fiori elements ( OV page and Analytic cards ) on hana with XSA is a big jump for me for start with.

      Tried to look around and sat thru all of your youtube training videos "DEV602 WebIDE"  including "DEV602 WebIDE Ex4 - HTML5 Module; SAPUI5 application", guess I am still missing some pieces of the puzzle.

      With a goal of deploying  Fiori elements ( OV page and Analytic cards ) from webide cloud onto Hana with XSA - would be able to point to any how-to-guides/blogs or SAP first guidance doc  for beginners ?

      Thanks Again !

      Tanveer

       

       

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      XSA based XSODATA services have the same level of support for annotations as XSC.  Therefore you will still need local annotations files to fully support all the annotations needed by the more advanced Fiori scenarios.

      Author's profile photo Former Member
      Former Member

      "Failed to resolve reference for provided property: a6cd5e3f-9c86-4904-9b67-d2e5e6d7e996-90ubacm88q3f0p9f-RBTinyWorld#Tinyjs_api#service_url"

       

      why do I get this error and how can I resolve this?

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      Really blog comments aren't the correct place to ask such a general question unrelated to the blog contents.  This should be posted as its own question in the Q&A section of the community.

      You should look at your mta.yaml. This error means that something doesn't match up with the name of the provider section of your JS module or the requires section of the web module.

      Author's profile photo Daniel K
      Daniel K

      Hi Thomas,

       

      Shall I be able to develop the XS ODATA service in HANA studio or WEB IDE in HANA 2.0 SPS 02 ?

      Regards

      HANA developer

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      Yes you can still create XSODATA services that run in XS Classic in HANA Studio in HANA 2.0 SPS 02.  However these are deprecated and will eventually have to be migrated to XS Advanced. XSA based XSODATA services run in a Node.js module.  The HANA Studio has no functionality to develop XSA based applications. For that you should use SAP Web IDE for SAP HANA.

      Author's profile photo Former Member
      Former Member

      Hi Thomas,

       

      For non-XSA services, HANA Studio remains 'undeprecated' though, doesn't it?

       

      Thank you, greg

      Author's profile photo Thomas Jung
      Thomas Jung
      Blog Post Author

      Non-XSA services are themselves deprecated.  HANA Studio overall is deprecated. Deprecated doesn't mean removed or unsupported. It means that we will remove it in the future - use at your own risk.

      Author's profile photo Daniel K
      Daniel K

      Thanks Thomas.