Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Small queries

Former Member
0 Kudos

hi,

1.What is difference between RFC and BAPI

2.What is difference between User exit and Customer exit

3.What is difference between at new and at end of . with example if possible.

1 REPLY 1

Former Member
0 Kudos

hi,

1.

BAPI stands for Business Application Programming Interface. It is a library of functions that are released to the public as an interface into an existing SAP system from an external system.

RFC is the protocol used to call functions in an R/3 system by a caller external to R/3 or to call programs external to R/3 from an R/3 system.

Functions can only be called via RFC, if they are tagged as RFC functions in the SAP development workbench. They are then called RFC function modules. BAPIs are complete sets of (BAPI) function modules that model a business application.

When you are familiar with web developments: RFC can be compared to HTTP and BAPIs are CGI applications.

In other words: A BAPI function is a function module that can be called remotely using the RFC technology.

2.

A customer exit is a type of user exit. A user exit is a handle that SAP put into their code, allowing a customer to add their own routines. There are many types of user exit, and often they differ between modules, so I can't give a step by step guide to finding them. Some tips are:

Use CMOD

Search the major module pools of the applications for forms beginning userexit

Check the IMG, often there are links to user exits here.

3.

A control break occurs when the value of the field f or a superior field in the current record has a different value from the previous record (AT NEW) or the subsequent record (AT END). Field f must be part of the header field group.

If the extract dataset is not sorted, the AT - ENDAT block is never executed. Furthermore, all extract records with the value HEX null in the field f are ignored when the control breaks are determined.

The AT... ENDAT blocks in a loop are processed in the order in which they occur. This sequence should be the same as the sort sequence. This sequence must not necessarily be the sequence of the fields in the header field group, but can also be the one determined in the SORT statement.

LOOP.

AT FIRST.

WRITE 'Start of LOOP'.

ULINE.

ENDAT.

AT NEW t1.

WRITE / ' New T1:'.

ENDAT.

AT NEW t2.

WRITE / ' New T2:'.

ENDAT.

WRITE: /14 t1, t2.

AT END OF t2.

WRITE / 'End of T2'.

ENDAT.

AT END OF t1.

WRITE / 'End of T1'.

ENDAT.

AT LAST.

ULINE.

ENDAT.

ENDLOOP...

<REMOVED BY MODERATOR>

kushagra

Edited by: Alvaro Tejada Galindo on Feb 1, 2008 12:29 PM