AppBuilder:create oData service

I have an error when I am trying to create a new odata service in appbuilder.
As you can see below
I enter the name of my database in the field of name and
in the field of URL I put the URL that appears when I click on "open service document" in Gateway Management Cockpit, which is http://localhost:8080/gateway/odata/sap/intgwtest;v=1
But when I press confirm an error message appears:
How can I solve my problem?
thank you in advance

SAP AppBuilder is a browser-based application development tool for developers to easily build HTML5/JavaScript mobile applications.
I have an error when I am trying to create a new odata service in appbuilder.
As far as i know App builder can only consume Odata services to quickly develop few applications. but not to develop Odata services.
--> If you are working to consume the services with Appbuilder - Please try the opening the URL in the browser to check if any data / metadata is retrieved .

Similar Messages

  • Create oData service using oracle Store procedure

    Hello Experts,
    I need to create oData service from oracle store procedure,
    what are the steps to do it.
    We are using SMP Integration gateway.
    Please Suggest.

    Hello Experts,
    Here is my code to join 2 tables , in debug it does not give error, but it gives on only one table output not merged output.
    Please suggest.
    function processRequestSQL(message) {
      //Import statements
      //Get the SQL statement contained in message body
      var sqlStatement = message.getBody();
      var uriInfo = message.getHeaders().get(ODataExchangeHeaderProperty.UriInfo.toString());
      var map = new HashMap();
      map = uriInfo.getCustomQueryOptions();
      //Create the query and sub query
      var WHERE = " WHERE ";
      //Modify the SQL statement
      var modifiedSqlStatement = "";
      var entitySet = uriInfo.getStartEntitySet();
      var odataMethod = message.getHeaders().get(ODataExchangeHeaderProperty.ODataMethod.toString());
      modifiedSqlStatement += sqlStatement;
      if (odataMethod.toString() == "GET_FEED") {
      entitySetName = entitySet.getName();
      if (entitySetName == "AREA") {
      if (sqlStatement.indexOf("WHERE") != -1
      || sqlStatement.indexOf("where") != -1) {
      modifiedSqlStatement += JOIN_WO_WHERE;
      } else {
      // modifiedSqlStatement += WHERE;
      modifiedSqlStatement += JOIN;
      //Set the message body back with the modified SQL statement
      log.logErrors(LogMessage.TechnicalError, "This is first log");
      //Set the message body back with the modified SQL statement
      log.logErrors(LogMessage.TechnicalError, "This is first log");
    -------------------End Sample Implementation---------------------------------------
      return message;

  • Creating OData Service Issue on AppBuilder ?

    HI Experts,
    I have an error when i'm trying to create a New OData Service in AppBuilder.
    Here is the Response getting from Browser using this link
    And in the AppBuilder i'm getting this HTTP Error Now.
    Yesterday i worked on same Service it works, But Now i getting HTTP request failed,
    Here is the Yesterdays Service Response
    How can solve this Issue ?
    thanks in advance,
    Vamsi K.

    Hi Vamsi,
    Please check if there is any proxy enabled / to be enabled
    I just tried with the northwind service and was successful.

  • Classic mode of creating Odata services

    Am new to Odata service and was given a requirement to create notification using Odata service. Our system doesnot support SEGW. Please help me with steps how we can create Odata using classes/methods and how we register the service. Please share a example. However searching on google for more info.

    Refer How To Write an OData Channel Gateway Service. Part 1 - The Model Provider Class and How to Write an OData Channel Gateway Service. Part 2 - The Runtime Data Provider Class

  • Creating odata service

    We are creating an oData service importing a RFC.
    According to RFC, we need to pass some input parameters of one of the output tables, and we use another output table which eventually gets the data list after execution.
    Kindly advice, how can we build a OData service following the same.
    Thanks & Regards

    Thank you I have created O data Service but when I try to generate results I am getting the following error:
    1. I have generated O data Service on MDX query
    2. from gateway if generate output (/sap/opu/odata/sap/Z_TEST_1_SRV/E0IC_C03_0IC_C03_Q0031Results)
    It is giving me following error Kindly advice
    <?xml version="1.0" encoding="utf-8" ?>
    - <error xmlns=""> 
    <message xml:lang="en">Invalid MDX command with ON</message>  
    - <innererror> 
    - <errordetails> 
    - <errordetail> 
    <message>Invalid MDX command with ON</message>  
    <propertyref />  
    - <errordetail> 
    <message>No exception text available</message>  
    <propertyref />  

  • How to get nested JSON structure from OData service result

    Hi all,
    This is what I have done :
    I have developed OData service where I am following below steps :
    1. Created Stored procedure for the logic
    2. Created scripted calculation view and call stored procedure from the view.
    3. Created OData Service where I am calling calculation view with multiple parameters.
    Every thing is working fine and I am getting proper JSON Result which all the attributes that I am returning from the view in flatten structure.
    Additional requirement:
    On top of this I have additional requirement where I want to get various aggregation or counts.
    For example : from view I am getting all the customers result as result set and I also want some summary level information along with that such as :
    1. Total Number of Records
    2. Total VIP Customers
    3. Total Individual Customers
    4. Total Business Customers
    Above counts can not be each records level information so I need this details in my OData Service result as separate summary section like nested JSON structure.
    For example :
    d: {
    results: [
    __metadata: {
    uri: "http://servername:8000/testmulti.xsodata/calmultiview1('123456')",
    type: "Cust.Multiview1.calmultiview1Type"
    aggregation: {
    totalrecords: "",
    totalVIPCustomers: "",
    ID: "123456",
    ENT_ID: 1234,
    FIRST_NM: "ABC",
    LAST_NM: "XYZ",
    CITY: "DELHI",
    In above example like _metadata , I am asking how to get aggregation section also in the JSON result?
    aggregation: {
    totalrecords: "",
    totalVIPCustomers: "",
    Please suggest best possible way to implement this kind of requirements.
    - Dharmesh

    Don't expect that OData can help you for this. Still you can try the following.
    Create a XSJS service where you can execute your procedure manually and get the aggregation as well. From the XSJS , you can loop over the result sets and build your corresponding JSON format. But, you can not implement the features of OData, as the return would be "just" a JSON.
    in any way you can establish an association with your main entity and aggregation entity(I am Sure, the worst case), you can get both in the same payload.

  • Listview and details with Appbuilder (OData Service)

    I try to create an app with appbuilder, which shows me a list of items, and if i click one item in the list, i get to a new site and see the details.
    For this i created an OData service, which works and is available in my browser.
    Then I startet to create the app in the appbuilder. I followed the steps in this tutorial
    I added the ODataService in the DataSource, and added a ODataQuery for the details. After this I created a new SuperList with two sites, one for the complete list, and one for the detailed view. It all seems to work. I see the list with all my items and i can click on one item, to get to the detailed view. But there I see nothing. The fields of the detailview are empty, and I don't know why.
    If I confirm my ODataQuery (with the button in the DataSource section) i get all the data i want, but the view is empty.
    The only differents between my app and the app in the video is, that in the video the query uses the filter function (<url>...?$filter=...). This returns a table with one entry. I use an own OData service with the parameter. The service returns a structure, no table. Could this be the problem?
    How can I fix this (hopefully without changing the OData Service..)
    Thanks and Regards

    Its quarterly billing, and on direct debit, so the whole point there is it takes care of itself. 
    It aso didnt hurt that as I said, I had no communication from BT in that year, no calls, emails, texts, letters nothing. They sent me no letter to say that there had been a missed payment, they took no action due to this, still something at this point that no one has been able to explain how that happened. Also the direct debit was set up by someon from their executive level complaints deaprtment, so you would think it would work ok. But apparantly 3 months later they didnt take a payment, and kept not taking payments or getting in touch with me about it, they just did notning. Then after a year, again without any warning or notification restricted my line, which as it turnds out was an automatic process, no one had any clue about what had been going on. Hence why the first manager I spoke to about it said she was going to have to investigate how this happened and obviously work out a repaymnt package. Though as par for the course from that point on I never received a callback from BT at any point, I called them often enough, but they never could be bothered it seemed to get back in touch.
    Also my bills arent exaclty large, as I say the only reason I even have a landline is for my internet access for work so its not as if its a huge amount and its every 3 months so not something really on your radar. Again thats the point of DD and what you assume is a professional and capapble company. 

  • Error connecting OData service with Appbuilder

    I have created an OData service with SAP Netweaver Gateway and there isn't any problem while testing the service on the browser.
    I made all the right settings in SMP 3.0 and the system is reached successfully from the server.I am developing the app with appbuilder so when trying to connect with SMP onboarding service there is the following error. Failed to get Service metadata.I can see the metadata in the browser so i can not understand what this error means.
    If anybody can help it would be very useful because im in a deadlock.
    Thank you in advance!

    Hi IIliona,
    I am facing the same error
    I can see the metadata in the browser.
    The operation of entity set returns correct results as well.
    Did you fix the it?  If yes, do you mind sharing your solution?

  • Create a record using SAPUI5 and ODATA Service

    Hi there,
    since SPS6, SAP HANA should allow CRUD operations using an ODATA Service.
    That sounds nice and so I wanted to give it a try.
    I've started by creating a simple table and set up a tiny application that displays the data in a grid (using a JSON Model) and allows to insert new records by entering data into two textfields and save them as a new record to the databse. That works well, the grid shows the records which I have created using the SAP HANA Studio.
    So I wanted to create new records, and the documentation says very clearly how to create a new record.
    I've tried it this way, but when the request is send I get an 501 Not Implemented error.
    Thats the code I'm using in my SAVE-Button:
    btnSave.attachPress(function() {
       var entry = {}; = tfUserId.getValue();
       entry.username = tfUserName.getValue();
       oData.create('/tbl_user', entry, null,
       function() {
          alert("Create successful");
       function() {
          alert("Create failed");
    After that I've tried to create a record using the POSTMAN extension for Chrome browser as mentioned in this cool video by Thomas Jung.
    Unfortunately, this also doesn't work for me. After sending the request I get as respone a sap hana xs login window with Status Code 200 instead of a status code "201 created".
    Here's a screenshot:
    I'm using SAP HANA Cloud Trial.
    Anybody got an idea what I'm doing wrong? Or does ODATA CRUD not work an SAP HANA Cloud Trial?
    Many thanks,

    Hi Jason,
    exactly, it's the logon page returned that is opened when I open the service URL in the browser. After logging on I can see the results of the ODATA service call.
    The URL must be correctly defined, the grid shows up the data from the ODATA Service.
    And yes, the URL looks OK when expecting in Chrome developer tools...

  • SEGW : Copy Project vs Redefine(OData Service)

    Dear Friends,
    This is regarding the differences between various modeling approaches in SEGW
    1. An Existing Project ( and Technical Service , say, Parent 1.0 ) is live
    2. A new Project ( and Technical Service , say, Child 1.0) is to be implemented.
    What is the real difference between
    (A) ... copying the existing project "Parent" to  "Child" and publishing the Technical service as "Child 1.0"
    (B) ...copying the existing project "Parent" to  "Child" and publishing the Technical service as "Parent 2.0"
    (C) ...Redefining the "Parent 1.0" in a new project "Child" and "Overwrite Base/Extend the Service" ...which publishes the Technical Service as "Parent 1.0"
    (D) ...Redefining the "Parent 1.0" in a new project "Child" ..without "Overwrite Base/Extend the Service" .. and publish the Technical Service as "Child 1.0"
    In other words, what really is the idea of "Redefine >OData Service (GW)" ...( with / without "Overwrite Base/Extend the Service" )
    Many thanks for your patience

    Hi Suresh,
    by copying the project you create a complete independent new project, which does not have any relation to the original project. The runtime objects (model provider classes and data provider classes) are independent from those of the first project.
    By redefining the project you can select which entities and which associations you want to use in your child project. Those redefined objects can't be changed in the child project, you only can redefine names and labels. On the other hand if you change any of the redefined object attributes in the parent project the changes will also be available in the child project.
    And the data provider class of the child project inherits from the one of the parent project.
    So you have a real parent-child relationship.
    Redefining with option "Extend" means to add objects of the parent project, which haven't been redefined before.
    Redefining with option "Overwrite" means to redo the redefinition. All redefinitions done earlier will be overwritten. Objects which had been redefined before, but are not selected in the new redefinition will be deleted from the child project.
    Hope that makes it a little bit clearer.

  • Error while running an Odata service in Advanced Rest Client

    Hi Experts,
    We have created one simple OData model (using Integration gateway) with datasource as SOAP web service. We are able to test the SOAP Web service in STORM tool and getting desired response. But when we run the converted OData URL in Advanced REST Client we are getting the following exceptions/errors.
    Could not send message
    Also, while looking at SMP3 server log, we came across below error logs: failed to serve request for URI http://<ip>:8080/gateway/odata/sap/REL2;v=1/GetUserDets(Applid='****',Applpwd='****',Fund='***',Userid='****.***',Password='***@1234'), message = Could not instantiate data provider based on class null | java.lang.IllegalArgumentException: null
    Any help?

    Jitendra Kansal
    After updating my DB and do the ODATA service after completion of that hit the server in chrome it shows error like
    <error xmlns="">
    <message xml:lang="en"> 
    Could not instantiate data provider based on class null
    expet that service i did another one it is working fine using the same server with out set the proxy

  • Error while consuming Odata service from Gateway client i.e /iwfnd/gw_client

    Hello Experts.
       I am facing below an error while consuming the Odata service from GW client... The error is "No service found for the namespace /IWFND/,name ZTEST_STOREROOM_SRV,version 001". Even i have tried to deep dive in /IWFND/Error_log but no use..
      Actually what I was doing :- My aim is to connect multiple back end systems in the same server with the help of Aliasing concept.. I have created multiple aliases and added in the /IWFND/MAINT_Service transaction.. but i am not getting how to consume the service..
       I have followed the solution upto some extent in the link => Multiple Origin Composition - SAP NetWeaver Gateway Foundation (SAP_GWFND) - SAP Library
      Can you please let me know how to resolve this.. Also please let me know, the syntax for the URI...
      Your help is highly appreciated..
      Please find the screenshot attached.

    Hello @Nrisimhanadh_Yandamuri
      Thanks for your reply..
      I have got all the required authorization.. But still I am not able to hit the service.. Please let me know what could be the solution..

  • Getting Error while accessing the data using odata service

    Hi All,
    Iam new to SAP FIORI. 
    Iam getting the below error while accessing the data using odata service.
    "Failed to load resource: the server responded with a status of 404 (Not found)"
    "No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin "
    i have tried all the solutions like changing the url pattern "proxy/htttp".
    and disabled - security in chrome (Chrome is Updated version).
    i tried with IE still got the same problem.
    And installed all the required software in eclipse
    While installing GWPA plugin i got the following error.
    let me know if any one have idea.
    Thanks in advance.

    > Do you want to add and/or update the data in the already existing tables or do you want to replace the content completely?
    > so in that way :
    > bot the options are fine what ever take less time.
    Sorry mate, but YOU have to know what you want here.
    I gave you an easy to follow set of steps.
    As you don't seam to mind the outcome, just might just use them...
    > I wanted to know weathe i can use the  loadercli for thie export import or not? if yes then is there any new steps to do before i do the export import?
    We had this discussion before...
    > For that the easiest option would be just to drop the tables of SAPR3 and run the import again.
    > For ease of use you could also just do:
    > - logon as superdba
    > - drop user SAPR3
    > - create user SAPR3 password SOMEPW not exclusive dba
    > After these steps you can easily pump the data into the database again.
    > So here in th above given steps , i am creating a new SAPR3 user and why it is not exclusive dba ?
    >  i already have that user SAPR3 can i use the same.
    Yes, you do have the SAPR3 user.
    But you don't seem to like to read documentation or learn about how the tools work or anything like that.
    Therefore I gave you s simple way to reach your goal.
    Of course it's possible to reuse the user.
    But then you would have to deal with already existing tables, already existing data etc.
    You don't seem to be able to do that. So, the easy steps might be better suited for your needs.

  • Anyone been able to get the control working with a Gateway OData service?

    I have been trying to get the control working with an OData Gateway service, specifically /IWPGW/TASKPROCESSING which is the service used by both Fiori Approve Requests and the Unified Inbox.
    I have looked at the sample application in the Explored at SAPUI5 Explored
    I have managed to replicate that and get it to work, but as soon as I switch it from a JSONModel to an ODataModel I get javascript errors from within the setModel method of the control. I have redefined that method and corrected the errors, which enables me to get a bit further, but then I hit more errors, and other strange behaviour.
    Either I am doing something completely wrong, or to me it appears as if this control is still extremely buggy and maybe either not designed to work with an ODataModel, or just hasn't been tested using an ODataModel. I'm hoping it is my mistake.
    So has anybody out there successfully managed to use this control connecting it to a Gateway OData service? If so please share your experience.

    Hi Pauline,
    Same issue I had, I switched to using a sap.m.list and handling the press as follows:
    attachmentsList.bindItems(workItemPath + "/Attachments", new sap.m.StandardListItem({
                               type: sap.m.ListType.Active,
                               title: "{FileName}",
                               description: "{CreatedByName}",
                               icon: "sap-icon://doc-attachment",
    //                         counter: "{FileSize}",
                          info: {path : "CreatedAt", formatter: dateTimeFormatter},
                          tap: function(oEvent){
                                var oContext = oEvent.getSource().getBindingContext();
                                var media_src = oContext.getProperty().__metadata.media_src;
                                sap.m.URLHelper.redirect(media_src, true);
                        }), new sap.ui.model.Sorter("CreatedAt", true));
    So sap.m.URLHelper.redirect(media_src, true); is what loads the attachment.
    See the full function handler:
                  var oContext = oEvent.getSource().getBindingContext();
                  var media_src = oContext.getProperty().__metadata.media_src;
            sap.m.URLHelper.redirect(media_src, true);
    This should be enough if you only want to list and display the attachments, then you don't really need the FileUploader control as that is more advanced and handles upload, display, change and deletion of files.
    I only needed to upload and display files, so I used a list to display it and created a separate upload button using the sap.ui.unified.FileUploader control.
    Hope that helps.

  • Consume OData service in SUP 2.1.3

    How to consume of OData service in SUP 2.1.3 for creating MBO for HWC?
    Our OData service is having mandatory filters which needs to be passed.
    http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/Entity_Set_Name/?$filter=Filter1 eq 'value1'and Filter2 eq 'value2'
    So, while creating XSD from XML should we need to use the above URL or http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/?$format=xml
    If we are using http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/?$format=xml and convert it in XSD then we are not able to see FEED in the MBO creation.
    Also, if we are using http://xxx:8000/sap/opu/odata/sap/Z_TEST_V2_SRV/Entity_Set_Name/?$filter=Filter1 eq 'value1'and Filter2 eq 'value2' and convert it into XSD then we are able to see the FEED in MBO creation but while choosing the fields it is throwing us java.lang.nullpointer exception.
    Can anyone explain us the solution for the problem?

    Is there a particular reason why SUP 2.1.3 is used and not the latest 2.3.4?  It is recommended to move to the most recent version if possible/new project.
    For HWC consuming OData service, you can connect directly from your JavaScript without using MBOs.  Please take a look at this link:
    Develop OData-based Hybrid Apps

Maybe you are looking for