A method to create an Adobe form attachment for a work item using the class concept.
A method for creating an Adobe form (PDF) attachment for a work item using the class concept.
A method for creating an Adobe form (PDF) attachment for a work item using the class concept.
Introduction:When working with draft-enabled RAP applications, you may have noticed a special indicator called %is_draft.This field is part of BDEF derived types and is used to indicate whether a RAP Business Object instance represents a draft instan...
After falling in love with CUPID, I kept digging into new (for me) principles of development.
SAP Transport Requests contain a lot of useful configuration information, but it is often difficult to read from SE10.I created a small ABAP report that reads a Transport Request, its tasks, transported objects and keys, and turns them into a more fu...
Giving AIF a Memory with the Singleton-Pattern
Less Coding, More Customizing with CDS Views
In this blog we will discuss how to use Agent Skills when developing ABAP Code with GitHub Copilot in Eclipse or VS Code. We will give a simple example with two skills to improve ABAP Unit Tests.
The blog describes the process of extracting IDOC data from its multiple segments for sending it to a destination system or a third-party system using an RFC (Remote Function Call) function module.
Uploading a attachment in Contract for SAP SRM System
Do not waste your time reading this small chronicle about my way from SOLID to CUPID. It's not worth the effort, trust me.
SAP SRM - Header Status Determination
92% of SAP consultants want to train in AI. Only 13% use SAP's. The gap is not distrust — it is friction. And one of the three frictions is an engineering problem we can actually solve.
Beyond basic CRUD: a practical look at implementing bound actions, unbound functions, and draft-aware business logic in RAP-based OData V4 services — with tested code and the draft-context pitfalls that trip up most implementations.
Working with versioned RFx documents in SAP SRM? Simply selecting the GUID from CRMD_ORDERADM_H may not always return the latest active version. This article demonstrates a reliable approach using BBP_PROCDOC_GETDETAIL_DIRECT to retrieve the correct ...
Discover how ABAP Cleaner helps ABAP developers improve readability, remove unused code, and apply Clean ABAP principles through interactive clean up and configurable rules in VS Code and Eclipse.
A practical, SO10-free approach to sending branded HTML workflow notifications in SAP SRM — using CL_BBP_DOC_SEND_BCS, clean ABAP string templates, and a dynamic OData deep link, with the format-flag gotcha that silently breaks HTML rendering.
From Blank Canvas to Branded Launchpad: Configuring SAP Build Work Zone, Advanced EditionA few months ago, I was handed a fresh SAP Build Work Zone, Advanced Edition tenant and a one-line brief: "Make this the front door for all our Fiori and S/4HANA...
404 Not found - Invalid Function Import Parameter"when calling CreateUrlAsAttachment(Post) in SAP ABAP Cloud. AttachmentContentSet works, but this one doesn't. Anyone else hit this wall?
A step-by-step guide to creating a custom copy of a standard SAP KPI tile in Fiori Launchpad, covering why "Adapt UI" can't change tile currency, the SAP Note (3594670) needed to fix a Transport Request copy failure, and the full transport/cache-refr...
INTRODUCTION: -While working on a RAP application for a Store Audit scenario, I encountered a requirement where the Audit Status had to be determined only after the user saved the transaction. Initially, I expected a traditional RAP side effect to re...
Learn how to automate BDC session method processing in SAP ABAP by scheduling the standard SAP program RSBDCSUB as a background job. This blog provides a step-by-step guide to creating BDC sessions, scheduling background jobs using JOB_OPEN and JOB_C...
1. Create class2. Give it members3. Create Constructor -> set's members4. Create 1 public method(5. create unit-test)6. create (SE38)report (quick, via template) that:
What SAP's Standard RAP Applications Can Teach Every ABAP Developer (S/4HANA 2023)
A VS Code extension that runs abaplint locally for instant feedback and sends code to SAP via ADT.
Introduction:During my SAP ABAP development experience, I have worked on reports and interfaces that process large volumes of business data. One challenge I frequently noticed is that even well-written ABAP programs can become slow when they process ...
The SAP transition from classic to Fiori-oriented development brings about some anomalies not especially easy to overcome without a systemic revolution of the technology itself. One of the problems we have experienced regards the paging mechanism whe...
Learn how to test BADI implementations using ABAP Unit with a real-world example. Improve code quality, prevent regressions, and apply Clean ABAP practices.
While implementing a QM-DMS integration requirement, I had to update the Inspection Lot User Status automatically during DIR processing using New BAdI DOCUMENT_MAIN03. The requirement was applicable only during DIR creation (CV01N) for specific docum...
Moving from SEGW to CDS-based OData?Learn how to expose your CDS view as an OData service using @OData.publish and simplify development in S/4HANA.
This is Part 1 of a two-part series on SAP Change Documents. In this part, we cover the foundations — what change documents are, how they work, and how to implement them with custom Z tables and a clean ABAP wrapper class. In Part 2, we will extend t...
Learn how to build a custom ATC check from scratch and enforce minimum ABAP Unit coverage using the standard SCI/ATC framework. This article covers custom categories, configurable parameters, coverage measurement APIs, and quality gates for SAP ABAP ...
A custom CDS view on the MARC table returned zero for the stock field, even though the same value appeared correctly in SE16. This blog explains the root cause in SAP S/4HANA's New Simplified Data Model (NSDM) and the simple change that resolves it.
This guide will empower key users to customize and extend ERP functionalities in Fiori Apps seamlessly, enhancing flexibility and efficiency.
Debugging a complex existing smartform is always a tedious task. Which nodes are getting called and which node is causing an issue are always a surprise. Let me show you a smart tip to debug it.
In this blog post I will describe the options one has to "rename" an OData V4 service that means changing it's service URL.
A step-by-step guide to running static security scans on custom ABAP directly from Eclipse using ADT - from getting an API key to reading the findings.
My requirement was to add an attachment to Freight Order in the "Attachments" section & Also, Send Tracking Email Notification to Customer with Tracking URL & Shipment details.This was achieved using a Custom PPF Action maintained in Transaction SPPF...
SAP RAP provides multiple ways to control field visibility, but each mechanism serves a different purpose. In this blog, we take a closer look at the often-overlooked 'field (suppress)' keyword in Behavior Definitions (BDEF), understand its impact on...
Still working with SE11 and unsure how to start with CDS views in S/4HANA?This step-by-step guide helps ABAP developers build their first CDS view in Eclipse ADT using a real-world example. Learn how to modernize your data modeling approach and lever...
IntroNowadays, finding information is easier than ever. Although, the experience still remains the key differentiator. And that’s what I would like to share through this blog – my experience in implementing the Excel File Upload in a RAP application ...
IntroductionWhile preparing for modern ABAP topics, I revisited one of the classic concepts we frequently use in reporting programs—control break processing. Most ABAP developers are familiar with statements such as AT NEW, AT END OF, and SUM for cal...
Learn how to use ABAP Domain Fixed Values as Value Help in SAP RAP Fiori Elements.In this blog, we will create a simple and reusable Value Help using standard SAP tables DD07L and DD07T without creating custom Value Help entities or tables.
Business Partner address management is an important part of SAP S/4HANA. This article explains how addresses are maintained, how communication details are linked, how multiple addresses and address usages work, and the key backend tables and BAPIs in...
Claude can write, read and refactor ABAP directly in your SAP system through an MCP server (vsp) that speaks the ADT REST API. But some SAP systems are only reachable over RFC through a SAProuter, where that HTTP API can't get through. Here's how I c...
As landscapes grow and user adoption increases, performance issues in custom CDS (Core Data Services) views can emerge in ways that are not immediately obvious.Two patterns in particular are responsible for a significant share of unexpected CPU spike...
The announcement at TechEd 2025 caught my attention immediately: official ABAP Development Tools for VS Code, with Model Context Protocol support baked in. I've spent the last year building agentic ABAP workflows with Claude Code, for my non SAP proj...
Next-Gen ABAP Development: AI-Powered Code Reviewer Inspired by insights from the ABAP Version Explorer, I have built a powerful Code Reviewer Service that brings modern AI capabilities directly into your SAP workflow. This tool allows you to easily ...
Introduction:-How I Use TCode UDO to Handle Downporting in SAP — A Practical Walkthrough:I've spent a fair amount of time dealing with transport headaches in SAP landscapes where teams run parallel releases. One of the tools that's genuinely made my ...
A practical walkthrough of SAP’s powerful Module Pool programming — from creating your first screen to building a fully customized UI with login, subscreen, and table view.
Your SmartForm has a soul. It's not only a form. It's maybe a 15,000-line ABAP program that's damned to print something.
| User | Count |
|---|---|
| 7 | |
| 5 | |
| 4 | |
| 4 | |
| 4 | |
| 3 | |
| 3 | |
| 3 | |
| 3 | |
| 3 |
| Subject | Likes |
|---|---|
| 6 | |
| 4 | |
| 4 | |
| 3 | |
| 3 | |
| 3 | |
| 3 | |
| 2 |