Skip to Content

EDI: External partner numbers – avoiding lookups in XI

Some of the new XI students are very often tempted to use mapping lookups
(RFC, JDBC, SOAP <- mapping lookups possible with the use of XI/PI) whenever possible. But the truth is that using mapping lookups should be considered very carefully as their incorrect use can cause many issues: – what should happen when the lookup call will not be successful (sync connection broken)? – is there any procedure if the call will not return any data (user mistake) ? – is there any performance issue (are all the lookups bundled or do you do lookups for every line <- which is a very bad practice in terms of error handling and performance) Sometimes instead of using mapping lookups it’s better to create it inside the destination system. Fortunately for us SAP R3/ERP offers not only a lot of users exits (for inbound IDOCs) but also some exits that can be used without any programming knowledge. In this weblog I’d like to present just one of them. When we receive Sales Orders via standard ORDERS IDOC (orders is a message type but we can use it with all basic types) very often partner numbers used (buyer, seller, ship to party) are sent as external numbers (external in terms of the R3/ERP that receives them). SAP offers us a very helpful transaction – VOE4 that can convert those external numbers to SAP internal numbers. How does it work? STEP 1 – at first you need to fill transaction VEO4 with your external partner data. image a) Customer – partner system from transaction WE20 that you will use to receive the IDOC b) Ext. function – partner function that you want to convert (like WE, AG, LF) c) External Partner – external partner number d) – SAP internal partner number Attention XI info With XI quite often we tend not to use parter profiles other then LS (Logical Systems). As you see the field used for partner profile number (Customer) has a table check (with Customers table), meaning you won’t be able to save a logical system name inside. There are two workarounds for that: – you can either create a dummy client with logical system’s name – you can use approach from SAP note Note 398022 STEP 2 – send the IDOC with partner function that you’ve just configured in VEO4 and put the external partner number in the “Vendor” field image STEP 3 – Now you can check if the partner was correctly converted by displaying your new sales order (transaction VA03) image Hope this weblog will help you to save some time and troubles and help avoiding mapping lookups during sales order receving processes.
You must be Logged on to comment or reply to a post.
  • Michal,
    Nice blog about cross referencing external numbers with SAP numbers, however…
    How do you manage to enter a LS name as a Customer in VOE4?
    To me it seems that the Customer should be a real Customer number (i.e. entry in KNA1).
  • Hi,

    I’ve found a drawback on this issue.
    When the corresponding invoic is going out, the system is going to look for an entry in EDPAR for customer 1100 (not for Int. no.), but will not be found because the entry really is on customer T090CLNT090.

    The way to solve this is to add a new entry (without deleating the existing entry) like that :

    Customer: 1100
    ExtPartner: 444555
    Int no: 1100

    ¿Any other ideas on solving this problem?