SAP HANA SPS 09: New Developer Features; SAP HANA Studio
This blog is part of the larger series on all new developer features in SAP HANA SPS 09:http://scn.sap.com/community/developer-center/hana/blog/2014/12/02/sap-hana-sps-09-new-developer-features
While we see major investment in the web-based tooling around SAP HANA, SAP also continues to make improvements and additions to the Eclipse based SAP HANA Studio as well. In this blog we will detail the enhancements to the SAP HANA Studio.
Project Creation Wizard
The project creation wizard was first introduced with SPS 07. Initially it focused on streamlining the project creation and then sharing to the Repository parts of the process. In SPS 09, it is further enhanced to include functionality to generate the initial .xsaccess and .xsapp files. It also optionally allows for the generation of a Schema, HDBDD (for creating tables and views) and XSJS service. This takes much of the functionality of the Application Creation Wizard of the HALM tool and moves it into the HANA Studio thereby streamlining the project creation workflow.
Navigation to XS Admin tool
Before SPS 09, when you want to edit the settings of xsjob, xssqlcc, xshttpdest, or xsaccess files you had to manually open the XS Admin tool in a web browser and navigate to the package path that contains the development artifact. Now in SPS 09 we can directly navigate to the Admin web tool from the context menu of the project explorer. This opens the XS Admin tool to the correct development artifact in-place within the SAP HANA Studio.
We heard feedback from developers that starting the debugger in the HANA Studio in the past was cumbersome. You had to choose the XS Session ID, which in turn could only be determined by looking at cookies within the web browser. Therefore one of the major goals for SPS 09 was to improve the overall debugging experience.
To that end we now introduce One-Click debugging in SPS 09. No longer do you have to choose the XS Session ID. Instead the targer of the debug session will launch in an external web browser or run in-place within the HANA Studio when you choose debugging. This also means that we needed to provide tools within the debugger for stubbing in HTTP Headers, Body, etc. In the past developers often used 3rd party tools like Postman to simulate service calls. Now you can do all of this from within the HANA Studio as you start the debugging.
But the debugging improvements don’t end there. We now also support XSJS/SQLScript integrated end-to-end debugging. From an XSJS that calls into a SQLScript stored procedure we can now step from the XSJS debugger seamlessly into the SQLScript debugger.
Direct Editing from the Repository Browser
When we talk with developers we often ask them what they like and don’t like about each of the development tools. On the most common positive things we heard about the SAP HANA Web-based Development Workbench was the streamlined workflow. in the web tooling you can just directly edit a file without having to create a project or perform any content check-out. Therefore we decided to bring this same streamlined workflow option into the HANA Studio as well.
No longer is it required to check out content or even have a project to create or edit development artifacts. All objects are directly editable simply by selecting them in the Repository browser. The creation of new packages and development artifacts is also enabled from the Repository browser.
Yet we retain the functionality to work with projects as well. For intensive daily work on a sub-set of development artifacts, the efficiency of the project view are still available. However for quick one-off changes you now have the fast option to directly edit.
To complement the improved workflow of direct editing in the Repository browser, we have also improved the process for creating workspaces. Now when entering the Repositories view for the first time you immediately see all system connections which you’ve created previously. You can right mouse click on a system connection and choose Import Remote Workspace and the local folder and all other settings are setup with a single click.
There are also new options for administrators to delve other users workspaces. This helps with clean up of workspaces that are no longer needed (IE user has been deleted) and keeps orphaned inactive objects from causing any problems.
Another major main point for developers was the impact to renaming or moving development objects. For example if you move a table definition between two packages, this also impacts the table name. When the table name changes, all the views which use this table are broken. While where-used services which were introduced in SPS 07 help find these dependencies; SPS 09 goes a step farther by no only finding impacted objects but also proposing solutions and automatically adjusting package references in source and impacted objects for modeling artifacts.
While many development artifacts received creation wizards and templates in SPS 07, HDBDD received only a basic template. In SPS 09 the template options were significantly enhanced. You can now choose from four different common scenarios to use as starting templates.
The biggest enhancement to the SQLScript Editor is, without a doubt, the introduction of Semantic Code Completion in SPS 09. When you press CTRL+Space you trigger code completion which will list all relevant objects based upon your current context. This searches for matches of tables, schemas, other procedures, basically any database object.
Check out the demo video here.
With the heavy investment into the SAP HANA Web-based Development Workbench, it may sometimes be the case that a new editor is only only developed in the web based tooling. But if you are working primarily within the SAP HANA Studio you might not want to switch over to the web based tooling for just one editor. This is why in SPS 09 we introduce the WebBridge.
The WebBridge allows running editors which only exist in the SAP HANA Web-based Development Workbench within the SAP HANA Studio. They still use the Studio Save, Active, and other menu and toolbar options. You use the Open ->With option and then choose Embedded Web Editor.