BrowseABAP, RAP and ABAP Cloud
Everything in ABAP
36 of 656
Domain: 2
Signals
Content: Nothing recorded
More
Group by: Capability
EntryBySignalsLast activity
Error handlingSAP and community
Basic code's of ABAPBasic code's of ABAPNine standalone ABAP reports built around REUSE_ALV_GRID_DISPLAY and CL_SALV_TABLE, covering display, screen validation, spool creation, Excel upload and table maintenance without SM30. One report raises and catches a custom exception class with RAISE EXCEPTION and TRY/CATCH, the class-based mechanism error handling names for ABAP; another submits a job to spool, converts it to PDF with CONVERT_ABAPSPOOLJOB_2_PDF and exports a CL_SALV_TABLE result to Excel before mailing both, producing document output from spool rather than Form Builder.RakeshZore, published 2025-09-30
How to create a Purchase Order through BAPI in the SAP through program ( SE38 ) T-CODE .How to create a Purchase Order through BAPI in the SAP through program ( SE38 ) T-CODE .Walks through creating a purchase order from an ABAP report (SE38) by filling the BAPIMEPOHEADER/BAPIMEPOITEM structures and their X-indicator counterparts, then calling BAPI_PO_CREATE1 within the same session. Its error handling centres on the BAPIRET2 return table: looping over entries typed E or A, skipping BAPI_TRANSACTION_COMMIT when one is found, and displaying the returned message text rather than assuming success once the function module returns.chandu_kumar_badukuri, published 2025-12-18
S/4HANA Custom Development - What happens in case of errors in BAPIs or RAP BOs?S/4HANA Custom Development - What happens in case of errors in BAPIs or RAP BOs?A Devtoberfest 2026 session on what a custom S/4HANA process does when a BAPI or a RAP business object fails. It is framed from project work rather than product development, with the same issues and challenges turning up on project after project, and it offers the ABAP Processing Center, ABAP-PRC, as what fills the gap it names in modern ABAP development. The edges rest on the opening, which states the session's subject as errors in S/4HANA custom development, read as error handling on the ABAP door, and names that framework.SAP Developers, published 2026-09-21
SAP: Email Functionality in SAP with a Custom Function ModuleSAP: Email Functionality in SAP with a Custom Function ModuleA custom ABAP function module, ZFM_SEND_EMAIL, sends mail through Business Communication Services' CL_BCS and CL_DOCUMENT_BCS classes, adding TO/CC/BCC recipients and multiple attachments by building the HTML document in application code on top of what CL_BCS delivers, which is how ABAP's notifications capability describes mail going out. The send sits in a TRY structure whose three CATCH blocks for CL_BCS's class-based exceptions are empty, so what reaches the caller is a BAPIRET2 table that BAPI_MESSAGE_GETDETAIL fills on the paths without an exception: no recipients given, sent to all, or not sent. That conversion into a caller-facing message table is what ABAP's error handling capability leaves to the application.Surendra_Karma, published 2024-12-16
HTTP clientsSAP and community
Calling the Sales Order (A2X) OData V2 API from BTP Using a Service Consumption ModelCalling the Sales Order (A2X) OData V2 API from BTP Using a Service Consumption ModelWalks through ABAP's Service Consumption Model for OData V2 in ABAP Development Tools for Eclipse: generating a client proxy from the Sales Order (A2X) API's downloaded EDMX, then using it from an ABAP console class to create a deep sales order with items, texts, partners and pricing elements, read it back and patch a field. The client itself is built the way HTTP clients describes for SAP BTP ABAP environment: a communication arrangement resolved through cl_http_destination_provider=>create_by_comm_arrangement, handed to cl_web_http_client_manager=>create_by_http_destination, reaching the inbound SAP_COM_0109 scenario configured on the SAP S/4HANA Cloud Public Edition side.Katsiaryna_Darapeika, published 2025-02-04
Calling the Sales Order (A2X) OData V4 API from BTP Using a Service Consumption ModelCalling the Sales Order (A2X) OData V4 API from BTP Using a Service Consumption ModelWalks through calling SAP S/4HANA Cloud Public Edition's Sales Order (A2X) OData V4 API from an ABAP class on SAP BTP ABAP environment: a communication arrangement on each side, a Service Consumption Model built in ADT from the API's downloaded EDMX, and a client proxy wired through cl_http_destination_provider=>create_by_comm_arrangement and cl_web_http_client_manager=>create_by_http_destination, the same HTTP clients pattern for ABAP for Cloud Development. The sample class creates a deep sales order with an item, a text, a partner and a pricing element, reads it back, then updates a field guarded by its ETag.Katsiaryna_Darapeika, published 2025-02-06
Invoking Business Agent Foundation Agents from ABAP: A Step-by-Step GuideInvoking Business Agent Foundation Agents from ABAP: A Step-by-Step GuideWalks through calling a Business Agent Foundation agent's chat endpoint from an on-premise ABAP report: an OAuth 2.0 client profile configured in SE80/SOAUTH2_CLIENT with client-credentials grant against the service key, an HTTP (type G) RFC destination in SM59 bound to that profile, and an ABAP report using CL_HTTP_CLIENT=>CREATE_BY_DESTINATION to POST a JSON message to the agent's sendMessage endpoint and extract the reply by splitting the response string. The destination and client code are the same shape as any outbound REST call from ABAP; nothing here is specific to the agent service beyond the request body and URL.tanmay_0117, published 2025-11-26
Outbound Integration from SAP BTP, ABAP to SAP S/4HANA Cloud via Service Consumption ModelOutbound Integration from SAP BTP, ABAP to SAP S/4HANA Cloud via Service Consumption ModelWalks through ABAP's Service Consumption Model for OData in ABAP Development Tools for Eclipse: generating a V4 client proxy from a remote service's EDMX metadata, then calling one of its bound actions by hand because the 2311 release's ADT tooling does not yet generate that code. The client itself is built the way HTTP clients describes for SAP BTP, ABAP Environment — a communication arrangement resolved through cl_http_destination_provider=>create_by_comm_arrangement, handed to cl_web_http_client_manager=>create_by_http_destination to create the client.Pramathesh_t_s, published 2025-10-28
Usage of Expand Entity in OData Service Consumption ModelUsage of Expand Entity in OData Service Consumption ModelExplains how to use OData's $Expand option when SAP BTP, ABAP Environment consumes a remote service through a generated client proxy, the way HTTP clients describes it, using stubs ABAP Development Tools for Eclipse generates from the service's $metadata. The expanded association only comes back from get_business_data when the caller supplies its own ABAP type that redeclares the association as a nested table, in place of the generated CDS entity type. The same workaround still applies from release 2311 on, where the consumption model generates flat ABAP types rather than abstract CDS entities.alrikx, published 2024-02-08
ODataSAP and community
A Guide to CDS Metadata Extensions, Fiori App Generation and SAP UI5 Controller ExtensionsA Guide to CDS Metadata Extensions, Fiori App Generation and SAP UI5 Controller ExtensionsWalks through a RAP-based Fiori elements app end to end: layering UI annotations onto a CDS view through a separate ABAP metadata extension object, gated by @Metadata.allowExtensions on the base view and ordered across extensions by a required @Metadata.layer value. Generates the app in SAP Business Application Studio from the published OData V4 service's merged $metadata document, then adds an SAP UI5 controller extension — registered in manifest.json against a Fiori elements lifecycle hook — only for behaviour the annotations cannot express.ankitapaul229, published 2026-07-27
Consume Remote Services in a Full-Stack CAP ApplicationConsume Remote Services in a Full-Stack CAP ApplicationExtending the Developer's Guide application with a remote S/4HANA service — connectivity, importing the Business Partner API, and running against it. SAP publishes this as four separate paths: mock server or real S/4HANA Cloud, times Cloud Foundry or Kyma. One entry covers all four, because the difference between them is which backend and which runtime, not what you learn.SAP
Extending Standard S/4 HANA OData API'sExtending Standard S/4 HANA OData API'sWalks through extending a standard S/4HANA OData API with a custom field, preferring OData V4 over V2 for its closer OASIS compliance and simpler service enablement, then tracing the extensibility objects documented for the entity before touching any code. The custom field reaches the API by layering three CDS view extensions — extendView on I_Product, extendViewEntity on R_ProductTP and on A_Product_3 — following the projection chain down to where the base table is first selected, built in ABAP Development Tools for Eclipse.JuanDK78, published 2026-04-08
From SEGW to @OData.publish: Expose Your CDS View as OData in S/4HANAFrom SEGW to @OData.publish: Expose Your CDS View as OData in S/4HANAWalks through exposing an ABAP CDS view as an OData service in an on-premise S/4HANA system by adding the @OData.publish: true annotation, then registering and activating the generated service in SAP Gateway (transaction /IWFND/MAINT_SERVICE) before testing it with $filter, $top and $count. It sets this against the manual route through transaction SEGW, since the annotation generates the service, its navigation properties and its OData properties straight from the CDS view without a Service Builder project.rupalipunekar1234, published 2026-07-09
Generating Adobe Form Using RAP framework OData ServicesGenerating Adobe Form Using RAP framework OData ServicesModels a RAP root view entity and consumption view over a custom sales-order table, built with ABAP CDS, and exposes it through a service definition and an OData V2 UI service binding. A separate SEGW project implements GET_STREAM to call an Adobe Form driver class and stream the rendered PDF back as the response, with a computed link field added to the CDS view so the UI can open it. The PDF is generated in the backend and returned to the calling program rather than sent straight to a printer.Megastar, published 2025-03-18
How to rename an OData V4 service?How to rename an OData V4 service?Renaming an OData V4 service binding changes its Service Alias and the resulting service URL, breaking any app already deployed against the old one — shown on a /DMO/TRAVEL-based example in the SAP BTP ABAP environment by unpublishing, renaming and republishing the binding, then reading the new URL back from the OData V4 service catalog's ServiceGroups entry. It weighs that against two alternatives: adding a second service definition and publishing it as a new service version under the same binding, or creating an entirely new service definition and binding, which keeps the original URL live during the cutover.published 2026-07-04
Moving from Hub Gateway to Direct S/4HANA OData V4: A Customized Reusable RAP Processing FrameworkMoving from Hub Gateway to Direct S/4HANA OData V4: A Customized Reusable RAP Processing FrameworkA generic base class for RAP custom-entity query providers — one implementation of IF_RAP_QUERY_PROVIDER~SELECT, subclassed per entity — lets a service expose OData V4 directly from S/4HANA instead of through a separate Gateway Hub. The framework loads entity configuration, extracts the request context, fetches and transforms backend data into the target entity shape, and returns it through the RAP response object, with field mapping and conversion exits left for each subclass to fill in.AnslemArnolda, published 2026-04-07
OData $batch Deleting Records Across Multiple Tables in Single TransactionOData $batch Deleting Records Across Multiple Tables in Single TransactionWalks through implementing a multi-table DELETE inside a single OData v2 $batch changeset on SAP Gateway: setting cv_defer_mode = abap_true in CHANGESET_BEGIN so more than one delete is collected per change set instead of being executed immediately, looping the collected operations in CHANGESET_PROCESS to delete from each backend table in turn, and issuing one COMMIT WORK in CHANGESET_END so all tables commit or roll back together. The example is a supplier master spread across basic, address, identification and purchasing-organisation tables, deleted as one logical unit of work instead of one HTTP call per table.Abhi_0118, published 2026-04-17
OData Deep Insert: Implementation and Real-Life ExamplesOData Deep Insert: Implementation and Real-Life ExamplesWalks through implementing OData Deep Insert on classic SAP Gateway: two entity types joined by an association in SEGW, and a redefined CREATE_DEEP_ENTITY method in the DPC_EXT class that unpacks the header and item payload and calls BAPI_SALESORDER_CREATEFROMDAT2 to create a sales order with its line items in one request instead of separate calls per item. Gives a sample JSON payload to test with Postman or /IWFND/GW_CLIENT and names the usual failure points — an unmapped association, a method that was never redefined, or a commit left out after the BAPI call.SRSATAPATHY, published 2025-09-15
S/4HANA公有云版的内部ABAP拓展S/4HANA公有云版的内部ABAP拓展Argues that S/4HANA Cloud public edition's in-app ABAP extensibility is still real ABAP development, just under stricter rules: developer extensions require ABAP Development Tools rather than SAP GUI transactions, data models are defined as CDS views instead of SE11 tables, business logic is a RAP behavior definition instead of a function module, and service exposure is an auto-generated OData service from a Service Definition instead of a hand-built RFC/BAPI. The piece walks a worked example — a Fiori app that triggers the Purchase Requisition API — through CDS, RAP, OData activation on SAP Gateway, and authorization via business catalogues, and frames the whitelist of released APIs and CDS views as upgrade-safety rather than a restriction.ArthurYang, published 2025-11-24
Step-by-Step Guide to Display System Details on SAP Fiori Launchpad ShellStep-by-Step Guide to Display System Details on SAP Fiori Launchpad ShellA step-by-step build of a plugin for the SAP Fiori launchpad shell that shows the system ID and client on every app it hosts: an OData service modelled in SAP Gateway Service Builder (SEGW), its GetEntitySet method redefined to call the function module RSAPI_CTC_GET_SYSTEM_DETAILS, then consumed from a project in SAP Business Application Studio with the Component.js and manifest.json changes a shell plugin needs instead of a standalone app. It covers the registration step a plugin needs beyond a normal Fiori app: a Catalog and Target Mapping with Semantic Object Shell and Action Plugin, deployed on-premise and assigned to roles.RahulManchala, published 2025-07-30
What's new with draft handling in RAP?What's new with draft handling in RAP?An ABAP-day session at Devtoberfest 2026 on two additions to draft handling in RAP: collaborative draft, where two users work on the same draft instance and a field is locked only while the other is in it, and draft scope, where editing an instance of one draft-enabled business object puts the related instances of a dependent one into draft as well. Andre Fischer shows what each costs in the behaviour definition and projection, the draft query view and its DCL that collaborative draft needs over a table-based business object, and the CDS table entities that remove both the draft query view and the persistence table, with their current restrictions in ABAP analytics and extensibility; the from-scratch generator in ADT grows a checkbox for them. Both demos run against the DMO flight scenario of SAP-samples/abap-platform-refscen-flight, and the last part hides the draft-related features of an OData V4 app in its manifest, which the session gives as the reason a simple create-update-delete app no longer needs a V2 service binding.published 2026-09-21
SerialisationSAP and community
SAP CI to ABAP Integration: Seamless XML to Internal Table MappingSAP CI to ABAP Integration: Seamless XML to Internal Table MappingShapes an XML payload in SAP Cloud Integration with the mandatory abap/values wrapper tags so ABAP can deserialise it straight into an internal table with CALL TRANSFORMATION id, the same identity transformation ABAP uses for asJSON. Derives the XSD for that shape from an RFC-enabled function module's WSDL instead of writing it by hand, then exchanges the XML over a plain HTTP client call to a destination.Ravi_Bharti08, published 2026-02-26
Serve your application over MCPCommunity only
ABAP development tools for Visual Studio Code is now available on the VS Code marketplace!ABAP development tools for Visual Studio Code is now available on the VS Code marketplace!Announces the marketplace release of ABAP development tools for Visual Studio Code, an extension that works against any ABAP system already reachable from ADT for Eclipse and is focused on RAP UI service development, so the Fiori/SAPUI5 frontend and the ABAP backend can be built in the same tool. It ships a built-in ADT MCP Server, disabled by default and switched on from the extension settings, and points readers to a documentation template for capturing ABAP-specific rules in a project's AGENTS.md file for chat agents such as Microsoft Copilot.thomasalexander_ritter, published 2026-06-01
Agentic CAP: Build MCP servers and enterprise AI agentsAgentic CAP: Build MCP servers and enterprise AI agentsCAP applications become AI agents over the Model Context Protocol and the Agent2Agent protocol, which is the serve your application over MCP concern, and SAP AI Core is the LLM integration through which AI is embedded in a CAP app, with recommendations from the SAP-RPT-1 model as the abstract's example. The abstract names the two protocols and the one model and does not say which packages carry them. A two-hour TechEd 2026 session in a hands-on room (Tuesday 27 October, Berlin), presented by Daniel Hutzel, Daniel Schlachter, Marc Huber and Sami Lechner, written here from SAP's abstract; the recording is not yet published.
CAP in the age of AI #3 - from MCP to A2ACAP in the age of AI #3 - from MCP to A2AThe episode that finishes @cap-js/mcp with authorisation and then crosses to agents. @requires and @restrict are the same annotations CAP already has, and the plugin reads them to filter the tool list and the describe output per user and per request, so a model is not told about entities the caller cannot reach — where the OData metadata of the same service lists every exposed entity regardless. The second half annotates a service with @agent from @cap-js/agents, which serves it over A2A with an agent card and a chat preview, runs first against a mocked response and then against SAP AI Core bound with cds bind and a hybrid profile, and reuses the MCP adapter's tools rather than defining new ones.published 2026-08-21
CAP in the age of AI #7 - vector embeddings wrap-upCAP in the age of AI #7 - vector embeddings wrap-upThe same embeddings model taken from SQLite to SAP HANA Cloud, then handed to an agent. Locally it is @cap-js/ai that adds the vector functions SQLite lacks and downloads an all-MiniLM L6v2 ONNX model on first start; on HANA natural language processing has to be switched on, the model name is a mandatory argument, the vectors it returns are 768 dimensions, and dimensions must match on both sides of a comparison. HANA itself can be given SAP AI Core as a remote source for other embedding models, which a CDS.ql expression has to inject because the postfix notation only takes what the CDS model holds, and the hour ends with a search function over cosine similarity exposed over @cap-js/mcp, so an agent asked about low output from solar panels calls semantic search instead of writing the query itself.published 2026-10-16
Running AI agents against SAP ECC 6.0: lessons from building an in-system MCP serverRunning AI agents against SAP ECC 6.0: lessons from building an in-system MCP serverNicolasHernandez recounts building and running, over two years, an MCP server written in plain ABAP behind a single ICF node, for SAP ECC 6.0 and S/4HANA on-premise customers that the ADT MCP Server and SAP Joule for Developers, ABAP AI capabilities do not reach. Authorization runs as the calling user rather than a technical RFC user, a choice forced by a customer security team after an earlier version used a technical RFC user, and a later security review found a display-authority check applied uniformly across every write endpoint. The failure modes that cost the most time sat in RFC connectivity itself: RFC_READ_TABLE's empty-table exception collapsed into a false success, a where-used filter was applied only after the row limit, and BAPI calls treated an empty string and an absent parameter as different, silently wrong inputs.NicolasHernandez, published 2026-08-28
SAP's API Policy on AI Agents: What It Prohibits, Allows, and Leaves OpenSAP's API Policy on AI Agents: What It Prohibits, Allows, and Leaves OpenReading SAP's API Policy v.4.2026a and its FAQ against the reference architectures, the piece narrows the widely repeated claim that SAP bans AI to what Section 2.2.2 actually restricts: an agent planning and chaining API calls outside an SAP-endorsed route, closed off further by Section 3's block on bypassing API Controls through custom code. It compares the endorsed and allowed paths — the MCP Gateway on SAP Integration Suite reaching S/4HANA and ECC through RFC-based back ends under a 15-tool, 200,000-token limit, SAP-provided MCP servers through Joule Studio, the A2A protocol, customer-operated MCP servers allowed under FAQ Question 56, and the ADT MCP Server, whose 18 tools work only on development artifacts and are documented as not intended for productive use. It leaves open whether Section 2.2.2 covers ABAP code that calls a model from inside the system, since enforcement is defined at the API-traffic level rather than by a list of tools.published 2026-08-31
Fiori annotationsSAP and community
052: 10 Minutes from Start to Launchpad052: 10 Minutes from Start to LaunchpadWalks a RAP application from a root CDS view entity through a consumption projection and its associations to a metadata extension: a facet per field group, a hidden field via UI.hidden, and a selection field on the ABAP package, all in a Customer-layer DDLX source read by the generated Fiori elements app. It then covers the parts ABAP CDS modelling and annotation stop short of — service definition and binding, generating the UI in Business Application Studio, and wiring the deployed app into the Fiori Launchpad through an IAM App and business catalog.Björn S., published 2026-09-07
A Guide to CDS Metadata Extensions, Fiori App Generation and SAP UI5 Controller ExtensionsA Guide to CDS Metadata Extensions, Fiori App Generation and SAP UI5 Controller ExtensionsWalks through a RAP-based Fiori elements app end to end: layering UI annotations onto a CDS view through a separate ABAP metadata extension object, gated by @Metadata.allowExtensions on the base view and ordered across extensions by a required @Metadata.layer value. Generates the app in SAP Business Application Studio from the published OData V4 service's merged $metadata document, then adds an SAP UI5 controller extension — registered in manifest.json against a Fiori elements lifecycle hook — only for behaviour the annotations cannot express.ankitapaul229, published 2026-07-27
CALL BAPI IN CUSTOM ENTITY THROUGH RAPCALL BAPI IN CUSTOM ENTITY THROUGH RAPBuilds a read-only RAP Custom Entity, ZCE_BANK, whose query provider class calls BAPI_BANK_GETDETAIL directly instead of reading a CDS-based persistency, handling filtering, sorting, paging and the total count from the request object in IF_RAP_QUERY_PROVIDER~SELECT. It walks through the @UI annotations — headerInfo, presentationVariant, lineItem, selectionField, identification — that drive the entity's Fiori Elements list report, which is Fiori annotations on the ABAP door.harsha_reddy24, published 2025-12-09
Creating Material Master Data in SAP S/4HANA Using RAP and EML .Creating Material Master Data in SAP S/4HANA Using RAP and EML .Builds an unmanaged Transactional model RAP business object for Article (Material) master data on top of the standard interface views I_Product, I_ProductDescription and I_ProductPlant, replacing BAPI_MATERIAL_SAVEDATA with EML operations in the create, update and custom extendplant behaviour methods. A CDS metadata extension adds the Fiori annotations — headerInfo, facets, line items and value helps — that drive the generated Fiori elements UI.Sudhanshu07, published 2026-01-08
Explore SAP Fiori elements for ABAP developersExplore SAP Fiori elements for ABAP developersSAP Fiori elements for an ABAP developer who now builds the UI as well as the RAP business object behind it, the transactional model of ABAP Cloud, in SAP Business Application Studio; the abstract calls the UI side new territory for that developer, and a Fiori elements app is rendered from the service's Fiori annotations rather than hand-written UI code. The abstract names the tool and the stack and does not say which floorplan or annotations are shown. A TechEd 2026 session (Tuesday 27 October, Berlin), presented by Björn Schulz, written here from SAP's abstract; the recording is not yet published.
On‑the‑Fly Excel Download in a RAP Fiori App — No Database Table, No Persistence, Pure CDS + ABAPOn‑the‑Fly Excel Download in a RAP Fiori App — No Database Table, No Persistence, Pure CDS + ABAPBuilds a CDS custom entity backed by an ABAP class that implements IF_RAP_QUERY_PROVIDER and assembles an XLSX workbook at request time — hand-built from Open XML parts with cl_abap_zip for multiple sheets, or in one line via cl_salv_table=>to_xml for one — then streams it to the browser through the @Semantics.largeObject annotation. The same annotation makes Fiori annotations render the field as a download link with no backing database table, trading the usual persisted-blob approach to document output for a file rebuilt fresh on every click.hemanthmj, published 2026-06-18
RAP - Navigation (App to App)RAP - Navigation (App to App)Walks through app-to-app navigation from a RAP list report and object page: the @Consumption.semanticObject annotation and its semanticObjectMapping.element and additionalBinding variants for links, against the inline @UI.lineItem WITH_INTENT_BASED_NAVIGATION and @UI.identification FOR_INTENT_BASED_NAVIGATION for buttons. Each variant is added through a CDS metadata extension and traced into the target app, showing which fields end up in the filter and how the two annotation styles differ in the list report's formatting. Annotation-driven navigation on a RAP service is part of what Fiori annotations covers on the ABAP door: CDS annotations, carried in a metadata extension, driving the Fiori elements UI.Björn S., published 2026-09-01
Launchpad pluginsSAP and community
Step-by-Step Guide to Display System Details on SAP Fiori Launchpad ShellStep-by-Step Guide to Display System Details on SAP Fiori Launchpad ShellA step-by-step build of a plugin for the SAP Fiori launchpad shell that shows the system ID and client on every app it hosts: an OData service modelled in SAP Gateway Service Builder (SEGW), its GetEntitySet method redefined to call the function module RSAPI_CTC_GET_SYSTEM_DETAILS, then consumed from a project in SAP Business Application Studio with the Component.js and manifest.json changes a shell plugin needs instead of a standalone app. It covers the registration step a plugin needs beyond a normal Fiori app: a Catalog and Target Mapping with Semantic Object Shell and Action Plugin, deployed on-premise and assigned to roles.RahulManchala, published 2025-07-30
Understanding and Developing Fiori Plugins with Extension API & TypeScriptUnderstanding and Developing Fiori Plugins with Extension API & TypeScriptDescribes a launchpad plugin as a UI5 component without views that the shell loads for every app, SAPUI5 only, and compares extending the shell through the renderer with the Extension service from 1.120 and FrameBoundExtension from 1.124, down to the placement options each allows. It builds fiori-fullscreen-plugin as the sample, and ends with activation: globally through /UI2/FLP_CONF_DEF and /UI2/FLP_CUS_CONF or per role through a Shell-plugin target mapping on an ABAP launchpad, and as an HTML5 app assigned to a role in SAP Build Work Zone.published 2026-06-15
SAP GUI screens and listsSAP and community
Creating a Custom F4 Help for Currency Fields in ABAP Using F4IF_INT_TABLE_VALUE_REQUESTCreating a Custom F4 Help for Currency Fields in ABAP Using F4IF_INT_TABLE_VALUE_REQUESTWalks through building a custom F4 help popup for a currency selection-screen field: an AT SELECTION-SCREEN ON VALUE-REQUEST handler reads currency codes and texts from TCURC and TCURT into an internal table, then passes it to F4IF_INT_TABLE_VALUE_REQUEST to render the popup list. It is offered as a replacement for the field's standard search help when that does not fit the business requirement.vinodkumarreddyappannagari, published 2026-06-03