cancel
Showing results for 
Search instead for 
Did you mean: 

Problems with DO upload only

Former Member
0 Kudos

Hi,

Please correct me, if i do something wrong.

i have created a DATAOBJECT download only to get all the flight connectins on my device. ( BAPI_SFLIGHT_GETLIST)

But now i want book one of this flights that means i need a new Dataobject with upload only. (BAPI_FLBOOKING_CREATEFROMDATA)

If i import bapi wrapper as dataobject it doesnt work to generate it.

(FAILURE: Specified GetDetail BAPI Wrapper violates BAPI wrapper semantics )

If i generate one with bi-drection i doesnt find a bapi with getDetail.

I tried to generate a dataobject and then a backend-adapter seperate. But then i cant acitavte it because the failure comes "Bapi wrapper grammar is violated"

regards hassan

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Hassan,

You dont need to have 2 Data Objects. Ideally, one bidirectional Data Object is sufficient. I do not know whats wrong with the getdetail BAPI. Can you tell me the name of the getdetail you are using?. I will try it out and let you know.

Best regards,

Vinodh

Former Member
0 Kudos

Hi,

BAPI_SFLIGHT_GETLIST

BAPI_SFLIGHT_GETDETAIL

BAPI_FLBOOKING_CREATEANDRESP

These are my bapis

Former Member
0 Kudos

Hi Hassan,

I checked these BAPI's. But these BAPI's does not comply to standards of DOE. For example, for a getdetail BAPI, the return parameter should be a table parameter and not a exporting parameter. Thats the reason it says grammer is voilated.

You can always refer to the sample BAPI wrappers shipped in Function group : SDOE_SAMPLE_BAPIWRAPPERS.

I have a suggestion for you to make it work. You can copy the above mentioned BAPI's into your local objects and modify the siganature of the BAPI & it should be a minimal change, such that it complies to DOE standards(by looking at the sample BAPI's) and then use it in your Data Object.

Best regards,

Vinodh

Former Member
0 Kudos

hey

your suggestion sounds good.

Could you give me the steps how to do this?

regards

Former Member
0 Kudos

Hi Hassan,

1) Go to SE80 , select in the dropdown local objects.

2) create a new Function group

3) in se37 , give your standard bapi wrapper names and copy to new Function module names and add it part of the new function group you created in your local object

4) Edit and modify the standard bapis signatures according to the sample bapi wrappers provided by Vinodh

changes for example, instead of return parameter of getdetails , give the same structures in tables parameters.

5) Activate the bapi wrappers.

6) use them in creating the dataobjects.

Regards,

Liji

Former Member
0 Kudos

Hi Lija,

thanks for the answer.

I am a bit confused now, because if i want to create a function group i need a access key for this group.

But i have registered this user as a developer. So why i have to create for every object an access key?

regards,

hassan

Former Member
0 Kudos

Hi Hassan,

I believe the system should also be configured as a development system. I'm not an expert in this area, but from what I have seen in the past, only when the system is configured as developement system and if your are registered as a developer you will not require the access key. Otherwise, it prompts you for an access key each time you want create a new object.

Best regards,

Vinodh

Former Member
0 Kudos

hey,

i have created an additional license key for my system and changed it to a developer system

I hope that would be works...I'll have to wait for the key now.

thanks guys.

Former Member
0 Kudos

It doesnt work.

I think i have to register the object, which i want to create. I hope my sap admin will make it till tomorrow.

Do you know which objects i have still register too.?

Former Member
0 Kudos

Hi Hassan,

You need to create a function group (any name) as local object and add few function modules (getlist,getdetail,create,modify,delete bapi wrappers) to it.

So I do not have a clue what object you will have to register to..object types are Function group and Function modules and you will be editing only the function modules that you created by copying the standard bapis.

Regards,

Liji

Former Member
0 Kudos

Hi

thanks i have to wait.

I trying to use the SDOE_SAMPLE:..

Where could i generate test data for the bapi sdoe_contacts...?

regards

hassan

Former Member
0 Kudos

Hi Hassan,

You can execute the bapi :SDOE_CONTACT_CREATE in SE37 , fill the values in the import parameters then say execute.

It will create data in the backend tables.

Regards,

Liji

Former Member
0 Kudos

Hi Hassan,

For the bapi wrapper SDOE_CONTACT_CREATE to work properly, please check the following

GOTO Tcode : SNRO

Give the object as : SDOE_PERS

click on intervals and see if you find a row as No : 00 From no : 0000000001 TO NO 9999999999

If you dont see this, then create a row by clicking 'change intervals' and inputing

No : 00 From no : 0000000001 TO NO 9999999999 and click save.

Now execute the bapi wrapper SDOE_CONTACT_CREATE in SE37 and execute.

Mandatorily enter client/mandt (000 or whtever) and first name and last name.

Then execute.

This should create entries in person table.

You can also provide address data and all in the tables parameter also.

Regards,

Liji

Former Member
0 Kudos

Thanks Lija, that sounds good.