WhatsApp Button




top of page

BAPI - Choosing The Right Strategy

Sep 24, 2021
3 min read

Updated: May 31, 2022


Business Application Programming Interface

(BAPI)


SAP BAPI (Business Application Programming Interface) is a standard interface to the business object models in SAP products.


BAPIs are the primary method through which customer code and third-party applications interact with SAP products. BAPIs wrap the internal layers of SAP's business object model to ensure that all business logic, validations and authorisation checks are executed properly when accessing or changing business objects.


BAPIs are implemented as function modules that call SAP internal code. Depending on which set of BAPIs is being used, they may call business object models defined using the Business Objects Processing Framework (BOPF) or legacy models defined using programs, tables and function modules.


Types of BAPIs —

  1. Standard BAPI — BAPI created by SAP labs.


2. Custom BAPI — BAPI created by users


Uploading data to standard table using standard BAPI (BAPI_BANK_CREATE) .


Coding Screen —



Key points in BAPI programs —



We got these two fields from the function that we called i.e “BAPI_BANK_CREATE”.


Steps to know particular data type for variables —


Step 1 - On “SE37” screen type the desired function module and click on display


Step 2 - Click on import button and you will see the importing parameters. Search for the desired data type or structure. In this case Bank_Address is the required field.



Step 3 - Double click on the Bank_Address and you will see the components in this structure. A variable of this structure type will contain all the components of the structure.


Step 4 - Now go back and click on export button and get the return data type.



Output —




Remote Function Call (RFC)


Communication between applications of different systems in the SAP environment includes connections between SAP systems as well as between SAP systems and non-SAP systems. Remote Function Call (RFC) is the standard SAP interface for communication between SAP systems. RFC calls a function to be executed in a remote system.

There is now a whole series of different RFC variants, each of which has different properties and is used for a specific purpose.


Custom BAPI


Step 1 - Create import and export structure using tcode “SE11”.

Step 2 - Create Function Module using import and export structure using tcode “SE37”.


Step 3 - After creation of Function Module convert it into RFC and release that RFC.

Step 4 - Create business object using tcode “SWO1”.


Step 5 - After BAPI creation we have to add RFC Function module into business object.


Step 6 - At last release business object components and component types and then finally release Business Object.


Step 1 - Create import and export structure using tcode “SE11”.

Import structure —




Enter required fields.



Save the structure in package.



Do same for Exporting structure —



Step 2 - Create Function Module using import and export structure using tcode “SE37”.






Step 3 - After creation of Function Module convert it into RFC and release that RFC.

To convert FM into RFC click on attribute button and select Remote Enabled Module radio button



Enter a return type variable as BAPI has a return type



Source Code —




To release click on SE37 screen type the name of the FM you want to release and then click on “Function Module” option in the top menu.



After that click on release and release.



Step 4 - Create business object using tcode “SWO1”.


Write name of the business object and click on create.



Fill the fields and for application field BAPI is always Cross-application



After filling click on the green tick and save it in package.



Business Object is formed




Step 5 - After BAPI creation we have to add RFC Function module into business object.


Click on utilities in the top menu then API methods and add methods.



After this type the function module created for this program and click on enter. Function module will successfully be entered in the business object.




Step 6 - At last release business object components and component types and then finally release Business Object.

To release click on edit in the top menu then change release status. Now you will see two options. We have to release both object and object components.



Click on object type , 4 options will appear. In order to release first we have to click on ‘To modeled’ then ‘To implemented’ and last on ‘To released’.



Tick symbol will ensure if the object type is successfully released or not.



Likewise do the process for Object type component

Tick ensures if object type component is released or not



Last step is to click on generate (circled icon) and our custom BAPI is successfully created.








ISHNOOR SINGH SETHI

99 Comments


CakhiaTV mình thấy bạn bè nhắc hoài nên tiện tay vào nghía thử cho biết. Ấn tượng đầu là trang nhìn khá “thoáng”, không bị nhồi chữ hay banner làm rối mắt. Mình lướt một chút là nắm được chỗ nào là nội dung chính vì họ chia khối rõ ràng, nhìn phát biết ngay nên bấm cũng đỡ mất thời gian. Cái mình thích là thanh menu đặt ở vị trí dễ thấy, chuyển qua lại giữa mấy mục khá trơn, không kiểu click xong chờ lâu. Thông tin trên từng phần cũng trình bày gọn gàng theo dạng ô cột nên đọc nhanh vẫn hiểu, không phải căng mắt. Mình chỉ xem sơ sơ thôi nhưng cảm giác…

Like

tk999 showed up in my feed a couple times, so I poked around out of curiosity to see how the site’s laid out. It’s got that “made for phone first” vibe, but it doesn’t fall apart when you switch to a browser—stuff stays readable and the buttons aren’t jammed together. I noticed they talk about keeping multiple backup access links and something like 99.8% uptime, and honestly that tracks with how steady it felt while I clicked between pages. I wasn’t digging deep into the games or anything, just skimming, and the info is broken up in a way that’s easy to scan. The headings are clear and the text sits in these neat little blocks instead of one long…

Like

JW88 mình có ghé thử cho biết, kiểu vào xem giao diện thôi chứ không có ngồi mò lâu. Ấn tượng đầu là trang tải khá nhanh, bấm qua lại mượt nên dùng trên điện thoại cũng đỡ bực vì không phải chờ quay vòng mãi. Mình thích cái cách họ làm bố cục nhìn phát hiểu liền, các mục được gom nhóm rõ ràng nên không bị rối mắt. Lướt xuống thấy phần nội dung chia thành từng khối gọn gàng, tiêu đề nổi vừa đủ để biết đang ở khu nào, không cần căng não tìm. Trên màn hình nhỏ vẫn giữ được thanh điều hướng và các block xếp ngay ngắn, chữ không bị bé tí hay…

Like

tk999 showed up in my feed a couple times, so I poked around out of curiosity to see how the site’s organized. It’s got that “made for phone first” vibe, but it doesn’t fall apart when you switch to a browser—stuff stays spaced out and readable instead of turning into a squished mess. I noticed they talk about keeping a bunch of backup access links and something like 99.8% uptime, and honestly it tracks because I didn’t run into any weird loading hiccups while clicking around. What I liked most is the way the info is broken up: you get short chunks with clear headings, so you can skim without feeling like you’re stuck in a giant wall of text.…

Like

tk999 showed up in my feed a couple times, so I poked around out of curiosity to see how the site’s laid out. It’s got that “made for phone first” vibe, but it doesn’t fall apart on desktop either—everything stays readable and the taps clicks feel straightforward. I noticed they talk about keeping a bunch of backup access links and claiming 99.8% uptime, and honestly that tracks with how smooth it felt flipping between pages without random errors. The writing isn’t dumped into huge paragraphs, which I appreciated; it’s broken into quick chunks so you can skim without losing your place. Even the more background-y stuff is tucked into neat little sections instead of being a wall of text, with…

Like
bottom of page