Tcode BDBG - Generate ALE Interface for BAPI
Hi All,
I'm trying to generate an ALE interface for the BAPI - BAPI_BUSPROCESSND_CREATEMULTI for my LSMW project, for which I have created a bespoke object in SWO1 (ZBUS), but each time I try to generate the ALE interface for the BAPI I get the error as follows -
Segment Z1BPBUS20001_HEADER_INS is used multiple times in IDoc types
Message no. EA799
Diagnosis
Segment type Z1BPBUS20001_HEADER_INS is used multiple times in the IDoc type. A segment type may only be used once in each IDoc type.
I agree, segment BAPIBUS20001_HEADER_INS is used more than once in BAPI_BUSPROCESSND_CREATEMULTI for the HEADER and CREATED_PROCESS tables, so is there any alternate solution to it?
I have also tried running BDBG for BAPI_ACTIVITYCRM_CREATEMULTI, and I get athe same error message as above for the segment - BAPIBUS20001_APPOINTMENT_INS - but I cannot see this segment being used anywhere else except for tables DATE.
Kind regards,
Arijit Das
Hi Suresh,
thanks for your reply.
Method of BAPI has not been deleted,
but message type, idoc type and FM for Outbound processing.
These objects are within SAP namespace, so recreation will not work.
Regards
rea
Similar Messages
-
Making BDBG Easy (Generate ALE Interface for BAPI)
<b>Making BDBG Easy</b>
Transaction BDBG is used to generate an ALE interface for SAP standard or custom developed BAPIs. Once a BAPI is given an ALE interface, it can be used in LSMW for migrating data or just as another IDoc. Quite a few SAP standard BAPIs cannot be used in LSMW as they do not come with an ALE interface. OSS note Documentation on Transaction BDBG (note number 125776) details the necessary steps to use transaction BDBG but it does not comprehensively cover the technical issues that one may encounter in order to create an ALE interface.
BAPI_ACTIVITYCRM_CREATEMULTI, which is used to create Activities in CRM, will be used to illustrate a step-by-step approach to using transaction BDBG.
Go to Object Navigator (transaction SE80) and create a bespoke function group, we will call ours Z_CRM_ACTIVITY. Activate it.
Then go to Function Builder (transaction SE37), and copy the BAPI to a bespoke function module. Thus, BAPI_ACTIVITYCRM_CREATEMULTI is copied to Z_BAPI_ACTIVITYCRM_CREATEMULTI and assigned to the function group that we created in the previous step Z_CRM_ACTIVITY. Edit the bespoke function module, go to the Attributes tab, and release the function module (<i>Menu Path Function Module >> Release >> Release</i>). Now activate the function module.
IDoc segment types have a maximum length of 27 characters. Each associated type for the Parameters (tabs Import, Export, Changing, and Tables) in a BAPI becomes a segment in the IDoc. Thus, an associated type in a BAPI cannot exceed 27 characters. During the ALE generation process anything beyond the 27th character gets truncated. This leads to more than 1 segment being called the same, and as a result an error occurs when the ALE interface is generated in the final step as an IDoc cannot have the same segment twice.
Eg: Table parameters DATE and DATEX correspond to types BAPIBUS20001_APPOINTMENT_INS (28 characters long) and BAPIBUS20001_APPOINTMENT_INSX (29 characters) respectively.
Also, a developer does not have the option to reduce the segment name during the ALE generation process. So in order to have an error free ALE generation happening in the end, bespoke associated types need to be created and assigned to our bespoke BAPI.
Go to ABAP Dictionary (transaction SE11), and create ZXXXXXXXXXXXXXXXX data types for the structures in the BAPI that are greater than 27 characters. Activate all these bespoke structures.
Bespoke structures ZBAPIBUS20001_APP_INS and ZBAPIBUS20001_APP_INSX can be used in lieu of the standard SAP ones for parameters DATE and DATEX. The same correction method needs to take place for other excessively long types, like the types being referenced by LOCATION and LOCATIONX.
Go to Business Object Builder (transaction SWO1). A search for Activity as the short description produces a few hits. After examining all the objects returned in the hit, we see that BAPI_ACTIVITYCRM_CREATEMULTI belongs to 2 Business Objects - BUS2000110 (CRM Activity) and BUS2000126 (CRM Business Activity).
Copy either of these objects to a bespoke object ZXXXXXXXXX, we will copy BUS2000110 and rename it to ZBUS200010, program RBUS2000110 should also be copied to a Z version (ZRBUS2000110), and the object name can be changed to Company Name (eg: XXX) followed by ActivityCRM (XXXActivityCRM).
Now we edit our bespoke object, and create a method for it by placing the mouse cursor on methods in the object type tree and clicking the create button on the menu bar.
A pop-up appears on the screen with the following text
<i>Create with function module
as template? </i>
After clicking on Yes, another pop-up asks for a function module to be entered, enter the bespoke function module Z_BAPI_ACTIVITYCRM_CREATEMULTI here and click the tick button.
Accept all the default values in the next pop-up Create Method: Method Properties, and do the same for the next pop-up Create Method: Create Parameters. In the next pop-up click Yes to the question
<i>Method ZBAPIACTIVITYCRMCREATEMULTI not
yet implemented
Do you want to generate a template
automatically for the missing section?</i>
Double-click on the newly created method and go to the ABAP tab, the Function Module option will be selected as the default, make the API function as the default and click OK. Generate the business object.
Now, click on the method of the object and release the method (<i>Menu Path Edit >> Change Release Status >> Object Type Component >> To Released</i>). Double-click on the method to confirm that the Status is released.
Save all the changes made, and Back out of the Edit mode and go the main Business Object Builder screen. Re-generate the business object. First implement, then release the main object ZBUS200010 (<i>Menu Path Object Type >> Change Release Status To >> Implemented, then follow the same menu path and click on Released</i>).
Go to the BAPI Explorer (transaction BAPI), click on the filter icon on the menu bar, and select radiobutton All. Click on the alphabetical tab. Look for XXXActivityCRM in the list. Release status should be Released for this object.
Now we should be able to generate the ALE interface for the BAPI. Execute transaction BDBG, enter the bespoke object (ZBUS200010), do a drop down on the method field and select the bespoke method from the list. Click on the create button on the menu bar. In the first pop-up accept Message Type ZBAPIACTIVITYCRM and click OK. In the next pop-up the following values should be there by default
IDoc type ZBAPIACTIVITYCRM01,
ALE Outbound Processing
Function Module ZZ_ALE_ACTIVITYCRM_CREATEMULTI,
Function Group Z_CRM_ACTIVITY, and
ALE Inbound Processing
Function Module ZIDOC_INPUT_ZBAPIACTIVITYCRM,
Function Group Z_CRM_ACTIVITY.
The option Call in update task should be ticked.
Now our BAPI has an ALE Interface to it and can be used in conjunction with either the BAPI or IDoc option in LSMW. The default values for an IDoc Inbound Processing should be maintained in order to use the bespoke BAPI / IDoc.Great
-
Generate ALE-Interface for BAPI
Hi community,
in transaction BDBG i deleted the interface for object BUS2012 Method CreateFromData by mistake.
Can anybody provide solution on how to reset the interface?
IDOC interface:
message type: PORDCR
IDOC-Type: PORDCR05
package: MEW
ALE Outbound Processing:
FM: ALE_PO_CREATE
FG: MEWP
ALE Inbound Processing:
FM: IDOC_INPUT_PORDCR
FG: MEWP
Regards
reaHi Suresh,
thanks for your reply.
Method of BAPI has not been deleted,
but message type, idoc type and FM for Outbound processing.
These objects are within SAP namespace, so recreation will not work.
Regards
rea -
Hi,
Am trying to create generate ALE interface for a BAPI(BDBG). After the creation an error comes
There is no entry in the object directory (TADIR) for R3TR TABL Z1BUSINESSPARTNERERM_CREATE. (representative error mess)
Can anyone help in resolving the same?
Thanks and regardsHi Saurabh,
This type of error occurs when you have to do some changes in standard table. Can you check whether you have to maintain this perticular entry
"Z1BUSINESSPARTNERERM_CREATE" in a perticular table ?
<b>Allot proint if my post helps!!</b>
Best regards,
Vikash. -
Interface for BAPI for creation of Sales Order.
hai,
what does meant by creating interface for BAPI to create sales order. and how to create the interface for BAPI to create sales order.Check Transaction BDFG and BDBG.
BDBG is to create an interface for the BAPI
http://help.sap.com/saphelp_nw04/helpdata/en/43/b46c4b53c111d395fa00a0c94260a5/frameset.htm
BDFG is to create an interface for the FM (non BAPI).
http://help.sap.com/saphelp_nw04/helpdata/en/00/a814b5d05b11d6b2ca00508b6b8b11/frameset.htm
Regards,
Naimesh Patel -
Inbound ALE interface for HR Master and OM data
Dear Experts,
I have a requirement for ALE interface to create and maintain HR master and OM data with the details coming from external HR system and I need to send back the pernrs,position or org. unit created back to external system.I am trying to use HRMD_A message type for this interface which will use FM IDOC_INPUT_HRMD to post the idocs which will update the DB tables of infotypes directly.But in my case i need to create the pernr or position with details coming from external system and send them back.how i can create and catch these details using this standard FM IDOC_INPUT_HRMD?
Thanks a lot in anticipation!!Hi Ramnaresh,
Did you get the solution for this. we have the similar requirement from people soft to SAP but only one direction.
We are using the IDOC ( IDOC_INPUT_HRMD). It is working fine except for the fields KOSTL (Cost Center), ORGEH (Org Key), SETLL (Job key) in infotype 0001. the values are showing in generated IDOC but not updating the infotype table PA0001.
The functionality is working fine for other fields and other infotypes.
When I debug the program it is dealing with the config table T77S0 parameters: PLOGI , ORGA , Value 'X'.
If we maintain this value, I am getting the below error message.
The EMPLOYEE_ORG_ASSIGNMENT-COSTCENTER field cannot be maintained in dialog, which means you cannot fill it with data at this point. It is calculated automatically by the system.
If the Config, table parameters are not maintained, then IDOC is in successful state but not updating the cost center in PA0001.
Can you please let me know if you get any solution on this.
Thanks,
Jitender -
Transport of ALE Interfaces for Function Module
hi,
i have a Z function module, Z business object type and z message type identifying ALE interface.
i need to move all the objects from Dev R3 to QA R3. What are the steps involved?
Thanks,
TirumalHi
While creating a Z function module it will ask you for a change request number. attach it to change request and migrate it to Production.
In case your function group to which you assigned this function module is open then the CTS number will by default come in CTS number field if any exists for the function group. You can now migrate your CTS to production.
Now after assinging function module to a CTS you can be sure that your program for function module and FM both will be migrated. For confirmation you can now check attribuutes section in your function module. it will list the SAP program associated with Func mod , function group to which function module is assigned , package and include programs which needs to be migrated. So you only need to attach a CTS and migrate your CTS.
You can create a Change erquest (CTS) in SE01 or SE10 transactions.
Regards,
Amit.
Please reward any help
Message was edited by: amit bhadauria
Message was edited by: amit bhadauria -
ALE interface for Sposnored Class in grants management
Hi All,
Is there any standard interface (ALE/IDOC/PROXY) provided by SAP for sponsored class in Grants Management module.
Thanks,
Swapnil PawarSwapnil,
Please see the Function Module GM_SPONSORED_CLASS_CREATE and determine if it works for you.
Thanks
Shyam -
Generate Message Interface for SOAP Adapter
Hi All,
I want to implement a scenario like this:
ABAP System -> RFC Adapter -> XI -> SOAP Adapter -> Web Service
Currently the WSDL of the web service is known. It is http://www.abysal.com/soap/AbysalEmail.wsdl
How can I generate the inbound message interface in XI according to the WSDL?
Thanks
Jerome
Message was edited by: Jerome Zhao
Message was edited by: Jerome ZhaoHi Jerome,
Import the WSDL as an external definition and then you can create a inbound Message interface based on that external definition.
Regards,
Sridhar -
ALE INTERFACE BOR KNA1 error generetion in transaction BDGD
Moderator message: Do not use the word "urgently" in your posts. It is generally considered quite rude to do so. I have edited the subject.
Hello! i would like to implement ALE interface of the BAPI BAPI_CUSTOMER_CREATEFROMDATA1 (business object KNA1) to use it in transaction LSMW but until i generate the interface using transaction BDGD the program block the generation and give me the follow error:
Segment Z1BPKNA105 is used multiple times in IDoc types
Message no. EA799
Diagnosis
Segment type Z1BPKNA105 is used multiple times in the IDoc type. A segment type may only be used once in each IDoc type.
What i have to do for resolve the error and generate ALE interface of BAPI BAPI_CUSTOMER_CREATEFROMDATA1???
HELP ME THANKS!!
Edited by: Matt on Nov 7, 2008 5:25 PM
Edited by: Matt on Nov 7, 2008 5:25 PM>
Matt wrote:
> What would you like me to change it to?
I was going to add a "Too late ;-)" but it probably doesn't matter now
Rob -
Hi All,
I'm trying to generate an ALE interface for the BAPI -
BAPI_CASE_CREATE for my LSMW project, for object SCASE , but each time I try to generate the ALE interface for the BAPI I get the error as follows -
Segment 'SAGMENT NAME' is used multiple times in IDoc types
Message no. EA799
'Segment type is used multiple times in the IDoc type. A segment type may only be used once in each IDoc type'.
Please Reply ASAPHi,
You can use any middle ware(webmethods/EAI etc) which can invoke an RFC enable FM/BAPI...
You need to do an ALE here..
Since most of the BAPI have the return tables which stores the error or sucess messages you can use the after invoking the FM that will response the middleware(Synchronous method)..
Hence the return tables store the errors which can be used, But if you want to store those errors in SAP then better create a custom table and update the same whenever the error occurs..(for this u can create a wrapper of the std Fm that you use and implement the logic for updation of errors/custom table)
Hope this helps you
regards
shiva -
Experts
Im trying to generate an ALE interface for BUS0050. The process errors with "Segment ZIBP_0050_ITEM is used multiple times in IDOC types".
I have also tried this using a copy of the Object and get the same result
thanks for your help
Andyhi, I think segment ZIBP_0050_ITEM is a customize segment which be added by EEWB, right?
Sometime, the problem in EEWB enhance field will impact our idoc generation.
in my opinion, you'd better delete all the customziing idoc type for BUS0050.
Then go to EEWB, delete the custimizing field related to ZIBP_0050_ITEM, and create them again. -
How to create WEBGUI interface for own-created program
Hi experts!
Could you please suggest me:
Some of our end-users have to work with WEBGUI interface. In T-code VL02N we have our userexit SAPLZSDEXIT (Screen 0110). And in WEBGUI we don't see this tab in VL02N. I think I have to generate web-interface for this screen. But how I can make it? This screen was developed by our ABAP-ers in se51 t-code.Solved
-
Hi Friends,
How do we test ALE Interface.
Please provide me with stpes for configuring the ALE Interface for SAP-SAP,SAP-Non SAP scenarios on Outbound & Inbound Systems.
After configuring,How do we send the data.
<REMOVED BY MODERATOR>
Thanks
Edited by: Alvaro Tejada Galindo on Feb 14, 2008 11:01 AMHi Annapurna,
you can try these links as well .
IDOCS:
http://www.sappro.com/downloads/OneClientDistribution.pdf
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://www.sapgenie.com/sapedi/idoc_abap.htm
ALE/IDOCS:
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm
http://www.sappoint.com/presentation.html
http://www.allsaplinks.com/idoc_search.html
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
or have a look at this thread..
https://forums.sdn.sap.com/click.jspa?searchID=8882009&messageID=4770944
Regards,
Ramesh. -
Usage of ALE - idocs generated for BAPIs
Hi
I need to use - the std idocs generated for BUS2032 object - CREATEFROMDAT2 method to store the BAPI call ( BAPI_SALESORDER_CREATEFROMDAT2 )data for those sales orders that could not be created.
If I want to use the SAP delivered BAPI ( BAPI_SALESORDER_CREATEFROMDAT2 ) to call as it within an ABAP program - and then if the call did not go through - then log the data for BAPI into the corresponding idoc with the message type SALESORDER_CREATEFROMDAT2 ( idoc type SALESORDER_CREATEFROMDAT202 ) do I need to move the values from the BAPI structures to the idoc segments programatically ? Or since the idoc is linked to the BAPI - by definition, is there an implicit way to move data to the corresponding idoc segments and save the idoc .
Can anyone out there give me a code sample to do - what I have asked above ?Hi,
I guess you can use function module ALE_SALESORDER_CREATEFROMDAT2 to create idoc from bapi data. You can pass the entire data in internal tables that you are passing to BAPI into above mentioned function module and then it will create an Idoc for the same. Also populate the receivers in the internal table receiver.
KR Jaideep,
Maybe you are looking for
-
Re: tracing execution and standard Forte messagefilters
Pierre, There is a tech note describing some of the trace flags that will show you interpreter profile information. This interface, the information produced, etc. may change in future releases that's why it's a tech note and not in the documentation
-
I have a BPM 10G system in production, all paid up, sitting on WebLogic Server but no other Oracle bits and bobs like OSB for example. I want to migrate to 11G which is now part of SOA Suite, what are the licensing implications of doing this? Thanks
-
How to install a plugin in OBPM 10GR3
How do we install a plugin in OBPM 10GR3. Any steps that you guys know of? I want to install a plugin which actually needs to be installed for eclipse but since OBPM 10GR3 is built on top of eclipse, I think I can install it in OBPM 10GR3.. Please gu
-
I am to implement OBIEE 10g against a SAP R3 ERP as data source and would like to know from the best what is the best approach.
-
Hi, Can we generate PO instead of PR for Third Party Orders?