Skip to Content
Author's profile photo JEET MAHESHWARI

SAP HANA EXPRESS XSA Application Part 3

We will continue building our XSA application. To recap, we have created an HDI module and Node.js module. Please refer the below links for the same.

Part 1 : HANA XSA MTA project and HDI Module

Part 2 : Node.js Module

  1. Right click on the project name and create new SAP Fiori Master Detail Module. Follow the wizard steps and provide the required information.  ODATA metadata will be of xsodata service from Node.js module.
  2. Once the wizard steps is completed, we can see our CMPresentation user interface module with the required artifacts under the project and the MTA file updated with all the details.                                               
  3. In order for CMPresentation module to consume the service of MSBusinessLogic Node.js module, we have to update the mta.yaml file as shown below.
  4. Finally, in xs-app.json file, we have to update the routes of the corresponding node.js service.xsodata
  5. Save, Build and Run the application. We will have our XSA applicatiion up and running with all the three module HDI module, Node.js module and UI module interacting with each other.
  6. To complete the application, we will create one view for Item details, update the routes in manifes.json, insert an button to trigger XSJS logic defined in node.js module, do some layout changes . Final results are below.Master detail loading page. Item details page.

 

Thus we have seen SAP WEB IDE for HANA supports HDI module, Node.js module as well as user interface module.

SAP WEB IDE for HANA also supports JAVA module.

Assigned Tags

      1 Comment
      You must be Logged on to comment or reply to a post.
      Author's profile photo Stefano Cataldo
      Stefano Cataldo

      Hi at all,

       

      it’s me again. I have nearly finished this tutorial … yeahhh … but still I get a error message be trying to navigate. I create a detail view, update the manifest.js file I make sure the page is initiales in the component.js file. Still, I get the error message an no data-binding is possible in the detail view.  My Entity Orders has 3 key fields (CustomerNumber, ZBukrs and OrderNumber) but still reducing to one did not get rid of the error message.

      Well, here are the code extracts I assume are responsable for the routing. For keep this comment long and not very long (sorry for that) I cut automatic generated code:

      In manifst.josn:

      In routing roules
      "routing": {  ......"target": [
      						"master",
      						"notFound",
      						"OrderDetails"]}
      ------------------------------------------------------------------------------
      {			        "name": "OrderDetails",
      				"pattern": "OrderDetails",
      				"target":"OrderDetails",
      				"controlAggregation": "detail" }
      ---------------------------------------------------------------------------------
      In targets
      
      	"OrderDetails": {
      					"viewName": "OrderDetails"
      				}

      In the Detail View (the view from  which I want to go to OrderDetails), the controller file

       

      	 onDetail: function() {
      		 	var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
      		 	oRouter.navTo("OrderDetails");
      		 },

       

      And obviously in the Detail.view I register to Event

      <ColumnListItem type="Navigation" press="onDetail">

       

      Okay … and I get this error message by click on a List Item in the Detail View and trying to navigate

       

      Sorry, a technical error occurred! Please try again later.
      \{
      	"message": "HTTP request failed",
      	"headers": \{
      		"Content-Type": "application/json;charset=utf-8"
      	},
      	"statusCode": "400",
      	"statusText": "Bad Request",
      	"responseText": "\{\"error\":\{\"code\":400,\"message\":\{\"lang\":\"en-US\",\"value\":\"Insufficient key values\"}}}\r\n"
      }

      I would appreciate any kind of help.

       

      Thanks and greetings, Stefano