Enterprise Resource Planning Blogs by Members
Gain new perspectives and knowledge about enterprise resource planning in blog posts from community members. Share your own comments and ERP insights today!
Showing results for 
Search instead for 
Did you mean: 
Hello Everyone!

This Blog post will give the overview on how to Load a Purchase Order with 40 characters material number in SAP S/4 system.

This article will guide you through step-by-step procedure and will give you the complete idea on loading 40 characters material in S/4 system for Purchase Order.

In case you haven't watched my previous blog on "Partner Determination Configuration in SAP MM: Part – 2" you can check it out here 

How to load 40 characters material in S/4 system for Purchase Order

With the S/4 SAP has given an option for material number that it can be extended up to 40 characters or it can be kept as 18 characters.

To enable material number with 40 characters, you need to enable certain configuration. If you want know more about it let me know will make a separate article on this.

After configuring the 40 characters for materials all the tables where material number is present it will be changed to C (40) from C (18) ..

See, now the objects can be loaded with either of the below mentioned mechanisms

  • IDOC

  • Fiori – Migrate your cockpit

  • LTMC (but it will not be supported after 2020 version)

  • BAPI

Fiori/LTMC - 

If you are going with this methodology then it has been implemented in such a way that it will support both 18 & 40 characters for material number, no customization will be required for it if you are using these mechanisms.


If you are going with IDOC then SAP has already provided the solution (please see if you are using the latest version for this) with *_LONG field in the IDOC’s to load 18 & 40 characters.

  • If you are using 18 characters material number then no need to use *_LONG field, pass the value in normal MATNR field.

  • If you are using 40 characters material number then you need to use *_LONG field and also at the same time MATNR field cannot be blank so you also need to pass any values – it can be either a dummy value or ECC value, but at the end in S/4 system it will be loaded as a 40 character only.

Before moving to a practical example, let’s see where we can find this *_LONG field. So, for this you can either use PORDCR102 or PORDCR103 message type for loading Purchase order.

Note: PORDCR103 has more functionality than its previous versions

For this article we will take an example for PORDCR103 message type.

In the below IDOC segments there is one named E1BPMEPOITEM1 which acts as a child segment to E1BPMEPOITEM.

In this you can find the MATERIAL_LONG & EMATERIAL_LONG.

You need to pass your 40 characters materials to the above-mentioned fields and a dummy or ECC value material number to MATNR field along with these LONG fields.

If you are only passing 18 characters of material number then no need to use *_LONG field, it can be directly passed as MATNR in E1BPMEPOITEM segment. You can ignore EIBPMEPOITEM1.

I hope from this article you have got the knowledge of how to load 40 characters material in S/4 system for Purchase Order.

Please do provide your valuable feedback on this post in comments section, this will help me in improving my content and share more knowledge with this community, also you can follow me for more content related to SAP!

Till then Happy learning!
1 Comment