Showing posts with label NW ABAP Gateway (OData). Show all posts
Showing posts with label NW ABAP Gateway (OData). Show all posts

Saturday, 7 December 2024

Steps to Replace OData in Business Application Studio UI5 Extension Project

How to change OData service when using BAS Extension Project for Standard Apps

Background: Sometimes, standard FIORI apps cannot be extended via BAS Adaptation Project. This limitation arises if the app contains synchronous views. In such cases, you may need an alternative approach to customize the app effectively.

Requirement: The standard app ‘Transfer Stock - Cross-Plant’, includes buttons to transfer stock between plants. My requirement is to customize the app to grey out the buttons based on the plant category.

Saturday, 6 July 2024

Efficient Data Retrieval and UI Binding To Value Help: Using Batch Requests with OData in SAPUI5

I have observed that there is limited content available regarding the process of sending batch requests from SAPUI5 applications to OData services, receiving the response, and subsequently binding the retrieved data to a Combo Box for value help

So in this Blog I would like to explain create a Combo Box using XML, Send a batch request from SAP UI5 and Bind the data to Combo Box for Value Help.

What is a batch Request?


In SAP OData, a batch request is a mechanism for sending multiple HTTP requests as a single batch to the OData service endpoint. Instead of sending individual HTTP requests for each operation, such as read, create, update, or delete, you can group multiple operations into a single batch request.

Monday, 6 May 2024

Fiori PO Approver app Accept and Reject button customization from ECC backend

Many time there are custom requirements for which it requires the need of creating Enhancement in standard SAP functionality.

Overview: PO Approvers are maintained in Release Strategy. Once the PO is generated it is set to be approved by PO approvers based on the levels maintained in PPOME structure. Only then the PO will be set to 03 status in EKKO.

Pre-requisite: All the roles and authorization must be given to the approvers to access the PO Approval Tile in SAP Fiori.

Thursday, 9 November 2023

RAP EML Dynamic Operations: Dynamic EML Requests

Introduction


In the world of ABAP development, the RAP framework has revolutionized the way we build robust and flexible applications. One of the key features of RAP is the ability to dynamically generate EML (Entity Manipulation Language) requests. In this blog post, we will explore the dynamic form of MODIFY ENTITIES OPERATIONS, which allows us to perform operations on multiple business objects within a single statement.

Monday, 25 September 2023

Fiori PO Approver app Forward button customization from ECC backend

The first part of customization comes on the Forward Button. As per the approval matrix the approvers were maintained in the PPOME structure. The problem occurred when the approver was forwarding the PO to another approver. However, on clicking the Forward button it was displaying all the list of Users from SU01. This was creating a lot of confusion for the approvers. So the initial requirement came as to fix the list that was appearing on clicking the Forward Button.

I will be displaying the 2 possible approach for Forward Button customization from the Backend.

Monday, 19 December 2022

Send ZIP File Filled with PDF Files in OData, Media Handling in OData

Introduction


Recently I got a request for getting multiple PDFs from the service that was already in use, and I was already using ‘ GET_STREAM ‘ method to return a single PDF. Facing this request, the most quick and usable solution I thought was why not I am adding multiple PDFs into a single ZIP File, and then here we are.

Saturday, 24 September 2022

Concento RDG provides an effortless way to assign the Email Template to the Workflow

Concento™ Rapid Data Governance (RDG) is an SAP Certified accelerator and Data Governance based product that automates the processes of many Configuration steps, such as Data Model Maintenance, Workflow Design, Business Rules creation, and Field Property configurations. RDG allows users with or without MDG technical knowledge to perform Complex MDG configurations.

This blog describes the functionality of RDG in assigning Email Templates to workflow steps. The users can create or modify email templates and use them in rule-based workflow steps without coding, in contrast to the traditional process.

Using RDG, users can easily create and assign the Email template to workflow steps by performing the below actions.

Monday, 23 May 2022

Troubleshooting ABAP-Fiori E2E Scenarios with little (or no) information

Are you struggling with the famous “There is an issue in this Fiori App” email?

Were you not given further details on which is the error, in which environment it happened, nor which is the service name?

Are you starting with SAP Fiori but want to rely on your strong ABAP skills?

Or are you just curious…?

Wednesday, 18 May 2022

Implementation of $Batch Processing in the Odata with CDS

The topic is ‘$Batch operation on the Gateway Services with CDS’. In Odata, generally we use deep entity method for implementing table or header-item relationship. But sometimes we do not want to implement deep structure methodology, we want to send data in just one request or try to do different thing.

This blogpost will explain details of Odata implimentation ’$Batch Processing’ step by step.

First topic is the reason of why we use $Batch method, Aim of the Odata Batch method is send several request in just one HTTP request. It helps us to use; get or put or post (etc.) methods in a parallel. This is very effective method for computing.

Monday, 11 April 2022

Easy way to write data via a deep entity in OData

Introduction

I have seen many tutorials based on OData but I really found them complex for beginners.

So, I am writing this blog post for quick easy reference. This is the 2nd blog post in the series.

For the first post please check the Easy way to read data via a deep entity in OData.

Wednesday, 6 April 2022

Easy way to read data via a deep entity in OData

Introduction

I have seen many tutorials based on OData but I really found them complex for beginners.

So, I am writing this blog post for quick easy reference.

Solution

Please follow the steps:

Wednesday, 12 January 2022

BTP Integration – Process email Attachment to Post Deep insert using odata on Premise ECC

There are different integration scenarios where we would like send to an email with attachment of contents (XML or json) which can be read and sent to ECC to post a transaction identified by the integration. To achieve this we have to perform the following Steps

1. Configure ECC and cloud connector for http

2. check connectivity for IMAP download and import the certificates into Integration Suite key Store

3. Create the BTP Integration iflow to process inbound email to read the attachment and invoke the configured odata service and send result email or exception process email

4. Test the end to end process

Saturday, 4 December 2021

Hassle-free way to frequently change long string data in database without file upload

Problem Statement:

You do not have a user interface or an application ready to save the data in ABAP dictionary object, and you need to upload the data into a database table.

The above does not seem to be a problem because you can generate Table Maintenance Generator.

Wait wait wait! The problem is yet to come.

The table has a string field and TMG creation gives this error “Data type STRING is not supported in field”.

Friday, 19 November 2021

CDS View Extension and OData Exposing

CDS(Core Data Services) is one of the new technologies SAP provides us. Similar to AMDP, it aims to increase performance by enabling data models to use and define in the database level instead of the application level. Although it has a wide range of uses, I will explain to extend a basic CDS view and expose it as an OData service.

CDS Views are virtual data models and they can be used to access Hana tables. You can use standard CDS views or create a custom one. However, in case of need, you may want to extend an already existing view to add new fields instead of creating a new one. Now, in this blog, I will create a basic CDS view, show how to extend it, and use as an OData service.

Friday, 24 September 2021

ABAP Unit Tests for ODATA requests

Introduction

As an SAP developer coming from the Java world, I always focus on Object Oriented ABAP and believe in the high value of unit testing. So the question came once, how should I test ODATA service?

In the past I tried to build mocking classes, so that I could call the ZCL*DPC_EXT methods, but it was too difficult and had little value when compared to development efforts. Then I left the topic and decided to keep example requests in SAP Gateway Client through transaction /IWFND/GW_CLIENT. That was ok for documenting purposes, but it was not a unit test unfortunatelly.

Friday, 20 August 2021

OData Versioning

OData has become an inevitable topic for any SAP ABAP developer. I am sure most of us are involved in an OData development one way or the other.

Let’s discuss versioning, one of the advanced concepts of OData.

Note – I are working with OData version 2.0 in this article.

Motivation

Ever wondered if the business logic of an OData can be modified and activated as a different version without effecting the current business logic? I did and some of the scenarios I have faced are

Wednesday, 18 August 2021

Post Request for Adobe Form Generation with OData Version 4

Introduction

In blog post “Download File through NetWeaver Gateway with OData Version 4” I showed you how you can download a file via NetWeaver Gateway with OData Version 4. Now I would like to present you how you can generate an adobe form via post request. The result is that we have an entry in ZDEMO database table and the key of the entry is in the response of the OData Request.

The next sections contain following topics:

1. preliminary work

2. implementation of a model provider

3. implementation of a data provider

4. test

Thursday, 5 August 2021

Azure Synapse Pipelines and OData – Part 3 – Metadata Store

Where I show you how to deal with OData extraction from the SAP system using Synapse Pipelines. In the first episode, we’ve built a simple pipeline that extracts data from a selected OData service and saves it to the data lake. Then, a week later, we enhanced the design to support parameters, which eliminated some of the hardcoded values. It allows us to change the OData service we want to use without modifying the pipeline or resources.

It was a great improvement, but the process still has two main disadvantages. The extraction job can only extract a single OData service at a time, and we still have to provide parameter values manually. If we want to extract data from many services, we have to start the pipeline multiple times, each time providing the OData service name, entity and host. Not the most effective approach.

Wednesday, 4 August 2021

Azure Synapse Pipelines and OData – Part 2 – All about parameters

OData services have become one the most powerful interfaces in SAP systems. In the last episode, we’ve built a simple pipeline that extracts business information from an OData service to a data lake and makes them available for further processing and analytics. We’ve created all required resources, including linked services and datasets, and we’ve used them to define the Copy Data activity. The extraction process run without any issues, and we were able to display data from the lake.

But imagine you’d like to change the data source. Instead of Sales Orders, you’d like to get information about Business Partners. To make such a change, you’d have to go through all resources and modify them. You’d have to alter the URL of the OData service, target location and entity. Quite a few changes! Alternatively, you could create a new set of objects, including the Copy Data activity. Both solutions are not ideal. As your project grows, maintaining a large set of resources can become a tremendous job. Not to mention the likelihood of making a mistake!

Tuesday, 3 August 2021

Azure Synapse Pipelines and OData – Part 1 – The First Extraction

INTRODUCTION TO AZURE SYNAPSE

I want to keep the theory as short as possible, but I think you will benefit from a brief introduction to Azure Synapse. Especially, if you’re unfamiliar with Azure tools for data analytics. Whenever you work with data, there are a few steps involved to retrieve a piece of information or insight. I guess we are all familiar with the ETL acronym, which stands for Extract – Transform – Load. It basically describes a process that gets data from one system, modifies them, and then uploads them to a target solution. For example, to a data warehouse, making it available for reporting.

Read More: C_TAW12_750