OData service definitions consists of terms that occur mostly within our development/database objects like table names column names etc., with the increase in the data to be addressed the complexity and time consumption will increase. However an attempt could be made to reduce the complexity by extracting all the terms within the schema beforehand and allowing the user to pick up the values in a web front end in dropdown and checkbox format and to automatically create service definitions to end user


Here I have made an attempt to implement the above mentioned idea in an XS project with certain limitations. It can only address static database objects


I have 2 development artifacts here as shown

check1.PNG

The file MyFirstSourceFile.xsjs acts as an engine. It receives a post request from the index file which acts as an Web based entry point for the user. When accessed first the index.html asks the user only for the schema on which he wants to build the OData service as shown below

check1.PNG

If the user enters invalid schema name the MyFirstSourceFile.xsjs checks for correctness and alerts as shown

check1.PNG

If the schema with that name exists in the connected database an array of details of tables and column names is sent back to the index.html from MyFirstSourceFile.xsjs as JSON string which is parsed as JSON object and is provided as a form to the user with all the column and table names as shown

check1.PNG

The buttons “Add this entity” and “Add this association” adds entity and association to white blocks below making the forms free to add new contents, Associations. Association should be added first so that it will be available as a drop down in entity to add as navigation as shown

check1.PNG

Finally when “bind and submit” is clicked we get a service definition statement

check1.PNG

Details of schema and tables used above :


check1.PNG

The limitation here is there does not seem to be any function or libraries in xsjs project to write a file. If it was the above received service definition file could be directly be rendered onto a file with the extention .xsodata and activated

I am expecting experts for suggestion in file-write and activate options in XS-project also please suggest the scope for development of this idea and its validity also [suggested in sap idea place]

The codes have been shared in git : https://github.com/NagabhushanRA/test_odt_project.git


To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply