In consume REST oauth service from ABAP – get access token in order to call main webservice – part 1 post, i had tried to explain how a key required by REST services can be obtained. In this step i will make use of this generated key so that i can call my real service. Here all i have to do is creating the body part of my JSON data, the rest is again using right methods of cl_http_client. After consuming service the response from the server will be processed and siutable message will be returned.
I have heard many things about REST, oauth, JSON and all these things. Finally i have to meet these terms this week. There was a third party tool which is provding a REST service and i have to consume it with ABAP. Interestingly i learnt that there is not any Enterprise Service infrastructure in order to call REST services. Therefore i had to use HTTP service objects within ABAP program library. cl_http_client is the main class for REST services. Calling a REST service is consist of two parts. In this post i will focust on the first part. It is getting access token which is required to successfully make main webservice and this is the second poart of REST service.
When you want to pass data between different programs you make use of EXPORT/IMPORT FROM/TO MEMORY commands of ABAP. Unfortunately there is a limit for the size of data transferred with this command. I suppose it can be configured but for the SAP system i am working it is 2GB. Therefore when you want to pass an internal tables with many records there is a chance to exceed this limit and when it pass over the limit the program terminates with a EXPORT_TOO_MUCH_DATA exception and has a short text “Too much data for export”.
AKB_WHERE_USED_LIST is a function module in SAP repository served for finding where used list of a given object. I had employed it in a custom ABAP program which is reporting the given dictionary tables and the program libraries they are used in.
We take advantage of ABAP Test Cockpit in order to optimize our ABAP programs and other objects. We know that ATC can be done via SE80 with right clicking object and Check->ATC with option menu path. However if we want to control objects under a transport request and we dont want to check each object if there are many objects under the transport request, there are two alternatives for executing an ATC check over a transport request.