Skip to Content
Sep 12, 2012 at 07:10 AM

Problem with LSMW object classification via BAPI BUS3060


We are trying to use the BUS3060 BAPI in LSMW for the mass assignment of classes, characteristics and their values. We need to assign to various objects - materials, BOMs, vendors, customer-material info record and purchase info record.

Please don't tell me to use a batch recording or object 0130 which is the batch input program. We already know that but we are in an ECC6.0 system and recording of CL20N or CL20 is not supported and there are various problems/errors relating to the standard batch input program.

SAP recommends that we use BAPIs in LSMW and my complaint is that they then fail to deliver the right functionality.

If you select BUS3060 in LSMW then you have no choice in the method, message type and basic type: you get CREATE, CLASSIFICATION_CREATE and CLASSIFICATION_CREATE01 by default. This relates to the function module BAPI_OBJCL_CREATE_KEY.

Now it should be pretty obvious that when I load data I want to provide as input the table (e.g. MARA), the class type (e.g. 001) and the object key (e.g. material number). This is what happens in CL20N or in the batch input and if SAP wants me to use the BAPI then they should provide the same functionality. I don't care or want to know about the internal key in table INOB

However, the BAPI expects you to provide the internal key as input which is a complete nonsense.

There is a perfectly good function module BAPI_OBJCL_CREATE which does what we want, but it is not part of BUS3060 and doesn't have any IDOCs behind it.

Since this is LSMW we don't want to write complex code - the whole point of LSMW is that even a non technical guy like me should be able to use it.

Have we missed something about how this object is expected to work? Are we missing some critical notes? Or did SAP just deliver a non-functional solution?