cancel
Showing results for 
Search instead for 
Did you mean: 

Problem using "BAPI_FIXEDASSET_CREATE1"

Former Member
0 Kudos

Hi,

We are trying to create fixed assets using BAPI "BAPI_FIXEDASSET_CREATE1" and we need to populate some custom-specific fields of BAPI_TE_ANLU structure (ANLU table), but the standard structure BAPIPAREX has a length of 990 positions instead of the 1822 settled in BAPI_TE_ANLU (there are two appends in that structure).

Could anyone, please, help us to find a solution and fill those customer fields? Is there any BAdi or any way to select the values we want to transfer from BAPI_TE_ANLU?

Many thanks in advance.

Best regards,

Miriam.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Miriam,

It seems that you came across a technical limitation with the BAPI.

You can only use the VALUEPART fields of BAPIPAREX to pass customer specific data for ANLU. This means you have 960 characters in total.

If your ANLU structure is longer, I'm afraid there is no way to provide values for the fields that are outside this "960 characters range" via BAPI. Even though EXTENSIONIN is a table parameter, it may contain only a single entry. So there is a technical limitation for the amount of data that you cannot overcome.

I haven’t seen an ANLU structure of this size before. So maybe you can shorten the structure by removing fields that aren’t needed. To reach a size of 1822 I assume there are some huge text fields contained. Maybe this can be avoided by using the standard text fields of asset master (note that there is also an option to maintain a long text for an asset, if the existing text fields are not sufficient). I assume that the information from the current 1822 places can also be stored by using much less space.

Or you can think about re-arranging the fields in ANLU in a way that the fields that need to be provided during BAPI-creation come first. So that they can be filled from the 960 available EXTENSIONIN fields.

If ANLU cannot be adjusted in any way, then you cannot provide all its data via BAPI-parameter EXTENSIONIN. There are still possible workarounds that you can think of. With EXIT_SAPL1022_001 (part of enhancement AIST0002) you can check and enhance ANLU data during BAPI creation. So maybe you use EXIT_SAPL1022_001 to derive the missing data from the data available in the EXTENSIONIN parameter. Or you think of a way to “bypass” the BAPI interface. For example, pass ANLU data to ABAP memory in your own coding, then read it in EXIT_SAPL1022_001 to fill ANLU.

Hope this helps.

Michael

Former Member
0 Kudos

Hi Michael,

It helps a lot. I'll have a look to those BAPIs.

Thank you very much!

Regards,

Miriam.

Answers (0)