0% found this document useful (0 votes)
358 views6 pages

SAP Note 125776 - Documentation On Transaction BDBG: Symptom

The document provides documentation on transaction BDBG for generating BAPI/IDoc interfaces. It describes how to call the documentation in the R/3 Library and navigate to the relevant sections. It also provides detailed steps for generating message types, IDoc types, segments, and function modules from a BAPI to enable asynchronous BAPI calls.

Uploaded by

khkiran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
358 views6 pages

SAP Note 125776 - Documentation On Transaction BDBG: Symptom

The document provides documentation on transaction BDBG for generating BAPI/IDoc interfaces. It describes how to call the documentation in the R/3 Library and navigate to the relevant sections. It also provides detailed steps for generating message types, IDoc types, segments, and function modules from a BAPI to enable asynchronous BAPI calls.

Uploaded by

khkiran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

SAP Note 125776 Note Language: English

Documentation on Transaction BDBG


Version: 4 Validity:

Valid Since 23.11.1998

Summary
Symptom
There is no direct link to the documentation on BDBG.
The BDBG documentation is not detailed.

Other terms
BDBG

Reason and Prerequisites


Solution
Call the documentation using the path specified.
You can find the documentation on BDBG in the R/3 Library.
Choose Help -> R/3 Library
CA - Cross Application Components
- Business Framework Architecture
- Application Link Enabling (ALE)
- ALE Programming
- Distribution Using BAPIs
- Integration of BAPIs and ALE
- Generating BAPI/IDoc Interfaces
This documentation is not very detailed.
You will find a more detailed description below.

In future releases, there will be a direct link from BDBG to the relevant
sections (using Help -> Help for Application).
************************************************************************

Generating BAPI/IDoc Interfaces


Prerequisites
If you want to implement a BAPI in an ALE business process as an
asynchronous interface, you have to generate a BAPI/IDoc interface. The
standard R/3 system contains a large quantity of business objects and
BAPIs. These include BAPI/IDoc interfaces that are generated from BAPIs and
enable asynchronous BAPI calls.
You can develop your own BAPIs in the customer namespace and generate the
associated BAPI/IDoc interface.
If you want to generate a BAPI/IDoc interface for a BAPI supplied by SAP,
which was not delivered in the latest Release, you must first create a
subtype of the business object in the customer namespace. The subtype
inherits the methods of the business object. You can change and delete the
methods of the subtype or enhance them with your own methods. The BAPI/IDoc
interface is then created in the customer namespace for the new business
object type and a method assigned to it.
Regardless of whether SAP delivers a BAPI/IDoc interface for a BAPI with
the new release, any interface you have generated will continue to function
15.06.2010

Page 1 of

SAP Note 125776 -

Documentation on Transaction BDBG

as in the earlier release. You can regenerate the old interface to adapt
newly added parameters, provided that SAP has not delivered a new interface
in the new release.
If SAP delivers a BAPI/IDoc interface for a BAPI for which you have already
generated an interface, you should use the new interface and delete the
interface you generated. You can still use the old interface in the earlier
release. If you regenerate the old interface, some generated objects (such
as segments of SAP objects) could be overwritten if the interface in your
BAPI function module references BAPI structures that belong to SAP.
The essential prerequisite is that a BAPI exists:
o

You have developed your own BAPI in the customer namespace.

You want to generate a BAPI/IDoc interface for a BAPI delivered in


the standard release or change a BAPI/IDoc interface created by
SAP:
-

1. Copy and modify the function module belonging to the


original BAPI.

2. Create your own BAPI in the BOR by creating a subobject type


in the customer namespace (transaction SW01 ). When you create
the subobject type, the subtype inherits the methods of the
business object.

3. Set the status of the object type to Implemented (Edit ->


Change release status -> Object type).

4. You can change and delete the methods of the subtype or


enhance them with your own methods.

5. The BAPI/IDoc interface is then created in the customer


namespace for the new sub-type and a method assigned to it.

For more information about creating new BAPIs and enhancing existing ones,
see the Customer Enhancements section in the BAPI Programming guide.
See also the notes on related ALE topics at the end of this section.
Procedure
You can generate the following objects for a BAPI:
-

Message type

IDoc type

Segments in the IDoc type

Function module that is called on the outbound processing side


(It creates and sends the IDoc from the BAPI data.)

Function module that calls the BAPI with the IDoc data on the
inbound processing side

You can also use the message types, IDoc types and function modules that
have been generated to distribute master data using the SMD tool. The
difference to manually maintained message types is that the function module
that evaluates the change pointers does not create an IDoc. Instead it
fills the corresponding BAPI structures, determines the receivers, and
15.06.2010

Page 2 of

SAP Note 125776 -

Documentation on Transaction BDBG

calls the generated ALE function module.


Proceed as follows:
1.

1.From the ALE Development screen, choose BAPI -> Generate ALE/IDoc
interface (transaction BDBG).

2.

2.Enter the business object (object type) and the method underlying
the interface.
The options below are provided in the "Interfaces" menu:

Creating objects
Prerequisite: An interface has not yet been generated for this
BAPI, or an already generated interface has been deleted using
the "Delete" option.
Enter a name for the message type. The system suggests names
for the objects to be generated, but users can change them.
The default names have the following naming convention:
BAPI function module: BAPI_<OBJECT>_<METHOD>
For example: BAPI_EXAMPLE_TEST
Message type: Business name
For example: MYTEST
IDoc type: <Message type>01
For example: MYTEST01
Segments: derived from the message type or
BAPI structures:
E1<Message type> for individual fields as a header
segment
For example: E1 MYTEST or
E1BP_XX... for parameters of the structure BAPI_XX.
For example: E1BP_HUGO for BAPI_HUGO
If a segment contains more than 1000 bytes of data,
child segments are automatically generated from it.
The names of the child segments are assigned with numbers 1,
2 and so on
according to the original segment,
provided that the length of the names is less than
27 characters.
Function module in outbound processing: ALE_<OBJECT>_<METHOD>
For example: ALE_EXAMPLE_TEST
Function module in inbound processing: IDOC_INPUT_<Message
type>
For example: IDOC_INPUT_MYTEST
All the object types in the customer system must begin with Y
or Z.
The proposed development class and the function group are those
to which the BAPI function module belongs. You should use your
own development classes and function groups when you generate
your own interfaces.
You can only generate the message type (required field) and the

15.06.2010

Page 3 of

SAP Note 125776 -

Documentation on Transaction BDBG

IDoc type (required field), or only one of the function modules


(optional field) by transferring the field for which no object
should be generated as empty. You can choose "Change" to
generate another object (see "Change" function below).

Changing objects
Prerequisite: You already created objects for this BAPI.
Choose "Change" to regenerate the objects of an existing ALE
interface after you change the BAPI.
The IDoc type and the IDoc segments are regenerated if the
interface structures of the object methods have changed. The
function modules are regenerated only if the IDoc or one of the
segments has changed.
As for when you create an object, a dialog box is displayed
here also. The objects that already exist in the system are
displayed in this dialog box. They are not input fields. If a
field is empty, you can generate the associated object.

Deleting object
Prerequisite: You already created objects for this BAPI.
The function modules are always deleted, provided that they
exist in the system.
The IDoc structure is deleted, provided it has not already been
released.
The IDoc segments can be deleted only if they have not been
released and are not used in other IDocs.
Finally, the message type is deleted, if it is no longer
assigned to the IDoc type.

Result
The output screen displays the processed objects and their status.
changes are entered in transport requests.

All

Notes:
Consider the following information also:
o

Namespace extension
As of Release 4.5A, the namespace extension is also supported for
customers and partners.

Links
The link in ALE provides answers to the following questions:
On the outbound processing side:
-

From which application object was the IDoc created? The


prerequisite is that the application has correctly filled in
the parameter APPLICATION_OBJECTS in the function module on the
outbound processing side.

On the inbound processing side:


From which outbound IDoc was the inbound IDoc created, and
which application object was created from this inbound IDoc?
The prerequisite is that a key was defined in the BOR for the
BAPI method, and this key is contained in the exporting
parameter or importing parameter in the BAPI function module.
This key can consist of several key fields. If no key fields

15.06.2010

Page 4 of

SAP Note 125776 -

Documentation on Transaction BDBG

exist in the BOR, you can specify a link to another object


during the relevant query.
o

BAPI return parameter and IDoc status


Provided the return parameter is filled in by the application, the
IDoc status and associated information from the parameter is
included in the IDoc. Message types determine the IDoc status.
If the return parameter is an EXPORTING parameter, one IDoc status
record is written:
Message type A or E: Status 51 ("Application document not posted")
Message type W, I or S: Status 53 ("Application document posted")
If the return parameter is a TABLES parameter, more IDoc status
records can be written, depending on the message types in the
table:
-

Message type A or E: Status 51 ("Application document not


posted"),
Exception: There is no IDoc status for type S

No message type A or E: Status 53 ("Application document


posted")
The IDoc status records are written in the same sequence as the
messages in the return parameter. If the return parameter was
not filled in, the BAPI has been called correctly by the IDoc.
In this case, the ALE layer writes an IDoc status record with
status 53 ("Application document posted").

Restrictions regarding interface generation


-

You should not set the generation function for the same
reference structure of parameters in the BAPI function module
(IMPORTING and/or TABLES). In this situation, the mapping of
IDoc segments to parameters is not unique. Therefore, you
cannot identify the parameters in inbound processing.

You cannot set the generation function for a dataset greater


than 1000 bytes in the reference field to a parameter or in a
field in the reference structure, since only one segment with a
maximum dataset of 1000 bytes can be loaded.

Header Data
Release Status:
Released on:
Master Language:
Priority:
Category:
Primary Component:

Released for Customer


22.11.1998
23:00:00
German
Correction with low priority
Documentation error
BC-MID-ALE Integration Technology ALE

Valid Releases

15.06.2010

Page 5 of

SAP Note 125776 -

Documentation on Transaction BDBG

Software Component

Release

SAP_APPL

40

15.06.2010

From
Release
40A

To
Release
40B

and
Subsequent

Page 6 of

You might also like